KNiXuino Blog

News für KNiXuino Nerds.

Chinesischer Nachbau Arduino und Verbindungsprobleme

CH340

Arduino ist ein quelloffenes System. Schaltpläne, Eagle-Files, technische Dokumentation… alles ist frei verfügbar und darf nachgebaut werden (jedoch nicht „Arduino“ genannt werden). Nachdem original Arduino Module nicht gerade sehr günstig sind, haben sich etliche Hersteller in China auf den Nachbau wirklich billiger Arduinos spezialisiert. Ich verwende ausschließlich chinesische Klone. Die Arduinos sind 100% kompatibel zu den Originalen. Ich hatte noch nie Hardware-Defekte oder andere Probleme. In unserem Shop verkaufen wir daher auch Nachbauarduinos aus China. Um die Kosten noch weiter nach unten zu schrauben  wurde bei den chinesischen Nachbauten ein anderer USB-Chip eingebaut. Mittlerweile sind fast nur noch Nachbauten mit dem günstigeren CH34X Chip verfügbar, weshalb auch wir im Shop aktuell einen Nachbau mit dem CH340G Chip verkaufen.

Während im original Arduino / Genuino ein FTDI Chip verbaut ist, verwenden die billigeren Klone den CH340 oder CH341 Chip. In diversen Elektronikforen liest man, dass die CH34X Chips sogar zuverlässiger sind, als FTDI. Tatsache ist, dass CH34X klaglos funktioniert, wenn man mal den nötigen Treiber installiert hat. Interessanterweise haben viele hier gar keine Probleme, während auf manchen System etwas guter Zuspruch nötig ist, bis der Arduino erkannt wird. Man erkennt das Problem daran, dass man in der Arduino IDE unter Tools/Port keinen entsprechenden Port für den Arduino angezeigt bekommt. Mit den folgenden Tipps ist es aber immer möglich das Ding zum Laufen zu bekommen.

Wer diesen Chip auf seinem Arduino findet (meist in der Nähe des USB Ports), weiß, dass es sich um den CH340 handelt.

CH340

Der CH340 Chip

Ich habe hier Tipps gesammelt, die sich in verschiedensten Foren finden, man wird sie selten alle benötigen. Im schlimmsten Fall einfach einen nach dem anderen ausprobieren.

Windows

Windows installiert üblicherweise den nötigen Treiber automatisch nachdem man den Arduinoklon zum ersten mal über USB-Kabel verbunden hat. Wenn nicht gibt es hier den Treiber als Download:

CH340 / CH341 Treiber für Windows


Manchmal gibt es Probleme mit einem USB 3.0 Port. Manche haben Erfolg mit einem USB 2.0 Verteiler etc, den sie an den USB 3.0 Port anschließen und somit ihr USB zu einem 2.0 Port „downgraden“.

Mac

CH340 / CH341 Treiber für MAC

Dies ist der aktuelle Treiber (1.4) vom Hersteller. Auf High Sierra (OS 10.13+) funktioniert dieser. Es finden sich Hinweise im Netz dass für ältere Mac-OS Versionen der ältere 1.3 Treiber verwendet werden sollte. (Download hier)

Den Installer muss man nur doppelklicken, danach wird der Mac neu gestartet. Im beigelegten pdf findet man zusätzliche Infos.

Vorher muss man dem MAC (falls man das noch nie gemacht hat) erlauben Treiber von einer externen Quelle zu installieren. Dies macht man indem man in den Sicherheitseinstellungen (Apfel/Systemeinstellungen/Sicherheit) die Installation von signierten Treibern gestattet.


Bei Klick auf den Apfel oben links / Über diesen Mac / Systembericht / USB kann man sehen welche USB Geräte aktiv sind. Die Liste neu laden kann man mit cmd & r. Wenn man den Arduino aus und ansteckt kann man sehen, welches Gerät dazukommt.


Man kann auch im Terminal prüfen ob er Treiber richtig geladen wurde. Dazu im Terminal bei eingestecktem Arduino folgendes eingeben:

ls /dev/tty*

Dann in der Liste schauen ob man einen Eintrag wie „/dev/tty.wchusbserial“ findet. Das ist ein Zeichen, dass der Treiber geladen wurde.


Bei mir wurde das Gerät auch in der Arduino IDE erkannt, der Versuch einen Sketch hochzuladen wurde aber immer mit and_dude Timeouts abgebrochen. Das Problem ist aber nach einigen Versuchen, aus- und anstecken und neu hochfahren irgendwann einfach verschwunden.


Es wird auch berichtet, dass es manchmal nötig ist den alten Treiber händisch zu löschen und dann den neuen noch einmal zu installieren. Gelöscht wird er im Terminal mit:

ls /Library/Extensions/

Dann sucht man ob das File usbserial.kext vorhanden ist. Falls ja löscht man es mit

sudo rm -R /Library/Extensions/usbserial.kext

Mit der ersten Zeile kontrolliert man noch mal ob das File verschwunden ist.

Manchmal findet sich das selbe File auch in /System/Library/Extensions, auch das sollte man löschen:

sudo rm -R /Library/Extensions/usbserial.kext

Danach den Treiber neu installieren


Linux

Linux sollte den CH340 Treiber eigentlich bereits installiert haben. Wenn nicht empfiehlt sich ein update des Systems.

Der Hersteller bietet einen Downloadlink an, man sollte ihn aber mit oben gesagtem nicht benötigen…

«  -  »

Senf dazugeben