How to Burn a Bootloader to Clone Arduino Nano 3.0




Introduction: How to Burn a Bootloader to Clone Arduino Nano 3.0

About: Please support and share our mission; the Plant Doctor is a non-profit, open source online research laboratory specializing in electronics+plants. Our vision is to bring together nature and technology in a s...

Hello everybody..

please support & share our mission;


I have recently purchased an Arduino Nano 3.0 Clone which came without a bootloader. I am sure there are many other people who are in the same situation as me, and may have freaked out a little bit at first ! Don't worry, in this instructable I will show you how to easily install a bootloader to your new clone.


let's see how it's done..>

ATTENTION - some clones are different. they don't have an ftdi chip, which may cause your computer to not see the arduino once plugged in with the usb. if this is the case, please follow these steps; thanks to author Gegec for his help on noticing the problem and solving it as well :)

Step 1: Get a Clone

It is very easy to find a clone of any board on the internet. Or you can at worst make yourself one...


They are extremely cheap, I have seen pinless nano boards as low as $5 online. You just have to do some work on your end, which is a very fair give and take if you ask me.


I don't want to advertise any names here, if you just search the board that you want with the word clone next to it, you will find some. Mine is called Funduino Nano, which is an open source company apparently just making amazing products at real fair prices..


Look how small an arduino nano is, it's the size of my pinky finger. This will help me tremendously in my new projects, huge improvements on size!

Step 2: Test It First !

Plug it to the computer with the USB cable.


Make sure it turns on, and yes it did.! So far we are safe.


Now try to upload the blink sketch to it using the Arduino software on your computer. (file>examples>basics>blink)


You will most likely get the error in the second picture. This has nothing to do with the code being right/wrong. It just simply means that your computer and the board aren't communicating correctly, in our case the lack of the bootloader prevents us from doing so.


If your clone did work with the sketch upload, then even better.! you found one that is pre-installed. just start using it...

If you get the error message, keep on reading..>

Step 3: Simple Few Steps

Now you need to find a working arduino board, doesn't matter if it is a nano or not, I have used my "real" uno r3 and worked perfectly. If you don't already have one, try borrowing it from a friend.


If you have any grab your female - male breadboard jumpers. These will make the process even faster and easier. BUT I didn't have any so, instead of waiting 2 weeks for them to arrive online as well, I had to take some extreme measures!


First we need to locate and get familiar with the ICSP pins. On mine just one of them was marked with a number, top right as 1. Here is what they look like in the schematics. So right under 1 had to be 2 and next to one was 3 and so on...


Now that you are ready lets begin - do the following steps in order;

STEP 1 - Upload ISP

-Connect the working arduino to your computer.

- Open the arduino software on the computer

