FHEM Forum

FHEM - Hardware => Server - Linux => Thema gestartet von: FunkOdyssey am 21 August 2017, 09:54:49

Titel: Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: FunkOdyssey am 21 August 2017, 09:54:49
Kann mir jemand  helfen? Ich stehe auf dem Schlauch.

Ich habe unter Ubuntu 16.04.3 LTS eine Dockerumgebung laufen und will einige USB-Geräte an die Docker-Container durchreichen. Doch ich finde im Host-System meine USB-Geräte nicht.

Unter Raspbian habe ich einfach /dev/serial/by-id/... entsprechend zugewiesen.

Doch ich habe kein Verzeichnis /dev/serial

Hat jemand einen Tipp für mich? Danke.
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: Wernieman am 21 August 2017, 11:46:35
Erstmal .. sind die Device überhaupt da?
lsusb

Guckst Du auf dem Hostsystem oder innerhalb von Docker?

Bei meinem Ubuntu 16.04 sind die Device da
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: FunkOdyssey am 21 August 2017, 12:46:08
Nee, ich bin schon auf dem Hauptsystem. Komisch.
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: Deudi am 21 August 2017, 15:33:30
Kann das sein, dass das erst erstellt wird, wenn man ein serielles Device anschließt?
Habe gestern einen IR-Lesekopf angeschlossen, kam als /dev/ttyUSB0 raus und /dev/serial trägt im Zeitstempel genau den Zeitpunkt.

Hab' da jetzt aber auch nicht soooo die Ahnung und weiß nicht, ob es vorher nicht schon da war. System ist neu aufgesetzt.
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: CoolTux am 21 August 2017, 15:49:31
es fehlt immer noch ein lsusb um als Helfender eine Übersicht zu bekommen.
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: FunkOdyssey am 21 August 2017, 16:10:55
Oh, ja. Klaro. Hier ein paar Ausgaben:

root@docker:/dev# uname -a
Linux docker 4.10.0-32-generic #36~16.04.1-Ubuntu SMP Wed Aug 9 09:19:02 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux


root@docker:/dev# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 1b1f:c00f
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


root@docker:/dev# dmesg | grep tty
[    0.000000] console [tty0] enabled
[    0.901546] 00:01: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A


root@docker:/dev# dmesg | grep usb
[    0.203487] usbcore: registered new interface driver usbfs
[    0.203494] usbcore: registered new interface driver hub
[    0.203503] usbcore: registered new device driver usb
[    1.073688] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    1.074142] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.074620] usb usb1: Product: xHCI Host Controller
[    1.075061] usb usb1: Manufacturer: Linux 4.10.0-32-generic xhci-hcd
[    1.075506] usb usb1: SerialNumber: 0000:00:14.0
[    1.085721] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[    1.086120] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.086545] usb usb2: Product: xHCI Host Controller
[    1.086943] usb usb2: Manufacturer: Linux 4.10.0-32-generic xhci-hcd
[    1.087343] usb usb2: SerialNumber: 0000:00:14.0
[    1.410499] usb 1-2: new full-speed USB device number 2 using xhci_hcd
[    1.551979] usb 1-2: New USB device found, idVendor=1b1f, idProduct=c00f
[    1.551983] usb 1-2: New USB device strings: Mfr=4, Product=14, SerialNumber=36
[    1.551986] usb 1-2: Product: HM-CFG-USB
[    1.551988] usb 1-2: Manufacturer: eQ-3
[    1.551990] usb 1-2: SerialNumber: KEQ1111330
[    1.554843] usbcore: registered new interface driver usbhid
[    1.554847] usbhid: USB HID core driver
[    1.556174] hid-generic 0003:1B1F:C00F.0001: hiddev0,hidraw0: USB HID v1.10 Device [eQ-3 HM-CFG-USB] on usb-0000:00:14.0-2/input0


Auf dem Raspberry erzeugt der HM-CFG-USB2 ein /dev/ttyAMA0-Eintrag. Diesen finde ich unter Ubuntu irgendwie nicht. Und kann ihn somit auch nicht an die Docker-Container weiterreichen.

Ich habe es aber auch mit vielen anderen Geräten ausprobiert, die unter Raspbian eigentlich ein ttyUSB0, ttyUSB1, etc. erzeugen.

Ich habe auch schon verschiedene Boot-Modi ausprobiert. Legacy-Boot und UEFI-Boot.

