NEWS
[Gelöst] Proxmox Container - USB durchreichen
-
@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.....)
-
@crunchip Leider nicht, das scheint ja das Problem zu sein:
andreas@iobroker:/dev$ udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0) Unknown device "/dev/ttyUSB0": No such file or directory info: option requires an argument -- 'p'
im /dev/ Verzeichnis gibt es kein ttyUSB0...
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 beginn doch mal von vorne, zieh deinen einen stick ab (nicht das da sich etwas in die Quere kommt), starte ggf. den Rechner neu und dann prüfe nochmal
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
andreas@iobroker:/dev$ ls
du bist auf deinem iobroker, daher klappt das nicht, du musst auf proxmox
https://forum.iobroker.net/post/610799 -
@crunchip Oh Mann, das hab ich echt nicht gemerkt...
Läuft noch immer nicht aber ich bin zumindest etwas weiter:root@proxmox:/etc/pve/nodes/proxmox/lxc# ls -la /dev/serial/by-id/ total 0 drwxr-xr-x 2 root root 80 Aug 1 23:35 . drwxr-xr-x 4 root root 80 Jun 20 20:33 .. lrwxrwxrwx 1 root root 13 Aug 1 23:35 usb-1a86_USB_Serial-if00-port0 -> ../../ttyUSB0 lrwxrwxrwx 1 root root 13 Jun 20 20:33 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E1CB74-if00 -> ../../ttyACM0 root@proxmox:/etc/pve/nodes/proxmox/lxc#
der auf ttyUSB0 gemountete ist der neue Stick. Im iobroker sieht man den jetzt auch auf der Konsole:
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 015: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub andreas@iobroker:~$ ls /dev bus console core fd full initctl log mqueue null ptmx pts random shm stderr stdin stdout tty tty1 tty2 ttyACM0 ttyUSB0 urandom zero andreas@iobroker:~$
Ich hab dann im zigbee Adapter den com Anschluss /dev/ttyUSB0 gewählt und als Typ TI Z-Stack/CCxxxx gewählt (hoffe das ist so richtig, ist ja kein TI aber ein CC2652P. Damit wird der Adapter aber nur gelb und im Log steht
zigbee.0 2021-08-02 12:19:03.990 error Error herdsman start zigbee.0 2021-08-02 12:19:03.990 error Failed to start Zigbee zigbee.0 2021-08-02 12:19:03.989 error Starting zigbee-herdsman problem : "Error while opening serialport 'Error: Error Resource temporarily unavailable Cannot lock port'" zigbee.0 2021-08-02 12:19:03.810 info Installed Version: iobroker.zigbee@1.5.6 zigbee.0 2021-08-02 12:19:03.792 info Starting Zigbee npm ... zigbee.0 2021-08-02 12:19:03.791 info Try to reconnect. 1 attempts left zigbee.0 2021-08-02 12:18:54.649 error getGroups: caught error: TypeError: Cannot read property 'getGroups' of undefined zigbee.0 2021-08-02 12:18:53.790 error Error herdsman start zigbee.0 2021-08-02 12:18:53.789 error Failed to start Zigbee zigbee.0 2021-08-02 12:18:53.789 error Starting zigbee-herdsman problem : "Failed to connect to the adapter (Error: SRSP - SYS - ping after 6000ms)" zigbee.0 2021-08-02 12:18:34.108 info Installed Version: iobroker.zigbee@1.5.6 zigbee.0 2021-08-02 12:18:33.724 info Starting Zigbee npm ... zigbee.0 2021-08-02 12:18:33.589 info starting. Version 1.5.6 in /opt/iobroker/node_modules/iobroker.zigbee, node: v14.17.2, js-controller: 3.3.15 host.iobroker 2021-08-02 12:18:30.580 info instance system.adapter.zigbee.0 started with pid 1554 host.iobroker 2021-08-02 12:18:28.135 info instance system.adapter.zigbee.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
ich hab da im Moment noch beide Sticks am NUC hängen, für mich sieht das so aus, dass er den neuen nicht verbinden kann, ich vermute mal falschen Typ gewählt (?) aber der zigbee Adapter hat in der Auswahlliste nur den TI Z-Stack/CCxxxx, Dconz/Conbee, NXP/Zigate und Silicon Labs EZSP/EFR32
Hat hier noch jemand eine Idee wo da was falsch läuft? -
@amg_666 sagte in Proxmox Container - USB durchreichen:
der auf ttyUSB0 gemountete ist der neue Stick. Im iobroker sieht man den jetzt auch auf der Konsole:
Also genau genommen siehst du auf der Konsole erstmal nur, dass sich der USB-Seriell-Wandler des CC2652P - Sticks (ein Qinheng-Dings) meldet
Eine Möglichkeit, warum der Kontakt mit dem Zigbee-Adapter nicht klappt, wäre, dass der CC2652P nicht mit dem USB-Wandler sprechen möchte - sicher, dass da eine passende Firmware drauf ist? -
@jleg Ich hab da jetzt sicherheitshalber nochmal die Firmware drübergebügelt, selber Effekt.
Auf dem Stick ist "CC1352P2_CC2652P_launchpad_coordinator_20210708.zip" und der SmartRF Programmer sagt "Success" am Ende des Flashvorgangs... -
Uff, das war ne schwere Geburt...
Ich hatte den Stick jetzt aus dem NUC gezogen, in meinen Windows PC gesteckt und nochmal geflasht. Danach zurück in den NUC und der zigbee Adapter liefert den Fehler im Log, dass er keine Berechtigung hat auf ttyUSb0 zuzugreifen.
Wenn ich auf die proxmox Konsole des Containers gehe, sehe ich auch, dass die Berechtigungen komplett fehlen:
Ich habe darauf in der Proxmox Shell den Container gestoppt, die Berechtigung nochmal neu gesetzt, und den Container gestartet.
Jetzt sieht es im LXC so aus:andreas@iobroker:~$ ls -l /dev/ttyUSB0 crw-rw-rw- 1 nobody nogroup 188, 0 Aug 2 17:32 /dev/ttyUSB0
und zigbee erkennt auch den neuen Stick.
2 Fragen hätte ich noch:
- Was muss ich tun, damit die Berechtigung auf der Datei bestehen bleibt, auch wenn ich den Stick mal abziehe?
- Gibt es eine Möglichkeit, dass ich das vorhandene Netz auf den neuen Stick "umziehe"? Stick wird erkannt aber die Geräteübersicht ist leer. Muss ich da manuell alles neu anlernen?
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
Was muss ich tun, damit die Berechtigung auf der Datei bestehen bleibt, auch wenn ich den Stick mal abziehe?
Udev-Regel ist das Stichwort.
-
@amg_666 sagte in Proxmox Container - USB durchreichen:
Was muss ich tun, damit die Berechtigung auf der Datei bestehen bleibt,
Das steht doch ebenfalls im Link den ich dir gepostet habe
-
An der udev - Regel habe ich mir die Zähne ausgebissen und es im Endeffekt nicht hinbekommen (Symlink wird nicht erstellt).
Über einen cronjob setze ich jetzt die Berechtigungen bei einem Neustart und die lxc-conf habe ich recht generisch gestaltet:crontab -e @reboot chmod o+rw /dev/ttyACM0
lxc.cgroup.devices.allow: c 189:* rwm lxc.mount.entry: /dev/ttyACM0 dev/ttyACM0 none bind,optional,create=file
Ob das gereicht hat, sehe ich beim nächsten Neustart
-
Kurze Frage zu diesem Thema hier. Bei mir läuft ebenfalls der ioBroker als Container Lösung unter Proxmox. So wie hier beschrieben, konnte ich meinen USB-Stick für Zigbee erfolgreich durchreichen. Kann mir jemand sagen, was ich anpassen muss, um einen weiteren (SmartMeter) USB Anschluss durchzureichen?