Hallo zusammen,
vorab - ich bin absoluter Neuling und HA läuft bei mir erst seit 3 Tagen. Ich hangle mich so durch und muss manche Dinge wohl anders denken als früher.
Ich habe an der Terrasse eine LED-Bodenbeleuchtung, welche ich in den Sommermonaten gerne von 21.30 - 1.00 Uhr ein bzw. ausschalten lassen möchte.
Unter “Automationen” war mein Gedanke nun, dass ich als Auslöser “Zeit und Ort” wähle und dann als Bedingung quasi “Gerät einschalten” definiere. Das würde ich so wohl hinbekommen - nur kann ich nicht den gewünschten Datumsbereich (z.B. 01.06 bis 31.09) definieren.
Wie lässt sich dies bewerkstelligen?
Danke euch!
Als Bedingung kannst Du ein Template verwenden.
Monat >=3 und <=9
{{ now().month >= 3 and now().month <+9 }}
Und die Automatisierung kann dann so aussehen.
description: ""
mode: single
trigger:
- platform: time
at: "21:00:00"
id: einschalten
- platform: time
at: "01:00:00"
id: "ausschalten "
condition: []
action:
- choose:
- conditions:
- condition: trigger
id:
- einschalten
- condition: template
value_template: "{{ now().month >= 3 and now().month <+9 }}"
- condition: state
entity_id: light.xyz
state: "off"
sequence:
- service: light.turn_on
metadata: {}
data: {}
target:
entity_id: light.licht_arbeitsplatte
- conditions:
- condition: trigger
id:
- "ausschalten "
- condition: state
entity_id: light.xyz
state: "on"
sequence:
- service: light.turn_off
metadata: {}
data: {}
target:
entity_id: light.xyz
Alternativ kannst Du Dir auch mit dem oberen Template auch ein Template Binary Sensor als Helfer erstellen. Und diesen als Bedingung in den Automatisierungen verwenden.
Vorteil dabei wäre, dass Du diesen in mehreren Automatisierungen verwenden kannst. Und solltest Du mal den Zeitraum ändern wollen, genügt es einmalig den Template Sensor anzupassen, anstatt alle Automatisierungen.
Eine weitere Möglichkeit wäre der Season Sensor.
Gruß
Osorkon
Danke Osorkon für die ausführliche Antwort.
Als Laie versuche es ich zuerst mal mit der vorgefertigten “Season” integration.
Daraus habe ich mal eine Automation erstellt die ich heute Abend testen möchte.
Hätte aber offen gesagt gedacht, dass so etwas wesentlich einfacher einzustellen sein müsste - quasi im Standardauswahlmenü.
Leider führte die Variante mit dem Jahreszeiten-Sensor nicht zum Erfolg.
Nun wage ich mich mal an dein Template heran und komme mit einer weiteren Anfängerfrage ums Eck.
Wo füge ich diesen Code ein? Unter Entwicklertools —> Templates finde ich ein Fenster, in dem ich dies eingeben könnte - aber keine Option zum abspeichern und benennen des Templates.
Entwicklerwerkzeuge → Geräte und Dienste → Helfer
Rechts unten dann auf Helfer erstellen → Template → Template für einen Sensor erstellen
Was meinst Du mit, es funktioniert nicht?
Deine Automatisierung lautet, wenn ich es aus dem Screenshot richtig interpretiere. (Der yaml Code wäre hier hilfreicher)
Wenn der Schalter betätigt wird
Und es ist Winter und es ist zwischen 21 und 01 Uhr
Dann Schalter Einschalten.
Die Auslöser müssen die Uhrzeiten für das Ein- und Ausschalten sein.
Wenn Auslöser 21 Uhr
Und es ist Frühling oder Sommer ist
Dann Licht einschalten
Wenn Auslöser 01 Uhr
Und Licht ist an
Dann Licht ausschalten.
Siehe Automatisierung, die ich oben gepostet habe.
Gruß
Osorkon
Danke für eure beiden Antworten. Ich komme in HA noch an den Stellen nicht weiter, an denen der Code eingegeben werden soll. Für einen binären Sensor als Helfer wäre der Code oben zu lange gewesen. Ist das bei der Automation unter den drei Punkten rechts neben „Traces“ zu finden? —> Yaml?
Habe es eben nochmals neu eingerichtet. Als erstes Startuhrzeit als Auslöser angelegt. Dann eine Bedingung hinzugefügt, welche mit einer ‚Helfer-Entität verknüpft ist. Bei diesem Sensor habe ich den Code „ {{ now().month >= 3 and now().month <+9 }}“ eingefügt. Vermutlich werde ich hier die „3“ noch auf „6“ für Juni umstellen müssen.
Als letztes dann den EMylo-Schalter als Gerät mit dem Befehl „einschalten“ verknüpft. Das müsste wohl klappen.
Dir fehlt noch der Status in der Bedingung für den binary_sesnor.emylo_sommerzeit.
state: "on"
Was das Template als Bedingung angeht.
Einfach als Bedingung Template auswählen und das Template einfügen.
Ich habe grad gemerkt, dass sich im Template ein Fehler eingeschlichen hat.
Es muss natürlich
{{ now().month >= 3 and now().month <=9 }}
und nicht
{{ now().month >= 3 and now().month <+9 }}
lauten
Gruß
Osorkon
Danke, solangsam klingelt es, werde es testen
Ist aber keine besonders schlaue KI!
Die Bedingung
after: “June 1”
before: “September 30”
gibt es nicht. Für after und before kommt entweder einen Uhrzeit rein.
Oder ein Datums-/Uhrzeithelfer.
Diese Automatisierung, schalten das Licht um 21:30 Uhr ein im Zeitraum von Juni bis September.
Und schaltet das Licht um 01:00 Uhr aus, wenn es noch an ist.
alias: Schalte EMylo Schalter um 21.30 Uhr ein
description: ""
mode: single
trigger:
- platform: time
at: "21:30:00"
id: einschalten
- platform: time
at: "01:00:00"
id: "ausschalten "
condition: []
action:
- choose:
- conditions:
- condition: trigger
id:
- einschalten
- condition: template
value_template: "{{ now().month >= 6 and now().month <=9 }}"
- condition: state
entity_id: switch.emylo_schalter
state: "off"
sequence:
- service: switch.turn_on
metadata: {}
data: {}
target:
entity_id: switch.emylo_schalter
- conditions:
- condition: trigger
id:
- "ausschalten "
- condition: state
entity_id: switch.emylo_schalter
state: "on"
sequence:
- service: switch.turn_off
metadata: {}
data: {}
target:
entity_id: switch.emylo_schalter
Gruß
Osorkon
1 „Gefällt mir“
Ja dachte ich mir 
DANKE übrigens - die Konfiguration mit der Beleuchtung klappt nun. Ändere nun den Wert in dem Template des binären Sensors von 3 auf 6 um. Vielen Dank!