USB Schnittellen bei Multi-Regler Version heausfinden

Wenn mehr als ein Gerät an den Raspberry angeschlossen werden sollen. Z.B. ein Regler und ein Wechselrichter oder mehrere Wechselrichter. Das Maximum sind 6 Geräte pro Raspberry Pi.

Moderator: Ulrich

Antworten
sol787
Beiträge: 9
Registriert: Mi 12. Okt 2022, 20:51

USB Schnittellen bei Multi-Regler Version heausfinden

Beitrag von sol787 »

Hi,
bin dabei 3 Wechselrichter vom Typ Easun IGrid SV II 5KW zu installiern per USB A B Stecker an die Solaranzeige multi_regler Version. Wie ist es möglich den USB Anschluss herauszubekommen an dem die Wechselrichter angeschlossen sind?
Könnte mir bitte einer helfen herauszufinden was in der 2.user.config.php unter $USBRegler und $USBDevice eingegeben werden muss. Wenn noch Infos gebraucht werden bitte schreiben.

-------------------------------------------------------------------------------

1 Wechselrichter ist an Bus 001 Device 004: ID 0665:5161 Cypress Semiconductor USB to Serial

/ USB Device, die automatisch erkannt wurde... bitte nicht ändern
// Wird nicht bei der Multi-Regler-Version benötigt.
//
$USBRegler = "/dev/hidraw0";
//
// Nur wenn die automatischer Erkennung nicht funktioniert hat, bitte manuell
// eintragen. Im Normalfall wird das nicht benötigt. So lassen wie es ist.
// --- Nur bei Multi-Regler-Version Nur bei Multi-Regler-Version ----
// Bei einer Multi-Regler-Version muss hier der Devicename manuell
// eingetragen werden.
//
$USBDevice = "/dev/hidraw0";
//
-------------------------------------------------------------------------------------

2 Wechselrichter ist an Bus 001 Device 006: ID 0665:5161 Cypress Semiconductor USB to Serial

pi@solaranzeige:~ $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 0665:5161 Cypress Semiconductor USB to Serial
Bus 001 Device 004: ID 0665:5161 Cypress Semiconductor USB to Serial
Bus 001 Device 007: ID 046a:b091 Cherry GmbH Mouse
Bus 001 Device 005: ID 04d9:0006 Holtek Semiconductor, Inc.
Bus 001 Device 003: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


pi@solaranzeige:~ $ usb-devices

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0002 Rev=05.10
S: Manufacturer=Linux 5.10.103-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 4
D: Ver= 2.10 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=2109 ProdID=3431 Rev=04.21
S: Product=USB2.0 Hub
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub

T: Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 3 Spd=480 MxCh= 4
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=02 MxPS=64 #Cfgs= 1
P: Vendor=05e3 ProdID=0610 Rev=32.98
S: Product=USB2.0 Hub
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#=0x0 Alt= 1 #EPs= 1 Cls=09(hub ) Sub=00 Prot=02 Driver=hub

T: Bus=01 Lev=03 Prnt=03 Port=00 Cnt=01 Dev#= 5 Spd=1.5 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=04d9 ProdID=0006 Rev=01.50
S: Manufacturer=
S: Product=RPI Wired Keyboard 5
C: #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid
I: If#=0x1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid

T: Bus=01 Lev=03 Prnt=03 Port=03 Cnt=02 Dev#= 7 Spd=1.5 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046a ProdID=b091 Rev=01.00
S: Manufacturer=PixArt
S: Product=Cherry USB Optical Mouse
C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid

T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=02 Dev#= 4 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0665 ProdID=5161 Rev=00.02
C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid

T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=03 Dev#= 6 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0665 ProdID=5161 Rev=00.02
C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=5000 MxCh= 4
D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1
P: Vendor=1d6b ProdID=0003 Rev=05.10
S: Manufacturer=Linux 5.10.103-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub


chuck_norris
Beiträge: 14
Registriert: Di 22. Sep 2020, 20:28
Hat sich bedankt: 1 Mal

Re: USB Schnittellen bei Multi-Regler Version heausfinden

Beitrag von chuck_norris »

nano /etc/udev/rules.d/99-usb-serial.rules

da rein:

Code: Alles auswählen

SUBSYSTEM=="tty", ATTRS{serial}=="A10MLGPH", SYMLINK+="dalybms"
SUBSYSTEM=="tty", ATTRS{devpath}=="1.4.2", SYMLINK+="WR3"
SUBSYSTEM=="tty", ATTRS{devpath}=="1.4.3", SYMLINK+="WR1"
SUBSYSTEM=="tty", ATTRS{devpath}=="1.4.4", SYMLINK+="WR2"
dann kannst du die Geräte als /dev/WR1 usw ansprechen statt /dev/ttyUSBX

devpath ist die USB Dose in denen das Gerät steckt. Die muss man vorher natürlich rausfinden.

udevadm info -a -n /dev/ttyUSB0 | grep devpath usw

reboot nicht vergessen!

solarfanenrico

