Charger un driver pour programmateur USBasp sur Windows 10

Pour nos projets Arduino, il est toujours intéressant de disposer d'une carte capable de programmer directement les microcontrôleurs. Cela permet par exemple de réinitialiser un microcontrôleur (en y gravant soi-même le bootloader : le logiciel qui permet à la puce de s'initialiser) ou de créer des montages totalement indépendants de la carte Arduino.

Plusieurs types de cartes permettent de transférer votre programme sur la puce Atmega (ou autre) et parmi elles les cartes de type "USBasp" sont les moins chères. Les premiers prix sont aux environs de deux ou trois euros. A ce prix-là on se précipite, on achète et hop on sort le joujou de la boite !

USBasp H6 - www.betemcu.cn
Le programmateur USBasp H6 - www.betemcu.cn

Pour les utilisateurs Mac ou Linux, pas de problème : on branche la partie USB sur l'ordinateur et le connecteur sur la carte à programmer. Les drivers sont déjà installés et tout fonctionne bien si... on n'oublie pas de cliquer sur "Téléverser avec un programmateur" (Maj+Cmd+U) plutôt que simplement sur "Téléverser". En revanche, pour les utilisateurs Windows 10 les ennuis commencent... En effet, Windows 10 (à partir de la version 7 ?) demande des drivers signés numériquement, en clair des drivers officiels. Malheureusement, les petites cartes USBasp pas chères utilisent un driver qui n'est pas reconnu par Windows : libUSB. Pour contourner cette difficulté, plusieurs solutions sont possibles et on peut par exemple forcer Windows à accepter des drivers non signés. C'est une solution qui ne me plaît pas trop. A force de tourner en rond sur le web je suis tombé sur cette page : http://rayshobby.net/dead-simple-driver-installation-for-usbasp-and-usbtiny-on-windows/
Voilà une solution simple et qui me convient ! On télécharge un logiciel appelé "Zadig" qui lui installe les bons drivers -signés numériquement- et en trois clics le tour est joué.
  • Etape 1 : rendez-vous sur la page : http://zadig.akeo.ie/ pour télécharger la version du logiciel dont vous avez besoin (normalement "Zadig for Windows Vista or later")
  • Etape 2 : branchez la carte USBasp et ignorer les messages d'erreur de Windows
  • Etape 3 : Zadig détecte la carte USBasp. Il faut ensuite sélectionner "libusb-win32" et cliquer sur "Install driver" et... c'est fait !

Pour vous assurer que tout est ok, dans le gestionnaire de périphérique Windows, vous pouvez vérifier que la carte USBasp est bien reconnue :

Pour savoir si votre carte USB fonctionne bien, on peut aussi télécharger un petit logiciel appelé "testlibusb-win", par exemple à partir de cette page : http://andybrown.me.uk/2010/11/14/usbasp-drivers-for-64-bit-windows-7/ Quand tout a bien fonctionné, le logiciel affiche des informations complètes sur la communication avec votre carte USBasp :


Voilà, votre carte USBasp est prête à fonctionner. Pour en savoir un peu plus, vous pouvez lire l'article "Gros plan sur le programmateur USBasp H6 de Betemcu")

Pour aller plus loin :
- Driver et firmware USBasp sur le site Tomas Fischl : http://www.fischl.de/usbasp/
- Le projet LibUSB sur SourceForge : http://sourceforge.net/projects/libusb-win32/files/
(LibUSB n'est plus maintenu : cf. http://sourceforge.net/p/libusb-win32/wiki/Home/)
- Le nouveau site LibUSB : http://libusb.info/
- Découvrir en quelques mots ce qu'est l'ISP In-System Programming
https://fr.wikipedia.org/wiki/Programmation_in-situ (en français)
https://en.wikipedia.org/wiki/In-system_programming (en anglais mais plus complet)



Commentaires

  1. Bonjour,
    En suivant cette procedure mon port de communication pour l'usbasp est du syyle #0006.hub_#0002
    Du couo il nnestbpas reconnu dans arduino ide.
    Je pense que ca vient de Zadig qui imposse un code hexa lors de l'installation du driver

    RépondreSupprimer

Enregistrer un commentaire

Articles les plus consultés