ich habe ein paar Automationen, wie z.B. Rollläden, Beleuchtung, die eine Verzögerung, ein sogenanntes Delay in ihrer Automation haben.
Wenn diese Automation nun startet und dann in Home Assistant ein Neustart gemacht wird, wird die Verzögerung nicht weitergeführt, sprich die Automation bleibt dort hängen. Wie kann ich in Zukunft sicherstellen, dass die Automationen durchlaufen, auch wenn HA einen Neustart macht?
Über eure Erfahrungen und Tipps würde ich mich freuen.
Die Automatisierung startet doch bestimmt durch andere Trigger.
Du wolltest es doch als “delay” in den Aktionen nutzen. Also musst du den Timer in der Aktion starten und dann noch einen Bedingung setzen, dass der Timer ON sein muss.
So sieht meine aktuelle Automation der Rollladen aus.
Die Aktion ist eingebettet in ein “Wenn-Dann” Baustein, da ich hier mehrere Etagen in einer Automation abdecke.
Ich stehe gerade völlig auf den Schlauch @maxe@LvS21
Was macht der Timer-Helfer genau?
Mein Gedanke, der Timer-Helfer aktiviert sich bei einem Neustart von Home Assistant erneut und wenn dieser dann abgelaufen ist, durchläuft dieser erneut die Automation von da aus, wo ich den Timer-Helfer eingebaut habe?!?
Timer-Helfer = Zustand und Zeit beim Start von Home Assistant wiederherstellen
Jetzt muss ich noch aktiv den Timer-Helfer wieder auf untätig setzen, damit dieser wieder in der Ausgangssituation ist?
Ich dachte, der würde bei einem neustart wieder von vorne beginnen
der Timer wird lediglich durch eine Aktion timer.start gestartet und ist dann active. Er läuft dann automatisch die eingestellte Zeit und setzt sich danach wieder auf idle.
Was dann allerdings passieren soll, wenn er wieder idle ist, musst du selber bestimmen.
Der wird also für das Delay / die Verzögerung ausgetauscht? Und würde dann eben wieder auslösen, wenn HA neu startet.
Somit würde ich in meiner Automation den Timer an drei Stellen dieser Automation starten lassen und keine Delays mehr einsetzen.
Theoretisch muss nichts passieren, wenn der Timer im “Leerlauf” ist.
Wenn dem Ganzen so ist, dann verstehe ich den Timer glaube ich auch. Dann muss ich natürlich noch dem Timer eine Bedingung mitgeben, da er auch über Tag auslösen würde, wenn ich HA neu starte - sprich die Automation Rollladen schließen würde durchlaufen, da der Timer gestartet wird.
Das heißt, der Timer löst nicht bei Aktivierung eine Automation aus sondern erst, wenn er wieder in den “Leerlauf” geht, die Zeit abgelaufen ist?
Bedeutet, ich brauche einen Timer Start, wenn HA neu gestartet wird und ein Was passiert nachdem der Timer abgelaufen ist = 2 Timer Befehle für 1 Delay
Noch mal:
der Timer löst erst mal überhaupt nix aus. Du kannst ihn starten und beenden lassen. Mehr ist das erst mal nicht.
Über Automatisierungen kannst du dann sagen, was passieren soll, wenn der Timer aktiviert wird oder ausläuft.
nein, der Timer läuft einfach weiter auch wenn er unterbrochen wurde.
ja, 1x den Timer starten (die 30 Min. fangen an zu laufen) und dann was passieren soll, wenn der Timer ausgelaufen ist.
Stell dir vor du würdest eine Pizza in den Backofen schieben (dein Trigger). Jetzt aktivierst du einen Timer (timer.start) auf 12 Minuten (1. Aktion).
Wenn der Wecker jetzt nach 12 Minuten bimmelt (timer wieder im leerlauf), musst du ja auch eine Aktion durchführen (der Timer weiß ja nix), nämlich die Pizza rausholen.
ich hänge mich hier einmal mit rein, da mich das Thema Timer auch interessiert und ich da auch manchmal schwimme, wenn es um Automationen und Timer geht.
Wenn ich Maxe richtig verstehen, dann laufen Timer auch weiter, wenn HA zwischendrin neu gestartet wird. Dafür muss man aber (wenn ich es richtig verstehe), dem Timer bei der Erstellung ein restore mitgeben. “Timers will be restored to their correct state and time on Home Assistant startup and restarts when configured with the restore option.”
Lt. Doku wird dann bei einem Neustart der Timer wiederhergestellt. Soweit so gut. Allerdings sagt die Doku auch: “However, automations using the timer.finished event will not trigger on startup if the timer expires when Home Assistant is not running.”
d.h. solange (um im Beispiel zu bleiben) der Neustart innerhalb der eingestellten 12 Minuten erfolgt, wird mich der Timer rechtzeitig an die Pizza erinnern, vorausgesetzt, dass Ende des Timers löst die Automation (Erinnerung) aus. Liegt aber zwischen Herunterfahren und Neustarten zufällig genau das Ende der 12 Minuten, dann ist der Timer bei Neustart abgelaufen und nichts passiert (außer dass die Pizza verbrennt )
Sicherlich, wäre schon ein Zufall, wenn der Timer genau in der “toten” Zeit abläuft, aber um zu Verhindern, dass eine Automation sich “aufhängt” muss man beim Neustart die Automation auslösen und dann schauen lassen, ob der Timer abgelaufen ist.
Für solche Fälle kannst Du Dir einen Helfer „Pizza im Backofen“ erstellen. Und diesen bei Start des Timers einschalten. Als Auslöser, verwendest Du dann zusätzlich den Home Assistant Neustart.
Sollte jetzt genau während des Home Assistant Neustarts der Timer ablaufen. Wird die Automation mit dem Neustart ausgelöst. Mit der Bedingung „Pizza im Backofen“ ist an, kannst Du dann Deine gewünschten Aktionen zum Ablauf des Timers ausführen und den Helfer wieder ausschalten.