Neues Modul HMCCU für Homematic CCU

Begonnen von zap, 19 August 2015, 19:45:30

Vorheriges Thema - Nächstes Thema

mAr86sEb05

aber der fhem service (etc/init.d/fhem) sollte da schon ausgeführt worden sein, zumindest ist das bei mir so

ToM_ToM

Okay, also bei mir läuft der RPC-Server nun endlich nachdem ich den Owner der 2 Dateien im /tmp-Verzeichnis von fhem auf root geändert habe.

Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8

cho

Hallo zap,

die Frage nach dem RPCState hat mich auf die richtige Spur gebracht:

Nach dem OS Reboot bleibt er im Status Starting hängen. In den Logfiles finden sich aber keine Einträge dazu.
Mit rpcserver=off und rpcserver=on kann ich ihn dann manuell starten. Und damit funktioniert auch das Einstellen der Temperatur wie gewünscht.
Nur nach dem nächsten OS Reboot startet er (auch nach längerer Zeit) nicht automatisch.

Die Frage wäre jetzt also, was muss ich für das automatische Starten beim Reboot konfigurieren?

Viele Grüße
Christian

ToM_ToM

Ich wollte jetzt mein Thermostat anbinden. Die Readings zeigen mir auch sämtliche Werte korrekt an.

Aber wenn ich

get HM_KU_Thermostat deviceinfo

ausführe, bekomme ich die Fehlermeldung:
HMCCUDEV: HM_KU_Thermostat Execution of CCU script or command failed

Woran kann das liegen? Wird das vielleicht auch mit Version 3 behoben sein? :)

VG, Thomas
Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8

zap

#259
Zunächst die gute Nachricht für Euch (weniger gut für mich, weil es Arbeit bedeutet ;-). Ich kann das Rechteproblem bei den Queue-Files bei mir nachvollziehen. Habe es nicht bemerkt, da mein Raspi seit ca. 6 Monaten nicht mehr neu gestartet wurde und daher auch die Dateien nicht neu angelegt wurden. Lösung ist in Arbeit.

Ich behebe jetzt erst mal das Problem. Dann schauen wir mal, ob die anderen Effekte immer noch auftreten.

@ToM_ToM: schick mir bitte mal die Ausgabe von "list HM_KU_Thermostat" und das gleiche nochmal für "list <hmccu_device>". Gerne auch per Forum Mail.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

ToM_ToM

Hey zap, habe dir eine Forum-Mail gesendet.

list HM_KU_Thermostat" und "list <hmccu_device>...?

Also das Zweite ist doch im Prinzip nur die Syntax des Ersten.

Oder wolltest du es für die CCU?
Falls ja, habe ich es vorsichtshalber mitgesendet. ;)

VG, Thomas
Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8

zap

Danke, passt so. Problem gefunden. Du hast Post.

Umlaute in CCU Gerätenamen sind keine gute Idee ;-)

Anderer Fehler ist auch gefunden. Update checke ich demnächst ein.

2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

zap

#262
Ich habe gerade einen Bugfix für 88_HMCCU.pm eingecheckt. Der Fix behebt einen Fehler, der das Starten des RPC-Servers verhindert hat. Die Berechtigungen für die Queue-Files wurden falsch gesetzt.

Es genügt, die Datei 88_HMCCU.pm zu installieren.

Danach am besten FHEM anhalten, die alten Queue-Files löschen (normalerweise /tmp/ccuqueue*) und dann FHEM wieder starten. Vorher mit "ps ax | grep ccurpc" noch prüfen, dass kein alter RPC server mehr läuft.

Sorry nochmal für die Probleme. Was für ein blöder Fehler  :'(

@cho: Bitte mal testen, ob Deine RPC Startprobleme damit behoben sind.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

cho

Hallo zap,

Danke für den Fix. Das Problem mit der ccuqueue ist jetzt bei mir behoben.
Aber der automatische Start des RPC Servers funktioniert noch nicht.

Mir ist aber noch etwas dazu eingefallen: Ich habe einen Raspberry Pi 3 laufen.
Beim Installieren von Fhem musste ich in der /etc/init.d/fhem vor dem Starten von Fhem ein sleep 10 einfügen. Ansonsten lief Fhem in alle möglichen Fehler.