- Go to Tools>Serial Port>COM (and make sure that the correct COM port is chosen - ask me if you don't what this means)

- Go to Tools>Board>Arduino Uno (in my case uno, this is the arduino that is already working not yet the other one)

- Go to File>Examples>Arduino ISP (a new sketch screen will open with the ISP code written in it)

- Verify then Upload (your board will start blinking for a bit, it means it is loading, wait until done uploading)

- Unplug the arduino. Now it has the ISP code in it, all we have left to do is connect them together and run a few commands again...

STEP 2 - Connect 2 arduinos together

- Now connect the two arduinos together, to do this without female-male jumper cables was time consuming, you have to be VERY CAREFUL and take your time bending the wires, other wise you may short your circuits. ask me first ! In the second picture you can see that first I put the ICSP pins through a piece of paper and then carefully wrapped around them the corresponding wires. Make sure they grab on very tightly, use a small flat head screw driver to bend them. Take your time, don't be rough.

- Connect them this way;

pin 1 on clone to D12 on working arduino

pin 2 on clone to 5V on working arduino

pin 3 on clone to D13 on working arduino

pin 4 on clone to D11 on working arduino

pin 5 on clone to D10 on working arduino

pin 6 on clone to GND on working arduino

STEP 3 - Burn Bootloader

- Keeping all the wires intact and unmoved in step 2, connect the working arduino back to the computer with the USB

- Go to Tools>Serial Port>COM (and make sure again that the correct COM port is chosen - ask me if you don't what this means)

- Go to Tools>Board>Arduino Nano w/Atmega 328 (this time we choose the non working arduino, in my case nano atmega 328)

- Go to Tools>Programmer>Arduino as ISP

- Go to Tools>Burn Bootloader (this is it, after the LEDs stop flashing your board is ready to use !!!)


Do all of the above steps in ORDER !!! no skipping steps

Always make sure that the correct COMM port and correct board are chosen before uploading a sketch to avoid errors...

if you want to learn more or get a second opinion you can check this post (it's amazing) or just search on google " how to install a bootloader to arduino clone " and you will see many articles on this very topic.


Remember to check out my other posts and subscribe to stay in the loop..!

love & peace


6 People Made This Project!


  • Creative Misuse Contest

    Creative Misuse Contest
  • Metalworking Contest

    Metalworking Contest
  • Tiny Home Contest

    Tiny Home Contest

170 Discussions


Question 4 weeks ago

avrdude: stk500_recv(): programmer is not responding

avrdude: initialization failed, rc=-1

Double check connections and try again, or use -F to override

this check.

thats the error im getting when trying to burn the boot loader from an arduino mega to an arduino nano

please help ;(

hey there, I tried the same procedure but wanted to fix an arduino uno through arduino nano. Result: Both of them stopped working, when i go to board info(for nano), it shows unknown board. How should I fix it?

Thanks! This did it. Wasted half a day googling for answers and this finally did it.
I had this problem with an original arduino nano. Came without bootloader...


Thanks for this Nano boot loader fix.

Just by luck I have a UNO and a NANO. I have had my NANO for quit sometime and I miss up the

boot loader, I put it up and forgot about it.

Then I found this fix!

The only thing found was I needed to set the programmer to be "Arduino as ISP" and press the reset button on the NANO and release it just before burning the boot loader.

Hopes this helps someone.


I tried to restore the bootloader at my Arduino Nano. It was working before but suddenly i can't compile a programm anymore. During compiling proces it hangs..

So i guess something is wrong

I used your procedure but get errors : Its partly in Dutch.. :-)


Arduino: 1.8.5 (Windows 10), Board:"Arduino Nano, ATmega328P"

avrdude: Expected signature for ATmega328P is 1E 95 0F
Double check chip, or use -F to override this check.
Fout bij het branden van de bootloader.

Dit rapport zou meer informatie bevatten met
"Uitgebreide uitvoer weergeven tijden compilatie"
optie aan in Bestand -> Voorkeuren.


Is my Arduino Nano "gone" ??

Thank you. This helped a lot. Though it was a bit different for me I had to upload arduinoISP sketch when both arduinos were connected together (according to your instructions) and with the good one connected to USB. Only after that I was able to burn bootloader. Strange... Those were 2 identical arduino nano clones (atmega328) and the one I had to flash was working before. I broke it somehow. So I don't know... It's working fine now though. :D

Tip for noobs like myself. If you cant upload sketch and 13pin led does not blink at all after pressing reset = possibly dead bootloader. Had to spend some time to figure that out.

Thanks for this helpful instructable. I didn't flash a bootloader to a clone, but I fixed my broken MaKey MaKey! :D

Thanks for this very helpful tip/procedure. I struggled for the day thinking I had somehow destroyed my NANO clone. After reading others like issues, I found this article.

Now I can continue my exploration on the smaller scale boards..

many thanks, i bought a arduino nano clone from china, and they didn't burnt bootloader on it, and it was stuck on uploading, i followed your method and it worked for it.

Many thanks!

I just followed these instructions and they worked perfectly.

I was going to mention that you don't have to use the ICSP header because all of the pins on this header are connected in parallel with existing pins, but it seems MilosG7 beat me to it (by a about a year).

Thanks for the tutorial, however, I got a faulty program loaded into the flash (Serial output in an interupt - Error is COM is busy, upload failed) that makes it unable to upload a new sketch. So I thought to follow your guidelines to reset the device with a fresh bootloader but get the following error:

avrdude: Expected signature for ATmega168 is 1E 94 06

Double check chip, or use -F to override this check.
Fout bij het branden van de bootloader.

What to do? Is this still a problem of the program that is still active? The selected chip is correct, the chip describes this. I use a Nano with the ArduinoISP program which is a ATmega328, is this a problem?

Thank you for the test it part! I just thought it would not work because its a clone but it actually had a bootloader.


Thank you so much, I have been struggling with this problem for weeks. The other tutorials were not working for me but this one turned my paperweight Arduino into a useful device.

Really amazing! Thanks! And I wonder if I can write code to the flash of Arduino NANO

My laptop is not showing serial port what to do

1 reply

did you install the driver correct.? use a different USB cable, a data transfer cable. Or you may have a faulty board :/

i tried it but i get this error "

avrdude: Yikes! Invalid device signature.

Double check connections and try again, or use -F to override

this check.

Error burning bootloader"

i have checked my wiring countless times!!!

Help me

3 replies

Belated reply to this post, I too had this problem.

It turned out in my case that my Nano clone ATmega168 had a differing signature to the one in the avrdude.conf file. (0x1e 0x94 0x06 when it should have been 0x1e 0x94 0x0b a subtle typo). I edited the conf file to suit , retried and it uploaded ok.

However , I suspect any other ATMega168 boards with the correct signature (assuming original conf is correct) will now fail until I reset the file.

FYI use file->preferences->settings tab to enable verbose mode when compiling or uploading sketches etc for more detailed messages.

hi thanks for your help :)

But where is the avrdude.conf file ?


I got the error too, but it worked anyways, try connecting it now!