Instructables
loading
loading
Picture of DIY Arduino or
DSCF2307.JPG
DSCF2292.JPG
THIS ENTIRE TUTORIAL IS ALSO AVAILABLE ON MY WEBSITE AT
http://www.theparsley.com/arduino/diy/

To quote the Arduino website:

"Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments."

I got one a while ago and life has never been the same. Here is the official website for Arduino: http://www.arduino.cc/

There are a bunch of tutorials that show you how to build your own Arduino on a breadboard, called Hack-duinos or something similar. While these are handy, I prefer to use more solid electronic devices. So I build them with a home made PCB and solder all the components on there myself.

Some may say, "This task seems time consuming and a tad expensive... Why not just kerplunk the 30-some-odd bucks for an REAL Arduino?" Well, some of us enjoy the craziness of making something completely from scratch -- and in doing so, learning more about the device you are using.

This tutorial will take you through all the steps of making your own printed circuit board(PCB), building an Arduino or "DIY-Duino" and loading your own programs/sketches onto the board you have built.
 
Remove these adsRemove these ads by Signing Up

Step 1: Materials List -- For All Steps

Picture of Materials List -- For All Steps

COMPLETE MATERIALS LIST
You will find detail on these materials throughout the specific steps of this instructable.

// ------- PCB MATERIALS LIST ------- //
Copper Board: 12" x 12"
You can buy a smaller board, if you want.
I buy the 12x12 because I use it for a lot of projects.
http://www.parts-express.com/pe/showdetl.cfm?Partnumber=055-140

DIY-Duino Pattern sheet
Click here to download the Pattern file
You must use this file to ensure the proper resolution and size of the image.

Photo Paper
High-quality photo paper with a glossy finish is the best to use.

Laser Printer
Or copies from a place like Kinkos or Staples.

Fine grain sandpaper
To rough up the board and make it able to absorb the pattern better.

Common, houshold tape
For securing the pattern to the copper board

Piece of scrap cardboard
This will be your makeshift ironing board.

Paper towels
To put over your board before ironing.

Clothes Iron
Use one you don't mind being ruined.
Chances are, it will get funky.

Plastic container
To bathe your board in warm water after ironing.

Tweezers
Not necessary, but can be helpfull for peeling off transfer remnants.

//------- ETCHING MATERIALS LIST -------//
Jug of Muriatic Acid
You can get this at the hardware store.

Container of Laquor Remover
Removes the toner once the pattern is etched.
Also useful if you make mistakes on transfering your pattern.
You can remove the toner and try again.
You can get this at the hardware store

Container of Hydrogen Peroxide
Any Grocery Store

Standard kitchen paper towels
Use for the ironing, agitating the acid solution, and removing the toner with the lacquer remover

(2) Plastic containers
(1 for the acid mixture, one to rinse, one to bathe the PCB in hot water)

Acid disposal container
Size this, depending on how much you're using.

Pair of plastic dishwashing gloves
You can often find a better, more durable pair of gloves at the hardware store -- right near the muriatic acid oddly enough.

Other Protection
Breathing and eye protection.

Package of photo paper
I if you have access to a laser printer or laser copier. Otherwise, skip this.

1/4 Cup Measuring Cup
Use one that you don't mind being destroyed. Once you use this to measure out the Muriatic Acid, It should only be used for this purpose. NEVER use it to measure food again.

//------- DIY-DUINO COMPONENTS LIST -------//
(3) Little bits of wire

DIP Sockets Solder Tail - 28-Pin 0.3"
http://www.sparkfun.com/products/7942
$1.50

ATmega328 with Arduino Bootloader
http://www.sparkfun.com/products/9217
$5.50

Basic LED - Green (or whatever color tussles your vessel)
http://www.sparkfun.com/products/9650
$0.35

Resistor 330 Ohm 1/6th Watt PTH
-- 220 Ohm will work fine too if you have one
http://www.sparkfun.com/products/8377
$0.25

Resistor 10k Ohm 1/6th Watt PTH
http://www.sparkfun.com/products/8374
$0.25

Mini Push Button Switch
http://www.sparkfun.com/products/97
$0.35

(2) Electrolytic Decoupling Capacitors - 10uF/25V
http://www.sparkfun.com/products/523
$0.45x2=$0.90

Voltage Regulator - 5V
http://www.sparkfun.com/products/107
$1.25

(1) Crystal 16MHz
http://www.sparkfun.com/products/536
$0.95

(2) Capacitor Ceramic 22pf
http://www.sparkfun.com/products/8571
$0.25x2=$0.50

(3) Female Headers
You'll need to cut them, and it's a little trickey...
http://www.sparkfun.com/products/115

(4) Standoffs
From Radio Shack or
From Sparkfun

//------- PROGRAMMING MATERIALS LIST -------//
FT232RL USB to Serial

http://www.sparkfun.com/products/718
$14.95

