Hallo Zusammen,
noch ganz neu und unerfahren im Thema Fhem stehe ich grad vor einem Problem hinsichtlich der Einbindung eines USB Ports.
Vom Wechselrichter einer PV Anlage möchte ich die PV Werte einlesen. Hierzu besteht eine Verbindung zum Proxmox Server, der Fhem hostet. Der USB Port wird an den Fhem Container durchgereicht. Allerdings sagt mit das Fhem Log, dass auf den USB Port nicht zugegriffen werden kann.
2023.06.19 14:15:24 3: Modbus: defined as /dev/ttyUSB0@9600
2023.06.19 14:15:24 1: Including ./log/fhem.save
2023.06.19 14:15:24 1: Modbus: Can't open /dev/ttyUSB0: Operation not permitted
2023.06.19 14:15:24 1: usb create starting
2023.06.19 14:15:24 1: usb create end
Auf dem Fhem Container wird der durchgereichte USB Port auch angezeigt:
> ls -la /dev/ttyUSB0:
crw-rw-rw- 1 root dialout 188, 0 18. Jun 15:28 /dev/ttyUSB0
lsusb:
Bus 002 Device 003: ID 0bda:0415 Realtek Semiconductor Corp. 2-Port USB 3.0 Hub
Bus 002 Device 002: ID 0bda:0411 Realtek Semiconductor Corp. Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 8087:0aaa Intel Corp. Bluetooth 9460/9560 Jefferson Peak (JfP)
Bus 001 Device 003: ID 0bda:5415 Realtek Semiconductor Corp. 2-Port USB 2.0 Hub
>> Bus 001 Device 006: ID 1a86:7523 QinHeng Electronics CH340 serial converter <<
Bus 001 Device 002: ID 0bda:5411 Realtek Semiconductor Corp. RTS5411 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Als Code ist definiert:
defmod Modbus Modbus /dev/ttyUSB0@9600
attr Modbus group Sticks
attr Modbus openTimeout 2
attr Modbus queueDelay 0.05
attr Modbus queueMax 128
attr Modbus queueTimeout 20
attr Modbus retriesAfterTimeout 60
attr Modbus room PV,x_System
attr Modbus verbose 1
Hat jemand eine Idee, woran es liegen kann, dass Fhem den USB Port nicht auslesen darf?
Hallo Lueppe,
das könnte damit zu tun haben:
https://forum.fhem.de/index.php?topic=133396.msg1274453#msg1274453 (https://forum.fhem.de/index.php?topic=133396.msg1274453#msg1274453)
fhem (user) ist Mitglied in dialout?
@ ergerd:
Das schaue ich heute abend mal an.
@Beta-User: Ja, das hatte ich per adduser gemacht.
Zitat von: ergerd am 19 Juni 2023, 15:48:58Hallo Lueppe,
das könnte damit zu tun haben:
Wohl eher nicht. Der port ist ja vorhanden.
Das Board ist MQTT, der Titel dreht sich um ttyUSB0 Probleme, irgendwie geht es um Proxmox (Container oder VM?) - ist das nicht eher etwas fürs Server-Linux Board (https://forum.fhem.de/index.php?board=33.0) ?
Trotz alledem sagt mein Bauch:
attr initialUsbCheck disable 1
oder von mir aus auch
delete initialUsbCheck
Und danach ein save und einen kompletten Systemneustart (nicht nur FHEM!) versuchen.
Zitat von: Lueppe am 19 Juni 2023, 16:29:53@Beta-User: Ja, das hatte ich per adduser gemacht.
Show us!
Die Fehlermeldung ist doch ziemlich eindeutig....
Zitat von: Otto123 am 20 Juni 2023, 11:49:58Das Board ist MQTT, der Titel dreht sich um ttyUSB0 Probleme, irgendwie geht es um Proxmox (Container oder VM?) - ist das nicht eher etwas fürs Server-Linux Board (https://forum.fhem.de/index.php?board=33.0) ?
Immerhin steht die Frage nicht in den Anfängerfragen...
Du bist doch Administrator - was hindert Dich?
Erstmal Danke für eure Hilfe hierbei!
@ Otto 123: Mit der falschen Platzierung des Themas hast du völlig recht. Das darf gerne an die richtige Stelle "Server-Linux" geschoben werden.
Mal schauen, ob dein Baugefühl recht behält. Ich probiere es aus.
@
Zitat von: Beta-User am 20 Juni 2023, 12:02:00Zitat von: Lueppe am 19 Juni 2023, 16:29:53@Beta-User: Ja, das hatte ich per adduser gemacht.
Show us!
bei einem
--> sudo adduser fhem dialout
gibt's doch gar nichts zu zeigen, oder?
Zitat von: Lueppe am 20 Juni 2023, 16:04:20@ Otto 123: Mit der falschen Platzierung des Themas hast du völlig recht. Das darf gerne an die richtige Stelle "Server-Linux" geschoben werden.
Kann ja passieren, deshalb: Das kannst Du auch selbst erledigen, ;) ganz links unten (über der Schnellantwort) hast Du einen Button Thema verschieben.
Dein
Zitat von: Otto123 am 20 Juni 2023, 11:49:58Das Board ist MQTT, der Titel dreht sich um ttyUSB0 Probleme, irgendwie geht es um Proxmox (Container oder VM?) - ist das nicht eher etwas fürs Server-Linux Board (https://forum.fhem.de/index.php?board=33.0) ?
Trotz alledem sagt mein Bauch:
attr initialUsbCheck disable 1
oder von mir aus auch
delete initialUsbCheck
Und danach ein save und einen kompletten Systemneustart (nicht nur FHEM!) versuchen.
Auch nach einem Neustart des Containers will sich am Log nichts ändern.
2023.06.20 16:09:06 1: Modbus: defined as /dev/ttyUSB0@9600
2023.06.20 16:09:06 1: Modbus: Can't open /dev/ttyUSB0: Operation not permitted
naja ich hatte schon Fälle, da hat der USB Stick /der Baustein an der internen UART nach einem initialUsbCheck so dumm getan, da musste die "Hardware" neu gestartet werden.
Aber Rechte: Das ist ein LinuxContainer ? (LXC - kenne mich damit nicht aus) da kann das Rechte Problem doch nun im Container oder außerhalb vom Container liegen?
Also: darf der user (fhem) -> darf die Container Software auf dem Host -> /ttyUSB0 ? Nur als (eventuell blöde) Idee ...
So kann man die Gruppen anzeigen:
groups fhem
Moin Lueppe,
meine ziemlich "dreckige" Lösung ist in Proxmox sudo /bin/chmod o+rw /dev/ttyUSB0
, damit kann ich im CT auf dieses Device zugreifen. Da das beim Reboot wieder weg ist, habe ich das in sudo crontab -e
stehen:@reboot /bin/chmod o+rw /dev/ttyUSB0
Wenn du dann irgendwann mal eine saubere Lösung gefunden hast, kannst den Eintrag in crontab ja wieder löschen 8)
Gruss
Enno
https://www.cooltux.net/doku.php?id=it-wiki:proxmox:usb_passthrough
Könnte Euch helfen.
Problem gefunden:
in der LXC.conf muss noch ein cgroup2 Eintrag rein. Damit hat es nun funktioniert.
--> lxc.cgroup2.devices.allow: c 188:* rwm
lxc.mount.entry: /dev/ttyUSB0 dev/ttyUSB0 none bind,optional,create=file
Vielen Dank für eure Hilfe, die letztendlich zum Erfolg geführt hat.