in meinem Ferienhaus kommt es leider regelmäßig zu kurzen Stromausfällen. Eigentlich nicht schlimm - wenn Strom wieder da - verbindet bzw. startet alles wieder neu und gut ist. Komme also wieder auf das System usw.
Leider passiert es trotz eingestellten „Power-on behavior“ auf OFF das Lampen dann doch brennen. Derzeit schaltet mein dortiger Nachbar dann alles am nächsten Tag (hat ein Auge auf mein Häuschen) aus.
Jetzt meine 2 Fragen:
1.) hat jemand schon ein Script oder irgendwas gebaut um einen Stromausfall und somit „unkontrollierten“ Neustart von Symcon zu erkennen
2.) hat jemand für zigbee eine Script das dann alle Lampen checkt bzw. geht das überhaupt?
Wenn ich die erste Frage gelöst bekomme, dann könnte ich schon was basteln um für mich eine Lösung zu bauen.
Bei 1 würde ich einfach das Start Skript vom Event Control nutzen.
Und, für den geplanten Neustart, noch eine Variable im Skript prüfen, welche man dann vorher z.B. auf Wartung setzt (also eine Art Abschaltung des Start Skript).
Ich habe mir dafür die Anwesenheitssimulation installiert und alle möglichen Lampen oder Schalter die Lampen schalten reingegeben. Können also ZigBee Zwischenstecker, oder Shelly sein. Egal.
Mit einem einfachen Skript kann ich sämtlich hier befindlichen Lampen ein oder ausschalten.
function licht_ein_aus($ein_aus)
{
$simulationID=35532;
$lichter=json_decode(json_decode(IPS_GetConfiguration($simulationID),true)["Targets"],true);
foreach ($lichter as $licht)
{
RequestAction($licht["VariableID"],$ein_aus);
}
}
licht_ein_aus($_IPS["STATUS"]);
Dieses Skript wird aus einem Ablaufplan aufgerufen, daher die Funktion.
Wenn du die Simulation nicht haben magst, dann kannst du dir eine String Variable anlegen und dort alle ID’s in einem JSON String ablegen. Funktioniert dann eigentlich gleich.
Zu Punkt eins würde mich noch was einfallen
USV (eine kleine) installieren. Irgend ein Gerät in regelmäßigen Abständen anpingen. Wenn das weg ist, ist der Strom weg (als Annahme). Dann tun, was immer du tun willst. Wenn du dort Internet hast, dann würd ich auch den Router an die USV hängen, dann kannst sogar Mail oder Benachrichtigung senden. Die kleinen USVs kosten nicht die Welt und können deinen IPS Rechner und Router wahrscheinlich über Stunden versorgen.
Ja, soweit hatte ich auch schon gedacht. Aber wenn man nicht aufpasst und die Variable nicht setzt wird es als Stromausfall gewertet
Darum meine Frage ob es was „tod-sicheres“ gibt … was ich im Moment noch nicht sehe
PoE-Hat und PoE-Switch. Was auch den Vorteil hätte den Pi Remote aus- und anschalten zu können. Oder den Pi in den Keller umziehen. Wieso muss der oben sein? Ist da noch etwas angeschlossen?
Für 1. habe ich jetzt noch etwas besseres gefunden - einen shutdown-service, d.h. ein reboot, shutdown und halt wird abgefangen und erzeugt einen Marker, welchen das Symcon Event Start Script dann auslesen kann
Ich habe im Event Control ein Shutdown und ein Startup Skript. Wenn ersteres aufgerufen wird, erstellt es eine Datei im System, letzteres guckt ob diese existiert. Wenn nicht, bekomme ich eine Nachricht über den unerwarteten Neustart.
Alle Busmodule aktiv abfragen sowie auch Teile der HomeMatic(IP) Infrastruktur mache ich auch einmal nach Neustart, egal ob geplant oder ungeplant. Alles wo der Status veraltet sein könnte und was sich aktiv abfragen lässt.
Ich hätte jetzt auch gesagt, dass man den ungeplanten Neustart gut erkennen können sollte, wenn man beim normalen herunterfahren eine bestimmte Variable setzen kann. Diese kann man dann beim Neustart prüfen, bei Bedarf eine bestimmte Aktion ausführen, und dann die Variable wieder zurücksetzen.
StartFunktion()
if (LetzterBetriebsmodus == KorrektHeruntergefahren)
{ // alles OK }
else
{ // Fehlerfall, weitere Dinge prüfen / zurücksetzen und Meldung verschicken }
Ob man wirklich eine USV braucht muss man selbst entscheiden. Die meisten kleinen Server für Smart Home Zentralen stecken das gut weg, wenn sie einfach im laufenden Betrieb abgeschaltet werden. Ein Risiko, dass man gerade mitten in einer schreibenden Funktion ist besteht natürlich, und dann kann es einem einen inkonsistenten Zustand bescheren.
Sollte man sich für eine USV entscheiden wird manches einfacher, anderes schwieriger. Um den Stromausfall dann überhaupt noch zu detektieren muss man sich schon etwas mehr anstrengen.
Möglichkeiten:
Man kann die USV direkt abfragen (wenn sie das unterstützt)
Man kann die Präsenz anderer Geräte regelmäßig abfragen. Dann verpasst man aber vielleicht einen Stromausfall, der nur 1 Sekunde geht (Netzwischer), weil man den Status nicht jede Sekunde aktiv prüft.
Man kann ein Relais dauerhaft am Netz betreiben und dessen Schaltkontakt als digitaler Eingang am System prüfen.
Es hängt also immer davon ab, was man überhaupt erreichen will