A breadboard
4 short wires
4 longer wires
An LED-- to test if your upload was a success

//------- TOOLS LIST-------//
Dremel or Hacksaw
I suggest buying a Dremel or other rotary tool for this instructable, you will probably need a Dremel to drill the holes.

1/32" Drill bit
I don't know of one of these for a normal drill, neither did the lady at Lowes -- again... Dremel

Metal-cutting disc for Dremel
To cut out the copperboard

Solder
Flux
Desoldering braid -- for errors!
Soldering Iron
Soldering Gripper

1-40 of 229Next »

Thanks Robonerd. I just built the DIY-duino and I'm pretty pleased. Now all I have to do is make something with it!

Great instructions!

robonerd (author)  baelza.bubba1 month ago
My pleasure, I'm glad you found it useful.

Actually ... when I tried to actually do something with it ... I got nada. I originally used your design "as is" and I got a pretty LED :) I then re-vectored the design in Fritzing, transferred, etched and populated the board. Again, pretty LED. I then pulled the ATMEGA328P from my Uno and stuffed it in the DIP, powered it up and ... nothin'.

Can you see what I may have done wrong?

I've built a bunch of ATTiny84 and ATTiny85 breakouts, no problems. But this one has me stumped.

Any help would be appreciated. I suspect that I have done something stupid :) But, Hells ... how else do you learn?

Thanks robonerd

DIYDuino_pcb.pngDIYDuino.jpgFritzed_DIYDuino01.jpgFritzed_DIYDuino02.jpgFritzed_DIYDuino03.jpg
robonerd (author)  baelza.bubba8 days ago

The setup looks good. I know you probably did this, but did you make sure to put the chip in with the notch facing toward the button? Check soldering - make sure it's clean and thorough. If the V and Ground were NOT complete, then you would not have your pretty LED. So we know that at least these are complete. So just look at some of the other traces and soldering. Pins 6-7-8 look like they may need some more work. Check the copper on the board. If there's some spots where it's thin or grainy, it may not be completing. Then you will have to either patch it with solder or make a new board. Did the sketch work when it was on your Arduino?

duino_notes.jpg

Thanks for taking the time to have a look at the images. The notch is facing the button. I'll paint on some more solder on 6-7-8 and recheck the connection points. When I do a continuity test from the other side, socket to socket, I get a strong response ... but who knows, it could be a problem still. The sketch works fine in the Arduino, which is one reason that the problem is a little vexing. I'll persist with getting the circuit to work! Thanks again for your time, I appreciate it.

robonerd (author)  baelza.bubba7 days ago

I'm glad to help. If the power LED is coming on, then the current is making it all the way around the board. It may be that there are some issues with the copper coming from the board to the female sockets you have for PWM analog etc. Load the basic "Blink" sketch and see if pin 13 is working. If pin 13 is working, then change the pins for the LED to go all the way down. This may help you to pinpoint if there is something not connecting. Best of luck. Don't give up, eventually you will figure it out. Post back when you have more info. Cheers.

Thanks robonerd ... I'll do a more thorough test and get back to you :)

Did you use a continuity tester to check for shorts and to check if all your traces conduct?

Hi ThijssjihT, yep, I continuity test everything ... even my toast in the morning ;) I'm a bit pedantic like that. Thanks for the suggestion :)

Next stupid questions, but better safe than sorry:

Is the voltage on the power rails, and voltage on the chip enough?

G'day again ThijssjihT, yep, I also tested the power with the multimeter and got consistent values all around (@5V after the 7805 and @9V before it). Again, thanks for the suggestion, I appreciate your thoughts

The link to PCB123 is broken. Here is a more current link :

http://www.sunstone.com/docs/pcb123/pcb123v5-2-0allinstaller.msi?sfvrsn=6

i really love reading this tutorial but don't have money to buy this stuff needed. wish to do this someday.

PriyaniP4 months ago

first thank you to share your knowledge with us ,i know to how to resize ur image to my board bcoz i print out you image but i cant set ic base properly

robonerd (author)  PriyaniP4 months ago
you shouldnt resize the image, because this will change the size of the components. you need to print it at 100 %.
before you etch the board, lay the IC on the points to be sure they match up. hope this helps you! best of luck!
tharakanwn5 months ago

I made this Arduino. Power light turning on when connect to power. I use a atmega328 with blink LED but it is not working. But when I connect to PL2303 usb-to-serial it just turn on the LED and when I press the switch it turn off that LED. Everything seems same as the project but I don't know why it is not working correctly. (I can't upload sketch from PL2303 to the chip it gives

avrdude: stk500_getsync(): not in sync: resp=0x00 - I used my original uno board to burn sketch to the chip and put that chip into the DIY Ardduino

)

robonerd (author)  tharakanwn5 months ago
hey, check the soldering around the chip. if you load from arduino and still not working some is crossed ovr somewhere in my experience.

Thank you very much. This is my first time I made a circuit board and DIY arduino..You explain everything very nicely..Please check my soldering and connection to PL2303, may be you will be able to identify what went wrong..I made two of these and both have same problem..

20141020_092746.jpg20141020_092839.jpg20141020_092605.jpg20141020_092644.jpg20141020_092700.jpg20141020_092721.jpg

I used isopropyl alcohol and brush to clean all the flux but still didn't work.Please give your suggestions..

robonerd (author)  tharakanwn5 months ago

Ah cCrud, I just noticed there was an error in the instructions. I thought I fixed a while back when another commented. But must have never saved the changes. The ceramic capictors tou need are actually .22pf (NOT .1uf) sorry, if you try this, it should work. I have edited the Instructable to show this. Hope this works!!

I changed the capacitors to 22PF and it works..yeeeeee. Everything perfect. Now I can upload sketches too. So happy...Thank you very much for your nice work..Good luck

robonerd (author)  tharakanwn5 months ago

Glad it finally worked! I'm so sorry about the error in the tutorial. I thought I had corrected this a loooong time ago. *facepalm* :-) Take care my friend!

What is the software you used to design the circuit? Is it EAGLE?

robonerd (author)  tharakanwn5 months ago

i used "PCB123" not sure if it's still around. but there is a link to it in the Instructable on step 30.

Ok, now it is night I will try change to that tomorrow night after work...Thank you very much.

Just to tell you, I have little confuse on Step 18 capacitor orientation(real board).

robonerd (author)  tharakanwn5 months ago

thanks for letting me know. I appreciate it. I fixed the graphic.

tharakanwn5 months ago
allangee5 months ago

If you put a male header on the end of the FT232 (opposite the USB) you could make your connections via that as well, correct?

robonerd (author)  allangee5 months ago

probably, but i have never tried it. give it a try and let us know. cheers!

SaurabhG7 months ago

I am just naive with micro controller and so with the arduino.I just want to know If this circuit will give PWM analog output as the original uno or duemilanove?

please help me.

robonerd (author)  SaurabhG7 months ago
Yes it will give the PWM output as Arduino. It uses the same chip.
vinvexz8 months ago

Hello. First I want to thank you for sharing this project. I created my own PCB board from your schematic using eagle, and I used different USB Serial breakout board which is UM232, but I believe it should do the same. My problem is my Arduino 1.0.5 software didn't detect the board at all. From your tutorial I saw that you change the board type to Duelimanove ATMega328, I also did it, and also the COM Port didn't detect my board. Is there any step I should do? So that I could upload my program. Thanks.

robonerd (author)  vinvexz8 months ago

Thanks for your interest in the project. If you bought the chip recently, It is likely that you have the UNO chip and not the 328. I think they stopped selling the ATMega 328 and just have the UNO now. Also ---- I know with the old 328s, there were 2 chip options, one that was blank and another that had the Arduino Bootloader loaded onto it. You need the boot loader, i think they call it "Optiboot". I hope this helps you!

vinvexz robonerd8 months ago

Thanks for the response. I solved the problem of not detected by the PC, by powering the UM232 using external source then connected it to PC. But still it says not in sync when I tried to upload the program . By 'bootloader', you mean this: http://arduino.cc/en/Tutorial/ArduinoToBreadboard ?

Oh yeah, I tried to replace the ATmega238 from my uno board and with the one I bought. It worked actually, then I took it off, put it in the new board I made, but not working.

robonerd (author)  vinvexz8 months ago

Try selecting the UNO again from the tools list to upload. I also just plug them into the arduino now to program them. Then, rip them out and put into the new board. If it's not working, check your components, make sure nothing is crossed. It's easy to get some solder over some of the components from time to time. Is the power LED coming on?

vinvexz robonerd8 months ago

Thanks and sorry, I made a connection mistake when I checked my board once again. I put the 10kOhm to reset and to ground, which it should be reset and 5V. Then after I had rewired it, I put my chip to Arduino UNO board, uploaded the program, take it out and put it on my board now it works...hehe

Yes the LED is on. I have a question, is the PWM working?

vinvexz vinvexz8 months ago

I just tried it and the PWM working....hehe. Thanks.

But I have another problem which is the Serial. I can get the value to my Serial monitor, but when I sent a command it didn't response, felt like the Arduino can't get my command. Is there anything I can do to fix it?

robonerd (author)  vinvexz8 months ago

I don't use this much on my projects. I'm sure you have likely read up on this but here is a link to serial info on the actual Arduino website.

http://arduino.cc/en/reference/serial

Sorry I can't be of more help on this issue. Please post back though, so others may share what you learned. :-)

andytangtsk11 months ago
How about using ferric chlorine to etch?
robonerd (author)  andytangtsk8 months ago

Glad to hear you got it going! PWM should work also.

1-40 of 229Next »