Proxmox Debian VM USB Sticks Rademacher und Z-wave.me funktioniert immer nur ein

Begonnen von duke_do, 09 Mai 2024, 15:06:56

Vorheriges Thema - Nächstes Thema

duke_do

Hallo,

ich möchte meine Fhem installation von meinem Rasperry auf eine Debian VM auf Proxmox umziehen.

Fhem ist auf Debian 12 neu installiert und die Konfig ist übernommen. Ich habe die beiden USB Sticks in das ThinkCentre gesteckt (egal ob über einen Hub oder je ein eigener Port). Sie werden in Proxmox Host auch erkannt und ich kann sie der VM über Hardware/Option/USB zuweisen. Im Proxmox sehe ich die beiden Sticks auch. Über LSUSB -t werden mir die beiden Sticks auch angezeigt. Über LSUSB -vv wird auch die Hardware erkannt:
Bus 001 Device 033: ID 0658:0200 Sigma Designs, Inc. Aeotec Z-Stick Gen5 (ZW090) - UZB                (Z-Wave Stick)
Bus 001 Device 035: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC  (DuoFern Stick)

In der VM sehe ich auch beide Sticks, sie sind mit Namen aufgeführt:
ls -l /dev/serial/by-id
insgesamt 0
lrwxrwxrwx 1 root root 13  9. Mai 13:52 usb-0658_0200-if00 -> ../../ttyACM0
lrwxrwxrwx 1 root root 13  9. Mai 14:07 usb-Rademacher_DuoFern_USB-Stick_WR06IAMX-if00-port0 -> ../../ttyUSB0

In Fhem habe ich sie mit Devicenamen zugewiesen. Ein ziehen und Stecken (in Proxmox umkonfigurieren) wird auch in Fhem erkannt:

2024.05.09 14:07:32 1: /dev/serial/by-id/usb-Rademacher_DuoFern_USB-Stick_WR06IAMX-if00-port0 disconnected, waiting to reappear (Rademacher)
2024.05.09 14:07:34 3: Setting Rademacher serial parameters to 115200,8,N,1
2024.05.09 14:07:34 1: /dev/serial/by-id/usb-Rademacher_DuoFern_USB-Stick_WR06IAMX-if00-port0 reappeared (Rademacher)

Im Log vom Fhem sieht man das auch (hier mal ziehen und stecken):
2024.05.09 12:55:45 1: /dev/serial/by-id/usb-0658_0200-if00 disconnected, waiting to reappear (RaspiZW)
2024.05.09 12:55:55 3: Setting RaspiZW serial parameters to 115200,8,N,1
2024.05.09 12:55:55 1: RaspiZW: SOF missing (got 00 instead of 01)
2024.05.09 12:55:57 1: /dev/serial/by-id/usb-0658_0200-if00 reappeared (RaspiZW)
2024.05.09 12:58:38 1: /dev/serial/by-id/usb-0658_0200-if00 disconnected, waiting to reappear (RaspiZW)
2024.05.09 13:29:33 1: /dev/serial/by-id/usb-Rademacher_DuoFern_USB-Stick_WR06IAMX-if00-port0 disconnected, waiting to reappear (Rademacher)
2024.05.09 13:29:44 3: Setting Rademacher serial parameters to 115200,8,N,1
2024.05.09 13:29:44 1: /dev/serial/by-id/usb-Rademacher_DuoFern_USB-Stick_WR06IAMX-if00-port0 reappeared (Rademacher)
2024.05.09 13:31:34 3: Setting RaspiZW serial parameters to 115200,8,N,1
2024.05.09 13:31:34 1: RaspiZW: SOF missing (got 00 instead of 01)
2024.05.09 13:31:35 1: /dev/serial/by-id/usb-0658_0200-if00 reappeared (RaspiZW)

Nun zum Problem. Es geht immer nur ein Stick (obwohl beide im Log angezeigt werden) In der Regel geht der erste Stick, der gesteckt worden ist. Shutdown restart von Fhem bis Reboot der VM haben nicht geholfen. Entweder geht Z-Wave oder es geht DuoFern. Eine Zuordnung in Proxmox per USB Port oder per Devicename ändert nichts (egal ob beide per Port, per Device oder ein Mix davon)
Da die Geräte ja im VM-Linux per Name erkannt werden (auch wenn ich einen zieh wird nur einer erkannt, wenn beide stecken beide) müssen sie ja da ankommen. Da Fhem ein ziehen und stecken auch protokolliert kommen sie in Fhem auch an. Nur die Kommunikation geht halt immer nur mit einen USB Stick.

Ich bin ratlos und hoffe auf Lösungsvorschläge, danke schon mal.

betateilchen

Wie hast Du denn die mappings in Proxmox angelegt?
Werden dort immer beide Sticks angezeigt?

Bei mir laufen 4 USB Sticks problemlos.

Du darfst diesen Dateianhang nicht ansehen.

Davon sind 2 für FHEM zugeordnet.

Du darfst diesen Dateianhang nicht ansehen.

Und falls Du nochmal Logauszüge oder Konsolenausgaben postest, verwende bitte code-Tags für bessere Lesbarkeit. Danke.



--
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

duke_do

#2
Vielen Dank für deine Rückmeldung.

Ich habe die USB Geräte auf der VM unter Hardware USB erstellt. Beide sind zugeordnet:

Du darfst diesen Dateianhang nicht ansehen.

Dabei ist es egal ob per Gerät-ID oder den Port direkt durchreiche (oder ein Mix aus beidem). Habe auch schon unterschiedliche USB Ports am Host ausprobiert.

Du darfst diesen Dateianhang nicht ansehen.

Wie bekomme ich diese schöne Übersicht aller USB Geräte auf dem Host aus deinem ersten Screenshot?

