4 votos

AVRDUDE no reconoce el dispositivo USBasp

Estoy teniendo problemas con mi programador USBasp (Windows 10). He instalado el controlador WinUSB utilizando zadig 2.4.

Cuando ejecuto AVR dude con los siguientes parámetros

avrdude -c USBasp -p m32u4 -u -U flash:w:justahex.ino.hex:i

Inmediatamente vuelve con este error:

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

Busca un dispositivo USB con el ID de proveedor "0x16c0" y el ID de producto "0x5dc". Este es el conjunto correcto de ID según Zadig:

enter image description here

También el administrador de dispositivos parece encontrar el dispositivo sin problemas:

USB asp correctly installed

Again with correct vendor/product ID

Cuando busco el tema en google veo un montón de foros donde la gente tiene problemas para conseguir que su dispositivo USBasp funcione bajo windows 10. Pero en su mayoría están teniendo problemas con los controladores libusb / WinUSB (Que parece estar bien en mi caso gracias a la herramienta Zadig).

Así que me encuentro atascado en llegar más lejos. ¿Hay alguna otra cosa que pueda comprobar? O es el dispositivo roto de alguna manera (que me sorprendería, ya que se instala correctamente en Windows)

11voto

Nitin Govind Puntos 33

He encontrado la solución, que por supuesto es muy sencilla una vez...

En Zadig, puede seleccionar el conductor. Por defecto está seleccionado (en mi caso) el driver WinUSB. Cuando selecciono el controlador libusb, e instalo ese controlador, funciona a las mil maravillas.

Sí.

enter image description here

avrdude -vvv -c USBasp -p m32u4 -u -U flash:w:Duroduino.ino.hex:i

avrdude: Version 6.3, compiled on Feb 17 2016 at 09:25:53
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "c:\_SVN\p(r)ins\Durocan\Deployment\avrdude.conf"

         Using Port                    : usb
         Using Programmer              : USBasp
avrdude: usbasp_open("usb")
avrdude: seen device from vendor ->www.fischl.de<-
avrdude: seen product ->USBasp<-
         AVR Part                      : ATmega32U4
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PA0
         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                 :

5voto

Peter Puntos 129

Llego un poco tarde al juego, pero acabo de experimentar el mismo error (aunque con diferentes causas).

  • en la mayoría de los sitios de Internet se le indicará que instale el libusbK que no funciona, utilice el controlador libusb-win32 variante en su lugar
  • asegúrese de que el AVRDUDE.EXE es la última versión (la anterior no funciona con los nuevos controladores USB por alguna razón)
  • en caso de utilizar un clon (por ejemplo, con "Van Ooijen's technische informatica" como identificador de proveedor en lugar del nombre original "www.fischl.de"), asegúrese de utilizar el campo -c usbasp-clone -P usb AVRDUDE en lugar de -c usbap -P usb . La configuración del clon hace que AVRDUDE ignore la descripción del proveedor y también acepte el clon. Uno pensaría que con tener la combinación correcta de VID y PID sería suficiente, pero no...

Bonus: para los más perezosos, aquí tenéis un ejemplo de línea de comandos que flashearía la placa Arduino Leonardo desde Atmel studio (aviso, esto sobreescribirá el bootloader):

avrdude.exe -C"avrdude.conf" -p atmega32u4 -c usbasp-clone -P usb -U flash:w:"$(ProjectDir)Debug\$(TargetName).hex":i

1voto

Sam Puntos 1

Para que avrdude funcione correctamente con USBAsp, lo mejor es instalar el controlador libusbK, al menos en Windows 7. De esta manera funciona con ambos - la versión oficial de avrdude, y la del IDE de Arduino. Con el libusb-win32 o el WinUSB funciona con uno, pero falla con otro.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X