Overview of Balanbot

What is the Balanbot?

The Balanbot is a 100% open source balancing robot. It is Arduino compatible which means it is easy to upload new firmware to the board via a USB port in a user friendly environment.

The robot balances using a combination of 3-axis accelerometer and a 3-axis gyroscope by the implementation of a Kalman filter to estimate the precise angle of the robot at all times. These angular informations are used in a PID-controller to estimate the speed of the wheels in order for the robot to stay upright. This allows the robot to balance steadily at all times even when hitting obstacles or getting pushed.

The Balanbot comes as kit for you to assemble in a matter of minutes. Check out the Assembly guide on the Wiki for further details. A video showing how to assemble the robot can be found in there as well.

The Balanbot can be controlled with Android phones. 
It is possible to control the Balanbot using the Playstation 4 controller, all Playstation 3 controllers, the Nintendo Wiimote including the MotionPlus and Nunchuck extension and the Xbox 360 controller in the future. 
Furthermore it is possible to control and monitor the robot using a custom made Android app and finally using your Windows, Mac or Linux based computer. The Android app is available at the download eara.



  • ATmega1284P
  • 128KB Flash
  • 16KB SRAM
  • 1x UART
  • 4x PWM outputs
  • 1x Interrupt
  • 5x Analog inputs
  • 1x I2C interface
  • MPU6050 6-axis sensor
  • 3-axis accelerometer
  • 3-axis gyroscope
  • FT230X USB Serial chip
  • VNH5180 motor drivers
  • Digital H-bridge
  • 8A continuous current
  • MAX3421E USB Host controller
  • Connect USB controller devices
  • Bluetooth USB dongle for wireless connection

Kit content

  • Fully assembled PCB - no soldering required
  • Two 12V DC motors
  • Two rubber wheels
  • Two CNC machined Aluminum hubs
  • LiPo Battery charger
  • Battery plug-leads
  • Three laser-cut plywood layers with pre-cut holes and slots for quick assambly
  • Four threaded steel rods
  • Miscellaneous screws, washers and nuts

You need to prepared: 

  • 2200mAh(or higher) 11.1V 3-cell LiPo battery

The Balanbot features an ATmega1284P microcontroller from Atmel, running at 10MHz. This microcontroller contains 128KB of Flash, 16KB SRAM and 4KB EEPROM, which gives you plenty of room to add your own features and functions to the robot. Examples on extended features could be line-following sensor, ultrasonics sensor, GPS and more. 
The main board contains the FT230X USB to Serial converter chip allowing the robot to be programmed using the USB port. 

A more detailed overview of the Balanbot can be found on the Wiki.