Introduction: How to Make Your Own Homemade Arduino Uno R3

If you're like me, after I got my Arduino and performed a final programming on my first chip, I wanted to pull it off my Arduino Uno R3 and put it on my own circuit. This would also free up my Arduino for future projects. After reading through many web pages and forums, I was able to put together this Instructable. I wanted to have the information I learned all in one place, and easy to follow.Comments and suggestions are welcome and appreciated as I'm still trying to learn all this stuff.

Step 1: Step 1: Parts Needed

Picture of Step 1: Parts Needed

To do this, you'll need:

Basic Parts for wiring up Arduino

  • A breadboard 22 AWG wire
  • 7805 Voltage regulator
  • 2 LEDs
  • 2 220 Ohm resistors
  • 1 10k Ohm resistor
  • 2 10 uF capacitors
  • 16 MHz clock crystal
  • 2 22 pF capacitors
  • small momentary normally open ("off") button

Step 2: Step 2: Adding Circuitry for a Power Supply

Picture of Step 2: Adding Circuitry for a Power Supply

Here I am using 5V mobile charger instead of LM7805 (This version uses a 5V regulated power supply). It's simple and save some space on board. You can you LM7805 but after that you have to use a higher voltage supply that's why I'm using 5V constant charger.

Step 3: Step 3: ATMEGA8/168/328 Basics

Picture of Step 3: ATMEGA8/168/328 Basics

Before moving on, check out this image. It's a great resource for learning what each of the pins on your Atmega chip do in relation to the Arduino's functions. This will clarify a lot of confusion behind why you hook up certain pins the way you do. For even more detailed information, take a peek at the datasheet for the Atmega168 (short version) (long version). Here's the sheet for the Atmega328 (short version) (long version)

Step 4: Step 4: Start the Project

Picture of Step 4: Start the Project

Start by connecting a 10k ohm pullup resistor to +5V from the RESET pin in order to prevent the chip from resetting itself during normal operation. The RESET pin reboots the chip when pulled down to ground.

Pin 7 - Vcc - Digital Supply Voltage

Pin 8 - GND

Pin 22 - GND

Pin 21 - AREF - Analog reference pin for ADC

Pin 20 - AVcc - Suppply voltage for the ADC converter.

Needs to be connected to power if ADC isn't being used and to power via a low-pass filter if it is (a low pass filter is a circuit that reduces noise from the power source. This example isn't using one)

Step 5: Step 5: Adding Cristal

Picture of Step 5: Adding Cristal

Add a 16 MHz external clock between pin 9 and 10, and add two 22 pF capacitors running to ground from each of those pins.

Step 6: Step 6: Adding Reset Switch

Picture of Step 6: Adding Reset Switch

Add the small tactile switch so that you can reset the Arduino whenever we'd like and prepare the chip for uploading a new program. A quick momentary press of this switch will reset the chip when needed. Add the switch just above the top of the Atmega chip crossing the gap in the breadboard. Then, add a wire from the bottom left leg of the switch to the RESET pin of the Atmega chip and a wire from the top left leg of the switch to ground.

Step 7: Step 7: LED Leads on Arduino Pin 13

Picture of Step 7: LED Leads on Arduino Pin 13

The chip used on this board is actually already programmed using the blink_led program that comes with the Arduino software. If you already have an Arduino printed circuit board running, it is a good idea to go ahead and check the breadboard version you are building with a chip you know works. Pull the chip from your working Arduino and try it on this board. The blink_led program blinks pin 13. Pin 13 on the Arduino is NOT the AVR ATMEGA8-16PU/ATMEGA168-16PU pin 13. It is actually pin 19 on the Atmega chip.

Finally, add the LED. The long leg or the anode connects to the red wire and the short leg or the cathode connects to the 220 ohm resistor going to ground.

Step 8: Step 8: Arduino-Ready!

Picture of Step 8: Arduino-Ready!

At this point if you had already programmed your chip somewhere else and didn't need this breadboard circuit to reprogram the chip, you could stop here. But part of the fun is in-circuit programming so keep going to really make a full USB-Arduino-circuit on a breadboard!

Step 9: Step 9: Software to Be Used

Picture of Step 9: Software to Be Used

To make this Techduino Board I used Circuit Wizard Trial Version Software. You can use It or I'm providing the required circuit diagram and PCB layout here.

Thanks For viewing my project.


DavidV12 (author)2017-07-19

Where do you get the idea that AREF should be connected to +5V? Look at the schematics for any Atmel-based arduino and the datasheets.

getskumar.kumar (author)DavidV122017-07-21

May be you are right because I was confused too. But I just followed the arduino site.

For your information it works properly.

DavidV12 (author)getskumar.kumar2017-07-22

FYI, every arduino design has left that pin floating such that you have the option to attach an external voltage reference. Tieing it to +5v does not give you that option, and can even cause damage to the MCU by a badly written program.

MUHFARISYAH (author)2017-07-19

but it's not a finished product is guess, and how to programme the chip.

You can program it by FT232RL FTDI USB to TTL Serial Adapter Module