- Tue Aug 11, 2015 9:33 am
#5099
Dear friend, don't worry if your board loses its bootloader. Here is several steps to save your arduino card. The only thing you need is another good Arduino card, e.g. Uno, Mega, Leonardo etc. (I only tested on these three kinds of cards, Leonardo is a lot of different, please go below to track.)
Note This allows you to use the board to burn the bootloader onto an AVR (e.g. the ATmega168 or ATmega328 used in Arduino).
Arduino official tutorial, source page.
Here, we have two Arduino Boards, to distinguish them, we call
Step
NOTE: Arduino 1.0.6/ 1.6.8 all worked.
Epilogue
This is what I done on different boards (B) with DFRobot UNO as ISP programmer.
Further more, this is what I done on DFRobot Mega2560 as ISP programmer. (with Arduino 1.6.8)
Note This allows you to use the board to burn the bootloader onto an AVR (e.g. the ATmega168 or ATmega328 used in Arduino).

Here, we have two Arduino Boards, to distinguish them, we call
- The one doing as an AVR ISP (In-System Programmer) - Board A
- Another one which lost boot-loader was called Board B.
Step
NOTE: Arduino 1.0.6/ 1.6.8 all worked.
- Connect Board A to your commputer and choose corresponding "board" and its "Serial Port".
- Open the sketch ArduinoISP firmware (in Examples), and upload to board A.
Note for Arduino 1.0: you need to make one small change to the ArduinoISP code. Find the line in the heartbeat() function that says "delay(40);" and change it to "delay(20);". (Arudino 1.0.6 is already updated to delay(20).) - Wire your board A to the target B as shown in the diagram below.
Note for the Arduino Uno: You'll need to add a 10 uF capacitor between reset and ground. (after uploading the ArduinoISP sketch) (this note is from Arduino®, but actually I tested on DF UNO, it is not necessary.)
Note for the Board B: if it's Romeo (Made by DFRobot, board: Leonardo), wire according to above picture, it will faied. You have to wire to ICSP pin, like following diagram: (or like the second post below, connect the ICSP pin directly) - Choose right "board" of Board B
NOTE: You can upload any code you wish to your ICs using this method. - choose ''Programmer"-"Arduino as ISP"
- Click Burn Bootloader, wait a second, it will be done.
Epilogue
This is what I done on different boards (B) with DFRobot UNO as ISP programmer.
- Mega2560
- Bluno, board -> UNO
- Romeo, board - Leonardo
Further more, this is what I done on DFRobot Mega2560 as ISP programmer. (with Arduino 1.6.8)