# upload firmware in usbasp

**URL:** <https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533>\
**Category:** Uploading\
**Created:** [May 14, 2019, 11:47am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533 "2019-05-14T11:47:42Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 14, 2019, 11:47am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/1 "2019-05-14T11:47:42Z")

</div>

i have two usbasp device, they have stopped working. I use AVRDUDES to upload code on atmega avrs.  
owing to some error in one to one connections on a icsp header these have stopped uploading and the error is

```cpp
avrdude.exe done.  Thank you.

WARNING: Unable to detect MCU

avrdude.exe: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'

avrdude.exe done.  Thank you.

```

i put one of them on self prog mode and uploaded the Arduinoisp sketch to my arduino uno.  
the upload is successful  
I then hook up connections as  
USBASP Arduino  
2 5V  
10 GND  
7 13  
9(MISO) 12  
1(MOSI) 11  
5(RESET) 10

```cpp
In the command prompt window
this command is entered
D:\Arduino_1.8.9\arduino-1.8.9\hardware\tools\avr\bin> avrdude -C..\etc\avrdude.conf -c avrisp -P COM7 -b 19200 -p m8 -V

```

and the out put is

```cpp
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.04s

avrdude: Device signature = 0x1e9307 (probably m8)

avrdude: safemode: Sorry, reading back fuses was unreliable. I have given up and exited programming mode

avrdude done.  Thank you.]

```

I have not been able to understand why this error is generated, AVR not happy.  
Seek inputs from senior members please.

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 14, 2019, 3:05pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/2 "2019-05-14T15:05:56Z")

</div>

I bought a new USBASP and the response is the same. Leads me to think that the problem is elsewhere, perhaps the drivers need to be reinstalled. Will update after having reinstalled the drivers.

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 14, 2019, 6:15pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/3 "2019-05-14T18:15:45Z")

</div>

Drivers were upto date.  
When the following averdude command was executed the output is as below

```cpp
D:\Arduino_1.8.9\arduino-1.8.9\hardware\tools\avr\bin> avrdude -C..\etc\avrdude.conf -c usbasp -P usb -p m8 -u -v -e -U flash:w:usbasp.atmega8.2011-05-28.hex

avrdude: Version 6.3-20171130
        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
        Copyright (c) 2007-2014 Joerg Wunsch

        System wide configuration file is "..\etc\avrdude.conf"

        Using Port                    : usb
        Using Programmer              : usbasp
        AVR Part                      : ATmega8
        Chip Erase delay              : 10000 us
        PAGEL                        : PD7
        BS2                          : PC2
        RESET disposition            : dedicated
        RETRY pulse                  : SCK
        serial program mode          : yes
        parallel program mode        : yes
        Timeout                      : 200
        StabDelay                    : 100
        CmdexeDelay                  : 25
        SyncLoops                    : 32
        ByteDelay                    : 0
        PollIndex                    : 3
        PollValue                    : 0x53
        Memory Detail                :

                                  Block Poll              Page                      Polled
          Memory Type Mode Delay Size  Indx Paged  Size  Size #Pages MinW  MaxW  ReadBack
          ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
          eeprom        4    20  128    0 no        512    4      0  9000  9000 0xff 0xff
          flash        33    10    64    0 yes      8192  64    128  4500  4500 0xff 0x00
          lfuse          0    0    0    0 no          1    0      0  2000  2000 0x00 0x00
          hfuse          0    0    0    0 no          1    0      0  2000  2000 0x00 0x00
          efuse          0    0    0    0 no          0    0      0    0    0 0x00 0x00
          lock          0    0    0    0 no          1    0      0  2000  2000 0x00 0x00
          calibration    0    0    0    0 no          4    0      0    0    0 0x00 0x00
          signature      0    0    0    0 no          3    0      0    0    0 0x00 0x00

        Programmer Type : usbasp
        Description    : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.03s

avrdude: Device signature = 0x1e9307 (probably m8)
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: reading input file "usbasp.atmega8.2011-05-28.hex"
avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex
avrdude: writing flash (4700 bytes):

Writing | ################################################## | 100% 1.74s

avrdude: 4700 bytes of flash written
avrdude: verifying flash memory against usbasp.atmega8.2011-05-28.hex:
avrdude: load data flash data from input file usbasp.atmega8.2011-05-28.hex:
avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex
avrdude: input file usbasp.atmega8.2011-05-28.hex contains 4700 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 1.57s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
        0x00 != 0x3b
avrdude: verification error; content mismatch

avrdude done.  Thank you.

D:\Arduino_1.8.9\arduino-1.8.9\hardware\tools\avr\bin>

```

My mind has been numbed by this vexing issue the entire day.  
Help in resolution of this despairing condition will be wonderful.  
Regards for your time.

---

<div class="post-metadata">

**Author:** ![DrAzzy](https://avatars.discourse-cdn.com/v4/letter/d/eb9ed0/32.png) [@DrAzzy](https://forum.arduino.cc/u/DrAzzy)\
**Post date:** [May 14, 2019, 8:35pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/4 "2019-05-14T20:35:10Z")

</div>

I think you want pin 10 of the Arduino to be connected to the USBAsp reset pin - not the pin of the USBAsp that gets connected to the target. Is that what you have connected to it?

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 15, 2019, 3:36am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/5 "2019-05-15T03:36:56Z")

</div>

> DrAzzy:  
> I think you want pin 10 of the Arduino to be connected to the USBAsp reset pin - not the pin of the USBAsp that gets connected to the target. Is that what you have connected to it?

Thanks for your question DrAzzy.  
That was the case in my first post where i thought i need to reload the firmware on my usbasp.  
but in my post #2 i am using avrdude to write the hex file onto a an atmega8(target) connected to the usbasp with a FRC cable with 10 pin connectors at both ends.  
As per the response of the averdude command the write is successful but there is a read error.

---

<div class="post-metadata">

**Author:** ![westfw](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/westfw/32/213443_2.png) [@westfw](https://forum.arduino.cc/u/westfw)\
**Post date:** [May 15, 2019, 7:59am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/6 "2019-05-15T07:59:07Z")

</div>

Adafruit has been saying that the VUSB based devices are getting less likely to work with modern computers and operating systems...

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 15, 2019, 8:56am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/7 "2019-05-15T08:56:54Z")

</div>

> westfw:  
> Adafruit has been saying that the VUSB based devices are getting less likely to work with modern computers and operating systems...

what do you suggest westfw, to program AVR in standalone mode using ICSP?

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 15, 2019, 7:19pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/8 "2019-05-15T19:19:38Z")

</div>

I am relieved folks.  
I got both my USBASPs working.  
Re installed the drivers by the Zadig app here [http://zadig.akeo.ie/](http://zadig.akeo.ie/)

---

<div class="post-metadata">

**Author:** ![pert](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/pert/32/217111_2.png) [@pert](https://forum.arduino.cc/u/pert)\
**Post date:** [May 16, 2019, 3:01am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/9 "2019-05-16T03:01:53Z")

</div>

I'm glad to hear that you got your USBASPs working! Did you install the libusbK driver?

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 16, 2019, 3:02pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/10 "2019-05-16T15:02:45Z")

</div>

> pert:  
> Did you install the libusbK driver?

Yes pert I installed this driver.

---

<div class="post-metadata">

**Author:** ![pert](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/pert/32/217111_2.png) [@pert](https://forum.arduino.cc/u/pert)\
**Post date:** [May 16, 2019, 9:54pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/11 "2019-05-16T21:54:21Z")

</div>

Thanks for the info. It's may be helpful to others who are having the same issue and find this thread in their search for a solution. I also have found that changing from the libusb-win32 driver to the libusbK driver fixes the problem with the USBasp:

> <https://github.com/arduino/avrdude-build-script/issues/1>
>
> Using Arduino IDE 1.6.10/Arduino AVR Boards 1.6.12 with Windows 7 64 bit and 32 …bit
> 
> With libusb-win32 v1.2.6.0 driver installed for USBasp:
> 1. Tools \> Board \> Arduino/Genuino Uno
> 2. Tools \> Programmer \> USBasp
> 3. Tools \> Burn Bootloader fails with:
> 
> \`\`\`
> C:\\Program Files (x86)\\arduino-1.6.10\\hardware\\tools\\avr/bin/avrdude -CC:\\Program Files (x86)\\arduino-1.6.10\\hardware\\tools\\avr/etc/avrdude.conf -v -patmega328p -cusbasp -Pusb -e -Ulock:w:0x3F:m -Uefuse:w:0x05:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 
> 
> avrdude: Version 6.3, compiled on Jun 22 2016 at 16:05:21
> Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
> Copyright (c) 2007-2014 Joerg Wunsch
> 
> System wide configuration file is "C:\\Program Files (x86)\\arduino-1.6.10\\hardware\\tools\\avr/etc/avrdude.conf"
> 
> Using Port : usb
> Using Programmer : usbasp
> AVR Part : ATmega328P
> Chip Erase delay : 9000 us
> PAGEL : PD7
> BS2 : PC2
> RESET disposition : dedicated
> RETRY pulse : SCK
> serial program mode : yes
> parallel program mode : yes
> Timeout : 200
> StabDelay : 100
> CmdexeDelay : 25
> SyncLoops : 32
> ByteDelay : 0
> PollIndex : 3
> PollValue : 0x53
> Memory Detail :
> 
> Block Poll Page Polled
> Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
> ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
> eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff
> flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff
> lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
> hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
> efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
> lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
> calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
> signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
> 
> Programmer Type : usbasp
> Description : USBasp, http://www.fischl.de/usbasp/
> 
> avrdude: auto set sck period (because given equals null)
> avrdude: warning: cannot set sck period. please check for usbasp firmware update.
> Error while burning bootloader.
> avrdude: error: program enable: target doesn't answer. 0 
> avrdude: initialization failed, rc=-1
> Double check connections and try again, or use -F to override
> this check.
> 
> 
> avrdude done. Thank you.
> \`\`\`
> 
> If I replace C:\\Program Files (x86)\\arduino-1.6.10\\hardware\\tools\\avr\\bin\\avrdude.exe with the stock AVRDUDE 6.3 from http://download.savannah.gnu.org/releases/avrdude/avrdude-6.3-mingw32.zip it works as expected(I encounter https://github.com/arduino/Arduino/issues/5175). It also works with USBasp/libusb-win32 v1.2.4.0, I didn't try it with libusb-win32 v1.2.2.0. This indicates to me that there is a way to make AVRDUDE 6.3 compatible with USBasp/libusb-win32. Since this is a very commonly used programmer I think it would be worth trying to make the AVRDUDE included with Arduino compatible with as many drivers as possible. I've already seen two other users report similar issues on the Arduino forum.
> 
> If I change the USBasp driver to libusbK v3.0.7.0 it works as expected.
> 
> Using avrdude 6.3.0-arduino2 with USBasp/libusb-win32 v1.2.4.0, or v1.2.2.0 also doesn't work but with a different error output(I can post it if necessary).
> 
> Using avrdude 6.0.1-arduino5 with USBasp/libusb-win32 v1.2.6.0, v1.2.4.0, or v1.2.2.0 works correctly.
> 
> Using avrdude 6.3.0-arduino2 with USBtinyISP/libusb-win32 v1.2.6.0 works as expected.
> 
> EDIT: I installed the drivers using \[Zadig\](http://zadig.akeo.ie/).

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 17, 2019, 6:48pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/12 "2019-05-17T18:48:55Z")

</div>

> I also have found that changing from the libusb-win32 driver to the libusbK driver fixes the problem with the USBasp.  
> [\quote]  
> It is funny but now my Arduino clone is also recognised as a libusbK device and the port under tools is greyed.  
> How do I get the ports back in the Arduino IDE?

---

<div class="post-metadata">

**Author:** ![pert](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/pert/32/217111_2.png) [@pert](https://forum.arduino.cc/u/pert)\
**Post date:** [May 17, 2019, 10:47pm UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/13 "2019-05-17T22:47:48Z")

</div>

You must have accidentally installed the libusbK driver to your Arduino. To fix this:

- Plug your Arduino board into your computer.
- Start Windows Device Manager
- Expand the "libusbK USB devices" section of the Device Manager tree.
- Right click on the Arduino board under the "libusbK USB devices" section.
- Click "Uninstall Device".
- Click the "Uninstall" button.
- Wait for the uninstall to finish.
- Unplug your Arduino board from your computer.
- Wait for Device Manager to update.
- Plug your Arduino board into your computer. You should now see the board under the "Ports (COM and LPT)" section of the Device Manager tree with an assigned COM port as normal.

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 18, 2019, 1:19am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/14 "2019-05-18T01:19:25Z")

</div>

Hi pert,  
I did as you suggested. the device comes back as an Atmel USB devices and under this it shows as "Richduino Boards for Arduino (Interface 0)"

If you suggest should I start a new thread or is it okay to coninue?

Best Regards.

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 18, 2019, 3:00am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/15 "2019-05-18T03:00:23Z")

</div>

> pert:  
> I also have found that changing from the libusb-win32 driver to the libusbK driver fixes the problem with the USBasp:  
> [avrdude 6.3.0-arduino2 incompatible with USBasp using libusb-win32 driver · Issue #1 · arduino/avrdude-build-script · GitHub](https://github.com/arduino/avrdude-build-script/issues/1)

I read your reply to bperrybap on Aug 3,2016

> per1234 commented on Aug 3, 2016  
> @bperrybap thanks for looking into this. I'm not sure when I'll have time to look into building avrdude from source, etc. I know that's lame but the issues caused by the last Arduino release have been eating up all the time I can contribute to Arduino and much more. I'm obligated to put priority on getting all the 3rd party boards projects I'm involved with fixed ASAP.
> 
> I hope the information I provided and the work you've done will help others. I'm happy to provide any more information requested.
> 
> If anyone reading this has Windows and a USBasp it would be great if you could see if you can reproduce this issue to make sure it isn't something specific to my computers:
> 
> Download Zadig from [http://zadig.akeo.ie/](http://zadig.akeo.ie/)  
> Plug the USBasp into your computer  
> Start Zadig  
> Options \> List all devices  
> Select USBasp from the dropdown menu  
> Select libusb-win32 (v1.2.6.0)  
> Click Install  
> Start Arduino IDE  
> Install Arduino AVR Boards 1.6.12 in Tools \> Boards \> Boards Manager if you're using a previous version  
> Unplug USBasp  
> Connect the USBasp to your Arduino  
> Plug the USBasp into your computer  
> Tools \> Board \> select your Arduino  
> Tools \> Programmer \> USBasp  
> Tools \> Burn Bootloader

I upload the bootloader and now my board shows up in device manager as a USB serial device (COM5)  
Port option is selectable under tools menu.

Now my boards are good to go!  
Thanks for your inputs pert.

---

<div class="post-metadata">

**Author:** ![pert](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/pert/32/217111_2.png) [@pert](https://forum.arduino.cc/u/pert)\
**Post date:** [May 18, 2019, 3:50am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/16 "2019-05-18T03:50:18Z")

</div>

You're welcome. I'm glad to hear it's working now. Enjoy!  
Per

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 18, 2019, 8:48am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/17 "2019-05-18T08:48:24Z")

</div>

My USBASPs are having the firmware compiled in 2011 available at [USBasp - USB programmer for Atmel AVR controllers - fischl.de](https://www.fischl.de/usbasp/)  
What is your take on uploading the firmware discussed in the thread @github in your post  
[avrdude 6.3.0-arduino2 incompatible with USBasp using libusb-win32 driver · Issue #1 · arduino/avrdude-build-script · GitHub](https://github.com/arduino/avrdude-build-script/issues/1)

---

<div class="post-metadata">

**Author:** ![pert](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/pert/32/217111_2.png) [@pert](https://forum.arduino.cc/u/pert)\
**Post date:** [May 18, 2019, 8:57am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/18 "2019-05-18T08:57:44Z")

</div>

The most noticeable advantage of the peterVH/bperrybap USBasp firmware is that it allows you to do Upload Using Programmer to chips with a lot of flash memory like the ATmega2560:

> <https://github.com/arduino/ArduinoCore-avr/issues/246>
>
> EDIT: \*\*The original issue from google code has been solved. This issue is still… open to keep track of uploading problems using USBAsp programmer, see comments below for details.\*\*
> 
> This is \[Issue 388\](http://code.google.com/p/arduino/issues/detail?id=388) moved from a Google Code project.
> Added by 2010-10-28T20:36:23.000Z by \[rdlsoftware@gmail.com\](http://code.google.com/u/rdlsoftware@gmail.com/).
> Please review that bug for more context and additional comments, but update this bug.
> \### Original description
> 
> \*\*What steps will reproduce the problem?\*\*
> 1. Wire up a connection between the Arduino Duemilanove and Mega 2560
> 2. Upload ArduinoISP (from IDE 021) to Arduino Duemilanove
> 3. Upload a new bootloader to a Mega 2560 via the 'programmer'
> 
> \*\*What is the expected output? What do you see instead?\*\*
> After uploading, the mega should accept new sketches.
> 
> \*\*What version of the Arduino software are you using? On what operating\*\*
> \*\*system? Which Arduino board are you using?\*\*
> 
> Arduino 021. Arduino Duemilanove as ArduinoISP (version from IDE 021), Arduino Mega 2560 as target hardware. Windows 7 64 bit.
> 
> \*\*Please provide any additional information below.\*\*
> See http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1287952386 for original post of issue.

I like that firmware because it solves the one flaw I ever encountered with the USBasp, but it's also fairly rare for people to want to Upload Using Programmer to an ATmega2560, so the stock firmware will work fine for most. I actually don't have much experience with the official firmware from [fischl.de](http://fischl.de). I've mostly worked with either the "Baite" firmware that comes on the common 6 pin USBasp from eBay, or the peterVH/bperrybap firmware.

---

<div class="post-metadata">

**Author:** ![kssoin](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@kssoin](https://forum.arduino.cc/u/kssoin)\
**Post date:** [May 18, 2019, 9:31am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/19 "2019-05-18T09:31:02Z")

</div>

Hi pert, can you share the link to the Baite firmware.

---

<div class="post-metadata">

**Author:** ![pert](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/pert/32/217111_2.png) [@pert](https://forum.arduino.cc/u/pert)\
**Post date:** [May 18, 2019, 10:45am UTC](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533/20 "2019-05-18T10:45:24Z")

</div>

It's proprietary (probably in violation of the USBasp open source license). They lock the flash memory on the USBasp so that you can't download it. So the only way to have the firmware is to buy one of the Chinese USBasp, like this one:

 ![](https://europe1.discourse-cdn.com/arduino/original/4X/c/7/2/c72af78b1c17da192930070a4b567608caf2a007.jpeg)

[Next page](https://forum.arduino.cc/t/upload-firmware-in-usbasp/591533.md?page=2)
