loading

Hello everyone! In this Instructable, I'll go through the process of making a minimal Arduino Uno compatible board with can be programmed using any usb-uart converters(e.g. FTDI board). The complete board may or may not be a cheaper solution, depending on where you buy your stuff. For me, it took less than Rs.200 (~$3).

Here I'll use simple and quick toner transfer method to create the PCB. While using tools like saw and box cutter to carve out the shape. The board itself is almost 90% compatible with the original Uno.. a few pins are missing which I'll go through in the following step.

So, Let's get started..

Step 1: Tools Required.

  • Soldering Station.
Although you can use cheaper irons but a good quality soldering station is recommended if you're into electronics.
  • Ferric Chloride.
For the etching process
  • Laser printer.
I'm using Canon MF4720w printer, But any good quality Laser printer will do the job.
  • Steel wool.
For cleaning the PCB
  • Cloths iron.
Use any iron and set the temperature setting to maximum
  • Safetly gloves and Eye protection.
Ferric chloride can be very toxic. Reasonable precaution should be taken while handling such chemicals.
  • Saw and box cutter.
For the cutting the PCB to size.
  • A computer.
Well.. Duh

Step 2: Components Required.

  • Copper clad board
Here, only single sided board is required. But you can go ahead and make a double sided one.
  • Atmega328p-pu with IC base
Not that it's not 328-pu. it should be 328p-pu
  • female headers
8-pin x2
6-pin x2
10-pin x1
  • 3x2 male ISP header
for burning the bootloader
  • 16mhz crystal
  • Some jumper cables
  • 4x 3mm LEDs
select color according to your needs
  • 5x 0.1uf 0603 Capacitors
  • 2x 22pf 1206 capacitors
  • MCP1700T 3.3v reglator
I used this because I have several of these laying around. You can use LM1117, but you'll have to modify the circuit accordingly.
  • 4x 470e 0603 resistors
  • 2x 1k 0603 resistors
  • 1x 10k 0603 resistors
  • A DC jack
optional
  • MCP1703 5v requlator
optional! if you're not using a dc jack, then this is not required.

Step 3: Designing the Circuit.

As I mentioned in the Intro, It's based on the arduino Uno board. So the first thing we'll do is to go to THIS website to download the source PCB file from the website.

download the eagle files as shown in the following picture.

Extract and copy the folder to your eagle projects directory. by default, it's located as $USER$\documents\eagle\

Now open up EagleCAD and navigate as follows.



Open the *.sch file and you'll be presented with the following window



Now start removing stuff and only leave the atmega328p IC the female headers and the ISP header. After that, start adding components as shown in the following picture.



The board has a few pins that are not populated... i.e. AREF, IOREF, SDA/SCL pins along side digital pin 13 (but you can always use pins A4 and A5 if you want to use i2C) .

You can also download the PCB file already compiled, from the first step. Now that we've created our schematics. Let's move on to creating the actual PCB layout.

Step 4: Designing the PCB Layout.

After we removed all un-necessary components from the original file, We'll get a PCB layout as follows.


After adding the required components layout according to the following



As stated in the previous step, You can download this file from the first step.

Step 5: Printing the PCB Layout

Switch to the Board layout window in EagleCAD and click "CAM processor". A new window will open.

Now, from "File" menu click open>Job. and select "schematics.cam" file from the dialog. After that, click "process job" on the bottom of the "CAM processor" window. Close everything up and open the folder where youe eagle schematics and board files are stored.

You'll notice that a new *.eps file is created. Open that file using photoshop. you'll be greeted with the following window(Photoshop CC 2017)



Click open and following window will appear.



NOTE: Since this is a bottom layer PCB, it doesn't need to be mirrored before printing.

Now print this file on a glossy side of the paper. and prepare for the PCB printing and etching procedure.

Step 6: Printing the Layout on the Copper Clad Board.

Here, I'll be using the popular toner transfer method. You can easily good tutorials for it... there are literally thousands of tutorials available on youtube , instructables and other websites. So there's no point in showing yet another tutorial.. But here's the pcb in etching process.



After etching, Cutting and drilling holes. the PCB looks like this.

Step 7: Printing and Transfer of Top Layer Silk Screen(sort Of)

It's time to open EagleCAD again. Open the arduino uno project, switch to board layout and click on "CAM processor". Once again, open schmatics.cam file in the cam processor. But this time, from the layers list on the right side of the window, select only "tPlace" and "tName" and deselect all others. just like follows.



Click "process job". And open the same *.eps file in the project folder using photoshop. And then mirror it so that it looks like as follows.



Now print this file. Again on glossy paper. Align the print on the top layer of the previously etched PCB. and use same toner transfer method to transfer top silkscreen toner to the pcb. It should look like the following.



Note that it's not clearly visible. So later i added a drop of super glue to make it more clear to see the text.(you can see in the Thumbnail of the project.)

Step 8: Soldering.

Now begins the soldering process.



