Instructables

How to make your own Arduino board

Featured
If your are like me which I am guessing you are, then ever since you got into doing stuff with arduino you have wanted to make your own arduino board. You may be surprised to find out that making the prototyping board is actually very easy, and can have several advantages over using the commercially sold board. For one thing, All the components together cost a little over 15 US dollars as opposed to the $30 that the Uno board sells for. second, you may not actually want a board, but may simply want the atmega chip as the heart of the project, like if you are making a synthesizer or even a robot. In that case, you can just attach the  hardware necessary to use the chip, and solder to the pins you need to use without needing the board. Another advantage is making shields. You have probably noticed that digital pins 7 and 8 are not the standard distance apart, which makes it difficult to make your own custom shields without paying the $15 dollars for a protoshield every time you make one. But if you make your own board on perfboard, the headers will be the standard distance apart and you can make your own shields with ease. Also, you may need to permanently add the board to your project, and for that you may not want to use the more expensive arduino boards. This board however is half the price, and easy to add to custom projects.

The only down side is that some parts of the arduino are kind of hard to build on perfboard. Most notably the Serial to usb adapter chip, which allows the microcontroller to interface with the computer through usb. You could use a good old RS232 jack, but they are not on a lot of newer computers. So to program your homemade board you will either need a break out board which does have the chip (get one here: http://www.jameco.com/webapp/wcs/stores/servlet/Product_10001_10001_2117341_-1), or an arduino Uno or clone board to program the chip ( I used the former.)

Either way it is a fun and informative project.
 
Remove these adsRemove these ads by Signing Up

Step 1: Materials

All of these materials can be purchased as a bundle here (except for the power jack and female headers: http://www.jameco.com/webapp/wcs/stores/servlet/Product_10001_10001_2151259_-1

 
 otherwise here is the parts list:
-perfboard
-two 10 uf electrolytic capacitors
-two 10 uf tantalum capacitors
-7805 voltage regulator (5v)
-LM1117T-3.3 voltage regulator(3.3v)
-green LED
-red LED
-two 150 ohm resistors
-10k resistor
-one 0.1 uf capacitor (ceramic disk)
-two 22 pf capacitors (ceramic disk)
-16 MHz crystal oscillator
-momentary push button switch
-jumper wires
-female headers (I used three rows of eight)
-row of 6 male headers
-female wall wart power jack
-ATmega328 with bootloader
-28 pin DIP IC socket

Step 2: Install the socket

The first step is after finding a good sized perfboard is to find a good place for the chip, and place the IC socket where you want it paying attention to the notch witch will be matched with the notch on the chip. also find where you want your power jack. You should place it on the edge of the board probably in the corner. I widened the holes on the board with a 1/16 inch drill bit, but still had to fold the leads on the jack using needle nosed pliers to get it to fit through. On the jack, the pin on the back connecting to the post on the inside is positive, and the one on the bottom connected to the metal on the inside is ground (the pin on the side is not needed. You could solder it for extra support, but I just broke it off). Remember this when connecting the regulators.

Step 3: Adding the 5v regulator

Now it is time to add the five volt regulator. This is technically the only regulator you need to power the chip, but if you want a 3.3v pin (some breakout boards or sensors require 3.3v so the pin is nice to have), you will need to add the 3.3v regulator. These regulators require two decoupling capacitors each. Holding the 7805 printed side facing you, and the pins pointing down, the one furthest left is the input, the center is ground and the furthest right is the output. connect one 10 uf electrolytic capacitor to between the output and ground and the input and ground, being sure to connect the smaller leg to ground. connect the positive from the power jack to the furthest input pin, and ground from the power jack to the center pin.

Step 4: Adding the 3.3v regulator

Picture of adding the 3.3v regulator
It is very important to remember that 3.3v regulator does not have the same pinout as the 7805. With the printed side towards you and the pins down the one furthest to the left is ground, the center is the output, and the furthest right is the input. Again you will need two decoupling capacitors. connect one of the 10 uf tantalum caps between output and ground and the other between input and ground paying attention to polarity. the positive lead should be labeled on the front of the cap, the other is negative, and be sure negative leads on these caps get connected to the furthest left pin on the regulator.

Step 5: Indicator LED

Next you are going to connect the green LED to the output of the 7805 regulator to indicate when power is connected to the board. Connect the anode of the LED (longer leg) to the 150 ohm resistor, and then connect the resistor to the output pin of the 7805. connect the cathode (shorter leg, also indicated by being next to the flat side of the LED) to the center pin of the 7805. Once you do this it would be a good idea to plug it in to make sure you made all of the right connections. Once you are sure everything is right, you can move on.

Step 6: Connecting power and ground pins

Picture of Connecting power and ground pins
IMG_0964.JPG
Now, you will begin making connections on the chip. connect pins 7, 20 and 21 to five volts and pins 8 and 22 to ground.

Step 9: LED on pin 13

Connect the red LED's anode to pin 19 on the chip (pin 19 is digital pin13 on the arduino, refer to pin diagram on next step) and the cathode to ground through a 150 ohm resistor 

Step 10: Connecting the female headers

For starters you should probably label each pin on your female headers to avoid confusion later. then solder the headers to the board and connect them to the respective pin on the chip, according to the pin diagram above.

This process is very tedious, so just have some patience and you should be fine. Also planning out how you are going to connect everything before hand will go a long way. You will probably have a lot of wires intersecting. after a while I was forced to start connecting pins on the bottom of the board to prevent this.

Step 11: ICSP headers

On the opposite end of the board from the power jack, solder the row of 6 male headers. connect the first pin on these to pin one on the chip through a 0.1 uf capacitor, the second to pin 3, the third to pin 2, the fourth to five volts, the fifth does not get connected, and connect the sixth to ground. 

You can use these pins to program the chip using the breakout board mentioned earlier.

Step 12: Programming with the arduino uno

Picture of Programming with the arduino uno
IMG_0971.JPG
To program the chip with the uno board, I simply pried the chip on the arduino board off, and replaced it with the new chip. I then uploaded whatever sketch I wanted to use the same way you would any other. Once program I pried it out again and placed it in the new arduino board. 

Anything you can do with the arduino (except serial read, and other things that require constant interface with the computer) can be done on the Homemade arduino in this way.

Step 13: Finished

Now you are finished, and can use your new homemade arduino prototyping board for any project you want. As always if you have any questions comments, of problems leave a comment and I will do my best to help you. Also please rate this instructable.

Have fun!
chan2005yesterday

you built this on my birthday

ra9420 days ago

hi . does anyone here have pcb of this arduino ?

if have please send to me tnx .

raminsk8er@gmail.com

ra94 ra9420 days ago

or schematic

Abirboy23 days ago

super i like it

tnagchandi25 days ago
I really love the idea of making an arduino of our own.... thanx for such a nice explaination.
Can you please tell me that whether it can be used for bluetooth connectivity as for my project i need it.
mauro89281 month ago

Hi! I'm pretty amazed with this project and wanna try to do my own homemade Arduino board, so I'll really appreciate if you could please send me the schematic circuit to my email mauro-8928@hotmail.com. Thanks a lot!

syedj948 months ago
For those who are going with the breakout board or the Serial to USB converter chip, here is a cheap option: http://www.ebay.com/itm/USB-To-RS232-TTL-Auto-Converter-Module-Converter-Adapter-For-Arduino-DR-/350838170735?pt=LH_DefaultDomain_0&hash=item51af95a46f
Its only a dollar with free shipping... reliable seller. But Its from China so It will take longer to ship
abrogard syedj942 months ago

I just went to eBay and these are listed at $51 ??

Thanks for the tip on the Serial to USB converter chip. I ordered 6 of them.
How do you program it without a connection to the computer or a set amount of storage
jmooney18 months ago
Arduinos for stupid people
mrinc jmooney13 months ago
Arduino is a rapid prototyping board that has made its way in to development.

So instead of wasting tons of time trying to develop custom things with pic programmers, you can create what you want fairly quickly.

You can then move your project to a programmable pic and custom project.

But most people seem to be using them in end projects too.
matronom jmooney13 months ago
no arduino is for people who wants program projects easier and faster, pic is hard to program and it takes away all the fun doing it
bashbash08 months ago
Hey mate, thanks for great work you did but i was wondering what software you are using to make the circuit as long as proteus not having all components
vasusrinu9 months ago
Hi,this is awsome. please send me the circuit diagram to my e-mail id
vasusrinu987@gmail.com.
send me the circuit diagram as early as possible...i made it but it is not working
Ja3.141610 months ago
I want to make an arduino bike speedometer ( http://www.instructables.com/id/Arduino-Bike-Speedometer/?ALLSTEPS ) can i use this diy board???
jasshopper11 months ago
What if you don't have an arduino board to program it, any other ways?(i'm completely new to this so...)
Higgs Boson (author)  jasshopper11 months ago
FTDI breakout board connecting to the headers.
any way to make that? coz when i searched the web for it in india it costs more than my budget, so if yes any schematic or a site where i could get started?
Higgs Boson (author)  jasshopper11 months ago
There are schematics on arduino.cc, but you'll have to disregard some of the things regarding the USB serial converter chip. Just focus on the connections vital to the ATmega328 (power, ground, clock, and of course the I/o pins). I should hopefully have a schematic upo soon, but I have been kind of busy with school lately.
I found a schematic pls check if it would work or not, and is there any thing special about the 4 LEDS (TX LED & RX LED...) in the schematic or would any leds work in its place? also what is that 'XB24 AUI 001', is it necessary?
ftdi breakuot.png
Higgs Boson (author)  jasshopper11 months ago
You should be able to exclude the XB. interesting that you found a schematic including one though. Keep in mind though that the FT232R is only SMD, so it will be difficult, but not impossible, to solder (especially with perfboard). Good luck!
can you suggest a better way? like fixing it to a pcb of some kind and taking wires connected to each pin?
Higgs Boson (author)  jasshopper11 months ago
You'll sometimes see boards for sale that connect the SMD pins to headers to make it work like a DIP, but otherwise just soldering some thin wires (28 gauge or so) to each pin to make the connections should work okay.
I've made a schematic inspired from your's please check if it is correct and there is a blank in it please fill it.
thanks for all the help.
this is the schematic.
Arduino circuit.png
Higgs Boson (author)  jasshopper11 months ago
Oh, and the breakout board, those are kind of tricky because of the chip they are based around, but you could probably do it if you want to. I am not sure where to find schematics. Google may know...
jasshopper11 months ago
can you use this for making a led cube? and is there a better schematic?
Higgs Boson (author)  jasshopper11 months ago
Yes you can, and I am working on the schematic.
I know this is a stupid question, but I must ask if that Arduino Board can be programmed in the Arduino's software?

Thanks for the post :D
Higgs Boson (author)  dcárdenas51 year ago
If you have an FTDI breakout board you can program with the arduino IDE. You may have to change the board settings though...
ahmed21blr1 year ago
Appreciate all your hardwork and putting this post. If you could post an instructable including "how to boot load an raw atmega328 / 168 / 8" then its truly making your own arduino board. Cause the bootloader is what makes it an arduino. 

Good work.
Higgs Boson (author)  ahmed21blr1 year ago
Thanks. I will work on it, but that is something I am still in the process of learning how to do. There are a few things that I may try, But many people don't seem to consider it actually doing it myself. I'll keep experimenting and post something when I find something presentable.
Hey Higgs Boson,

Thats a good sign, Looking forward for your work. :)
Tanmay Das1 year ago
Can I use an ATTiny45 in place of ATmega328. (my board has to be very thin)
Can I use the same components and connections or do I have to change it.
It is my first project with MCs, so the more help the better.
Higgs Boson (author)  Tanmay Das1 year ago
No. The ATtiny45 (and 85) is completely different from the ATmega. For starters, the ATmega328 has 28 pins. The ATtiny has 8. The ATmega has 20 I/O pins and the tiny has 5. The mega has a clock pin the tiny does not. The tiny also has a lot less flash and so cannot execute as complex or as long sketches as the mega. While the two of them are both atmel, and yes can both be programmed with the arduino IDE, they are worlds apart, and require much different hardware to operate. If you want to use a tiny look up ATtiny programming shields on this site and you will find many good instructables. Otherwise for this project you have to use an ATmega chip.
Thanks
(removed by author or community request)
The header pins are soldered on the side of the board opposite to the regulators. They are near the edge and kind of hard to see. Sorry about that.
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!