-
Notifications
You must be signed in to change notification settings - Fork 1
How the internal Festo communications work
This wiki page will provide a quick summary of how the communications between the internal Festo's Microbit Gateway, Raspberry Pi Hub and Robotino communicates from Python to C code.
This is the Microbit controller that the MakeCode user can flash their script to, in order to send instructions to interact with the Festo. In the context of this wiki page, this is the irrelevant microcontroller but how it communicates with the Festo components (Microbit 2, Raspberry Pi and Robotino) is through the usage of radio.
This is the Microbit controller inside the Festo, connected via USB to the Raspberry Pi Hub. Inside, it contains the Microbit Gateway Code which currently just ensures that the incoming radio message is a valid message from a MakeCode Microbit, retrieves the intended transmitted message and sends it to the Raspberry Pi via the COM port. It also attempts to wait for any message sent back by the Raspberry Pi.
This is the Raspberry Pi Hub to handle the communication between the Microbit Gateway and the Robotino, both via COM ports. It contains the Main Hub Code which continuously processes instructions and also sends any depreciated instructions back to the Robotino. It provides capabilities to send read/write messages for both the Microbit Gateway and the Robotino.
This is the main Linux Machine that performs the BinBot movement and/or sensor data request. It contains a number of built-in Festo code to activate its associated motors and sensors, and also the master BinBot.c code to continuously process depreciated instructions sent from the Raspberry Pi. It detects for any data to the COM port from the Raspberry Pi and streams it. It sends data back by writing to the COM port directory.