The components can be seen from the schematics and pcb layout that I've attached in the intro.
After the Soldering process it'll (hopefully) look like this.



And the bottom layer looks like this.

Step 9: Burning the Bootloader.

The chip I bought had the bootloader preinstalled but you can easily burn it yourself using an AVR programmer or an arduino using the 6-pin ISP header. You can do this from the Arduino's IDE itself.

Step 10: Finish

Thanks for your time.

please leave a comment if you liked the project. or if you may have noticed any mistake.

Have a nice day.

Awesome work
<p>thanks! glad you liked it.</p>
<p>Yes, buying an arduinoclone is probably cheaper, but the satisfaction.......<br>great looking board</p>
<p>thank you..</p>
<p>Nice project. Very useful when we don't want to leave an original arduino in our project and It's arduino hats compatible.<br>But when Arduino clones are so cheap i think making one on my own is more expensive. Especially if we use arduino pro mini :)<br>Anyway. Great project.</p>
<p>thanks.. agreed Arduino clones are cheaper, but only if you order off Chinese sites like aliexpress.. buying from a local market can be a bit expensive.. but anyways... That's not why I made it... First I wanted to try out the silkscreen technique and as a DIYer, I love to make things even when it turns out to be more expensive that the aftermarket Alternative.</p><p>Thanks :)</p>
And as you agreed with above, it's much more rewarding. Throw in the fact that you don't even need the layout to be like the info in the first place, you can save a ton of space laying out the circuit as you need it. One of the great benefits of the project is learning how to get away from the Arduino itself and using your own design. <br><br>I still use the Arduino library, but I keep my uno for prototyping and testing. once I'm happy with how the circuit works, I either etch a board or I do it all on perfboard and save myself a fortune not buying Arduinos. the chips are not that expensive and I don't need power indicators wasting battery. <br><br>Great job, brother. I love seeing Instructibles like this. I think it's great that people are getting away from throwing an entire Uno into a project and making their own. As for programming, I'd suggest looking for an AVR Dragon. They're well worth the money considering they can program a wide range of Atmel chips.
<p>I totally agree with you and that is what I used to do... but nowadays the promini is only dimes more expensive than a bare 328, so yes I do a lot of development on a UNO, but when it comes down to something permanent the promini is a good option. Nevertheless, I have quite some DIY boards with a 328</p>
Agreed, i can get an uno knockoff pretty cheap. But i still want to make one... Great instructions. I've been looking for something to try to print and etch.
<p>Totally looking forward to see how it turns out. </p>
<p>Clones might be cheap, but doing your own board is more rewarding and forces you to to get to know the 328P's etc. a lot better. It's also an opportunity to get away from the wretched non-standard pin spacing on the Unos etc.</p><p>Nick Gammon.au has a very good guide to bare board Atmels and a very good programming and bootloading sketch.</p><p>It also got me interested in the ATTiny which can be even more rewarding</p><p>The only other significant cost is the FDTI board, but this is an essential bit of kit anyhow</p>
<p>also very interested in attiny but the absence of i2c is a big issue for me.</p>
<p>Attiny's can do (or at least emulate) I2C. I have a BMP sensor and an i2C LCD on an Attiny85</p>
<p>I agree, but the nonstandard spacing is found on many shields as well.....<br>But, when one is designing a DIY board... perhaps could cater for standard and non standard pinheaders&gt;<br><br>Building own Arduino's got me into those loveable Attiny's as well<br>FTDI boards don't need need to cost that much anymore</p>
<p>Agreed! having like 100s of these minimal UNOs will significantly cut the cost and I just need one FTDI board anyways. :)</p>
<p>Very nice project.</p><p>Wouldn't be much of a problem to use thru hole components with this design now would it?</p><p>Also: not really sure how to modify the board for the LM1117 and the L7805...</p>
<p>Thanks!</p><p>It should be fairly straight forward to use through-hole voltage regulators in the board.. You should be able to use EagleCAD.</p>
<p>thanking for shearing a informative article</p>
<p>very nice! The beauty of being a hobbyist, is to see what we handcrafted... cheers!</p>
<p>Genial ! Tanks for all the community !</p>
<p>One of the COOLEST things I have ever seen!!....</p>
<p>Thanks! glad you liked it.</p>
<p>Wow Great Project!</p><p>But There are 6 pin on your arduino !!!</p><p>How to Program it!!!!!.</p>
You can program it using a standard ftdi usb to serial converter... The header is right next to the red and green LED. <br><br>If you're asking about bootloading, then you can use the 6pin ISP header just as you would on any other Arduino Uno board.<br><br>Cheers!

About This Instructable

21,052views

181favorites

Bio: Hi! My name is Suraj. I'm a DIY electronics enthusiast who loves to make circuits and stuff.
More by Suraj Bhawal:Minimal Arduino UNO (a.k.a. Arduino Pro) Understanding IR protocol of Air Conditoner's remotes DIY Media Center Remote 
Add instructable to: