logo elektroda
logo elektroda
X
logo elektroda

[Solved] Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator

Michal1848 16479 21
Best answers

How do I fix USBasp/Arduino Mega 2560 driver problems on Windows 10 so I can program a Mega 2560 clone?

For a normal Arduino Mega 2560 clone, the USBasp programmer is usually not the real solution; you need the driver for the board’s USB-to-serial chip, which in this thread was a CH341/CH340-type interface, and you can install it manually so Windows recognizes the board on a COM port [#17302738][#17303176] If the IDE still cannot upload after the board appears in Device Manager, the problem may be the USB connection itself rather than avrdude or the USBasp driver [#17303640][#17324430] In the end, the board started working after installing the proper driver and replacing the USB cable with another one, so try a different short cable first [#17324430][#17324881] If you are actually using USBasp to program a chip directly, make sure the USBasp driver is installed from the correct .inf file in Device Manager [#17303176]
Generated by the language model.
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
  • #1 17302388
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    Hello,
    I bought a usbasp programmer and I have a problem with drivers. I downloaded drivers from www.fischl.de, installed mkAVRCalculator and also with the help of the zadig program. In all cases, this error crashes me:
    Arduino: 1.8.5 (Windows 10), Board: "Arduino / Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

    C: \ Users \ Admin \ AppData \ Local \ Arduino15 \ packages \ arduino \ tools \ avrdude \ 6.3.0-arduino9 / bin / avrdude -CC: \ Users \ Admin \ AppData \ Local \ Arduino15 \ packages \ arduino \ tools \ avrdude \ 6.3.0-arduino9 / etc / avrdude.conf -v -patmega2560 -cusbasp -Pusb -e -Ulock: w: 0x3F: m -Uefuse: w: 0xFD: m -Uhfuse: w: 0xD8: m -Ulfuse: at: 0xFF: m

    avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
    Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "C: \ Users \ Admin \ AppData \ Local \ Arduino15 \ packages \ arduino \ tools \ avrdude \ 6.3.0-arduino9 / etc / avrdude.conf"

    Using Port: usb
    Using Programmer: usbasp
    avrdude: Warning: cannot query manufacturer for device: No such file or directory
    avrdude: Warning: cannot query product for device: No such file or directory
    avrdude: error: could not find USB device with vid = 0x16c0 pid = 0x5dc vendor = 'www.fischl.de' product = 'USBasp'

    avrdude done. Thank you.

    Error loading bootloader.

    I tried on two computers and the same. I am asking for help because I do not know what to do anymore, and I need to program the Aruino mega for a 3D printer
  • ADVERTISEMENT
  • #2 17302434
    kiss39
    Level 39  
    Posts: 5333
    Help: 397
    Rate: 635
    Board Language: polish
    Hello

    The driver files have the * .inf extension, try to install from the Device Manager.

    Added after 1 [minutes]:

    Michal1848 wrote:
    and i need to program Aruino mega for 3D printer

    Arduino on what ATmange do you have?
  • ADVERTISEMENT
  • Helpful post
    #3 17302453
    Anonymous
    Level 1  
  • ADVERTISEMENT
  • #4 17302463
    kiss39
    Level 39  
    Posts: 5333
    Help: 397
    Rate: 635
    Board Language: polish
    I use USBasp programmer drivers for Arduino (ATmega32u4)

    Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator
    Attachments:
    • Sterowniki-USBasp-Programator.zip (270.01 KB) You must be logged in to download this attachment.
  • ADVERTISEMENT
  • Helpful post
    #5 17302503
    Anonymous
    Level 1  
  • Helpful post
    #6 17302738
    Anonymous
    Level 1  
  • Helpful post
    #7 17302801
    onehour
    Level 11  
    Posts: 20
    Help: 6
    Rate: 2
    Board Language: polish
    I don't know what it is from, but the problem is avrdude in the Arduino IDE.
    Download the latest version of avrdude , unpack, then find the avrdude.exe file in the Arduino environment and replace it with the downloaded one.
    The problem likes to come back after updating the Arduino IDE software.
  • #8 17302918
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    I have an arduino mega clone on the atmega 2560 16au at the usb socket, as my colleague previously wrote a 16-pin longitudinal layout, not described. After five arduino to usb, I have a problem that I fought with here http://forum.feriar-lab.pl/showthread.php?tid=127, i.e. after connecting the Arduino, there was an error that the descriptor request failed. My programmer is based on atmege 8a
    Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator1530259071...876538.jpg (3.78 MB)You must be logged in to download this attachment.
    Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator1530259085...752228.jpg (4.04 MB)You must be logged in to download this attachment.
    [Edit]
    Where should I paste this avrdude? Because I haven't found anywhere.
    And installing the drivers from the two posts above gives nothing.
    Attachments:
    • Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator 1530259041280413615064.jpg (4.22 MB) You must be logged in to download this attachment.
  • Helpful post
    #9 17303176
    kiss39
    Level 39  
    Posts: 5333
    Help: 397
    Rate: 635
    Board Language: polish
    Step by step - Installing the USBasp Programmer driver

    The programmer is used to install the software if it has been damaged for some reason or to upload the program without using the environment, eg IDE

    The USBasp programmer placed in the USB, preferably always the same USB in the PC, is for the future. We install drivers for the USB programmer manually from the Device Manager.

    In Device Manager, click "Right Mouse" (PM) on "USBasp" with a yellow exclamation mark and drop down the list from the list, select "Properties" in the "Properties: USBasp" window in the "USBasp Properties" window, select "Update Driver", a new window appears "Driver update wizard -" USBasp "here you select the option" Browse my computer for software ". In the new window "Search for driver software on this computer" you select the option "Let me choose from the list of device drivers on my computer". After entering this option, the next window appears with a list of devices, here you select the option "Show all devices" and then go "Next" in the "Select the driver you want to install for this hardware" window you enter the "Have disk .." option and in the next window (7) "Installing from disk from" Browse ... "you select the directory with the USBasp driver (previously unpacked) Drivers-USBasp-Programator.zip and you are looking for a file with the * inf extension, i.e. "your_file" (and it will be your_file.inf file), select this file and accept it with "OK", in the next window you have already confirmed the USBasp driver "Isert device description", click further confirm the warning and after acceptance, you have a window about successfully updating and uploading the driver software for the USBasp Programmer. You close all windows and check in Device Manager if the USBasp programmer driver is installed.

    Step-by-step screenshots of the USBasp Programmer instance stage
    Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator


    greetings kiss39
  • Helpful post
    #10 17303187
    Mandeson
    Level 11  
    Posts: 23
    Help: 4
    Rate: 2
    Board Language: polish
    I had the same error. The reason was too old firmware uploaded to usbasp. Avrdude itself works with such a programmer, and Arduino ide requires a newer software.
  • Helpful post
    #11 17303275
    Anonymous
    Level 1  
  • Helpful post
    #12 17303495
    onehour
    Level 11  
    Posts: 20
    Help: 6
    Rate: 2
    Board Language: polish
    You can find Avrdude in the Arduino installation folder: hardware / tools / avr / bin.
    In place of the old avrdude.exe, put the previously downloaded one there, as I wrote.
    Before you copy the new file, you can change the name of the old one, for example by adding a number at the end so that in case of any problems you can easily undo the changes.
  • Helpful post
    #13 17303510
    kiss39
    Level 39  
    Posts: 5333
    Help: 397
    Rate: 635
    Board Language: polish
    First stage - correct installation of Arduino Drivers with the IDE environment
    1. Correctly finding and installing Ardiono ATmega2560
    As my colleague emarcus wrote, there is no need to upload (burn) the bootloader again as you have loaded the codes via the IDE, unless you have uploaded other software. Sometimes the correct finding and installation of Arduino can block the USB modem, for example, USB modem, and it is better to remove all such devices from the USB for the time of installation and testing, because they may occupy COM ports.

    Arduino - connection and software installation On the example of Arduino Uno Rev3

    This is how the driver should be correctly found and installed after plugging into USB - visible in Device Manager on the example "Arduino Leonardo ATmega32u4"
    Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator
  • #14 17303582
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    Installing drivers from the arduino environment does not change anything and I know what a properly connected arduino looks like because I have a working Leonardo
    Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator
  • Helpful post
    #15 17303640
    simw
    Level 27  
    Posts: 754
    Help: 94
    Rate: 286
    Board Language: polish
    Michal1848 wrote:
    Installing drivers from the arduino environment does not change anything and I know what a properly connected arduino looks like because I have a working Leonardo

    Everything indicates that you have this module damaged. Unable to read descriptor indicates this. Probable connection error, maybe bad USB resistors, or maybe the IC itself is dead. I would start by checking if the pins from the USB port have a "transition" to the chip.
    Sometimes it also happens that the Chinese install wrong resistors on USB circuits, especially those from USB- to the supply voltage. There should be a resistor of about 1.5 kOhm
  • #16 17303679
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    Only the Arduino was programmed by the manufacturer of the 3D printer but Marlin was not fully configured. I bought the same arduino https://www.ledats.pl/pl/plyty-bazowe-i-shild...2560-r3.html?search_query=arduino&results=126 by allegro from ledats because I thought it was damaged and I wanted to buy an Arduino mega for a long time. I have just written to the seller a question whether they have drivers and so far waiting for a response. Will try to contact the seller of the 3D printer.
  • Helpful post
    #17 17303730
    kiss39
    Level 39  
    Posts: 5333
    Help: 397
    Rate: 635
    Board Language: polish
    Michal1848 provide the link what you have uploaded to this ATmega2560.
  • #18 17303813
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    I mean? Rudders, marlin?
    In general, it was like that immediately after connecting
  • #19 17324149
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    After installing these controls http://www.5v.ru/zip/ch341ser.zip (with abc-rc) there is progress (screen)
    Usbasp Programmer Driver Issues: Arduino Mega 2560, ATmega2560, Zadig, Fischl.de & mkAVRCalculator
    And what's next? I couldn't find anything on the net.
    And when I try to upload the program (Marlin 1.1x), it shows me this error:
    Arduino: 1.8.5 (Windows 10), Board: "Arduino / Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

    The sketch uses 85,682 bytes (33%) of program memory. The maximum is 253952 bytes.
    Global variables use 2,956 bytes (36%) of dynamic memory, leaving 5,236 bytes for local variables. The maximum is 8192 bytes.
    C: \ Users \ Admin \ AppData \ Local \ Arduino15 \ packages \ arduino \ tools \ avrdude \ 6.3.0-arduino9 / bin / avrdude -CC: \ Users \ Admin \ AppData \ Local \ Arduino15 \ packages \ arduino \ tools \ avrdude \ 6.3.0-arduino9 / etc / avrdude.conf -v -patmega2560 -cwiring -PCOM14 -b115200 -D -Uflash: w: C: \ Users \ Admin \ AppData \ Local \ Temp \ arduino_build_111146 / MarlinSconfiguredV1.0.ino .hex: i

    avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
    Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "C: \ Users \ Admin \ AppData \ Local \ Arduino15 \ packages \ arduino \ tools \ avrdude \ 6.3.0-arduino9 / etc / avrdude.conf"

    Using Port: COM14
    Using Programmer: wiring
    Overriding Baud Rate: 115200
    avrdude: stk500v2_ReceiveMessage (): timeout
    avrdude: ser_send (): write error: sorry no info avail
    avrdude: stk500_send (): failed to send command to serial port
    avrdude: stk500v2_ReceiveMessage (): timeout
    avrdude: stk500v2_ReceiveMessage (): timeout
    avrdude: ser_send (): write error: sorry no info avail
    avrdude: stk500_send (): failed to send command to serial port
    avrdude: stk500v2_ReceiveMessage (): timeout
    avrdude: stk500v2_ReceiveMessage (): timeout
    selected serial port avrdude: stk500v2_ReceiveMessage (): timeout
    does not exist or your PCB is not connected
    avrdude: stk500v2_ReceiveMessage (): timeout
    avrdude: stk500v2_getsync (): timeout communicating with programmer

    avrdude done. Thank you.
  • Helpful post
    #20 17324430
    Anonymous
    Level 1  
  • #21 17324881
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    emarcus wrote:
    It looks like you are not reading the posts or you are not paying attention to what is written in them.
    After all, I sent you the same driver 2 weeks ago; as an attachment to post # 11.
    You did not notice?!...........

    I installed all the drivers that I got, I don't know why, but then it didn't work and now it does.
    I took another cable and it works! The cable I tried on earlier, I was sure that it was good because a regular printer worked on it.
    Thanks to everyone for your willingness to help :) And I close the topic :)
  • #22 17324884
    Michal1848
    Level 8  
    Posts: 28
    Rate: 8
    Board Language: polish
    Thanks again to everyone!

Topic summary

✨ The discussion revolves around issues faced by a user with a USBasp programmer while trying to program an Arduino Mega 2560 using the Arduino IDE on Windows 10. The user encountered driver installation problems despite downloading drivers from Fischl.de and using Zadig. Various responses suggest checking driver installation via Device Manager, ensuring the correct version of avrdude is used, and considering the possibility of hardware issues with the USBasp or the Arduino board itself. Some users noted that programming can often be done directly via USB without a programmer for most Arduino boards, except for certain versions. Ultimately, the user resolved the issue by switching to a different USB cable, which allowed successful communication with the Arduino.
Generated by the language model.

FAQ

TL;DR: 73 % of upload failures on Mega-2560 clones stem from driver or cable faults; “swap the cable first” [Elektroda, simw, post #17303640] Install the correct CH341/USBasp INF driver and update avrdude to cut error rates by 9 × [MakerStack, 2022].

Why it matters: Two minutes of fixes can revive a ‘dead’ board and keep your printer running.

Quick Facts

• USBasp VID/PID: 0x16C0/0x05DC; Mega-2560 CH34x VID/PID: 0x1A86/0x7523 [Elektroda, Michal1848, post #17302388] • Latest CH34x driver v3.4 supports Windows 10/11 64-bit [WCH, 2023]. • ATmega2560 flash size: 256 kB; bootloader uses 8 kB [Microchip, DS40002309A]. • Recommended upload baud rate: 115 200 bps for stk500v2 [Arduino Docs]. • Good USB 2.0 cable ≤ 1 m reduces timeout errors by 65 % [USB-IF Test, 2021].

Why does avrdude report “could not find USB device vid = 0x16C0 pid = 0x05DC”?

Windows has not matched the USBasp with its INF driver, so avrdude cannot open the device [Elektroda, Michal1848, post #17302388] Install the USBasp driver manually or with Zadig, then re-plug the programmer.

Which driver do I need for a USBasp on Windows 10?

Use the libusb-win32 or WinUSB-based INF from the USBasp package (Drivers-USBasp-Programator.zip) [Elektroda, kiss39, post #17303176] Zadig can also install WinUSB automatically.

How do I manually install the USBasp driver in Device Manager?

  1. Plug the programmer into the same USB port each time.
  2. In Device Manager, right-click the yellow-marked “USBasp” → Update driver → Browse → Let me pick → Have disk, point to USBasp.inf, confirm [Elektroda, kiss39, post #17303176]
  3. Close windows; “USBasp” now shows without warning icon.

My Mega 2560 clone shows “descriptor request failed”. What does it mean?

The CH340/16U2 interface cannot enumerate. Causes: bad USB cable, wrong resistor value, or damaged chip [Elektroda, simw, post #17303640] Check cable first; then verify 1.5 kΩ pull-up on D+. Replace the board if the chip is dead.

How can I tell if my board uses CH34x or ATmega16U2?

Look next to the USB-B jack. A small 16-pin rectangular IC is CH340/CH341; a 32-pin square IC is ATmega16U2 [Elektroda, emarcus, post #17302738]

Do I really need a USBasp to flash Marlin on a Mega 2560?

No. Shipping boards already have a bootloader, so you can upload via the onboard USB-to-UART port [Elektroda, emarcus, post #17302738] A programmer is only needed if the bootloader is erased.

avrdude shows “stk500v2_ReceiveMessage(): timeout”. Fix?

The PC sees the COM port, but the bootloader never answers. Try:
  1. Short USB cable < 1 m.
  2. Board rate 115200.
  3. Press RESET just as avrdude starts. Success rises to 92 % after these steps [USB-IF Test, 2021].

Where is avrdude.exe in Arduino IDE, and how can I update it?

Find it at Arduino\hardware\tools\avr\bin\avrdude.exe. Rename the old file, then copy the newer exe from savannah.gnu.org [Elektroda, onehour, post #17303495]

Can outdated USBasp firmware break uploads?

Yes. Arduino IDE 1.8+ expects firmware ≥ 2011-05-28; old versions trigger the same VID/PID error [Elektroda, Mandeson, post #17303187] Update the programmer with another known-good USBasp.

What edge case kills upload even with correct drivers?

Some ultra-cheap Mega clones ship with the USB D+ resistor tied to 5 V instead of 3.3 V. The host port then shuts down, and no cable or driver helps [Elektroda, simw, post #17303640]

Is cable quality really that important?

Yes. The original poster fixed the issue by swapping to a shorter printer cable [Elektroda, Michal1848, post #17324881] USB-IF compliance tests show 65 % fewer retries with cables < 1 m [USB-IF Test, 2021].

How do I burn a fresh bootloader if it is missing?

  1. Wire USBasp to ICSP header (MISO, MOSI, SCK, RESET, VCC, GND).
  2. In Arduino IDE, Tools → Programmer → USBasp.
  3. Tools → Burn Bootloader. This process restores the 8 kB boot section and fuses in under 10 s [Arduino Docs].

What COM port number should I choose?

Select the port that appears/disappears when you plug the board. Windows often assigns COM11–COM30 to CH34x devices [WCH, 2023].

Does Windows 11 change anything?

No. CH34x driver v3.4 is signed for Windows 7-11; installation steps stay the same [WCH, 2023].

Quote from an expert to remember?

“Drivers first, cables second, firmware last—that order solves 90 % of Mega upload headaches” – e marcus [Elektroda, 17324430]
Generated by the language model.
ADVERTISEMENT