Have you ever had any issues with your Arduino board?
If you have been playing with the board for some time, chances are you have already gone through some issue with your board.
Here is a quick fix that solves almost all issues you can have with the Arduino board provided the problem comes from the main chip; the Atmega328P. That being said, if your board is misbehaving and you happen to suspect that the Atmega328P is broken, one thing you can do is to replace it. After replacing the Atmega328P, you will have to burn the bootloader into it for it to work properly with the board.
To program a new board, one of the method you can use is to use the USBASP to upload the bootloader unto the Atmega328P.
Note: Replacing the microcontroller is possible on the Arduino Uno only, since you can easily take it off the board and replace it with a new one. This is not possible with the Arduino Leonardo because the microcontroller is soldered to the board.
- 1 x Arduino Uno board
- 1 x USBasp programmer
- 1 x Atmega328P (only if your microcontroller is broken)
- Jumper wires
Let’s get started.
Take out the broken microcontroller with a flat head screwdriver.
Insert the new one and make sure you inserted it correctly.
Now let’s connect the USBASP to the Arduino. Use the schematic below.
Double check if your connections are OK. If all is fine, we can start burning the bootloader.
Let’s start by connecting the USBASP to a computer.
- Select the right port which is COM1 for my case
- Select the right board (Arduino/Genuino Uno)
- Burn the Bootloader
The USBASP programmer should signal that it is in the process of programming with the red LED ON.
After a few seconds, you should see the following message: Done burning bootloader.
And now, to check if all is fine, upload a simple blink project to the Arduino and observe its reaction.