NEWS
[Gelöst] Proxmox Container - USB durchreichen
-
Ich hab grad ein Problem mit Zigbee (eigentlich aber eher mit Proxmox, daher Kategorie off topic). Vielleicht kann mir hier ja jemand auf die Sprünge helfen:
Zigbee Adapter im Einsatz, am Intel NUC mit Proxmox hängt ein alter CC2531, funktoiniert soweit hat aber irgendwelche Macken, auch die Reichweite ist nicht so der Burner.
Ich wollte jetzt alternativ einen CC2652P in Betrieb nehmen, komme da aber nicht weiter. Einfaches Austauschen des Sticks funktioniert nicht (zigbee Adapter bleibt gelb, Protokoll sagtStarting zigbee-herdsman problem : "Error while opening serialport 'Error: Error: Permission denied, cannot open /dev/ttyACM0'"
Mein (Verständnis-)Problem: Ich nutze Proxmox und hab da einen Container eingerichtet auf dem iobroker läuft. Den USB Port mit dem Stick muss ich vom Intel NUC an den Container "durchreichen" damit der zigbee Adapter den überhaupt sieht, insofern ist die Fehlermeldung ja auch richtig.
Ich hab dann im Proxmox mit lsusb gecheckt wie der neue Stick heisst (Bus und Device Nummer) und das in der entsprechenden Config-Datei angepasst.
Man muss aber wohl auch noch "ttyacm0" durchreichen und bei dem alten CC2531 funktioniert das auch, wenn ich aber den neuen Stick anschließe und dannls -l /dev/ttyACM0
eingebe, bekomme ich die Fehlermeldung "no such device".
Hat hier jemand einen CC2652P unter proxmox im Betrieb und kann mir sagen wo mein Fehler / Denkfehler liegt?
-
Hallo,
habe den Stick so durchgereicht:
https://coldcorner.de/2018/07/12/proxmox-usb-passthrough-fuer-lxc-container-z-wave-uzb1/ -
Wenn du es so durch reichst gehe ich mal von einem LXC aus, bei einer VM wäre es einfacher
Was spuckt denn ein
ls -l /dev/serial/by-id/
aus? Hängt der "...if00" überhaupt an ttyACM0 ? -
@amg_666
Hab grad das gleiche Problem allerdings läuft iob in einer vm. Der USB Name ist definitiv anders!Bei mir wird der cc2652p im zigbee Adapter zwar angezeigt aber kann wohl nicht gestartet werden. Adapter bleibt auf gelb und beim erneuten konfigurieren wird mir mitgeteilt das ich doch erstmal Hardware angeben soll.
-
@sborg sagte in Proxmox Container - USB durchreichen:
ls -l /dev/serial/by-id/
Hallo,
also, ja ist ein LXC.Der alte Stick (CC2531) liefert
root@proxmox:~# lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 8087:0aa7 Intel Corp. Bus 001 Device 002: ID 0451:16a8 Texas Instruments, Inc. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub root@proxmox:~# ls -l /dev/serial/by-id/ total 0 lrwxrwxrwx 1 root root 13 Jun 18 21:55 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E1CB74-if00 -> ../../ttyACM0
Den ziehe ich ab und hänge an denselben USB Port den neuen (CC2652P):
root@proxmox:~# lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 8087:0aa7 Intel Corp. Bus 001 Device 004: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub root@proxmox:~# ls -l /dev/serial/by-id/ total 0 lrwxrwxrwx 1 root root 13 Jun 20 19:26 usb-1a86_USB_Serial-if00-port0 -> ../../ttyUSB0
Muss ich dann also ttyUSB0 "durchreichen"? Die Fehlermeldung, die ich hier gepostet habe ist mir dann auch klar, aber die "USB Logik" verstehe ich ehrlich gesagt nicht. Wenn du da ein paar Erläuterungen oder einen Link zu Erklärungen hättest wäre das super,,,
Wenn ich im Verzeichnis /etc/pve/lxc die conf anpasse und da eintrage
lxc.cgroup.devices.allow: c 189:* rwm lxc.mount.entry: /dev/bus/usb/001/004 dev/bus/usb/001/004 none bind,optional,create=file lxc.cgroup.devices.allow: c 166:* rwm lxc.mount.entry: /dev/ttyUSB0 dev/ttyUSB0 none bind,optional,create=file
funktioniert das nicht, zigbee Adapter leifert wieder den Fehler
Starting zigbee-herdsman problem : "Error while opening serialport 'Error: Error: Permission denied, cannot open /dev/ttyUSB0'"
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
Muss ich dann also ttyUSB0 "durchreichen
möglicherweise, da es von Gerät zu Gerät unterschiedlich ist
du kannst auch HIER mal lesen, dazu der Forumsthread@chilihead sagte in Proxmox Container - USB durchreichen:
Adapter bleibt auf gelb und beim erneuten konfigurieren wird mir mitgeteilt das ich doch erstmal Hardware angeben soll.
VM nach Auswahl der Hardware neu gestartet? Welches Auswahlmenü zeigt die Instanz?
-
-
@dolomiti sagte in Proxmox Container - USB durchreichen:
Ich hangel mich an der Anleitung lang.
Genau das mach ich auch, und btw fast alle Links führen letztlich auf diese Anleitung.
- Die Anleitung ist gut
- So habe ich meinen Zigbee Stick ohne Probleme ans Laufen bekommen
- Aber: beim neuen Stick will es nicht klappen. Die Parameter sollten passen, HW wird neu gestartet, Zigbee ist der Meinung, das "permission denied" ist.
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
Zigbee ist der Meinung, das "permission denied" ist.
ich habe oben Anleitung und auch den passenden Thread dazu gepostet, ohne Log und Details kann man da nicht viel anfangen
-
@crunchip habs dann irgendwie hinbekommen musste aber alle Geräte neu anlernen und die PAN-ID ändern. Durchgereicht war er ja mit "serial USB" bzw. dann USB0 im IOB Zigbee Adapter.
Kanns zwar noch nicht so 100% nachvollziehen aber gemacht hab ich PAN-ID ändern (ein höher), USB ändern, Adaptertyp von Conbee II auf CCxxxx ändern. Dann startet der Adapter neu ABER ich musste noch einmal stoppen und neu starten dann gings.
Gefühlt hat der CC2652P nicht merklich mehr % Link quality aber ich behalt ihn jetzt trotzdem; vielleicht mach ich mal ne größere Antenne dran.
@amg_666 Bei mir ist es übrigens /dev/ttyUSB0 und nicht mehr AMC (das war doch der Conbee II richtig?)
-
@crunchip sagte in Proxmox Container - USB durchreichen:
ohne Log und Details kann man da nicht viel anfangen
im Log steht nicht viel mehr:
2021-06-20 20:36:18.359 - info: zigbee.0 (1352) Try to reconnect. 1 attempts left 2021-06-20 20:36:18.359 - info: zigbee.0 (1352) Starting Zigbee npm ... 2021-06-20 20:36:18.365 - error: zigbee.0 (1352) Starting zigbee-herdsman problem : "Error while opening serialport 'Error: Error: No such file or directory, cannot open /dev/ttyUSB0'" 2021-06-20 20:36:18.367 - error: zigbee.0 (1352) Failed to start Zigbee 2021-06-20 20:36:18.368 - error: zigbee.0 (1352) Error herdsman start
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
du bist per root auf dem LXC, dein iobroker hat keinen Zugriff
funktioniert das nicht, zigbee Adapter leifert wieder den Fehler
Starting zigbee-herdsman problem : "Error while opening serialport 'Error: Error: Permission denied, cannot open /dev/ttyUSB0'"@amg_666 sagte in Proxmox Container - USB durchreichen:
root@proxmox:~# lsusb
@amg_666 sagte in Proxmox Container - USB durchreichen:
lrwxrwxrwx 1 root root 13 Jun
@amg_666 sagte in Proxmox Container - USB durchreichen:
im Log steht nicht viel mehr:
hast du es nach Anleitung(die ich verlinkt habe) probiert?
-
@crunchip Hallo, ich muss nach längerr Pause nochmal nerven: Ich hab den Stick bislang nicht ans Laufen bekommen. Es ist ein Proxmox LXC und ich habe versucht nach der Anleitung zu gehen, die du gepostet hast.
Erstmal vorab: Am Intel NUC hängen zurzeit 2 Sticks, einmal der alte CC2531, der funktioniert (wird durchgereicht und der zigbee Adaptzer nutzt den zurzeit noch). Den neuen CC2652P kriege ich nicht ans laufen.
Ein lsusb zeigt mir
andreas@iobroker:/$ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 8087:0aa7 Intel Corp. Bus 001 Device 007: ID 0451:16a8 Texas Instruments, Inc. Bus 001 Device 012: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001/Device007 ist der alte Stick, Bus001/Device012 ist der neue den ich "anlernen" will.
Der Link den du gepostet hast bringt als erstes
andreas@iobroker:/$ udevadm info -a -p $(udevadm info -q path -n /dev/ttyACM0) | grep "ATTRS{idVendor}" && udevadm info -a -p $(udevadm info -q path -n /dev/ttyACM0) | grep "ATTRS{idProduct}" ATTRS{idVendor}=="0451" ATTRS{idVendor}=="1d6b" ATTRS{idProduct}=="16a8" ATTRS{idProduct}=="0002"
Vendor 0541 ist der alte Stick und Vendor 1d6b ist der root hub, der neue Stick wird schon nicht angezeigt....
Im Link steht dann als Tipp "TIP Ersetzen Sie /dev/ttyACM0 durch den richtigen Einhängepunkt, falls nötig"Nur welcher Einhängepunkt soll das sein? Ich finde da nix und bin auch nicht grade der Unix Experte...
Im Verzeichnis dev stehen folgende Einträge
andreas@iobroker:/dev$ ls bus console core fd full initctl log mqueue null ptmx pts random shm stderr stdin stdout tty tty1 tty2 ttyACM0 urandom zero andreas@iobroker:/dev$
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
Im Verzeichnis dev stehen folgende Einträge
ist doch ttyACM0
-
@crunchip Ja, aber der Befehl "udevadm info -a -p $(udevadm info -q path -n /dev/ttyACM0)" spuckt mir ja nichts bzgl des neuen Sticks aus, das ist der Punkt an dem ich hänge.
lsusb hatte ich oben gepostet, der zeigt mir ja beide Sticks an. Problem, wenn ich
ls -l /dev/bus/usb/001/007 eingebe (das sind die Werte vom funktionierenden alten Stick, dann kommtandreas@iobroker:/$ ls -l /dev/bus/usb/001/007 crw-rw-r-- 1 nobody nogroup 189, 6 Jun 20 20:33 /dev/bus/usb/001/007
bei den Werten für den neuen Stick kommt "nichts":
andreas@iobroker:/$ ls -l /dev/bus/usb/001/012 ls: Zugriff auf '/dev/bus/usb/001/012' nicht mglich: Datei oder Verzeichnis nicht gefunden
Daher war ich der Ansicht, dass das irgendwo anders "aufgehängt" ist, aber ich bin wie gesagt nicht der Unix Spezi und komme hier absolut nicht weiter.
-
@amg_666
Stick raus, Stick wieder rein,dmesg -T
anschauen. Da steht in den letzten Zeilen was zum Stick drin
-
@thomas-braun sagte in Proxmox Container - USB durchreichen:
dmesg -T
laut lsusb ist es device nummer 12 und das Ende (ist ne ewig lange Ausgabe, ich poste nur den letzten Teil) von dmesg -T zeigt mir
[So Aug 1 20:34:10 2021] usb 1-1: new full-speed USB device number 12 using xhci_hcd [So Aug 1 20:34:11 2021] usb 1-1: New USB device found, idVendor=1a86, idProduct=7523, bcdDevice= 2.64 [So Aug 1 20:34:11 2021] usb 1-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0 [So Aug 1 20:34:11 2021] usb 1-1: Product: USB Serial [So Aug 1 20:34:11 2021] ch341 1-1:1.0: ch341-uart converter detected [So Aug 1 20:34:11 2021] usb 1-1: ch341-uart converter now attached to ttyUSB0 [So Aug 1 20:35:55 2021] vmbr0: port 2(veth100i0) entered disabled state [So Aug 1 20:35:55 2021] vmbr0: port 2(veth100i0) entered disabled state [So Aug 1 20:35:55 2021] device veth100i0 left promiscuous mode [So Aug 1 20:35:55 2021] vmbr0: port 2(veth100i0) entered disabled state [So Aug 1 20:35:56 2021] audit: type=1400 audit(1627843030.294:43): apparmor="STATUS" operation="profile_remove" profile="/usr/bin/lxc-start" name="lxc-100_</var/lib/lxc>" pid=31105 comm="apparmor_parser" [So Aug 1 20:36:00 2021] EXT4-fs (dm-6): mounted filesystem with ordered data mode. Opts: (null) [So Aug 1 20:36:01 2021] audit: type=1400 audit(1627843034.814:44): apparmor="STATUS" operation="profile_load" profile="/usr/bin/lxc-start" name="lxc-100_</var/lib/lxc>" pid=31164 comm="apparmor_parser" [So Aug 1 20:36:02 2021] vmbr0: port 2(veth100i0) entered blocking state [So Aug 1 20:36:02 2021] vmbr0: port 2(veth100i0) entered disabled state [So Aug 1 20:36:02 2021] device veth100i0 entered promiscuous mode [So Aug 1 20:36:02 2021] eth0: renamed from vethqlj9i6 [So Aug 1 20:36:03 2021] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [So Aug 1 20:36:03 2021] vmbr0: port 2(veth100i0) entered blocking state [So Aug 1 20:36:03 2021] vmbr0: port 2(veth100i0) entered forwarding state
-
Sowas sollte da drin stehen. Man beachte die letzte Zeile.
[so aug 1 22:51:48 2021] cp210x ttyusb0: usb_serial_generic_read_bulk_callback - urb stopped: -32 [so aug 1 22:51:48 2021] cp210x ttyusb0: usb_serial_generic_read_bulk_callback - urb stopped: -32 [so aug 1 22:51:48 2021] usb 1-1.4: usb disconnect, device number 3 [so aug 1 22:51:48 2021] cp210x ttyusb0: failed set request 0x7 status: -19 [so aug 1 22:51:48 2021] cp210x ttyusb0: failed set request 0x12 status: -19 [so aug 1 22:51:48 2021] cp210x ttyusb0: failed set request 0x0 status: -19 [so aug 1 22:51:48 2021] cp210x ttyusb0: cp210x converter now disconnected from ttyusb0 [so aug 1 22:51:48 2021] cp210x 1-1.4:1.0: device disconnected [so aug 1 22:52:06 2021] usb 1-1.4: new full-speed usb device number 4 using xhci_hcd [so aug 1 22:52:06 2021] usb 1-1.4: new usb device found, idvendor=10c4, idproduct=ea60, bcddevice= 1.00 [so aug 1 22:52:06 2021] usb 1-1.4: new usb device strings: mfr=1, product=2, serialnumber=3 [so aug 1 22:52:06 2021] usb 1-1.4: product: slae.sh cc2652rb stick - slaesh's iot stuff [so aug 1 22:52:06 2021] usb 1-1.4: manufacturer: silicon labs [so aug 1 22:52:06 2021] usb 1-1.4: serialnumber: 00_12_4b_00_23_93_2c_a8 [so aug 1 22:52:06 2021] cp210x 1-1.4:1.0: cp210x converter detected [so aug 1 22:52:06 2021] usb 1-1.4: cp210x converter now attached to ttyusb0 echad@chet:~ $
-
@thomas-braun sagte in Proxmox Container - USB durchreichen:
-speed usb device number 4 us
ich hab den jetzt nochmal neu gesteckt (ist jetzt device 15) und bekomme
[So Aug 1 23:34:22 2021] usb 1-1: new full-speed USB device number 15 using xhci_hcd [So Aug 1 23:34:22 2021] usb 1-1: New USB device found, idVendor=1a86, idProduct=7523, bcdDevice= 2.64 [So Aug 1 23:34:22 2021] usb 1-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0 [So Aug 1 23:34:22 2021] usb 1-1: Product: USB Serial [So Aug 1 23:34:22 2021] ch341 1-1:1.0: ch341-uart converter detected [So Aug 1 23:34:22 2021] usb 1-1: ch341-uart converter now attached to ttyUSB0
das wäre dann ja so ok, oder? Aber wie reiche ich den dann durch, siehe oben, im /dev Verzeichnis habe ich nur ttyACM0 und nicht ttyUSB0
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
ch341-uart converter now attached to ttyUSB0
folglich wäre dann der Befehl so
udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0.....)