Kann es sein, dass der Pi 3 "zu schnell" ist, und deshalb der Autostart des RPC Servers nicht funktioniert?
Das spätere manuelle Starten macht ja keine Probleme.

Kann ich zum Testen irgendwo irgendwie in Deinem Modul eine zusätzliche Verzögerung einfügen?

Viele Grüße
Christian

Ralli

Sieh Dir mal die /etc/init.d/fhem an. Dort solltest Du in der Zeile


# Required-Start:       $local_fs $remote_fs


noch ein $network anfügen, so dass im Endeffekt


# Required-Start:       $local_fs $remote_fs $network


da steht.
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

cho

Der Tipp mit dem $network hat funktioniert.
Danke dafür! Ich habe mein sleep 10 jetzt wieder gelöscht.

Aber das Problem mit dem RPC Server löst es nicht.
Im fhem log steht immer noch nicht "HMCCU: Received IN event. RPC server initialized."
Und im RPCState steht "starting".

Grüße
Christian

ToM_ToM

Hallo zap,

ich habe gerade das Update auf deine neue Datei gemacht.
Allerdings legt der die Dateien bei mir wieder mit CHMOD rw-r--r-- an und Owner ist wieder fhem.
Somit bleibt das der Prozess-State bei "Starting" hängen.

Ist es nicht möglich, die Dateien mit vollen Schreibrechten zu erstellen? Oder siehst du da ein Sicherheitsproblem?

VG, Thomas
Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8

zap

@cho: Zu schnell kannst Du ausschließen. Läuft bei mir auch auf nem Core i7 iMac. Der ist schneller ;-) Tritt das problem nur auf, wenn Du den Raspi neu startest oder auch bei einem Start von FHEM aus bereits laufendem Linux heraus?

Ich denke, wir müssen das in Deinem Fall systematisch angehen:

Setze zunächst mal in HMCCU das Attribut rpcserver auf off und speichere die fhem Konfiguration hab.
Dann stoppe FHEM.
Dann prüfen, ob noch ein RPC Server läuft: ps ax | grep ccurpcd
Falls noch ein Prozess läuft manuell stoppen: kill -SIGINT processid
Nun FHEM starten
Prüfen, was im HMCCU Device im Internal DevCount angezeigt wird. Muss grösser 0 sein
Prüfen, dass das Internal RPC State "stopped" anzeigt und RPCPID 0
Das Attribut verbose auf 2 setzen
Mit Attribut rpcserver on den RPC Server starten
Nach 10-11 Sekunden die Ansicht aktualisieren. Die Set und Get Befehle sollten wieder angezeigt werden und in RPCPID die ProzessID stehen. rPCstate muss "running" zeigen

Fallls das nichts bringt, schicke mit die Ausgabe von "list <hmccudev>" sowie die Ausgabe von folgendem Unix Befehl:

grep "HMCCU" <fhemlogfile> | tail -100

Sowie das ccurpcd_*log File.

2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

zap

Zitat von: ToM_ToM am 24 März 2016, 20:41:47

Ist es nicht möglich, die Dateien mit vollen Schreibrechten zu erstellen? Oder siehst du da ein Sicherheitsproblem?

VG, Thomas

Lässt sich schon machen, wenn Du Dich bis morgen gedulden kannst. Allerdings verstehe ich es nicht: wenn die Datei den Owner fhem bekommt, müsste eigentlich auch Dein FHEM mit diesem User laufen. Du hast aber glaube ich vorhin mal geschrieben, dass es mit root läuft. Dann müsste aber das Schreiben erst recht funktionieren.

Aber wie gesagt: ich ändere die Flags.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

ToM_ToM

Hi zap,

ich habe mein FHEM jetzt soweit umgestellt dass es durch einen User namens fhem gestartet wird.

- dann System neu gebootet mit rpcserver = off.
- anschließend attr rpcserver on gesetzt
Dateien im tmp Verzeichnis werden erzeugt und auch alle paar Sekunden aktualisiert,
RPCPID ist vorhanden aber RPCState bleibt weiterhin auf "Starting".


Clients :HMCCUDEV:HMCCUCHN:
DEF 192.168.178.42
DelDevices 0
DevCount 290
NAME CCU2
NR 34
NewDevices 0
RPCPID 1435
RPCPRC /opt/fhem/FHEM/ccurpcd.pl
RPCState starting
STATE OK
TYPE HMCCU
host 192.168.178.42
Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8