Nun habe ich auch gerade den LTS Enablement Stack (https://wiki.ubuntu.com/Kernel/LTSEnablementStack) bei mir installiert. Auch wenn ich nicht genau weiß, wieso. :-) Aber dies führte auch zu keinen Veränderungen.
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: CoolTux am 21 August 2017, 16:17:27
Such Mal nach /dev/input0
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: FunkOdyssey am 21 August 2017, 16:24:35
Das habe ich nicht.
Ich hatte übrigens beim Booten eine Tastatur angeschlossen, welche ich nachher wieder abgeklemmt habe. Das war afaik usb 1-6 oder so.
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: CoolTux am 21 August 2017, 16:26:02
Seltsam. Also dein lsusb zeigt irgendwie nichts an Geräte an.
Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: Wernieman am 22 August 2017, 09:34:39
Wobei nach meiner Recherge die USBID "1b1f:c00f" ein HomeMatik-Stick ist .. habe nur keinen

Kannst Du mal Deine sub-id-DB aktuallisieren?
sudo update-usbids

Titel: Antw:Kein /dev/serial/ unter Ubuntu 16.04.3 LTS
Beitrag von: FunkOdyssey am 22 August 2017, 21:17:51
Danke. Ich habe eure Tipp verfolgt und habe zwar nun eine aussagekräftigere lsusb-Ausgabe:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 001 Device 003: ID 1b1f:c00f eQ-3 Entwicklung GmbH HM-CFG-USB/HM-CFG-USB-2 [                                                                             HomeMatic Configuration adapter]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


Aber das ändert nichts daran, dass das Device auch weiterhin nicht eingebunden wird.

Ich habe auch mittlerweile Debian 9 Stretch ausprobiert:

root@docker:/dev# uname -a
Linux docker 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u3 (2017-08-06) x86_64 GNU/Linux


Aber es hat sich dadurch auch nichts verändert.

- Mein Z-Wave-Stick wurde als /dev/ttyACM0 erkannt.
- Ein USB PL232-Wandler (Prolific) wurde auch als /dev/ttyUSB0 erkannt. Und dann erschien auch /dev/serial/...

Ich vermisse nun also schlussendlich nur den HMCFGUSB2-Adapter. Auch mein Versuch über USB ModeSwitch (https://wiki.ubuntuusers.de/USB_ModeSwitch/) bringt mir kein /dev/ttyAMA0-Device. Nachtrag: ttyAMA0 scheint auch RasPi-spezifisch zu sein. Ich habe einen ganz normalen PC als Testobjekt.

Wenn ich hmland direkt im Docker-Host in Betrieb nehme, so wird der Stick auch sauber eingebunden. Ich habe nur keine Ahnung wie. Ich weiß nicht, wie man im hmland nachschauen kann, welches Device genutzt wurde.

Wenn ich mir die Docker-Images zu hmcfgusb anschaue, so stelle ich oft fest, dass die Container "privileged" gestartet werden. Da haben scheinbar noch andere ähnliche Probleme und reichen alle Devices einfach durch.

Ich habe dafür auch folgende udev-Rules kopiert:
sudo cp hmcfgusb.rules /etc/udev/rules.d/
SUBSYSTEMS=="usb" ATTRS{idVendor}=="1b1f" ATTRS{idProduct}=="c00f" MODE:="0666"
SUBSYSTEMS=="usb" ATTRS{idVendor}=="1b1f" ATTRS{idProduct}=="c010" MODE:="0666"


Fazit:
Es scheint sich hier nur um Probleme rund um den HMCFGUSB zu handeln.
Wenn hier jemand einen Tipp hat, wie und wo man den als Device eindeutig zuordnen kann, dann wäre ich ganz froh.

Danke.
Titel: Antw:Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: Wernieman am 23 August 2017, 08:19:16
1. Vergiss mal die UDEV-Regeln
2. Ist /dev/serial/by-id immer noch leer? Was sagt denn /dev/serial/by-path?
3. was hast Du denn alles als tty?
ls -lha /dev/*tty*
Auchtung: Liste wird etwas länger ....
Titel: Antw:Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: FunkOdyssey am 23 August 2017, 09:14:47
Hallo, danke für deine Unterstützung. Ich habe testweise ein USB2Serial-Konverter angeschlossen. Also bitte nicht wundern. Dieser meldet sich als ttyUSB0.

Anbei die gewünschten Ausgaben:

root@docker:/dev/serial/by-path# ls -ali
17225 lrwxrwxrwx 1 root root 13 Aug 22 11:42 pci-0000:00:14.0-usb-0:5:1.0-port0 -> ../../ttyUSB0


root@docker:/dev/serial/by-id# ls -ali
17221 lrwxrwxrwx 1 root root 13 Aug 22 11:42 usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0 -> ../../ttyUSB0


root@docker:/dev/serial/by-id# ls -lha /dev/*tty*
crw-rw-rw- 1 root       tty       5,  0 Aug 22 11:15 /dev/tty
crw--w---- 1 root       tty       4,  0 Aug 22 11:15 /dev/tty0
crw--w---- 1 Debian-gdm tty       4,  1 Aug 22 11:15 /dev/tty1
crw--w---- 1 root       tty       4, 10 Aug 22 11:15 /dev/tty10
crw--w---- 1 root       tty       4, 11 Aug 22 11:15 /dev/tty11
crw--w---- 1 root       tty       4, 12 Aug 22 11:15 /dev/tty12
crw--w---- 1 root       tty       4, 13 Aug 22 11:15 /dev/tty13
crw--w---- 1 root       tty       4, 14 Aug 22 11:15 /dev/tty14
crw--w---- 1 root       tty       4, 15 Aug 22 11:15 /dev/tty15
crw--w---- 1 root       tty       4, 16 Aug 22 11:15 /dev/tty16
crw--w---- 1 root       tty       4, 17 Aug 22 11:15 /dev/tty17
crw--w---- 1 root       tty       4, 18 Aug 22 11:15 /dev/tty18
crw--w---- 1 root       tty       4, 19 Aug 22 11:15 /dev/tty19
crw--w---- 1 root       tty       4,  2 Aug 22 11:15 /dev/tty2
crw--w---- 1 root       tty       4, 20 Aug 22 11:15 /dev/tty20
crw--w---- 1 root       tty       4, 21 Aug 22 11:15 /dev/tty21
crw--w---- 1 root       tty       4, 22 Aug 22 11:15 /dev/tty22
crw--w---- 1 root       tty       4, 23 Aug 22 11:15 /dev/tty23
crw--w---- 1 root       tty       4, 24 Aug 22 11:15 /dev/tty24
crw--w---- 1 root       tty       4, 25 Aug 22 11:15 /dev/tty25
crw--w---- 1 root       tty       4, 26 Aug 22 11:15 /dev/tty26
crw--w---- 1 root       tty       4, 27 Aug 22 11:15 /dev/tty27
crw--w---- 1 root       tty       4, 28 Aug 22 11:15 /dev/tty28
crw--w---- 1 root       tty       4, 29 Aug 22 11:15 /dev/tty29
crw--w---- 1 root       tty       4,  3 Aug 22 11:15 /dev/tty3
crw--w---- 1 root       tty       4, 30 Aug 22 11:15 /dev/tty30
crw--w---- 1 root       tty       4, 31 Aug 22 11:15 /dev/tty31
crw--w---- 1 root       tty       4, 32 Aug 22 11:15 /dev/tty32
crw--w---- 1 root       tty       4, 33 Aug 22 11:15 /dev/tty33
crw--w---- 1 root       tty       4, 34 Aug 22 11:15 /dev/tty34
crw--w---- 1 root       tty       4, 35 Aug 22 11:15 /dev/tty35
crw--w---- 1 root       tty       4, 36 Aug 22 11:15 /dev/tty36
crw--w---- 1 root       tty       4, 37 Aug 22 11:15 /dev/tty37
crw--w---- 1 root       tty       4, 38 Aug 22 11:15 /dev/tty38
crw--w---- 1 root       tty       4, 39 Aug 22 11:15 /dev/tty39
crw--w---- 1 root       tty       4,  4 Aug 22 11:15 /dev/tty4
crw--w---- 1 root       tty       4, 40 Aug 22 11:15 /dev/tty40
crw--w---- 1 root       tty       4, 41 Aug 22 11:15 /dev/tty41
crw--w---- 1 root       tty       4, 42 Aug 22 11:15 /dev/tty42
crw--w---- 1 root       tty       4, 43 Aug 22 11:15 /dev/tty43
crw--w---- 1 root       tty       4, 44 Aug 22 11:15 /dev/tty44
crw--w---- 1 root       tty       4, 45 Aug 22 11:15 /dev/tty45
crw--w---- 1 root       tty       4, 46 Aug 22 11:15 /dev/tty46
crw--w---- 1 root       tty       4, 47 Aug 22 11:15 /dev/tty47
crw--w---- 1 root       tty       4, 48 Aug 22 11:15 /dev/tty48
crw--w---- 1 root       tty       4, 49 Aug 22 11:15 /dev/tty49
crw--w---- 1 root       tty       4,  5 Aug 22 11:15 /dev/tty5
crw--w---- 1 root       tty       4, 50 Aug 22 11:15 /dev/tty50
crw--w---- 1 root       tty       4, 51 Aug 22 11:15 /dev/tty51
crw--w---- 1 root       tty       4, 52 Aug 22 11:15 /dev/tty52
crw--w---- 1 root       tty       4, 53 Aug 22 11:15 /dev/tty53
crw--w---- 1 root       tty       4, 54 Aug 22 11:15 /dev/tty54
crw--w---- 1 root       tty       4, 55 Aug 22 11:15 /dev/tty55
crw--w---- 1 root       tty       4, 56 Aug 22 11:15 /dev/tty56
crw--w---- 1 root       tty       4, 57 Aug 22 11:15 /dev/tty57
crw--w---- 1 root       tty       4, 58 Aug 22 11:15 /dev/tty58
crw--w---- 1 root       tty       4, 59 Aug 22 11:15 /dev/tty59
crw--w---- 1 root       tty       4,  6 Aug 22 11:15 /dev/tty6
crw--w---- 1 root       tty       4, 60 Aug 22 11:15 /dev/tty60
crw--w---- 1 root       tty       4, 61 Aug 22 11:15 /dev/tty61
crw--w---- 1 root       tty       4, 62 Aug 22 11:15 /dev/tty62
crw--w---- 1 root       tty       4, 63 Aug 22 11:15 /dev/tty63
crw--w---- 1 root       tty       4,  7 Aug 22 11:15 /dev/tty7
crw--w---- 1 root       tty       4,  8 Aug 22 11:15 /dev/tty8
crw--w---- 1 root       tty       4,  9 Aug 22 11:15 /dev/tty9
crw-rw---- 1 root       dialout   4, 64 Aug 22 11:15 /dev/ttyS0
crw-rw---- 1 root       dialout   4, 65 Aug 22 11:15 /dev/ttyS1
crw-rw---- 1 root       dialout   4, 66 Aug 22 11:15 /dev/ttyS2
crw-rw---- 1 root       dialout   4, 67 Aug 22 11:15 /dev/ttyS3
crw-rw---- 1 root       dialout 188,  0 Aug 22 11:42 /dev/ttyUSB0


Ich habe mal ein Dump der Ausgabe mit und ohne Stick erstellt. Es gibt keinen Unterschied.
Titel: Antw:Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: fiedel am 23 August 2017, 10:09:38
Wenn ich mich richtig erinnere, wird dieses Interface als "USB- Eingabegerät" eingebunden und erscheint nicht bei den üblichen USB- Geräten. Auch bei mir (Deb. 7) ist es dort nicht zu finden. Edit: Ahhh ja: Es ist ein HID- Gerät.

Hier mal etwas Input (https://debianforum.de/forum/viewtopic.php?f=33&t=136165#p885445).
Titel: Antw:Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: Wernieman am 23 August 2017, 10:56:48
Mhhh ...

ZitatWhen the generic HID drivers owns a device, it makes clear that a more specific driver is missing for the device.

Bist Du Dir sicher? (Sorry habe so einen Stick nicht und kann deshalb nicht testen)
Titel: Antw:Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: fiedel am 23 August 2017, 23:05:31
Was die "Geräteart" anbelangt schon. Es ist sogar in seinem ersten Logmitschnitt zu sehen:
[    1.551979] usb 1-2: New USB device found, idVendor=1b1f, idProduct=c00f
[    1.551983] usb 1-2: New USB device strings: Mfr=4, Product=14, SerialNumber=36
[    1.551986] usb 1-2: Product: HM-CFG-USB
[    1.551988] usb 1-2: Manufacturer: eQ-3
[    1.551990] usb 1-2: SerialNumber: KEQ1111330
[    1.554843] usbcore: registered new interface driver usbhid
[    1.554847] usbhid: USB HID core driver
[    1.556174] hid-generic 0003:1B1F:C00F.0001: hiddev0,hidraw0: USB HID v1.10 Device [eQ-3 HM-CFG-USB] on usb-0000:00:14.0-2/input0


Der hmland- Daemon kommuniziert irgendwie direkt mit dem Stick. Wie er das allerdings macht...  ???
Titel: Antw:Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: Wernieman am 24 August 2017, 09:47:49
Da Gerät wird als usbhid und NICHT als Serielles-Gerät eingebunden.

Wenn Du es als Serielles brauchst, müsstest Du den Treiber "Ändern"
Titel: Antw:Kann HM-CFG-USB2 unter Debian nicht als Device finden
Beitrag von: FunkOdyssey am 24 August 2017, 09:49:22
Okay, danke für eure Hilfe.
Ich versuche mich gerade mit /dev/usb/hiddev0 .