ArduinoISP | Make Your Own Arduino| Learn to Burn Bootloader Onto ATmega328P-PU

Introduction: ArduinoISP | Make Your Own Arduino| Learn to Burn Bootloader Onto ATmega328P-PU


In this Instructables we shall learn to use Arduino Uno Board as an AVR ISP( In-System Programmer).

This allows you to use the Arduino to burn Bootloader onto AVR like ATmega328P-PU or ATmega168.

This helps you to make your Arduino at home for very inexpensively and very easily. The Cost of your project can be reduced and the bulky circuit board of Arduino can be minimized because we are using the ATmega328P-PU chip as standalone device.

The circuit diagrams, bread board connections and download links are provided in the last step of this instructables.

You can watch my video for better understanding.

Lets Begin!!!!

Step 1: Materials Required

Very Few Components are required for this project. The list of Components are given below

  1. Arduino UNO (or any compatible board)
  2. ATmega328P-PU
  3. 16 MHz Crystal
  4. 47 uF Capacitor
  5. 22 pF Capacitor x2
  6. 100ohm+10ohm = 110ohm Resistors
  7. Bread Board
  8. Connector Wires
  9. LED
  10. 220 ohm resistor

Step 2: Upload the ArduinoISP Sketch

Before we proceed make sure you have ATmega328P-PU andNot ATmega328-PU. Because the device signature of both the Micro Controller chips are different. So this method of burning Boot loader will not Work for IC's With different device signature.

First step is to upload the ArduinoISP Sketch into Arduino UNO Board. Follow the instructions

  1. Open the Arduino IDE and in Examples open ArduinoISP Sketch. Path: File>Examples>ArduinoISP
  2. Connect the Arduino Uno board to USB of your PC.
  3. Select the appropriate Board(Ex: UNO) and COM Port( ex: COM6). Path: Tools>Board>Arduino UNO
  4. Upload the sketch

Step 3: Make Circuit Diagram to Burn Boot Loader Onto ATmega 328P-PU

You Can Skip this Step If your Micro Controller chip already has boot loader as stated by Manufacturer/supplier.

Make the circuit connections as shown in the above diagram.

The breadboard connections and also the schematic is given. you can follow whichever is comfortable for you.

I have attached the Eagle Schematic file and Fritzing file for more clarity of content.

Follow the steps to Burn Boot Loader onto new AVR( ATmega328P-PU)

  1. Connect the Arduino UNO to USB of your PC
  2. Select the appropriate Board and Com Port ( Try Arduino Duemilanove if UNO Doesn't work)
  3. In tools menu select ARDUINO AS ISP Programmer. Path: Tools>Programmer>Arduino As ISP
  4. Go to Tools and select Burn Boot Loader. Path Tools> Burn Boot Loader

This may take up to a minute and the message " Done Burning Boot Loader" will be displayed.

After this you can remove all the connecting wires and connections.

Congratulations!!! Your new AVR is ready to be used as standalone device for your projects.

Step 4: Upload the Blink Program and Test the MC on Breadboard.

This step is to verify the working of Micro Controller. We can test it by uploading the a simple Blink program to blink an LED connected to the Micro Controller.

#We need to first Upload the Arduinno Sketch to New MC.

#Transfer the MC to required Application.

To do this follow the Steps carefully.

  1. Remove the original Micro controller IC from the UNO Board.
  2. Place the New IC( ATmega328P-PU)on the Arduino Uno.
  3. Connect the Arduino to PC and Select Appropriate Board and COM Port.
  4. Change the programmer from 'Arduino As ISP' to 'AVRISP mkll'
  5. Upload the Blink sketch Available in the Examples. Path: File>Examples>Basics>Blink
  6. Remove the Micro Controller after uploading is done.

To test the MC on Breadboard as Standalone device_________

  1. Make the Circuit diagram as shown in the circuit diagram. The bread board connections are also shown.
  2. Use Arduino 5v point and GND as power supply for MC.(5V Regulated power supply can also be used)
  3. The Pin Mapping for the Arduino Is given. Make the circuit connections according to the Arduino mapped pins of ATmega328P-PU.

YES!! You have successfully made an Arduino On Breadboard and this can be used for your various projects.

Step 5: Conclusion and Few Notes.

You have successfully built an arduino on breadboard and this can be used for your various project

  1. You can connect a switch Across Pin1 And Ground to Reset the Micro Controller.
  2. Check your Circuit Diagram and components (mainly Crystal) if burning Boot loader does not work.
  3. Make sure you are using ATmega328P-PU.
  4. If you are doing this on PCB provide a IC Holder. This allows you to program the MC whenever required.

If you come across any doubts or errors please let me know in the comments section below. I will try my best to help you out.

You can use Eagle software to view the circuit diagram. Download Link__________

Fritzing download (to view Breadboard conections .fzz files)

If you make one like this please post the images of your make by pressing " I Made It! " Button near comments.

Thanks a lot for reading and Hope this helps!.

_The Technocrat

H S Sandesh Hegde

Microcontroller Contest 2017

Participated in the
Microcontroller Contest 2017

Be the First to Share


    • Build a Tool Contest

      Build a Tool Contest
    • Colors of the Rainbow Contest

      Colors of the Rainbow Contest
    • Stone Concrete Cement Contest

      Stone Concrete Cement Contest



    4 years ago

    My atmega 328p Do not work well when running adevice next to it affected by it and stop working What is the solution?


    Reply 4 years ago

    Can you please specify what kind of device are you running with your atmega328?(The image isn't clear)
    For example:
    If a DC motor/(or any inductive load) , The back EMF will affect the micro controller.. So make sure you use a proper driver is used to drive the load. (Like a transistor drive/H-bridge) .
    The reason is you should not exceed the current rating of the micro controller (about 40mA here). Might cause the micro controller to shut down or damage it.

    Thank you


    5 years ago

    Good effort Sandesh. But in today's market Arduino clones are available for Rs 100 or 150 via ebay or aliexpress and save you space and effort in your project


    Reply 5 years ago

    Thankyou Ravi...
    Yes, but the joy of making on your own is different experience..!!