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):