Let's Make Robots!

Nano Sumo (Electronics)


I give you the Nano Sumo bot, a collaborative project between myself and Gary. View Gary's post on Mechanics here

I think this bot "is" many things. Smallest robot using the Arduino bootloader ? Smallest robot with a microcontroller on LMR? Best use of Solarbotics Planetary Gear Boxes? 

At the heart of the Nano Sumo is my custom designed micro-controller. It uses a Atmega-328 with a 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 Seedstudio. The Eagle files are available for download here.




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 breaking. 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)



There are 2 sensors on the Nano sumo robot. One is an analog reflectance sensor and the other is a digital obstacle detector. The analog sensor is your common line sensor that can sense black and white. This sensor is used to stay in the sumo ring, because if you leave the ring, you lose. The obstacle detector is a very tiny digital sensor that gives either a 1 (no obstacle detected) or 0 (obstacle detected) reading. This is a surface mount sensor that does not come assembled. I soldered it together with no problems, but it was not easy. The sensor has a range of 6 inches, which is just about right for this class of sumo. 


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Great project you have here!

I want to some similiar to this, but using all the atmega's I/O pins.

I've downloaded you eagle files yesterday and I've been playing with them. This is how it is looking like for now:

By the way, is this the atmega you've used? http://uk.farnell.com/atmel/atmega328p-au/mcu-8bit-avr-32k-flash-32tqfp/dp/1715486

Cool, cant wait to see what you come up with. 

Yup that is the IC I used. 

It shouldn't get smaller than this, I placed the crystal, the resistor and the capacitors under the atmega:

(18.5x20.5 mm)

I noticed that you don't have any LED on your board. Do you feel the lack of them (specially the power's and pin 13's ones)?

Nice job! I guess the LEDs would help with debugging, but I never really use them.

I've bought some resonators that aren't fitting well on the pads of the board. 

Do you still have a link or the refrence from the ones you used?

I'll order some this weekend hopefully :)

I was looking for documentation about the Motor Driver 1A Dual TB6612FNG but the pin functions were written in Japanese! Can you please tell me what are the functions of each pin? Thank you very much!!! And that is an awesome sumo bot.

-This is my first ever comment!


Yeah that's precisely what I don't understand xD