While the board is connected to the computer Physical Bits allows to inspect and monitor the program state while it runs. Furthermore, every change made to the program can be automatically compiled and transmitted to the robot, which allows to see the effects of the change almost immediately.
Once you're happy with your program you can store it permanently and unplug your board from the computer. The program will now run autonomously, without requiring a connection to the computer.
Most educational robotics projects require the implementation of a device that performs two or more simultaneous tasks. Physical Bits allows the definition of concurrent tasks that will be executed independently from each other.
Without debugging tools the process of fixing programming errors can be frustrating for an inexperienced user. Physical Bits provides mechanisms for setting breakpoints (both in the code and the blocks) and executing the program step-by-step.
Although the current implementation only supports Arduino as hardware platform, the firmware is designed with portability in mind.
We have tested the firmware using several different boards, including: Arduino UNO, Micro, Nano, MEGA 2560, and Yun. We have also received reports of it working successfully on other compatible boards such as DuinoBot, Educabot, and TotemDUINO.
We also plan to support other platforms such as ESP8266 and ESP32 in the future.
All the code in this project is open source (see LICENSE).