Installer le drivers CH340/CH341 sur macOS / Windows (ESP8266, LoLin WeMos d1 mini). Fonctionne aussi sur Linux, Android • Domotique et objets connectés à faire soi-même

Depuis la version macOS 10.12 (macOS Sierra), un nouveau mécanisme de protection nécessite que le driver soit signé numériquement pour pouvoir être installé. Dans les versions antérieures de macOS, il suffisait de brancher la carte de développement ESP8266 ou compatible Arduino utilisant un convertisseur CH340/CH341 pour que le drivers s’installe automatiquement.

Article actualisé le 25 avril 2020

Cette méthode ne fonctionne plus. On trouve plusieurs drivers signés sur Internet mais je vous conseille toutefois d’installer la version officielle du fabricant chinois WCH disponible ici. Ce n’est pour rien qu’Apple a rendu obligatoire le chiffrage des drivers !

Installer le drivers CH340/CH341 sur macOS ou Windows pour les cartes ESP8266 / ESP32 et Arduino génériques

Rendez vous sur la page de téléchargement et choisissez le drivers qui correspond à votre système d’exploitation. Le drivers Windows supporte les versions 32 ou 64bits de Windows 10/8.1/8/7/VISTA/XP, Server 2016/2012/2008/2003, 2000/ME/98.

Le site est maintenant traduit en anglais. En cas de problème, vous pouvez utiliser Google Translate (ou une autre solution) pour avoir une traduction automatique (approximative) de la page.

Une version du drivers pour Linux et Android est également disponible.

Pour macOS, la version 1.5 du 5 juillet 2018 (CH341SR_MAC.ZIP) prend en charge les convertisseurs USB/UART CH340G, CH340T, CH340C, CH340E, CH340B, CH341A, CH341T, CH341B, CH341C, CH341U

Une fois téléchargé, décompressez le ZIP (double clic) puis ouvrez le package (fichier pkg) pour lancer le programme d’installation. Un redémarrage du Mac est nécessaire à la fin de l’installation.

wizg2xhtabp6sqrcgzrh-8538860

Cette page donne également accès vers les versions pour d’autres systèmes d’exploitation WindowsLinux. Pour les curieux ou pour développer vos propres PCB, vous aurez également accès à la documentation technique et design.

En cas de problème, Gogo:Tronics a indiqué les étapes pour désinstaller complètement le drivers de votre Mac (non testé) ou Windows

  1. Ouvrir un Terminal et exécuter cd /Library/Extensions/
  2. Vérifier que le fichier .kext existe ls | grep usbserial.kext
  3. La commande doit renvoyer usbserial.kext
  4. Ensuite exécuter la commande  sudo rm -R usbserial.kext pour supprimer le fichier
  5. On peut vérifier que c’est bien fait ls | grep usbserial.kext 
  6. La commande ne doit rien retourner
  7. On va maintenant au répertoire receipts cd /private/var/db/receipts/ 
  8. On chercher les ports ls | grep usbserial*
  9. La commande doit renvoyer codebender.cc.ch34xinstaller.usbserial.pkg.bom codebender.cc.ch34xinstaller.usbserial.pkg.plist
  10. Effacer chaque fichier ci-dessous successivement en remplacer le nom dans la commande suivante sudo rm -r nomdufichier

Erreur [Errno 16] Resource busy avec PlatformIO

Si vous rencontrez cette erreur, c’est probablement à cause de la gestion des drivers plus agressive de macOS.

OSError: [Errno 16] Resource busy: '/dev/cu.***'

J’ai testé avec succès l’astuce proposée par Sven sur macOS Mojave (10.14.6). Cela devrait également fonctionner sous macOS Catalina.

Exécuter les deux commandes suivantes pour supprimer les anciens drivers

sudo rm -rf /Library/Extensions/usbserial.kext
sudo rm -rf /System/Library/Extensions/usb.kext Redémarrer (impérativement) le MAC. Après redémarrage, ouvrez le Terminal est exécutez la commande ls /dev/cu* pour lister les cartes de développements connectées en USB.
ls /dev/cu*
/dev/cu.Bluetooth-Incoming-Port /dev/cu.usbserial-1410

Avez-vous aimé cet article ?