Ich würde gerne meine Poolpumpe nicht zu festen Zeiten schalten, sondern dynamisch.
Dafür habe ich zwei Helfer:
input_datetime.poolpumpe_einschaltzeit
input_datetime.poolpumpe_ausschaltzeit
die ich in der Automation nutze:
alias: Steuerung Poolpumpe
description: Schaltet die Steckdose für die Poolpumpe
trigger:
- platform: template
value_template: >-
{{ states('sensor.time') ==
states('input_datetime.poolpumpe_einschaltzeit')[0:5] }}
- platform: template
value_template: >-
{{ states('sensor.time') ==
states('input_datetime.poolpumpe_ausschaltzeit')[0:5] }}
action:
- choose:
- conditions:
- condition: template
value_template: >-
{{ states('sensor.time') ==
states('input_datetime.poolpumpe_einschaltzeit')[0:5] }}
sequence:
- target:
device_id: 2fe0a321fca12119e4ffe29a793dfcd3
action: switch.turn_on
data: {}
- conditions:
- condition: template
value_template: >-
{{ states('sensor.time') ==
states('input_datetime.poolpumpe_ausschaltzeit')[0:5] }}
sequence:
- target:
device_id: 2fe0a321fca12119e4ffe29a793dfcd3
action: switch.turn_off
data: {}
mode: single
Leider funktioniert das nicht. Kann man simulieren, wie die Automation ablaufen wird? Oder sieht jemand meinen Denkfehler?
Mach es Dir doch nicht so schwer und verwende Deine zwei input_datetime Helfer direkt als Zeit Auslöser.
alias: Steuerung Poolpumpe
description: Schaltet die Steckdose für die Poolpumpe
trigger:
- platform: time
at: input_datetime.poolpumpe_einschaltzeit
id: einschalten
- platform: time
at: input_datetime.poolpumpe_ausschaltzeit
id: ausschalten
action:
- choose:
- conditions:
- condition: trigger
id:
- einschalten
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.poolpumpe
- conditions:
- condition: trigger
id:
- ausschalten
sequence:
- action: switch.turn_off
data: {}
target:
entity_id: switch.poolpumpe
mode: single
switch.poolpumpe musst Du gegen Deine Switch Entität austauschen.
Gruß
Osorkon
2 „Gefällt mir“
… Ok, da habe ich mir das echt zu schwer gemacht. Danke für die Korrektur meins Codes
Wenn morgen um 10:00 die Pumpe anspringt, bin ich happy! Ich danke dir!
Wenn Dein input_datetime.poolpumpe_einschaltzeit auf 10 Uhr eingestellt ist, wird sie das auch tun.
Vorausgesetzt der Plug ist eingesteckt und Du hast switch.poolpumpe durch die richtige Entitäts-ID ausgetauscht.
Gruß
Osorkon
Es hat funktioniert! Vielen Dank!!!
Hallo
Da ich vor dem gleichen Problem stehe würde mich Interessieren wie die Helfer:
input_datetime.poolpumpe_einschaltzeit
Und ausschaltzeit
Aussehen.
Desweiteren welche Zeiteinheit hast bei Data benutzt.
Hast du das Programm als Automation oder bei Yaml?
HaGoDo
28. Juni 2026 um 10:56
7
Beider Erstellung des Helfers „Zeitpunkt-Eingabe“ gibt es kein „Aussehen“. Man muss lediglich festlegen, ob man Uhrzeit oder Datum oder beides eingeben will.
Für Data gibt es in diesem Zusammenhang keinen Wert. Da wird keine Zeiteinheit eingestellt.
Einfach wie in der Automation oben die Input Datetime als Auslöser verwenden.
Die Input Datetime Helfer sind vom Typ Uhrzeit.
Gruß Osorkon
Habe das jetzt mal auf meine Gegebenheiten angepasst:
alias: Steuerung Poolpumpe
description: Schaltet die Steckdose für die Poolpumpe
trigger:
- platform: time
at: input_datetime.poolpumpe_einschaltzeit
id: einschalten
- platform: time
at: input_datetime.poolpumpe_ausschaltzeit
id: ausschalten
action:
- choose:
- conditions:
- condition: trigger
id:
- einschalten
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.shellyoutdoorsg3_e4b063dec678
- conditions:
- condition: trigger
id:
- ausschalten
sequence:
- action: switch.turn_off
data: {}
target:
entity_id: switch.shellyoutdoorsg3_e4b063dec678
mode: single
Verstehe noch nicht was ich bei:
sequence:
- action: switch.turn_on
data: {}
target:
data und target eintragen soll.
Ist Data meine 5 bzw 1 Minute ? Was ist target ?
data kannst Du ignorieren, es werden einfach keine weiteren Daten übermittelt bzw. benötigt.
Als Target hast Du doch bereits die zu schaltende Entität angegeben.
Gruß Osorkon
rstuck
1. Juli 2026 um 11:06
12
wiwowilli:
Verstehe noch nicht was ich bei:
sequence:
- action: switch.turn_on
data: {}
target:
data und target eintragen soll.
Ist Data meine 5 bzw 1 Minute ? Was ist target ?
Ich habe den Eindruck du bearbeitest die Automation im yaml-Modus, richtig? Ich empfehle dir in den Visuellen-Modus zu wechseln.
1 „Gefällt mir“
Ja
Habe ich jetzt auch gesehen das das geht.
Dachte erst das wäre nur YAML.
Wenn ich das jetzt so verstehe geht es bei dieser Automation nur um eine EIN- und eine AUSschaltzeit?
Genau. Den ein und ausschalt Zeitpunkt, kannst Du wie in Deinem Beispiel über 2 Input Datetime Helfer realisieren. Wenn es mehrere ein und ausschalt Vorgänge pro Tag sein sollen, würde ich aber einen Zeitplan als Helfer verwenden.
Gruß Osorkon
Ok
Habe ich jetzt verstanden.
Ich habe eigentlich ein ganz anderes Anliegen.
Ich brauche einen EIN-AUSschaltzyklus.
1 Minute AN, 5 Minuten AUS
Und das zwischen 10:00 und 20:00
Habe mich schon an einer Automation versucht, mit 2 Timern, habe aber immer noch das Problem das der 2. Timer aktiv bleibt und somit nicht zurück gesetzt wird.
Gibt es für diesen Flip Flop evtl. einen Blueprint.
Da in der Blueprints Auswahl ja alles in Englisch steht finde ich da nichts.
wiwowilli:
Ich brauche einen EIN-AUSschaltzyklus.
1 Minute AN, 5 Minuten AUS
Und das zwischen 10:00 und 20:00
Um 10 Uhr einschalten, um 22 Uhr ausschalten
Zwischen 10 und 22 Uhr
Wenn Schalter 1 min an, dann ausschalten
Wenn Schalter 5 min aus, dann einschalten
description: ""
mode: single
triggers:
- trigger: time
at: "10:00:00"
id: einschalten
- trigger: time
at: "22:00:00"
id: ausschalten
- trigger: state
entity_id:
- switch.xyz
to:
- "on"
for:
hours: 0
minutes: 1
seconds: 0
id: ausschalten
- trigger: state
entity_id:
- switch.xyz
to:
- "off"
for:
hours: 0
minutes: 5
seconds: 0
id: einschalten
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id:
- einschalten
- condition: time
after: "10:00:00"
before: "22:00:00"
sequence:
- action: switch.turn_on
metadata: {}
target:
entity_id: switch.xyz
data: {}
- conditions:
- condition: trigger
id:
- ausschalten
- condition: time
after: "10:00:00"
before: "22:01:00"
sequence:
- action: switch.turn_off
metadata: {}
target:
entity_id: switch.xyz
data: {}
Gruß Osorkon
HaGoDo
1. Juli 2026 um 12:58
17
Oder über das UI (visueller Modus):
Versuch mal den Screenshot als neue Automation anzulegen.
Den Yaml Code kannst Du dagegen 1:1 kopieren und eine neue Automation erstellen.
Dein Bsp. hat zusätzlich den Schönheitsfehler, dass jeder Neustart, geplant oder ungeplant die Automation vorzeitig beendet. Mit Verzögerungen würde ich definitiv nicht arbeiten.
Gruß Osorkon
Dein Code funktioniert.
Genau das was ich gesucht habe.
Vielen Dank
1 „Gefällt mir“
HaGoDo
1. Juli 2026 um 14:23
20
Das ist ja wohl kinderleicht. Und der Lerneffekt ist für den Fragesteller wesentlich größer, als wenn er deinen fertigen Code kopiert. Da kann man besser Claude fragen und bekommt einen deutlich kompakteren Code mit Erklärungen zu den einzelnen Schritten:
alias: Blinklicht 10-20 Uhr
trigger:
- platform: time_pattern
minutes: "/1"
condition:
- condition: time
after: "10:00:00"
before: "20:00:00"
action:
- variables:
phase: >
{{ ((now().hour * 60 + now().minute) - (10 * 60)) % 6 }}
- choose:
- conditions:
- condition: template
value_template: "{{ phase == 0 }}"
sequence:
- service: light.turn_on
target:
entity_id: light.DEIN_LICHT
- conditions:
- condition: template
value_template: "{{ phase == 1 }}"
sequence:
- service: light.turn_off
target:
entity_id: light.DEIN_LICHT
mode: single
Erklärungen:
Wie es funktioniert:
• Läuft jede Minute, aber nur zwischen 10:00 und 20:00 Uhr (Condition)
• phase berechnet die Minuten seit 10:00 Uhr modulo 6
• phase == 0 → Licht an (1 Minute)
• phase == 1 → Licht aus (bleibt dann 5 Minuten aus, bis phase wieder 0 ist)
Dein Einwand bzgl. Neustart von HA ist berechtigt, das Problem lässt sich aber sehr einfach durch einen Helfer vermeiden.