Die beiden USB Geräte werden ja auch in der VM angezeigt und erkannt und ein ziehen und Stecken wird im Fhem sogar protokolliert, nur das Gerät scheint nicht sauber zu arbeiten (habe mal Verbose auf 5 gestellt für den DuoFern Stick):

2024.05.11 12:37:01 4: Rademacher: rx  -> 81000000000000000000000000000000000061d9f501
2024.05.11 12:37:01 4: Rademacher: snd -> 81000000000000000000000000000000000000000000
2024.05.11 12:37:01 5: DevIo_SimpleWrite Rademacher: 81000000000000000000000000000000000000000000
2024.05.11 12:37:01 4: Rademacher: snd -> 0DFF0F40000000000000000000000000000042B9D401
2024.05.11 12:37:01 5: DevIo_SimpleWrite Rademacher: 0dff0f40000000000000000000000000000042b9d401
2024.05.11 12:37:01 4: Rademacher: rx  -> 81000000000000000000000000000000000042b9d401
2024.05.11 12:37:01 4: Rademacher: snd -> 81000000000000000000000000000000000000000000
2024.05.11 12:37:01 5: DevIo_SimpleWrite Rademacher: 81000000000000000000000000000000000000000000
2024.05.11 12:37:01 5: Rademacher sending 0DFF0F4000000000000000000000000000004986AB01
2024.05.11 12:37:01 4: Rademacher: snd -> 0DFF0F4000000000000000000000000000004986AB01
2024.05.11 12:37:01 5: DevIo_SimpleWrite Rademacher: 0dff0f4000000000000000000000000000004986ab01
2024.05.11 12:37:01 3: DUOFERN no ACK, request Status
2024.05.11 12:37:01 5: Rademacher sending 0DFF0F4000000000000000000000000000004986AC01
2024.05.11 12:37:01 3: DUOFERN no ACK, request Status
2024.05.11 12:37:01 5: Rademacher sending 0DFF0F4000000000000000000000000000004986A301
2024.05.11 12:37:01 3: DUOFERN no ACK, request Status


Beide Sticks scheinen aber von Fhem angesprochen und geöffnet zu werden:

2024.05.11 12:35:59 3: Opening RaspiZW device /dev/serial/by-id/usb-0658_0200-if00
2024.05.11 12:35:59 3: Setting RaspiZW serial parameters to 115200,8,N,1
2024.05.11 12:35:59 1: RaspiZW: SOF missing (got 00 instead of 01)
2024.05.11 12:36:00 3: RaspiZW device opened
2024.05.11 12:36:00 3: TelegramBot_Define teleBot: called
2024.05.11 12:36:01 2: SolarView will read from solarview at 192.168.0.40:15000 every 300 seconds
2024.05.11 12:36:01 3: Opening Rademacher device /dev/serial/by-id/usb-Rademacher_DuoFern_USB-Stick_WR06IAMX-if00-port0
2024.05.11 12:36:01 3: Setting Rademacher serial parameters to 115200,8,N,1
2024.05.11 12:36:01 3: Rademacher device opened

Auf der Konsole der VM werden auch beide Geräte angezeigt:

root@fhem:/home/daniel# ls -l /dev/serial/by-id
insgesamt 0
lrwxrwxrwx 1 root root 13 11. Mai 12:35 usb-0658_0200-if00 -> ../../ttyACM0
lrwxrwxrwx 1 root root 13 11. Mai 12:35 usb-Rademacher_DuoFern_USB-Stick_WR06IAMX-if00-port0 -> ../../ttyUSB0

root@fhem:/home/daniel# lsusb -t
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
    |__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/15p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/15p, 480M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
    |__ Port 2: Dev 3, If 0, Class=Communications, Driver=cdc_acm, 12M
    |__ Port 2: Dev 3, If 1, Class=CDC Data, Driver=cdc_acm, 12M


Entschuldige das ich den Code einfach so reinkopiert habe, kenne die Forensoftware nicht so gut, hoffe jetzt ist es besser.

betateilchen

Zitat von: duke_do am 11 Mai 2024, 13:01:07Wie bekomme ich diese schöne Übersicht aller USB Geräte auf dem Host aus deinem ersten Screenshot?

Das sind die "Ressource Mappings", die im Datacenter Deiner Proxmox angelegt werden. PCI und USB devices lege ich immer zuerst dort als Hardware an.

In der Instanz, in der sie letztlich genutzt werden sollen, weise ich diese Geräte dann über "use mapped device" zu.
Auf die Idee, ein USB device direkt in der Instanz anzulegen, bin ich bisher noch nie gekommen  8)

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

duke_do

Das Datacenter hat man, meine ich, ja erst, wenn man mehr als einen Host hat (habe ich, aber bei einem Host muss man es ja direkt im Host zuweisen, sollte aber keinen Unterschied machen). Habe es mal im Datacenter eingerichtet und dann gemapped.

Ändert aber nichts an dem Problem. Jeder Stick für sich geht, beide zusammen gehen nicht, aber Fehm erkennt beide Sticks (und reagiert auch auf ziehen/stecken).

Da muss doch irgendetwas im argen liegen, ich weiß leider nur nicht was, hat irgendwer noch Ideen wo ich ansetzten kann oder was ich noch prüfen kann? Habe Debian auf dem aktuell Stand, Fhem auch. Die VM rauf und runter fahren hilft auch nichts.

So, habe noch mal eine neue Debian VM installiert bei gesteckten USB Sticks und Fhem neu aufgesetzt. Dann das Fhem Bachup zurück gespielt. Problem bleibt, es muss also irgendetwas innerhalb von Fhem "defekt" sein (oder in der Proxmox Konfiguration der USB Geräte, aber da gibt es ja nichts mehr).