, the Zumo 32U4 features a USB interface and ships preloaded with an Arduino-compatible bootloader. controllers] We provide a software add-on that makes it easy to program the Zumo 32U4 from the Arduino environment, as well as a set of Arduino libraries to help interface with its on-board hardware.
Arduino, thanks to its USB interface and preloaded Arduino-compatible bootloader. The Zumo 32U4 also adds many features that are not found on the Zumo Shield, including encoders, an LCD, and proximity detection.
The robot and chassis kit might include extra parts like jumper wires, screws, nuts, washers, and an acrylic spacer plate (which is not used in the Zumo 32U4), so do not be concerned if you have some leftover hardware after assembling your Zumo. Your kit might also include a length of heat shrink tubing that can be used as shrouds for IR LEDs.
Page 9
. Be sure to pick a motor that has [https://www.pololu.com/category/141/micro-metal-gearmotors-with-extended-motor-shafts] an extended shaft, or else you will not be able to use the encoders on the Zumo 32U4. 1. Overview Page 9 of 76...
[https://www.pololu.com/product/2588] 1.3. Supported operating systems The Zumo 32U4 robot can be programmed from a computer using any operating system that supports the Arduino environment. This includes Microsoft Windows 10, 8.1, 8, 7, Vista, XP (with Service Pack 3), Linux, and Mac OS X.
3. The Zumo 32U4 in detail 3.1. Microcontroller The Zumo 32U4 main board features an integrated, USB-enabled ATmega32U4 AVR microcontroller from Atmel, clocked by a precision 16 MHz crystal oscillator. This is the same microcontroller and clock frequency used in our family of A-Star 32U4 programmable controllers [https://www.pololu.com/category/149/a-star-...
Page 13
Pushbuttons The Zumo 32U4 has four pushbuttons: a reset button on the right edge and three user pushbuttons located along the rear edge of the main board. The user pushbuttons, labeled A, B, and C, are on Arduino pin 14 (PB3), PD5, and Arduino pin 17 (PB0), respectively.
3.3. Motors Two on-board Texas Instruments DRV8838 motor drivers power the Zumo 32U4’s two micro metal gearmotors. Four Arduino pins are used to control the drivers: • Digital pin 15, or PB1, controls the right motor direction (LOW drives the motor forward, HIGH drives it in reverse).
AVR’s pin change interrupts or external interrupts to read the encoders. To reduce the required number of interrupt pins, the Zumo 32U4 main board XORs together both channels of each encoder and connects the resulting signal to an interrupt pin, while channel B of each encoder is connected to a non-interrupt pin: •...
I/O line. When the sensor is active, it will drive the line low. The proximity sensors do not have IR emitters paired with them; instead they detect reflected 38 kHz IR light that comes from LEDs on the Zumo 32U4 Main...
3.6. Proximity sensing The Zumo 32U4 can detect nearby objects using the three proximity sensors on the front sensor array. The proximity sensors do not emit their own light; instead they are designed to detect 38 kHz infrared (IR) signals from emitters on the Zumo 32U4 Main Board.
Page 19
Forward LED selection The kit version of the Zumo 32U4 comes with two types of through-hole IR LEDs that can be installed to serve as the forward emitters. Both types of LEDs use the T-1 3/4 package, meaning they have a diameter of approximately 5 mm.
Page 20
Proper shielding for the forward emitters is important; without shielding, light from the LEDs can activate the proximity sensors directly and cause false readings. The Zumo 32U4 comes with a plastic LED holder that serves to shield the LEDs while also holding them in place and helping to protect them from collisions with other robots.
This could be a good starting point for a sumo robot that uses the front sensors to locate its opponent. 3.7. Inertial sensors The Zumo 32U4 includes on-board inertial sensors that can be used in advanced applications, such as helping your Zumo detect collisions and determine its own orientation by implementing an inertial measurement unit (IMU).
Texas Instruments. The regulator works with a 2.7 V to 11.8 V input voltage (although the motor drivers limit the maximum operating voltage of the Zumo 32U4 to 11 V) and has a typical efficiency of 80% to 90% for most combinations of input voltage and load. (We also make a standalone regulator based on this integrated circuit.) The 5V output of this regulator is designated...
Adding a power switch You can add your own power switch to the Zumo 32U4 using the PSW pin. When it is in the on position, your switch should connect PSW to GND. In that case, VBAT will receive power when either your switch or the main board switch are on.
The table below lists the most important pin assignments for the ATmega32U4 on the Zumo 32U4. This table is helpful if you want to add your own electronics to the Zumo 32U4, write your own low-level code for interfacing with the hardware, or just want to understand better how the Zumo 32U4 works. Each row represents a physical pin on the ATmega32U4.
Section 3.10, so you might need to disable or disconnect one of the other features of the Zumo 32U4. If are not using the proximity sensors and you do not care about turning off the infrared emitters for the line sensors, you can cut the surface-mount jumper on the front sensor array labeled “LED”.
Page 29
Be careful about connecting electronics to pin 13 (PC7), pin 17 (PB0), and PD5. These pins are used to control the LEDs on the Zumo 32U4. All three of these pins are controlled as outputs by the bootloader. Pin 17 (PB0) and PD5 are used as RX and TX indicators, so if you are sending or receiving data over USB then the Arduino USB code will drive those pins in its interrupt service routines while your sketch is running.
Zumo 32U4 robot kit. Please follow these instructions carefully to assemble your Zumo 32U4 robot kit properly. If you have an assembled version of the Zumo 32U4 robot, you can skip to...
Page 33
Motors If you have an older Zumo 32U4 kit with white sprockets (which we shipped before May 2015), you should skip step 4 and install the drive sprockets after step 14 instead, at the same time as the idler sprockets. (If the white drive sprockets were attached now, their shape would make the motors, chassis, and main board difficult to assemble.)
Page 50
28. Choose a pair of through-hole infrared LEDs to use as the forward emitters. (See Section 3.6 details about the different LEDs included with the Zumo 32U4.) The forward IR emitter LEDs can be installed using the plastic LED holder, which we recommend using in most cases (continue to step 29).
The Zumo 32U4 is designed to be programmed over USB from the Arduino IDE [http://arduino.cc/en/Main/ . It can be programmed from Windows, Linux, and Mac OS X. The ATmega32U4 on the Zumo 32U4 Software] comes preloaded with the same USB bootloader as the A-Star 32U4 family [https://www.pololu.com/category/149/a-...
5.3. Programming using avr-gcc and AVRDUDE This section explains how to program the A-Star and Zumo 32U4 boards using the avr-gcc toolchain and AVRDUDE. This section is intended for advanced users who do not want to use the Arduino IDE as described in the previous section.
Page 66
To program the A-Star device, you will need to get it into bootloader mode first. One way to do this is to reset the AVR twice within 750 ms. Most A-Stars and the Zumo 32U4 have a reset button that can be used to reset the board.
6. Zumo 32U4 Arduino library The Zumo 32U4 can be programmed from the Arduino IDE as described in Section To help interface with all the Zumo 32U4’s on-board hardware, we provide the Zumo32U4 library. The Zumo32U4 library documentation provides detailed information about the [https://pololu.github.io/zumo-32u4]...
7. The Zumo 32U4 USB interface The A-Star and Zumo 32U4 boards are based on a single AVR ATmega32U4 microcontroller that runs the user program and also handles the USB connection to the computer. The AVR has a full-speed USB transceiver built into it and can be programmed to present almost any type of USB device interface to the computer.
8. The A-Star 32U4 Bootloader The A-Star 32U4 boards and the A-Star-compatible Zumo 32U4 come with a USB bootloader that can be used in conjunction with the Arduino IDE or AVRDUDE to load new programs onto the device. This section documents some technical details of the bootloader for advanced users who want to better understand how it works.
9. Reviving an unresponsive Zumo 32U4 In order to load a new program onto your A-Star or Zumo 32U4, you will need to get it into bootloader mode and send programming commands to it over its virtual serial port using appropriate software. If you are programming...
[https://www.pololu.com/product/ between the GND and RST pins to serve as a reset button. Other A-Star boards and the Zumo 32U4 have 1400] a reset button you can use. Alternatively, you can use a wire to temporarily connect GND and RST together instead of using a reset button.
Need help?
Do you have a question about the Zumo 32U4 and is the answer not in the manual?
Questions and answers