häufige HomeMatic Socket Error

Hallo,

ich habe mir immer wieder mal das Problem, dass der HomeMatic Socket sich mit Fehler #10054 verabschieded und dann im Fehlerzustand auch bleibt. Damit gehen auch die Devices in den Fehlerzustand. Das Merkwürdige an der ganzen Sache ist jedoch, dass der Socket funktioniert weil ich von allen (Temp/Feuchte-)Sensoren weiterhin aktuelle Werte empfange. Ich kann nur z.B. bei den Raumthermostaten den SETPOINT-Wert nicht mehr ändern solange der Socket und auch die Devices im Fehlerzustand sind. War leider heute früh klassisch: Im Bad und dann bei meiner Familie herschte ein wenig eisige Stimmung weil der Heizkörper nicht auf Wohlfühltemperatur hochgeregelt hat.

Mir stellen sich da folgende Fragen und eventuell hat ja einer von Euch eine Idee:

  1. Warum kommt der Socketfehler überhaupt? Ich lasse derzeit im 5s Intervall ein PING auf die CCU laufen und konnte keine Netzwerk-Aussetzer im Log sehen. Also kann ja in meinen Augen nur was an den Dienste auf der CCU geklemmt haben. CCU hat aktuelle FW (1.508).
  2. Warum erkennt der Socket nicht - wenn doch die CCU doch mal weg gewesen sein sollte - dass die Connection wieder da ist? Kann ja auch wirklich mal kurzzeitig das Netzwerk gestört sein oder CCU Neustart.
  3. Warum empfange ich von allen Sensoren aktuelle Werte trotz Fehlerzustand des Socket und der Devices? Nur Ändern an den Devices geht in dem Moment nicht (sprich SETPOINT vom Wandthermostat ging heute früh nicht).

IPS-Version ist aktueller Stand: BETA 2.7 #2672

Edit: Gibt es eine Möglichkeit, den Fehlerstatus/aktuellen Verbindungsstatus des CCU Socket abzufragen und ggf. zurückzusetzen? IPS_GetProperty(/[CCU]/, „Open“) liefert ja nicht den aktuellen Status sondern nur die ConfigOption dass der Socket geöffnet sein soll.

Im MessageLog sieht es so aus:
CCUSocket.png

Die Verbindung kommt einfach nicht mehr wieder…

Danke

McCrash

SocketError 10061 habe ich seit heute auch und momentan bekomme ich dei CCU auch nicht mehr in IPS. Der letzte Socketfehler ist schon ne gefühlte Ewigkeit her.

Habt Ihr eine 19 Tasten Fernbedienung?

Wenn bei mir der Akku an der Fernbedienung leer ist
bekomme ich auch diese Kommunikationsprobleme. :frowning:

Warum auch immer.:confused:

Nein, eine FB habe ich nicht.

Ich habe in den letzten Tag mal einiges probiert. Bei mir schien es grundsätzlich der Switch gewesen zu sein. Anderer Switch rein und schon sind die Socket Errors erst einmal weg.
In meinen Augen scheint es aber mit dem CCU Socket trotzdem noch ein anderes Problem zu geben. Wenn die CCU durch den defekten Switch kurz weg war, dann geht der CCU Socket in den Fehlerstatus und versucht im Minutenintervall sich wieder neu zu verbinden. Soweit ja auch OK. Und genau das Verbinden scheint nicht richtig zu laufen in IPS weil:

  1. Ich habe trotz Fehlerstatus vom Socket Daten aller HM Sensoren von der CCU empfangen. Ich konnte nur keine Werte setzen.
  2. In der Config vom Socket einfach irgend ein Param „geändert“ (open/close, IP kurz editiert) damit ich auf übernehmen clicken konnten und schon war wieder alles OK.

Ich glaube, dass die Implementierung des Minutentimer für den re-connect eventuell noch einen kleinen Bug hat. Nur so eine Vermutung…

McCrash

Connection refused.

Keine FB.
Bei mir kommen keine Werte der CCU. Alles rot.
CCU Neustart, Switch und Router Neustart brachte auch nix.

Auf die WebGUI der CCU kommst Du aber schon noch drauf?

Ja, das passt alles. Rechner (IPS-Server) wurde auch neu gestartet und Socket versuchsweise mehrfach geschlossen und wieder geöffnet.
Virenscanner und Firewall auch durchgetestet.

Später: UPS: Hatte jetzt die CCU-GUI offen gelassen und nun kommt

Eine Komponente der HomeMatic Zentrale reagiert nicht mehr.

Damit dürfte IPS raus sein.

Nach CCU Neustart war alles wieder ok.
Komisch nur, dass es vorhin mit gleicher Procedur nichts gebracht hatte.

Nur der Vollständigkeit halber beantworte ich meine Frage aus dem 1. Post selber: Ich lasse derzeit den Socket alle 5min von einem kleinen Script prüfen und reagiere ggf. wenn der Socket wieder im Fehlerstatus ist, da ja das automatische re-connect nicht wirklich bei mir zu funktionieren zu scheint. Falls es einer brauchen sollte:

<?
        $Instance  = IPS_GetInstance(28030 /*[CCU]*/);
        $Status    = $Instance['InstanceStatus'];
        if ($Status != 102) {
            IPS_LogMessage("CCU Socket", $Status);
            IPS_SetProperty(28030 /*[CCU]*/, "Open", FALSE);
            IPS_SetProperty(28030 /*[CCU]*/, "Open", TRUE);
            IPS_ApplyChanges(28030 /*[CCU]*/);
        }
?>

Da der Fehler bisher nicht mehr aufgetreten ist, kann ich leider nicht sagen, ob dieser Workaround hilft.