The Ebot Software is the first part of the project and a freeware. It's a user-friendly interface that contains drag and drop icons called nodes used to create the program flow chart in a modular way. Nodes can be inputs representing the hardware sensors, while outputs represent actuators of the Ebot, or flow representing programming conditions, iteration and special codes. The software will convert all graphical programming done by the user into real C++ programming automatically. The generated program will be compiled and downloaded into Snowball Hardware MCU or any other selected open source controller.