The Zumo 2040 is a highly integrated, user-programmable and customizable tracked robot. It measures less than 10 cm on each side and weighs approximately 275 g with batteries (160 g without), so it is both small enough and light enough to qualify for Mini-Sumo competitions, but its versatility makes it capable of much more than just robot sumo battles.
At the heart of the Zumo 2040 is a Raspberry Pi RP2040 microcontroller (like the one on the Raspberry Pi Pico), a 32-bit dual-core Arm Cortex-M0+ processor running at 125 MHz, which can be programmed with C, C++, Arduino, or Python. The Zumo 2040 has 16 MB (128 Mbit) of flash memory that ships preloaded with a MicroPython interpreter, so you can get started right away by plugging into its USB-C port and editing the included example Python programs. For advanced users 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 and front of the main board. A 4-pin JST SH-compatible connector provides access to the RP2040’s I2C0 bus and can be used with many Sparkfun Qwiic and Adafruit STEMMA QT devices.
The Zumo 2040 features two H-bridge motor drivers and a variety of integrated sensors, including a pair of quadrature encoders for closed-loop motor control, a complete inertial measurement unit (3-axis accelerometer, gyro, and magnetometer), five downward-facing reflectance sensors for line-following or edge-detection, and front- and side-facing proximity sensors for obstacle detection and ranging. Three on-board pushbuttons offer a convenient interface for user input, and a 128×64 graphical OLED display, buzzer, and six RGB LEDs allow the robot to provide feedback.