K40 Whisperer USB Error

K40 Whisperer USB Error: Laser USB Device not found. (libUSB driver may not be installed)

Wahrscheinlich haben viele von euch diesen Fehler bereits gesehen. Ich alleine habe mehr als 10 Nachrichten an einem Tag von verschiedenen Leuten dazu erhalten.

Mich ärgerte das weil ich gerade erst dazu ein Video aufgezeichnet hatte und viele versuchten die Schritte, leider ohne Erfolg, nachzuvollziehen.

Gott sei dank hatte ich jemanden in meinen Kontakten der sich der Sache angenommen hat und nach stundenlanger Suche das Problem „lösen“ konnte – oder zumindest herausfinden konnte, woran es liegt.

Ich hatte auch Scorch angeschrieben, seine Antwort war letztlich kurz und knapp:

Es scheint so dass bei Raspian am 11.01.2021 etwas geändert wurde. Die Kernel Version wurde angehoben. Leider ist in der Dokumentation zum CH341 und Änderung hierzu nichts zu finden.

Der CH341 ist der USB/Seriell Wandler Chip auf dem M2nano Board des K40 Laser. Wenn man den Laser einschaltet, läd Linux automatisch das Treiber-Modul des CH341. Dadurch wird das Gerät auf ttyUSB0 gemappt und eine Kommunikation über K40 Whisperer ist nicht mehr möglich.

Genau da liegt der Hase begraben. Irgend etwas wurde geändert und jetzt haben das Problem.

K40 Whisperer mit einem USB Error. Laser USB Device not found. (libUSB driver may not be installed)
K40 Whisperer USB Error: Laser USB Device not found.

Aber es gibt eine Lösung

Dank Tobias und seinen Einsatz darf ich mich freuen euch weiter helfen zu können. Tobias hat quasi das Wochenende durchgearbeitet und den Fehler, das Problem, gefunden.

Beim Verbinden des K40 wird der auf dem M2 Nano befindliche CH341 Chip von Raspbian automatisch erkannt und das Treiber Modul dafür geladen. Durch dieses Binding kann das M2 Nano vom K40 nicht mehr über Python angesprochen werden.

Damit wir dieses Bindig wieder aufheben können, erstellen wir uns am besten eine udev-Regel in der wir das binding wieder aufheben (udev-Regeln werden automatisch durch Linux angestoßen, sobald ein Gerät verbunden oder getrennt wird).

Damit das Unbind jedoch nur beim Verbinden des K40 durchgeführt wird, müssen wir diese Regel etwas einschränken. Dafür benötigen wir noch ein paar Informationen des K40 wie z.B. die VendorID und ProduktID. Diese erhalten wir, wenn wir den Befehl „lsusb“ eingeben.

In der Regel ist es aber IMMER der gleiche Wert: 1a86:5512

So sieht die Ausgabe von lsusb aus

Die dritte Zeile ist in dem Fall nun der K40. Der rot markierte Bereich ist die VendorID und der blau markierte Bereich die Produkt ID. Diese beiden Werte benötigen wir, um die Regel entsprechend einzuschränken.

Um nun eine neue Regel zu erstellen öffnen wir mit einem beliebigen Editor eine neue Datei im Verzeichnis /etc/udev/rules.d/.

sudo nano /etc/udev/rules.d/97-ctc-lasercutter.rules

und fügen folgenden Text ein:

SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="5512", ENV{DEVTYPE}=="usb_device", RUN+="/bin/sh -c 'echo $(ls /sys/bus/usb/drivers/ch341/ | grep $kernel) > /sys/bus/usb/drivers/ch341/unbind'"

Für die Werte hinter „ATTRS{idVendor}==“ und „ATTRS{idProduct}==“ müsst ihr natürlich die von libusb erhaltenen VendorID und ProduktID eintragen.

Also jedes mal wenn ein USB Gerät mit der in der Regel befindlichen VendorID und ProduktID verbunden wird, führt Linux den hinter „RUN+=“ befindlichen Befehl aus. Dieser Befehl ermittelt an welchem USB Port der K40 verbunden wurde und führt dann entsprechend für den Port einen unbind durch.

Nach einem Neustart sollte K40 Whisperer dann wieder wie gewohnt funktionieren.

Mein Dank geht an dieser Stelle noch einmal an Tobias. Er hat tolle Arbeit geleistet – für unsere Community. Danke!

Das könnte dich auch interessieren …

4 Antworten

  1. Michael sagt:

    Hi,
    ich hab das gleiche Problem, sitze seit 3 Tagen, krieg genau obere Meldung – arbeite mit windows 10

    Das Komische ist, dass ichs heute 1 x geschafft hatte und der Treiber da war, nach einer Stunde wars wieder weg und jetzt komm ich nicht mehr drauf

    Kann jemand helfen ?

    Danke
    Michael

    • K40Keller sagt:

      Das hier beschriebene Problem betraf seinerzeit eine Installation auf dem Rasperry Pi. Das wurde dann später durch ein Update des Whisperers behoben. Unter Windows mag es Hilfreich sein den Treiber des K40 zu deinstallieren und neu zu installieren. Ggf. schaue mal nach ob es eine neue Version des Whisperers gibt.

  2. Marco Neubert sagt:

    windows 11 habe auch oben genannte störung auf meinen neuen rechner den ich extra zum lasern kaufte und jetzt funktioniert es nicht.

  3. F. H. Venjacob sagt:

    Ist bei mir ebenfalls so. Habe einen Dell-Rechner mit Win11 gekauft. Den Treiber nachträglich installiert. Der Laser lief 1mal los. Danach bekomme ich ständig USB Timeout #1 usw.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.