Let's Make Robots!

Build 1 - Please Review!

Hi all, I'm an 18 year old from South Africa interested in all aspects of technology! I hope to enter a Bsc in Computer Science next year at UCT in Cape Town. I am even thinking of going further and doing more afterwards for some crazy reason but thats later.. anyways!

Right so this will basically be my first build from scratch, my own design etc. Being my first build I want to keep it as simple as possible so please comment on anything, I don't mind.


  • Have experience in RC not vast amounts, but I know the basics I'd say. 
  • Able to program in Java and know basic logic and arithmetics etc.
  • Willing to put in effort to learn, and put it to practice!
What I have:
  • Charger: Swallow AC/DC2 Digital Peak Charger.
  • JR Spektrum DX6 (not sure if I will need it at all).
  • Batteries: (7.4V 800 mAh 2-cell Li-Po) x 2, (7.4V 300/340 mAh Li-Po) x 2, (11.1V 800 mAh Li-Po) x 1 
  • Servos: JR Servo (ES 539) x2 (not sure if I can use these).
The Idea:
Basically I want to make a robot that just avoids walls, obstacles etc. I have this in mind. Two wheels and a little guide wheel with the IR Range finder on a servo. 
  • I have no experience with microcontrollers, does the Arduino Duemilanove have all the features I would need for controlling the motor, servos, IR range finder etc?
  • When looking for motors is there anything to be aware of? Should I use geared motors or not?
  • What connectors and wires will I need? Heat shrink? 
  • Have I left anything out?
  • Suggestions?
Please review this list and add information that maybe I have left out or am not aware of, comment, etc on anything. I'd like to get a lot of input if possible! In terms of motors, wheels, wires etc am I looking in the right direction, or do i need guidance? 
Many thanks



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Quick question, would getting a different type of Arduino controller allow me to skip the H-Bridge part or is it always needed, and say I choose to use the Duemilanove how do I go about connecting the H-Bridge to it? I'd guess a guide is on google somewhere I will check!


@ Rudolph - Thanks for the help thus far! I found 2 guides for the H-bridge:



The guides say it can reverse the direction of the motor, so if I have two motors would that mean I need two H-bridges in order to have differential drive?



I just saw on the tutorial that one can control 2 motors. /slap self!
I prefer ultrasonic rangefinders, as they use sound, not light. Therefore, you can use them in direct sunlight, not to mention the fact that they give a serial input, not an analog one. For a beginner, I'd heavily reccomend the PING))) By parallax. YOu can pick it up in your local radioshack.
Unless your robot will be in the living room and encounter objects like a soft couch or a pillow, which will negativly affect the ultrasonic rangefinder ;) They both have their plusses and minuses.

If you wanna make things easier and are prepared to spend a little more you could get a MOTOR SHIELD for the Arduino. They are boards that plug into the Arduino and provides a "plug and play" interface for motors. Like this one:


What about hacking the servo's you already have for continous rotation, that way you don't need an H-bridge ?


Thanks for the comments please keep them coming! 

@Benbo231 - I was thinking of doing that at one stage. That could be a new question - I want to use this bot mainly indoors of course, but I am worried about the sunlight issue. Any suggestions as to which would be better for indoor that won’t be affected by sunlight etc.

@butra - I would consider hacking the servos to use them as motors but I think it would be a better learning experiment to use DC motors etc, as you can see I need to know what is going on ^^.

@Aniss1001 - That option is looking good at the moment, I'm just wondering would that complicate the coding side at all? Or is it something that I would just need to wrestle with etc. Another thing, if I used that shield where would I connect my Range finder/Ultrasonic sensor. Let me check quick maybe I can see.


  • Ultrasonic or IR?

  • Arduino + Motor shield - where do I connect the Ultrasonic/IR (no space or am I wrong)?


  • I'm actually not sure what path to take at the moment in terms of the microcontroller and the controlling of the motor.

  • What are your suggestions on using an Arduino against maybe making my own microcontroller or such?

  • The one thing that is giving me a headache at the moment is I don't see any space for any other I/O devices when the motor shield is on. 

Any help on these topics is appreciated!




I built my first arduino robot using the arduino in combination with the adafruit motor shield and I can assure you that it does not complicate the software side whatsoever. The motorshield does not use digital pin 2 nor the analog pins of your arduino, just solder some conectors to these free pins and you can hook up extra I/O to the free pins. My paralax ping sensor is connect to the pin 2. The analog pins can be switched to digital mode via software.

"The motorshield does not use digital pin 2 nor the analog pins of your arduino"

Does that mean that it uses ALL the other digital pins? 13 of of them? I just don't see why? 2 for servos, and seemingly 11 for motor control?

Anyway this option is looking less and less attrictive to me...