• Nov 16, 2012 Featured on DangerousPrototypes.com  http://goo.gl/N4DIC
  • Oct 3, 2012: I have designed a PCB adapter to help position IR & Ultrasonic sensors 90 degree to breadboard to support GOduino III robot projects
  • Sep 1, 2012: Added EAGLE board layout


The GOduino III is an inexpensive Arduino compatible Open Source Hardware robot controller. It's a simple and inexpensive robot controller (appx. $25). I built this controller for my robotics workshops as well as for my personal projects. The GOduino III can be inserted into a breadboard for easy prototyping. I have also developed a software library (Goduino.h) to support motor functions. It's an extension of Adafruit's Boarduino

NOTE: This is my first PCB project so your feedback is most appreciated. I am also certain this guide contains plenty of typos. So over the next few days I will be making corrections and adding more details based on readers' feedback. Thanks in advance for your assistance.


This is a 3rd generation GOduino. The one before was the prefboard GOduino II and the first one was a breadboard GOduino.

1) GOduino II (prefboard)

2) GOduino I (breadboard)


The GOduino III is based on the ATmega328p microcontroller and the L293D dual h-bridge. It's built with DIP ICs and through-hole components for ease of assembly and repair.  This robot controller can handle 2 small servos and 2 DC brushed motors (max 1.2A for each motor with 2 X L293D).

The GOduino III can be programmed with a standard Arduino IDE via an FTDI USB/UART programmer or via the ICSP header using programmers such as AVR-ISP, STK500, or parallel programmers.

  • Based on the ATmega328p microcontroller @ 16 MHz (the heart of the Arduino Uno DIP model)
  • Size:  5cm X 2.5cm.
  • Plugs into a breadboard with the help of 0.1" (2.54mm) male headers or you can solder female headers. 
  • Arduino standard digital, analog, and special purpose pins exposed.
  • Digital I/O Pins: 14 (of which 6 provide PWM output) - Analog Input Pins: 6
  • 2 X LED: one for power and another for pin 13.  
  • Reset button.
  • 2 X 3-pin 0.1" (2.54mm) headers (5V) for small servos.
  • 2 X 2-pin 0.1" (2.54mm) header for brushed DC motors.
  • 6-pin 0.1" (2.54mm) ICSP male header.
  • 6-pin 0.1" (2.54mm) male header to accommodate FTDI USB programmer.
  • Flash Memory: 32 KB of which 0.5 KB used by bootloader
  • SRAM: 2 KB
  • EEPROM: 1 KB  

  • The GOduino III can be programmed with the Arduino IDE via an FTDI USB programmer
  • It can also be programmed via the ICSP header using programmers such as AVR-ISP, STK500, or parallel programmers.
  • The FTDI "FT232RL USB to Serial adapter" can be purchased for less than $10 from Ebay.
  • Also, you can use an Arduino Uno DIP to program the GOduino III ATmega328 microcontroller then insert it back into the GOduino III.
  • Auto-reset capability for FTDI programmers via the DTR pin.  

  • Logic Voltage: 5V supplied by the T7805CV regulator. 
  • Input Voltage (recommended): 7-12V. (limits): 6-20V
  • Motor Voltage: While the L293D motor driver IC is rated for 4.5V to 36V, we are bound by the recommended/limit  voltage ratings of the power regulator. 
  • 1N7001 diode protects against reverse voltage from the external power source.
  • The L7805CV regulator provides 1.5 A which is enough to power the GOduino III and 2 small servos.
  • You can swap the 7805 with pin-compatible low-drop out voltage regulators with higher current such as the LM1084-5V which can source 5A with a maximum dropout voltage of 1.5V.
  • The 5V regulator also powers the servos but not the motors.
  • For the motors, the L293D h-bridge gets its power from the DC jack or from the VIN pin directly. 
  • You can select to power the GOduino III from USB or External power with a pin jumper. Please note that USB power may not be enough to operate servos and motors.
  • The L293D h-bridge can supports 2 DC motors @ 600mA continuous current each. You can piggyback two L293D to double the current to 1.2A per DC motor. 

  • Capacitor ceramic 0.1uF X 5
  • 10uF/25V
  • 100uF/16V
  • 100uF/6V X 2
  • Diode 1N4007
  • LED Red 3MM
  • LED Green 3MM
  • ATMEGA168P Microcontroller
  • 7805 5V regulator
  • L293D dual h-bridge
  • DC Jack female 1X2-3.5MM
  • 40-pin male header (0.1" 2.54mm)
  • DIP sockets 28-pin
  • DIP socket 16-pin
  • Resistor 10K Ohms
  • Resistor 1.0 K Ohms X 2
  • Reset button
  • 16.00MHz Ceramic resonator 3-pin

I am considering replacing the 3.5mm DC power jack with a terminal block for the next patch of GOduino PCBs.

You can get the EAGLE schematics for the PCB from Github along with the library. The board layout is being modified but I will post it to Github soon as I am done.


There are 4 motor functions in the Goduino library. They will be explained in the section on controlling motors. 
  • motorSpeed(mot1speed, mot2speed)  Sets speed for both motors.
  • motorStop(motorNum)  Stops a motor.
  • motorForward(motorNum)  Spins a motor in one direction.
  • motorBack(motorNum) Spins a motor in the reverse direction.
The GOduino III motor library and other support files can be downloaded from Github:


Step 1: The Eagle Schematic

The GOduino III is Open Source Hardware so anyone can download and reuse the design files from Github in Eagle 6.x formats.

<p>can I plug some steppers in the board?</p>
<p>can I plug some steppers in the board?</p>
<p>I'm new at this &quot;robot controller&quot; stuff, but want to learn more about it. So, I'm guessing you don't actually sell the GOduino III package? I'm particularly interested in building the TV Volume Loudness Guard using Arduino, because I despise the loudness of commercials on TV. How do I get started with something I can build on? Thanks</p>
<p>will this work with a BIP stepper motor?</p>
<p>I keep getting This is not an Eagle file...when I try to open the .brd from your site.</p><p>could ya mebbe put a link here too? Much Thanks! Awesome information delivery!!</p>
Hey, awesome tutorial! I was just wandering what the difference between your bread boarded version and this are, because i am having troubles following this and think it easier to follow the breadboard, Thanks!
thank you for the interest to :=) i'm work also for buiding un autonmous car and your goduino board will hlep me for this project
good work Thanks :=) <br>
Thanks. Love your Mini 2-wheel robot :)
very 9c pro! <br>
Fantastic! Where did you order the PCB printing?
You can try these guys <br>http://batchpcb.com

About This Instructable


36 favorites


Bio: Did I unplug the solder iron?
More by techbitar: IR Remote Control Station for Android - TURN THE TV DOWN SensoDuino: Turn Your Android Phone into a Wireless Sensors Hub for Arduino Modify The HC-05 Bluetooth Module Defaults Using AT Commands
Add instructable to: