The Balboa 32U4 is a small, user-programmable balancing robot based on the Arduino-compatible ATmega32U4 AVR microcontroller from Microchip (formerly Atmel) 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.
Like our Zumo 32U4 robot and A-Star 32U4 programmable controllers, which are based on the same microcontroller, 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.