5+ Best Examples of How to Build a DIY Self-Balancing Robot
Recently I shared with you the best 5 examples how to build a DIYquadcopter, and in this article I continue the series with more than 5 examples of self-balancing robot that can be built at home using cheap components and in some cases 3D printed components.
A simple two-wheeled balanced robot can become the perfect educational and hobbyist tool to explore the electronics and programming area. In this article, you can find at least 5 projects based on the Arduino or Raspberry Pi single board computers, and other several main components such as electric motors, IMU, accelerometer, or gyro sensors able to keep the robot in balance by measuring and reporting the velocity, orientation, and gravitational forces of the robot.
Any of these robots can be used for inspiration, and with a little imagination, you can build your custom self-balancing robot.
There are several advantages when you build a DIY robot:
- you can build the robot at home;
- are effectively very cheap;
- you can reuse components from other robots;
- some components can be printed using a 3D printer;
- all of these robots are customizable;
- you can combine both electronics and programming skills;
If for programming side is relatively simple to download and install a development environment, on the electronics side you need a set of tools including a soldering iron or wire cutters.
ArduRoller balancebot

ArduRoller balancebot
I started the DIY balancing robot compilation with this very simple two wheeled robot with a bamboo chassis, and two sensors mounted on the axis of rotation to maintain its balance.
On the project page you can find documentation about how to program the Arduino Uno board to keep the robot in balance, as well as few other steps necessary to have a functionally robot.
In the following, you can find the main components that you need to build this project from scratch, while the entire documentation and libraries can be found here.
Components:
- Single board computer:1 x Arduino Uno;
- Motor driver: 1 x Sparkfun Ardumoto;
- Motors: 2 x Mini Metal Gearmotor 24:1;
- Chassis: bamboo ply;
- Machine screws: choose from different M2.5 machine screws ;
- Wheels: 1 set 70x8mm;
- Gyro: 1 x Gyro Breakout Board – ADXRS613;
- Accelerometer: 1 x Accelerometer Breakout Board;
- Batteries: 2 x Polymer Lithium Ion Battery or choose other batteries after you read this article to learn how to choose the right battery to build your robot;
The Balancing Robot

The Balancing Robot
This robotic project could become easily a platform from where you can start to build your first self-balancing robot. The balancing robot for dummies has a simple design that helps you to learn how to build a two-wheeled efficient robot with a solid frame and acceptable price.
The project integrates metal gears with built-in encoders, two lightweight and durable wheels, an Inertial Measurement Unit sensor to measure and reports the velocity, orientation, and gravitational forces of the robot, and many more robotic parts, which I listed below.
The brain of the robot is an Arduino Duemilanove single board computer able to maintain the robot in vertical position.
For more inspiration you can check also this project that is relatively closer to this balancing robot.
Almost all of the components of the balancing robot can be found here:
- Single board computer: 1 x Arduino Duemilanove Board;
- Breadboard: 1 x IB173 170-point Mini Breadboard for Arduino
- Motors: 2 x 29:1 Metal Gearmotor 37Dx52L mm with 64 CPR Encoder 12V 365rpm;
- Motor Brackets: 2 x Pololu Stamped Aluminum L-Bracket Pair for 37D mm Metal Gearmotors;
- Motor Driver: 1 x Dual VNH2SP30 Motor Driver Carrier MD03A;
- Wheels: 2 x BaneBots Wheel;
- Hubs: 2 x BaneBots Hub;
- IMU: 1 x IMU Analog Combo Board Razor;
- Mbed Microcontroller: 1 x LPC1768 Development Board;
- USB Host Shield: 1 x Shield Module for Arduino;
- Bluetooth Dongle:1 x USB 2.0 Bluetooth Dongle Adapter EDR Wireless Tiny;
- PS3 Controller: 1 x PlayStation 3 Dualshock 3 Wireless Controller;
- Battery: 2 x Tenergy NiMH 3800mAh;
- Connector: 2 x Tamiya Connector Set Male/Female;
- Wireless Module: 2 x XBee ZigBee;
- Adapter Kit:2 x XBee adapter kits;
- Breadboard: 1 x 170 Points Mini Breadboard;
- Jumper wire: 1 x Jumper wire pack;
Segway Instructabot

Segway Instructabot
Inspired by the two wheeled self-balancing personal transport vehicle invented by Dean Kamen, this robot integrates the idea of a self-balancing platform that change the speed of the motor based on data received from the accelerometer sensor. It takes several building hours where you have to combine electronics with programming skills, as well as woodworker skills and techniques.
Following the instructions from this article and by embedding several components, you will have a functional balancing robot based on a piece of wood, Arduino Uno, two powerful electric motors, and an accelerometer sensor.
Components
- Single board computer: 1 x Arduino Uno;
- Motors and wheels: 1 x Parallax 7.2V Motor, Bracket and Wheel Kit;
- Motor Driver: 1 x Sabertooth Dual 5A Motor Driver;
- Accelerometer: 1 x ADXL335 Triple Axis Accelerometer Breakout Module for Arduino;
- Battery: 1 x 7.2V Tenergy 3800mAh;
B-Robot

B-Robot
The B-Robot is a fully 3D printed self-balancing robot controlled by Arduino single board computer and able to be remotely controlled via a smartphone or a tablet through WiFi connection.
On the project page you can find the files to print the components, as well as libraries and the main program.
The robot balance system is based on the MPU-6050 triple axis accelerometer and gyro breakout board, and a sonar sensor.
As a bonus, you can check also this project based on the same triple axis sensor and the Arduino board.
All the main robotic parts needed to build this project are available here:
- Single board computer: 1 x Arduino Leonardo;
- Motors: 2 x NEMA17 Stepper Motor;
- Motor Driver: 1 x A4988 Stepper Motor Driver;
- Wifi module:1 x Rn131 Pictail Wi-Fi module;
- IMU Sensor: 1 x Arduino GY-521 MPU-6050 Module 3 axial gyroscope accelerometer;
- Sonar Sensor: 1 x MB1030 LV-MaxSonar-EZ3 Range Finder;
Self Balancing Robot using Raspberry Pi

Self Balancing Robot using Raspberry Pi
You can build at least a million of things with a single board computer like Raspberry Pi. From this million, one project is this self-balancing robot based on the fruit-named computer, an IMU sensor, powerful electric motors, and a TFT screen that displays several information from sensor and components.
This complex platform can be customized for a wide range of applications including tracking and object detection, it can be used to map a room, for security at home, and many more service applications.
A list of several components integrated into this self-balancing robot can be found here:
- Single board computer: 1 x Raspberry Pi B;
- Gearmotors: 2 x Metal Gearmotor 25Dx48L mm with 48 CPR Encoder;
- Wheels: 2 x Pololu Wheel 90x10mm;
- IMU: 1 x MinIMU-9 v2 Gyro, Accelerometer, and Compass;
- RF Receiver: RF M4 Receiver – 315MHz;
- Display: 2.2″ 18-bit color TFT LCD display;
- Battery: Tenergy 3800mAh;
Before starting any of these projects, please pay attention to details and check the components list. If you’re not familiar with DIY robotic projects, you can always start with a kit and then make the step into a DIY project.