The Robot Builder’s R-duino

I’ve been asked, even though there are plenty of similar products out there, to make a board that combines the Robot Builder’s Shield with the Arduino. Make it the same footprint as a regular Arduino board, but keep the same features of the RBS. I said, why not use the µBotino? Well, because is not shield compatible. People want to add other shields, like a color LCD shield, or an xBee shield. So I started to fiddle around and see if I can cram everything I wanted on the same board using TH (through hole) components. Not everything I wanted got there, but most of the stuff made it. Sure, I want a board that satisfies all needs, but that would make it bigger (and there are plenty out there like that) or use SMD. So here is what I got done:


  • same size as a regular Arduino board, with 3 mounting holes,
  • 6 servo connectors (selectable power – J1, digital pins 8-13),
  • 6 sensor connectors (regulated 5V, all analog pins),
  • a SN754410 H-bridge (1 amp per motor, digital pins 4-7, uses Timer0 for PWM),
  • screw connectors for motors,
  • pins 2 and 3 (external interrupts) available for encoders,
  • a FTDI connector (to program the board using a USB-serial cable),
  • a ISP connector (to program the board using a hardware prorgammer),
  • polarized Molex connector for the battery (4.5-12V, no more than 6V if you use servos),
  • 3A LDO voltage regulator,
  • reset button,
  • pin D13 LED,
  • power LED,
  • power switch,
  • all Arduino female pins are doubled with male pins, arranged to allow easy prototyping shields,
  • filtering caps near the sensor and servo 3 pin connectors.

J1 is to select power to the servos, either regulated 5V or directly from the battery.
J2 and J3 are to select the motor control mode, either 2 pin mode (Enable High, one Dir for PWM and the other for direction) or 3 pin mode (PWM on Enable, 2 direction pins). In 3 pin mode, 2 I/O pins allocated for servos are routed to the motors, so you end up with 4 servo connectors available. The LED on D13 has no selecting jumper, so it will flicker when a servo is connected to the same pin.

One more thing, the board does not have a 3.3V regulator, so even though the 3.3V pins are in place, they are not connected to anything and do not provide power for other shields. I don’t think I can cram in a TO92 regulator in there…

Here are the pictures of the PCB layout and the schematic, the blue is the bottom copper -GND plane, the red is the top copper – 5V plane. Round pins are male, oval pins are female (click for a larger image):

I have ordered 10 boards at SeeedStudio, they should arrive in about 3 weeks. The parts should arrive sooner, but after Canada Post’s strike, mail is backed up and it seems forever until… oh, the parts come by FedEx, never mind… Yeah… Can’t wait to test one!

About Gabriel (Ro-Bot-X)

Robots, nature, bees, and gardening, how do they mix together? After too much indoor activities one needs to get out and breathe! Harvest natural energy and create a little paradise. And ask the robots to help, of course.
This entry was posted in Arduino and tagged , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s