Build "The RevIO" (Arduino Clone) My Way by sath02
Updated Aug 23, 2012
Three months ago I submitted instructables into one of the challenges, and was selected to received Free 3D print. I chose to have my 3x3x3" 3D print instead of a famous 3D instructable robot.

My 3D print got delivered in the 123D box, to my door three week ago. Also included in the box are an instructables patch and stickers.

Thank you very much for the Free3D Print program and everyone behide this program, otherwise I won't be able to see my project moving forward to this point.

And also I got my prototype board made.

See picture 1, 2, and 3.


Updated May 30, 2012
Recently I got some comments (offline) from an expert who is in electronics field and owns a company for more than 40 years, aka gatech, regarding the way I described this instructables.  Gatech is also helping me editing this instructables and my other instructables as well.

I  looked into it. (I'm not originally speaking English as original language.) I realized that the comments are all make senses, i.e grammar, the way I phrase the sentences.  So I decided to revised this instructable accordingly.

Thanks gatech, I do really appreciated your help.

Updated April 11, 2012
Added Schematic and Board Images, Top Layer, Bottom Layer and Both Layers, Bill of Materials(BOM).


The RevIO


There are so many different sizes and shape of Arduino and Arduino compatibles available out there. Arduino  is not limited to one particular processor, the widely use micro-controller are Atmega8, Atmega168, Atmega328, Atmega1280, and Atmega2560.
Since I am familiar with Atmega328 the most, I choose Atmega328 as the brain of RevIO.

I have been used both official Arduinos (Duemianove, and Mega) and AdaFruit's Arduino clone (USB Boarduino and DC Boarduino) as well as built my own Arduino compatible for permanent task,  such as TagTool Nano.  I still like to use those boards, but at the same time I want to built an Arduino compatible that emphasize and group the communication pins other than on typical Arduino.

Arduino is designed to expose almost all the micro-controller's  input/output pins easily allowed to connect or communicate to other circuits. There are 14 digital I/O pins, six of them are optional or selectable PWM (Pulse Width Modulation) functions and six analog inputs.

On the official Arduino (Extreme, NG, Diecimila, Duemilanove, and the latest Arduino Uno) there are four header strips located on the top of the board. One 6-pin female receptacle is for power supply, both 5V and 3.3V, ground lines, Vin and Reset. The second 6-pin female receptacle is for six Analog pins. These two 6-pin female header rails are located 0.1” apart. Other two 8-pin rails located on the other side of the board, and sat 0.15” apart. These two 8-pin female header rails are used for all 14 digital I/O pins (D0 to D13.)

ATMega328 has three type of selectable functions communication protocols (I2C, SPI, and Serial Communication),  I want to separate and group these communication protocols on the same header strips. I needed to use at least nine pins, two for I2C, two for Uart Serial Comm., three for SPI , two for 5V and ground. I want to maintain the 3.3V to power the devices that require 3.3V, and an extra ground, and add the reset pin into this group too. That makes the total of 12 pins.

So I decided I to use two 14-pin connector strips on each side of the RevIO board rather than separate the connectors to two 6-pin connectors and two 8-pin connectors. It makes sense, and it is the same amount of pins on each side of Atmega328!

I want to built this Arduino compatible on a typical commercial available PC Board, without modification like trim or cut, and the size of the board should be about the same size of official Arduino board. And I want to have the board encase in the proper project case, so I could carry with me anywhere or use it in-field without fear that the board is exposed, or  I would break or do harm to the exposed board while working outdoor. And I was also thinking of a way to accommodate the wireless communication, such as affordable Xbee or Bluetooth, on the board so I could easily use “The RevIO” to communicate with another devices “wirelessly.”

The most obvious physical properties of The RevIO: 

Two 14-pin female receptacle are used instead of four female receptacle of 6 and 8-pin females receptacle.

Group the Communication ports (I2C, SPI, and Serial Comm. Ports) on one receptacle strip.

Allows piggy back breakout board or RevIO compatible shield to be stacked over.

Encase the board in the custom-designed project case.

Color Codes and IO pins ID are labeled on the project case.

Voltage regulators (both 5V and 3.3V)  are included.

XB-Buddy, or compatible Xbee adapter kit ready.

 
Remove these adsRemove these ads by Signing Up

Step 1: Schematic, and PCB images

RevIO_Schem.png
topRevIO.png
bottomRevIO.png
topBottomRevIO.png
I decided to add the schematic and Board layout of both top and bottom layers, and BOM (Bill of Materials). Just in case, if some one want to DIY the board. So one could use these schematic, board images and BOM as the reference.

Note: There are few components that appeared on the schematic that I added on later, which are
R4, R5 - 2.2K resistor for I2C bus, so I do not have to added the resistors in case I want to connect to I2C device in the future.
JP4 - 2x3 male pin header as a standard ICSP.

Note: 3.3V Voltage Regulator shown in the schematic is L78L33ACZ (Digikey #497-7288-ND) but shown in step 10 (VR2) used  MCP1700-3323 TO-92 (DigiKey #MCP1700-3302E/TO-ND) and both have different pins configuration, see datasheet for the information.
offtherails2010 says: Jul 19, 2012. 11:27 AM
SUPERB WORK !!!

GREAT instructions, im extremely impressed and have only just got into the world of anything Arduino - This is Truly AWESOME !!!

Very Very Well-Done !!!
sath02 (author) says: Jul 19, 2012. 11:33 AM
Thanks
WWC says: Jul 5, 2012. 6:48 PM
Hi
Very nice work.
How is the resonator working? Are they an exact drop in for the crystal?
Very interested as I have never used one.
sath02 (author) says: Jul 5, 2012. 7:47 PM
Hi WWC,
Thanks.
The resonator Is similar to crystal, only it has built in capacitors. It is cheaper than crystal. It has a reasonable precision timer devices, but not as good as crystal.
It is easy to use. Resonator has three leads, since it has capacitors built in, just connect middle lead to ground, and other two pins to X1 and X2 to micro controller. Unlike the crystal, has only two leads, needs two more capacitors.
Hope this help.
Libahunt says: Mar 31, 2012. 1:10 AM
Absolutely excellent job and excellent tutorial!
Congrats on first 'ible. :)
sath02 (author) says: Mar 31, 2012. 10:32 AM
Thanks.
UOS says: Mar 31, 2012. 5:29 AM
Good job :)
sath02 (author) says: Mar 31, 2012. 10:31 AM
Thanks.
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!