Burning Arduino Bootloader with AVR USBASP

This article shows the simplest way to burn the Arduino's bootloader fimware to the ATMEGA328P on arduino board.

In the last article on AVR-USBASP, we have talk about how to use the USBasp to directly program the Arduino without Bootloader. Which mean there is no longer need the USB to serial circuit on the Arduino board.  For this article, we will show you the simplest way to burn the Arduino Bootloader firmware to the ATMEGA328P microcontroller on Arduino Board. Please be noted that every Arduino Board comes with a microcontroller pre-program with Bootloader firmware. Therefore, there is no need to burn the bootloader firmware again if you are getting an Arduino Board.

Step 1: Get an AVR USBASP programmer

The USBasp programmer can be obtained from here.

Step 2: Connect the USBASP programmer to the Arduino Board

The socket from USBasp to ICSP connector on Arduino Board is not compatible. You can’t directly connect raibow cable to the Arduino Board.

Therefore, you need to find a way to connect the USBasp to the Arduino board. In this case, female to female jumper wire is used. The jumpers is not included in the AVR USBASP. The connection is shown as in the photo above. For the detail connection, please refer to the AVR-USBASP User’s Manual which can be downloaded in the product page of AVR-USBASP.

If the ATMEGA microcontroller  is used for the first time (fresh), the jumper wire on AVR-USBASP must be shorted as shown in the photo above. Else the communication may fail. It is due to the new fresh microcontroller are factory programmed for slow internal oscilator, thus we have to tell the USBASP programmer to program with slow speed. It is done by short the jumper wire above. It takes a longer time during the programming as it is programmed with slow speed. After the ATMEGA microcontroller is programmed for the first time, the mini jumper may disconnect (open) and the programming will be faster.

Step 3: Burning the bootloader, this may take few minutes

After connect the AVR-USBASP from your computer to the arduino board, open the arduino IDE and click on Tools menu and under the Programmer sub-menu select USBasp.

Then, click on the Burn Bootloader to start burning the bootloader under Tools menu.

During the burning progress, the arduino software will display like photo above.  If the jumper wire on the programmer is shorted, the programming process may take up to 5 minutes as it is in slow speed. So be patient!

Arduino IDE will display “Done burning bootloader” after it is done! That’s all!


10 thoughts on “Burning Arduino Bootloader with AVR USBASP”

  1. Ok, once I have burnt the bootloader, how do I upload a sketch into the arduino set? Cause i keep getting failure

  2. Brian have u tried uploading blinky on the chip even after the message “usbasp firmware update” ?
    I had also got some error when i tried uploading bootloader bt later on i say that it had got bootloaded even after the error message.. have a check..

  3. hello i am using 1.0 verison. having avr usbisp and i put blank ATMEGA 168-20PU on ARDUIDO UNO. i got this error by avrdude: warning: cannot set sck period. please check for usbasp firmware update.

    do you know how to firmware update on ATMEGA 168PU or usbasp firmware update?

    does usbasp have to be set up COM port?

  4. Please mention your Operating System and Board Details (MCU etc). so that I may help you.

  5. i tried to burn the bootloader but failed, i received this message
    “avrdude: stk500_getsync(): not in sync: resp=0x00”
    can somebody help me out?

Leave a Comment

Your email address will not be published.

Share this Tutorial

Share on facebook
Share on whatsapp
Share on email
Share on print
Share on twitter
Share on pinterest
Share on facebook
Share on whatsapp
Share on email
Share on print
Share on twitter
Share on pinterest

Latest Tutorial

BLTouch Installation for Ender 3 with 32-bit V4.2.2 Board
Pick and Send Random Meal’s Option and Locations through Telegram Bot Using Grove WiFi 8266 on micro:bit
DIY Automated Vacuum Cleaner Using REKA:BIT With Micro:bit
Rainbow Spark in Mini House using Maker Uno.
TinyML on Arduino using Edge Impulse
Tutorials of Cytron Technologies Scroll to Top