The Balboa 32U4 is a small, user-programmable balancing robot based on the Arduino-compatible ATmega32U4 AVR microcontroller and featuring two H-bridge motor drivers, quadrature encoders for closed-loop motor control, a full inertial measurement unit (3-axis accelerometer, gyro, and magnetometer) for estimating orientation and balancing, and an optional interface for connecting a Raspberry Pi to make a Raspberry Pi-controlled balancing robot. The control board includes a powerful 5 V switching step-down regulator that can supply up to 2 A continuously, along with a versatile power-switching and distribution circuit. Three on-board pushbuttons offer a convenient interface for user input, while indicator LEDs, a buzzer, and a connector for an optional LCD (not included) allow the robot to provide feedback.
This is a kit; assembly (including soldering) is required. Motors and wheels are not included so you can choose your own to personalize your robot; see below for details. Balboa runs on six AA batteries (not included), and a USB A to Micro-B cable (not included) is required for programming.
Balboa 32U4 features a USB interface and ships preloaded with an Arduino-compatible bootloader. A software add-on is available that makes it easy to program the robot from the Arduino environment, and we have Arduino libraries and example sketches to help get you started. A USB A to Micro-B cable (not included) is required for programming. For those who want to customize or enhance their robots with additional peripherals, the robot’s power rails and microcontroller’s I/O lines can be accessed via 0.1″-spaced through-holes along the sides, front/top, and back/bottom of the control board.
The Balboa 32U4 control board can serve as the robot’s main controller, or it can act a base for a more powerful Raspberry Pi controller. With the addition of a 2×20 female header and standoffs (neither of which are included), a compatible Raspberry Pi (Model B+ or newer, including Pi 3 Model B and Model A+) can plug directly into the board. Integrated level shifters make it easy to set up I²C communication and interface other signals between the two controllers, and the control board automatically supplies 5 V power to an attached Raspberry Pi. In this setup, the Raspberry Pi can handle the high-level robot control while relying on the Balboa’s ATmega32U4 microcontroller for low-level tasks, like running motors, reading encoders, and interfacing with other analog or timing-sensitive devices.
The Balboa uses two micro metal gearmotors to drive external 2-gear gearboxes that further increase the gear ratio and support the weight of the robot with ball bearings rather than the motor shafts themselves. The Balboa kit gives you five reduction options to choose from when assembling your robot (ranging from 1.64:1 to 2.88:1), and you can further customize the gear ratio based on which micro metal gearmotor you choose for your robot, which is why we do not include motors with the kit. The integrated quadrature encoders require gearmotors with extended motor shafts, and we specifically recommend the 30:1 HPCB, 50:1 HPCB, or 75:1 HPCB versions.
We also do not include wheels with the kit since there are a number of options to choose from. We recommend 80×10mm Pololu wheels, which are available in five colors — black, red, yellow, blue, and white — but our larger 90×10mm wheels and smaller 70×8mm wheels are also options if you know what you are doing (note that the 70×8mm wheels only offer a few millimeters of clearance when balancing).