Using an Arduino as an ISP to Write a Bootloader
Jump to navigation
Jump to search
This page refers to writing a bootloader for an Arduino Uno, which can be useful when a ATMEGA328P chip has gone a bit haywire or we have bought a cheap Arduino Uno clone that has not had the bootloader installed yet - sorry Arduino...
Arduino Uno to Arduino Uno
Connecting the working Arduino Uno to the not working Arduino Uno that needs the bootloader writing to it can be done as described in [2]:
Once the Arduinos are connected then follow these steps:
- Connect your programmer Arduino to your computer
- Upload ArduinoISP.ino to your programmer Arduino using the Arduino IDE from Files > Examples > 11.ArduinoISP > ArduinoISP
- Select the correct port for the programmer Arduino
- Select the correct board for your Arduino Uno
- Upload the ArduinoISP sketch to your programmer Arduino
- Keep everything connected and now select the ISP programmer to use in the Arduino IDE with Tools > Programmer > Arduino as ISP. This should now look like Programmer: "Arduino As ISP" in the Tools menu
- Now select Tools > Burn Bootloader in the Arduino IDE to burn a new bootloader to your target Arduino. This may take a few seconds
- Disconnect everything and connect your target Arduino to the computer making sure to select the correct port, board and making sure that the programmer is now Programmer: "AVRISP mkII" or similar that you would normally use to upload a sketch to the Arduino Uno board
- Upload a blank sketch to test that the bootloader is working ok
References
- Arduino as ISP and Arduino Bootloaders, accessed 7 Mar 2020
- Installing an Arduino Bootloader, accessed 7 Mar 2020
- Burning the Bootloader on ATMega328 Using Arduino UNO As ISP, accessed 7 Mar 2020