Verbindung zu CCU2 überwachen und ggf. neu starten

Begonnen von Dr. Boris Neubert, 27 Januar 2025, 21:02:00

Vorheriges Thema - Nächstes Thema

Dr. Boris Neubert

Hallo,

ich habe weder das passende Reading noch den passenden set-Befehl an HMCCU gefunden, um folgendes zu bewerkstelligen:

Wenn die Verbindung zwischen FHEM und der CCU2 nicht besteht, soll FHEM alle 10 Minuten versuchen, sich neu zu verbinden.

Hintergrund: ich habe gestern die CCU2 vom Netz genommen und später wieder ans Netz gebracht, ohne sie abzuschalten oder FHEM oder die CCU2 neu zu starten. Ich bekam dann keine Daten mehr von meinen Aktoren geliefert, und musste heute FHEM neu starten, damit wieder eine Verbindung hergestellt werden konnte. Wie kann ich das Wiederverbinden automatisieren?

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Otto123

Hallo Boris,

soweit die Theorie: https://forum.fhem.de/index.php?topic=99141.msg928754#msg928754

Ich würde aber zus. ein Presence Device für die CCU machen und nach der Wiederkehr den RCP Server registrieren (wie im Link)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Dr. Boris Neubert

Danke, Otto!

ccu2flag reconnect gesetzt
Watchdog muss ich mir noch bauen.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

zap

Die Sache ist leider nicht so einfach. HMCCU generiert regelmäßig RPC Pings, auf die die CCU mit einem Pong Event antwortet. Bleibt der aus, versucht HMCCU die RPC Server neu zu registrieren. Das klappt eher selten. Es gibt (mindestens) zwei Situationen, in denen es nicht funktioniert und die häufig vorkommen.

1. Die CCU wurde neu gestartet. Problem: Das kann dauern, mitunter 2 bis 3 Minuten. Und auch wenn die CCU auf Netzebene erreichbar ist, heißt das nicht, dass alle Services schon laufen.

2. Der BidCos oder der HmIP Server ist abgeschmiert. Das lässt sich leider nur durch einen manuellen Neustart der CCU beheben. Hier sind ständige Neuregistrierungen der RPC Prozesse eher kontraproduktiv.

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

Dr. Boris Neubert

Gestern hat das Rückspielen des Backups einer anderen VM die VM, wo FHEM läuft, dermaßen lahmgelegt, dass die Verbindung wieder abgebrochen ist. Heute habe ich dann mal den Watchdog gebaut. Allerdings noch in einer einfacheren Form, bei der ich nur die Nachrichten von einem nahen Heizkörperthermostat überwache:

define watchdog.ccu2 watchdog HM_CC_RT_DN_ABC1234567 01:00:00 SAME set CCU2 rpcregister all;; msg "Alle Verbindungen zur CCU2 neu registriert."
attr watchdog.ccu2 autoRestart 1
attr watchdog.ccu2 room Automatisierung
attr watchdog.ccu2 comment Wenn eine Stunde lang nichts vom Arbeitszimmer-Thermostat empfangen wird, dann werden alle Verbindungen zur CCU2 neu registriert.
attr watchdog.ccu2 alias Watchdog CCU2

Mal sehen, wie das funktioniert.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!