The Pololu A-Star 32U4 Robot Controller SV with Raspberry Pi Bridge is a programmable module well-suited for robotics applications, designed to work either as an auxiliary controller mounted to a Raspberry Pi or as a standalone control solution for a small robot.
This A-Star (abbreviated A*) is based on the ATmega32U4 AVR microcontroller from Microchip (formerly Atmel), which has built-in USB functionality, and ships with a preloaded Arduino-compatible bootloader. Its complement of peripheral hardware includes dual motor drivers capable of delivering a continuous 1.7A per channel, along with pushbuttons, LEDs, and an optional buzzer for building a user interface. An efficient switching voltage regulator allows the controller to work over a wide range of input voltages (5.5 V to 36 V).
The robot controller board conforms to the Raspberry Pi HAT specification, allowing it to be used as an add-on for a Raspberry Pi with a 40-pin GPIO header. On-board level shifters make it easy to set up I²C communication and interface other signals between the two controllers, and the A-Star 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 A-Star for low-level tasks like reading analog sensors and controlling timing-sensitive devices (e.g. servos).
We provide a library that helps establish communication between the A-Star and a Raspberry Pi, as well as a tutorial that demonstrates how to use the library and its included example code to build such a robot. Our comprehensive user’s guide provides the basics you need to get started with the A-Star as well as detailed technical information for advanced users.
This product requires a USB A to Micro-B cable (not included) to connect to a computer.
- Dimensions: 65 mm × 56 mm
- Programmable ATmega32U4 MCU with 32 KB flash, 2.5 KB SRAM, 1 KB EEPROM, and native full-speed USB (clocked by precision 16 MHz crystal oscillator)
- Preloaded with Arduino-compatible bootloader (no external programmer required)
- All 26 general-purpose I/O lines from the ATmega32U4 are broken out (including PB0, PD5, and PE2); 7 of these can be used as hardware PWM outputs and 12 of these can be used as analog inputs (some I/O lines are used by on-board hardware)
- Convenient 0.1″-spaced power, ground, and signal connection points
- Dual bidirectional MAX14870 motor drivers (1.7 A continuous per channel, 2.5 A peak per channel)
- Buzzer option for simple sounds and music
- 3 user-controllable LEDs
- 3 user pushbuttons
- Reset button
- Level shifters for interfacing 5 V logic to 3.3 V Raspberry Pi
- Power features:
- 5 V power can be sourced from USB or from 5.5 V to 36 V external supply through on-board regulator (with several access points for connecting external power)
- Switching 5 V regulator enables efficient operation
- Power switch for external power inputs
- Reverse-voltage protection on external power inputs
- Power selection circuit allows for seamless switching between power sources while providing overcurrent protection, and feedback about which power source is selected
- Provides 5 V power to Raspberry Pi
- 6-pin ISP header for use with an external programmer
- Comprehensive user’s guide
This version of the A-Star 32U4 Robot Controller SV with Raspberry Pi Bridge (5.5V to 36V input voltage) is assembled with selected through-hole connectors and components for use as a Raspberry Pi expansion board. A 2×20-pin 0.1″ female header is preinstalled to serve as a Raspberry Pi GPIO connector, and a 6-pin strip of terminal blocks and a DC power jack are mounted for motor and power connections. A buzzer is also installed, along with two 2×1-pin male headers and shorting blocks for the buzzer and battery-level jumpers.
This version ships with a set of four M2.5 standoffs (11 mm length), screws, and nuts that can be used to secure the board to the Raspberry Pi at the proper height for the GPIO connector.
A-Star 32U4 Robot Controller SV 5 V regulator
A major feature of the A* Robot Controller SV is its power system, which allows it to efficiently operate from a 5.5V to 36V external source and provide power to an attached Raspberry Pi. The input voltage is regulated to 5V by an MP4423H switching step-down (buck) converter from Monolithic Power Systems (we also make a standalone regulator based on this integrated circuit).
As shown in the left graph below, the SV’s 5V switching regulator has an efficiency – defined as (Power out)/(Power in) – of 80% to 95% for most combinations of input voltage and load.
The A-Star’s components, including the microcontroller and LEDs, draw 30 mA to 40 mA in typical applications (without the buzzer). The rest of the regulator’s achievable output current, which depends on input voltage as well as ambient conditions, can be used to power other devices; this can include an attached Raspberry Pi (which typically draws a few hundred milliamps). The green line in the right graph above shows the output currents where the regulator’s output voltage drops below 4.75 V. These currents are close to the limits of the regulator’s capability and generally cannot be sustained for long periods; under typical operating conditions, a safe limit for the maximum continuous regulator output current is 60% to 70% of the values shown in the graph.
The dropout voltage of a step-down regulator is defined as the minimum amount by which the input voltage must exceed the regulator’s target output voltage in order to assure the target output can be achieved. As can be seen in the graph below, the dropout voltage of the Robot Controller SV’s regulator increases approximately linearly with the output current. For light loads where the dropout voltage is small, the board can operate almost down to 5 V. However, for larger loads, the dropout voltage should be taken into consideration when selecting a power supply; operating above 6 V will ensure the full output current is available.
Note: Batteries can have much higher voltages than their nominal voltages when fully charged, so be careful with nominal voltages above 24 V. A 36 V battery is not appropriate for this product.
Like our other A-Star 32U4 programmable controllers, the A-Star 32U4 Robot Controller ships with a preloaded Arduino-compatible bootloader (which uses 4 KB of flash memory, leaving 28 KB available for the user program). We provide a software add-on that enables the board to be easily programmed from the Arduino environment and an Arduino library to make it easy to use the additional on-board hardware.
The A-Star 32U4 Robot Controller has the same microcontroller as the Arduino Leonardo and Arduino Micro, and it runs at the same frequency, so most code examples intended for those boards should also work on the A-Star.
|Processor||ATmega32U4 @ 16 MHz|
|RAM size||2560 bytes|
|Program memory size||32 Kbytes|
|User I/O lines||26|
|Input voltage range||5.5 V to 36 V|
|Minimum operating voltage||5.5 V|
|Maximum operating voltage||36 V|
|Maximum output current||2.5 A|
|Continuous output current per channel||1.7 A|
|Peak output current per channel||2.5 A|
|Logic voltage||5 V|
|Reverse voltage protection?||Y|
|External programmer required?||N|
- User Guide
- Windows Drivers
- Pinout and Power Distribution diagrams
- Dimension Diagrams
- 3D Model
- Drill Guide
- MAX14870 Motor Driver Datasheet
- A-Star 32U4 Arduino library
- AStar32U4 library documentation
- A-Star repository on GitHub
- Raspberry Pi slave library for Arduino
- Building a Raspberry Pi robot with the A-Star 32U4 Robot Controller (blog post)
- More resources...
- 1x A-Star 32U4 HAT
- 1x Fixings Pack
Raspberry Pi, Motors, battery and other cables/accessories not included