Re: USB Schnittellen bei Multi-Regler Version heausfinden

Beitrag von solarfanenrico »

chuck_norris hat geschrieben:
Mi 26. Okt 2022, 08:32
....
dann kannst du die Geräte als /dev/WR1 usw ansprechen statt /dev/ttyUSBX

devpath ist die USB Dose in denen das Gerät steckt. Die muss man vorher natürlich rausfinden.

udevadm info -a -n /dev/ttyUSB0 | grep devpath usw

reboot nicht vergessen!
mal sehen, wie es sich entwickelt. Evtl werde ich die Anleitung überarbeiten. Ich glaube jedoch auch, daß die Hidraw's keine persönlichen Namen akzeptieren, da es im SUBSYSTEM "tty" keine hidraw gibt.
Die x.user.config.php von solaranzeige weißt mit USBDevice in der Multiregler nur auf /dev/hidraw hin. Aus diesem Grund ist es sicherer die SYMLINK's nur mit hidraw0 usw. zu benennen. Persönliche Namen wie WR1 usw. geht nur m.M.n. nur sicher bei /dev/ttyUSB.

Enrico

solarfanenrico

Re: USB Schnittellen bei Multi-Regler Version heausfinden

Beitrag von solarfanenrico »

Möglichkeit der Abfrage und Zwischenspeicherung der Ergebnisse-
Alle vorhandenen Geräte anstöpseln und Raspberry neu starten.

mit

Code: Alles auswählen

sudo nano /solaranzeige/schnitt.sh
legt man sich eine Datei zur Schnittstellenabfrage an. Hier wird für jeden der 4 USB-Ports nach
/dev/tty/USB 0-3
/dev/hidraw 0-3 und für den Regler 1 auch nach /dev/ttyACM

Folgender Inhalt wird in die Datei schnitt.sh übertragen
#!/bin/bash
#Konfiguration
udevadm info -a -n /dev/ttyUSB0 | grep '{serial}' | head -n1 > 1.99-usb-serial.txt
udevadm info -a -n /dev/ttyUSB0 | grep '{devpath}' | head -n1 > 1.99-usb-path.txt
udevadm info -a -n /dev/ttyUSB1 | grep '{serial}' | head -n1 > 2.99-usb-serial.txt
udevadm info -a -n /dev/ttyUSB1 | grep '{devpath}' | head -n1 > 2.99-usb-path.txt
udevadm info -a -n /dev/ttyUSB2 | grep '{serial}' | head -n1 > 3.99-usb-serial.txt
udevadm info -a -n /dev/ttyUSB2 | grep '{devpath}' | head -n1 > 3.99-usb-path.txt
udevadm info -a -n /dev/ttyUSB3 | grep '{serial}' | head -n1 > 4.99-usb-serial.txt
udevadm info -a -n /dev/ttyUSB3 | grep '{devpath}' | head -n1 > 4.99-usb-path.txt
udevadm info -a -n /dev/hidraw0 | grep '{devpath}' | head -n1 > 5.99-usb-path.txt
udevadm info -a -n /dev/hidraw1 | grep '{devpath}' | head -n1 > 6.99-usb-path.txt
udevadm info -a -n /dev/hidraw2 | grep '{devpath}' | head -n1 > 7.99-usb-path.txt
udevadm info -a -n /dev/hidraw3 | grep '{devpath}' | head -n1 > 8.99-usb-path.txt
udevadm info -a -n /dev/ttyACM0 | grep '{serial}' | head -n1 > 9.99-usb-serial.txt
udevadm info -a -n /dev/ttyACM0 | grep '{devpath}' | head -n1 > 9.99-usb-path.txt
udevadm info -a -n /dev/ttyACM1 | grep '{serial}' | head -n1 > 10.99-usb-serial.txt
udevadm info -a -n /dev/ttyACM1 | grep '{devpath}' | head -n1 > 10.99-usb-path.txt
udevadm info -a -n /dev/ttyACM2 | grep '{serial}' | head -n1 > 11.99-usb-serial.txt
udevadm info -a -n /dev/ttyACM2 | grep '{devpath}' | head -n1 > 11.99-usb-path.txt
udevadm info -a -n /dev/ttyACM3 | grep '{devpath}' | head -n1 > 12.99-usb-path.txt
udevadm info -a -n /dev/ttyACM3 | grep '{serial}' | head -n1 > 12.99-usb-serial.txt
exit;

mit STRG+X speichern, mit „J“ bestätigen und schließen
danach Rechte vergeben

Code: Alles auswählen

chmod 755 /solaranzeige/schnitt.sh
Nachdem diese schitt.sh ausgeführt ist, werden 20 Dateien generiert, wovon jedoch nur die erkannten auch beschrieben werden, weil die Abfrage /dev/hidraw keine sinnvollen {serial}-Antworten gibt.

Alle Dateien mit „0“ Inhalt können gelöscht werden.

Enrico

Antworten

Zurück zu „Multi-Regler-Version [ bis zu 6 Geräten an einem Raspberry Pi ]“