Huawei ME906s LTE M.2 Modul | 12d1:15c1 | /sys/bus/usb/devices/1-2/bConfigurationValue

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
slu
Beiträge: 2147
Registriert: 23.02.2005 23:58:47

Huawei ME906s LTE M.2 Modul | 12d1:15c1 | /sys/bus/usb/devices/1-2/bConfigurationValue

Beitrag von slu » 29.11.2021 17:22:23

Hallo,

eine Huawei ME906s hat mit Debian Buster ohne Probleme funktioniert, mit Debian Bullseye wird die Karte "nicht" mehr angezeigt.

Nach etwas Suche bin ich auf diesen Thread gestoßen, genau mein Problem:
https://www.draisberghof.de/usb_modeswi ... 997#p19816

Nach dem Neustart ist /sys/bus/usb/devices/1-2/bConfigurationValue einfach leer und deshalb funktioniert auch usb_modeswitch nicht (wenn ich das richtig vestehe):

Code: Alles auswählen

 usb_modeswitch -W -D  -b 1 -g 2 -v 12d1 -p 15c1 -u 2
Take all parameters from the command line


 * usb_modeswitch: handle USB devices with multiple modes
 * Version 2.6.1 (C) Josua Dietze 2017
 * Based on libusb1/libusbx

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x15c1
Configuration=0x02
System integration mode enabled

Use given bus/device number: 001/002 ...
Look for default devices ...
 bus/device number matched
  found USB ID 12d1:15c1
   vendor ID matched
   product ID matched
 Found devices in default mode (1)
Get the current device configuration ...
libusb: error [op_get_active_config_descriptor] device unconfigured
 Determining the active configuration failed (error -5). Abort
Das Problem ist wohl das der Kernel das USB Device nicht einfach leer konfigurieren darf (evtl. ein Bug).

Mit einem

Code: Alles auswählen

echo 3 >> /sys/bus/usb/devices/1-2/bConfigurationValue
wird die Karte erkannt und funktioniert,
bis zum nächsten Neustart. Leider bleib das System dann beim Booten hängen weil es die LTE Karte nicht mehr aktivieren kann...

Wie kann ich so ein Wert schon beim booten schreiben? Ein einfacher Eintrag in der Crontab ist vermutlich zu spät.

Vielleicht kennt sich jemand damit aus, ich konnte mich heute leider nur 3 Stunden mit dem Gerät beschäftigen und jetzt ist es erstmal wieder unterwegs.
Gruß
slu

Das Server Reinheitsgebot:
Debian Bookworm, sonst nichts.

Stolzer Gewinner der Jessie Release Wette:
https://wiki.debianforum.de/Jessie_Release_Wette#SIEGER

KP97
Beiträge: 3432
Registriert: 01.02.2013 15:07:36

Re: Huawei ME906s LTE M.2 Modul | 12d1:15c1

Beitrag von KP97 » 29.11.2021 19:16:24

slu hat geschrieben: ↑ zum Beitrag ↑
29.11.2021 17:22:23
Wie kann ich so ein Wert schon beim booten schreiben?
Du könntest den Befehl in ein Script packen und als Unit mit systemd starten lassen.
Mit after oder before erst den Netzwerkstart abwarten und dann die Unit starten.
Beispiele zu eigenen Units finden sich im Forum oder den Manpages in man systemd.unit.

slu
Beiträge: 2147
Registriert: 23.02.2005 23:58:47

Re: Huawei ME906s LTE M.2 Modul | 12d1:15c1

Beitrag von slu » 29.11.2021 19:37:44

KP97 hat geschrieben: ↑ zum Beitrag ↑
29.11.2021 19:16:24
Du könntest den Befehl in ein Script packen und als Unit mit systemd starten lassen.
Das ist auch eine gute Idee, ich muss mal schauen das ich wieder an ein Testgerät komme.

Hier war noch eine Idee mit udev Rules:
https://gist.github.com/pshlos46/e68bd5 ... 4319396671
Gruß
slu

Das Server Reinheitsgebot:
Debian Bookworm, sonst nichts.

Stolzer Gewinner der Jessie Release Wette:
https://wiki.debianforum.de/Jessie_Release_Wette#SIEGER

KP97
Beiträge: 3432
Registriert: 01.02.2013 15:07:36

Re: Huawei ME906s LTE M.2 Modul | 12d1:15c1 | /sys/bus/usb/devices/1-2/bConfigurationValue

Beitrag von KP97 » 29.11.2021 19:53:20

Na ja, udev ist ja mittlerweile Teil von systemd. Der Link von Github ist auch schon über drei Jahre alt, man weiß nicht, ob das noch so paßt.
Und eine Unit ist viel einfacher zu erstellen als eine udev-rule, ich würde also zur Unit raten.

Hier mal als Muster eine meiner eigenen Units, mußt Du an Deine Gegebenheiten anpassen:

Code: Alles auswählen

[Unit]
Description=Logs loeschen
DefaultDependencies=no
AllowIsolate=yes
#After=
#Before=

[Service]
Type=simple
RemainAfterExit=yes
ExecStart=/home/MB/Progs/logsdel

[Install]
WantedBy=multi-user.target
Bzgl. Netzwerkstart in after bzw. before kannst Du ja z.B. im Netzwerkmanager oder eine andere Unit schauen, wie da die Abhängigkeiten sind.
Noch eine kurze Erklärung:
Ich habe im Home ein Script, darin sind auch Verzeichnisse aus dem Home, z.B. Punktordner, die ebenfalls bei mir automatisch gelöscht werden.
Ich brauche also nur den Pfad eintragen und beim nächsten Start wird gelöscht.

Antworten