RPI-RF-MOD wird nicht in Docker-Container erkannt

Einrichtung, Nutzung und Hilfe zu RaspberryMatic (OCCU auf Raspberry Pi)

Moderatoren: jmaus, Co-Administratoren

TheRiddler1982
Beiträge: 17
Registriert: 01.02.2021, 15:24
System: Alternative CCU (auf Basis OCCU)

RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von TheRiddler1982 » 22.05.2021, 18:39

Hi zusammen,

ich habe nach folgender Anleitung (https://github.com/jens-maus/RaspberryM ... Docker-OCI) versucht, auf meinem Raspberry-Pi-4 RaspberryMatic in der aktuellsten Version im Container zu betreiben. Als Host-OS läuft Ubuntu Server 21.04 als arm64 Bit Version.

Folgende Punkte habe ich anders als in der Anleitung gemacht:
  • sudo sed -i /boot/cmdline.txt -e "s/console=serial0,[0-9]\+ //" sowie sudo sed -i /boot/cmdline.txt -e "s/console=ttyAMA0,[0-9]\+ //" musste ich durch eine Korrektur des Pfades auf /boot/firmware/ anpassen, da diese Datei nicht als symlink im /boot-Verzeichnis vorhanden war.
Ansonsten lief alles ohne Fehler durch und ich konnte den Container mit deploy.sh einrichten und starten lassen. Ich komme auf die Weboberfläche, aber das Funkmodul RPI-RF-MOD scheint irgendwie nicht da zu sein. Es wird zum Beispiel kein Carrier Sence Level angeziegt und bei Geräte anlernen ist das ganze Fenster leer.

Wenn ich mir mit lsmod die geladenen Kernelmodule anschaue, dann steht bei eq3_char_loop unter "used by" eine 0. ich verstehe das so, dass das Modul irgendwie nicht in Verwendung von Docker ist.

Meine Frage: was habe ich falsch gemacht? Habe ich einen Schritt vergessen?

Ich betreibe RPI-RF-MOD am GPIO Bus. Die beiden LEDs des Moduls leuchten dauerhaft rot.

Ich habe vorher RaspberryMatic direkt auf dem Pi4 betrieben, ohne Probleme mit dem Modul, jedoch viele Abstürze gehabt. Neu sind jetzt auch, was ich vorher nicht hatte, Zombie-Prozesse, die von RaspberryMatic ausgehen:

Code: Alles auswählen

ubuntu@raspberrypi4:~$ ps -ef | grep 8647
root        8647    7430  0 16:47 ?        00:00:36 /usr/bin/monit -Ic /etc/monitrc
root       33682    8647  2 20:52 ?        00:00:00 [grep] <defunct>
root       33683    8647  2 20:52 ?        00:00:00 [test] <defunct>
root       33685    8647  5 20:52 ?        00:00:00 [test] <defunct>
root       33686    8647  5 20:52 ?        00:00:00 [sh] <defunct>
root       33687    8647  5 20:52 ?        00:00:00 [test] <defunct>
root       33691    8647 11 20:52 ?        00:00:00 [test] <defunct>
root       33692    8647 11 20:52 ?        00:00:00 [test] <defunct>
ubuntu     33694   33278  0 20:52 pts/0    00:00:00 grep --color=auto 8647
ubuntu@raspberrypi4:~$ ps -ef | grep 7430
root        7430    7410  0 16:46 pts/0    00:00:00 init
root        7477    7430  0 16:46 ?        00:00:00 /sbin/watchdog -T 300 -t 5 /dev/watchdog
root        7561    7430  0 16:46 ?        00:00:04 /bin/hss_led -l 6
root        7570    7430  0 16:46 ?        00:00:00 /sbin/syslogd -n -m 0 -s 4096 -b 1 -D
root        7573    7430  0 16:46 ?        00:00:00 /sbin/udevd -d
root        7666    7430  0 16:47 ?        00:00:03 /usr/sbin/irqbalance
root        8343    7430  0 16:47 ?        00:00:00 /bin/eq3configd
root        8348    7430  0 16:47 ?        00:00:00 /usr/sbin/lighttpd-angel -f /etc/lighttpd/lighttpd.conf -D
root        8354    7430  0 16:47 ?        00:00:00 /bin/ssdpd
root        8413    7430  0 16:47 ?        00:00:40 java -Dos.arch=aarch64 -Xmx896m -DlibNRJavaSerial.userlib=/opt/HMServer/libNRJavaSerialv8.so -Dlog4j.configuration=file:///etc/config/log4j.xml -Dfile.encoding=ISO-8859-1 -Dgnu.io.rxtx.SerialPorts= -jar /opt/HMServer/HMServer.jar /var/etc/HMServer.conf
root        8463    7430  0 16:47 ?        00:00:07 /bin/ReGaHss -f /etc/rega.conf -l 2
root        8536    7430  0 16:47 ?        00:00:07 node /usr/local/addons/mediola/neo_server//automation.js
root        8622    7430  0 16:47 ?        00:00:00 /bin/sh /usr/local/addons/redmatic/bin/redmaticLoader
root        8644    7430  0 16:47 ?        00:00:00 /usr/sbin/crond -f -l 9
root        8647    7430  0 16:47 ?        00:00:36 /usr/bin/monit -Ic /etc/monitrc
ubuntu     33728   33278  0 20:52 pts/0    00:00:00 grep --color=auto 7430
Danke und viele Grüße!

vigeland
Beiträge: 124
Registriert: 29.11.2009, 16:55

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von vigeland » 27.05.2021, 08:30

Hi,
Schau dir mal die Console an. Dazu nutzt ich Portainer im Docker.
Ich hatte Problem mit cpu-rt-runtime Parameter welcher unter anderm in daemon.json muss.
Ich habe das Funkmodul per USB angeschlossen, vielleicht ist bei die auch so.
Man bekommt eine passende Meldung auf der docker console, nach der kann man suchen und findet dann die Einstellungen.

Gruß
Vigeland

Benutzeravatar
jmaus
Beiträge: 7299
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 196 Mal
Danksagung erhalten: 775 Mal
Kontaktdaten:

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von jmaus » 27.05.2021, 08:48

vigeland hat geschrieben:
27.05.2021, 08:30
Ich hatte Problem mit cpu-rt-runtime Parameter welcher unter anderm in daemon.json muss.
Könntest du das bitte näher ausführen, dann könnte man das in die Documentation entsprechend übernehmen.
RaspberryMatic 3.57.5.20210525 @ ESXi, ~190 Hm-RF/HmIP-RF/HmIPW Geräte, ioBroker – RaspberryMatic GitHub Projekt / Twitter

vigeland
Beiträge: 124
Registriert: 29.11.2009, 16:55

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von vigeland » 27.05.2021, 09:17

Könnte die Meldung sein, wegen Ubuntu Server 21.04 als arm64 Bit
Not enough real-time shares (cpu.rt_runtime_us == 0) with Docker #1191 von github
dann geht das Modul nicht.

Benutzeravatar
jmaus
Beiträge: 7299
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 196 Mal
Danksagung erhalten: 775 Mal
Kontaktdaten:

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von jmaus » 27.05.2021, 10:40

vigeland hat geschrieben:
27.05.2021, 09:17
Könnte die Meldung sein, wegen Ubuntu Server 21.04 als arm64 Bit
Not enough real-time shares (cpu.rt_runtime_us == 0) with Docker #1191 von github
dann geht das Modul nicht.
Danke für den Hinweis. Habe nun die RaspberryMatic Dokumentation entsprechend um die Infos zu ggf. notwendigen Anpassung für rt_runtime_us shares erweitert:

https://github.com/jens-maus/RaspberryM ... tup-errors

Hoffe damit ist das ggf. notwendige Vorgehen etwas klarer.
RaspberryMatic 3.57.5.20210525 @ ESXi, ~190 Hm-RF/HmIP-RF/HmIPW Geräte, ioBroker – RaspberryMatic GitHub Projekt / Twitter

TheRiddler1982
Beiträge: 17
Registriert: 01.02.2021, 15:24
System: Alternative CCU (auf Basis OCCU)

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von TheRiddler1982 » 27.05.2021, 23:01

Hi zusammen,

ich habe die Parameter entsprechend der Anleitung gesetzt und mir auch eine neue Version vom deploy.sh Skript geholt. Die aktuell verlinkte Fassung scheint noch nicht die Parameter beim Docker-Aufruf zu setzen. Er bricht mit dem folgenden Fehler ab:

Code: Alles auswählen

Error response from daemon: daemon-scoped cpu-rt-period and cpu-rt-runtime are not supported by the kernel.
Wenn ich die beiden Parameter händisch anhänge, dann kommt der gleiche Fehler:

Code: Alles auswählen

ubuntu@raspberrypi4:~/Docker/Portainer$ docker run -d -ti --privileged --volume ccu_data:/usr/local:rw --volume /lib/modules:/lib/modules:ro --hostname ccu --name ccu -p 2222:22 -p 8080:80 -p 8443:443 -p 2001:2001 -p 2010:2010 -p 8181:8181 -p 9292:9292 --stop-timeout 30 --restart always  ghcr.io/jens-maus/raspberrymatic:latest --cpu-rt-runtime 950000 --ulimit rtprio=99
e0399d345d4675ca12b226c06fc45faa211a4b4e3c25b150aaa082cf0dacd267
docker: Error response from daemon: daemon-scoped cpu-rt-period and cpu-rt-runtime are not supported by the kernel.
Das Startup Log über Portainer sieht wie folgt aus (wenn ich die neuen Parameter nicht setze:

Code: Alles auswählen

Starting watchdog...
,Identifying onboard hardware: oci, OK
,Initializing RTC Clock: onboard, OK
,Running sysctl: OK
,Checking for Factory Reset: not required
,Checking for Backup Restore: not required
,Initializing System: OK
,Starting logging: OK
,Populating /dev using udev: done
,Init onboard LEDs: init, OK
,Starting irqbalance: OK
,Starting network: eth0: link up, fixed, firewall, inet up, 172.17.0.2, OK
,Identifying Homematic RF-Hardware: ...HmRF: none, HmIP: none, OK
,Updating Homematic RF-Hardware: no GPIO/USB connected RF-hardware found
,Starting hs485dLoader: disabled
,Starting xinetd: OK
,Starting eq3configd: OK
,Starting lighttpd: OK
,Starting ser2net: disabled
,Starting ssdpd: OK
,Starting NUT services: disabled
,Initializing Third-Party Addons: OK
,Starting LGWFirmwareUpdate: ...OK
,Setting LAN Gateway keys: OK
,Starting hs485d: disabled
,Starting multimacd: not required
,Starting rfd: no BidCos-RF hardware found
,Starting HMIPServer: ....OK
,Starting ReGaHss: .OK
,Starting CloudMatic: OK
,Starting NeoServer: OK
,Starting Third-Party Addons: OK
,Starting crond: OK
,Setup onboard LEDs: booted, OK
,
Die Zeile mit dem "cpu-rt-runtime" finde ich nicht. Wo wird mir die ausgegeben? Er schreibt, dass er das Modul nicht findet. Ich betreibe es am GPIO.

Könnt ihr mir nochmal helfen?

P.S.: seit Setzung der Parameter läuft auch nicht mehr Portainer.

vigeland
Beiträge: 124
Registriert: 29.11.2009, 16:55

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von vigeland » 28.05.2021, 09:47

Ist es in deinem Falle leider nicht das vermutete Problem.
Das würdest du in deinem Log sehen, daher brauchst du die Parameter nicht.

,Identifying Homematic RF-Hardware: ...HmRF: none, HmIP: none, OK
,Updating Homematic RF-Hardware: no GPIO/USB connected RF-hardware found

hier würde er die Hardware finden und weiter unten wäre dann die Meldung.

Unabhängig von dem Problem.
Wegen der Störstrahlung der PI´s würde ich dir aber eine USB Anbindung empfehlen.
Bei GPIO bin ich aber raus.

Gruß
Vigeland
Zuletzt geändert von vigeland am 28.05.2021, 09:51, insgesamt 1-mal geändert.

TheRiddler1982
Beiträge: 17
Registriert: 01.02.2021, 15:24
System: Alternative CCU (auf Basis OCCU)

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von TheRiddler1982 » 28.05.2021, 09:50

Das Funkmodul am GPIO funktioniert bei mir im klassischen Setup wunderbar, da habe ich keine Störungen von der Funkseite. Daran wird es vermutlich nicht liegen.

Ich bin leider mit meinen Linux/Hardwarekenntnissen am Ende. Wer hat denn noch eine Idee, warum das Modul im Container nicht erkannt wird?

vigeland
Beiträge: 124
Registriert: 29.11.2009, 16:55

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von vigeland » 28.05.2021, 09:53

Nein, das das es an Störungen des PI liegt glaube ich auch nicht.

vigeland
Beiträge: 124
Registriert: 29.11.2009, 16:55

Re: RPI-RF-MOD wird nicht in Docker-Container erkannt

Beitrag von vigeland » 28.05.2021, 09:58

Das hast du ja verändert.

sudo sed -i /boot/cmdline.txt -e "s/console=serial0,[0-9]\+ //" sowie sudo sed -i /boot/cmdline.txt -e "s/console=ttyAMA0,[0-9]\+ //" musste ich durch eine Korrektur des Pfades auf /boot/firmware/ anpassen, da diese Datei nicht als symlink im /boot-Verzeichnis vorhanden war.

Wenn das nicht geklappt hat, sitzt wahrscheinlich ein getty ( Login ) auf dem seriellen Port. Der dürfte dann Probleme machen.
ps fax | grep getty

Ich rate nur !

Antworten

Zurück zu „RaspberryMatic“