Nano Sumo Robot


This is a sumo fighting robot. That means that it battles against another robot by trying to push it out of a ring - just like really sumo fighters. It is called "nano" because it is about 1 cubic inch in volume, which puts it in the Nano-sumo class. These robots must be able to detect the opponent and detect the ring.

I built this robot with a guy named Gary, who I found online. We worked remotely (hundreds of miles apart). I designed and built the electronics and Gary designed and built the hardware. I also wrote the software (click here to download the software).


At the heart of the Nano Sumo is my custom designed microcontroller board. It uses an Atmega-328 with the Arduino bootloader programmed into it via the on board ICSP socket. It also has a FTDI programming port for programming it with the Arduino IDE. It measures 21mm x 23mm and has 3 analog inputs, 2 PWM outputs, and 4 I/Os. The PCBs were made by Seeedstudio’s service. Click here to download the EagleCad files.

The pin layout is designed to mate perfectly with the Sparkfun 1A Dual Motor Driver. The outputs of the Nano’s micro-controller board plug directly into the inputs of the motor controller. This allows for the control of 2 motors with PWM for speed control and braking. The only other needed connection is a wire providing power to the motor controller.

The power source is provided by a single 50mAh 20C li-poly battery. this provides the system with 4.2v when fully charged and can supply up to 1A. A female connector was added on the end to mate with a male connector on the bottom of the micro-controller and on the charger.

A charger had to be built for this battery. The charger I built uses a Maxim 1555 Li-poly charger IC. It has a LED status light to show that the battery is charging. The charging is powered by a 4 AA battery pack so there is no need to be near a wall outlet to charge. The circuit was completely built on a Sparkfun breakout board (seen as the red PCB in the picture)

Making The Custom Microcontroller Board

Part 1: Applying Paste and Parts

Part 2: Reflowing

Part 3: Programming and Testing The Bootloader

The Final Product