Neue Lichtautomation Frage

Hi zusammen, ich hatte bisher deCONZ am laufen und habe zu Z2M gewechselt. Bisher läuft alles nahezu perfekt. Einen lichtsensor hatte ich bisher direkt in deconz konfiguriert, der meine hintere Flur Lampe steuert.

Dafür habe ich eine neue Automation erstellt.
2 Sensoren überwachen den Flur und schalten eine Lampe für 2Min auf 40% und 1Min auf 20% ein. Zeitgesteuert nach Sonnenuntergang und vor Sonnenaufgang.

Jetzt habe ich nur das Problem, dass die Automationen nicht neu getriggert wird wenn ich zb nach 2 min nochmal vorbei laufe.
Weiss jemand wie ich das einstellen kann?

Quasi das der Counter von vorne startet bei erneuter Bewegung. Ebenso nach den 3 Minuten wieder direkt aktiviert werden kann.

Dann zeig sie mal, am besten als yaml-Code. Sonst wird das Stochern im Nebel.

Ich würde die Nicht-Bewegung so abfragen

trigger: device
type: no_motion
device_id: 70f86fecb4bee6a408a7bb5174552358
entity_id: e8cb1d34f796534849eb32685d686e8b
domain: binary_sensor
for:
  hours: 0
  minutes: 3
  seconds: 0

bzw. besser mit Entität als mit Gerät

trigger: state
entity_id:
  - binary_sensor.bewegungsmelder_xyz_occupancy
from: "on"
to: "off"
for:
  hours: 0
  minutes: 3
  seconds: 0

Dann wird erst ausgeschaltet, wenn es 3 Minuten keine Bewegung mehr gab.

Hey, anbei meine Yaml

alias: "[AUT] Licht Flur Schlafzimmer "
description: ""
triggers:
  - type: occupied
    device_id: b72d4fc3c66b28863c598c3a0f3f3515
    entity_id: 20214cdce7f0a859d425cdad58c805dc
    domain: binary_sensor
    trigger: device
  - type: occupied
    device_id: 5b18901270c3260bdab43848dc723327
    entity_id: c7b6b21adef2b240b91e6ece3a756146
    domain: binary_sensor
    trigger: device
conditions:
  - condition: sun
    before: sunrise
    after: sunset
actions:
  - action: light.turn_on
    metadata: {}
    data:
      color_temp_kelvin: 2500
      brightness_pct: 40
    target:
      device_id: 3a800133ed5332dcab6fa430c471c784
  - delay:
      hours: 0
      minutes: 2
      seconds: 0
      milliseconds: 0
  - action: light.turn_on
    metadata: {}
    data:
      color_temp_kelvin: 2500
      brightness_pct: 20
    target:
      device_id: 3a800133ed5332dcab6fa430c471c784
  - delay:
      hours: 0
      minutes: 1
      seconds: 0
      milliseconds: 0
  - type: turn_off
    device_id: 3a800133ed5332dcab6fa430c471c784
    entity_id: b8e2863387449ed1fc60a8bbf77b09fa
    domain: light
mode: single

Die Zeit passt soweit schon. Nur würde ich gerne diese Automation “neu” starten wenn nach 2:30Min erneut jemand durch läuft. Quasi Rückweg von der Toilette und nicht paar Sekunde später aus geht, sondern noch nach leuchtet. Ebenso das die Automation wieder scharf ist sobald die abgelaufen ist.

Dann solltest du denn mode auf restart setzen.

Vielleicht eins vorab: es mag ja besonders fancy aussehen, wenn das Licht nach zwei Minuten dunkler wird und dann noch eine Minute nachglimmt, bringt aber gerade bei dem genannten Problem nichts, denn wenn die Automation wieder neu ausgelöst werden soll, wird das Licht dadurch erst wieder heller um danach wieder dunkler zu werden. In meinen Augen kann man sich das klemmen, weil auch der Energiespareffekt gegen null geht. Aber ist nur meine Meinung.

Zur eigentlichen Problemstellung: ich löse so etwas gerne mit dem Timer-Helfer. Der Trigger (in deinem Fall wahrscheinlich ein Bewegungsmelder) startet einerseits den Timer und andererseits schaltet er das Licht ein. Nach Ablauf des Timers wird das Licht ausgeschaltet. Löst der Trigger durch eine erneute Bewegungserkennung aus, wird Timer neu gestartet (ganz gleich, wieviel Zeit bereits abgelaufen ist) und die Ablauffrist (z. B. drei Minuten) beginnt von vorn.

@maxe: wird dadurch der Delay tatsächlich unterbrochen und die Automation sofort wieder neu gestartet, wenn der Trigger greift? Wenn es so ist, würde das die Sache einfacher machen.

Ich meine schon.

Allerdings mache ich es auch eher so, wie @sirector es beschrieben hat. Hatte ich auch schon mal hier beschrieben

Hmm, danke für eure Zeit. Beides interessante Ansätze. Ich würde es erstmal mit Restart testen und ansonsten einfach mal den Timer-Helper anschauen.

Ich habe es so bei mir laufen, ich kann auch den Code hier kurz reinstellen:

alias: Toilettenbeleuchtung
description: ""
triggers:
  - trigger: state
    entity_id:
      - binary_sensor.bewegung_gastebad_occupancy
    from: "off"
    to: "on"
    id: Einschalten
  - trigger: state
    entity_id:
      - timer.klo_timer
    to: idle
    from: active
    id: Abschalten
conditions: []
actions:
  - if:
      - condition: trigger
        id:
          - Einschalten
    then:
      - action: timer.start
        metadata: {}
        data: {}
        target:
          entity_id: timer.klo_timer
      - action: switch.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: switch.toilettenbeleuchtung
  - if:
      - condition: trigger
        id:
          - Abschalten
    then:
      - action: switch.turn_off
        metadata: {}
        data: {}
        target:
          entity_id: switch.toilettenbeleuchtung
mode: single

Die Beleuchtung hatte ich seinerzeit über eine smarte Steckdose geschaltet, würde ich heute anders machen. Vielleicht rüste ich ja noch einmal um… Irgendwelche Tageszeit-Bedingungen fehlen auch, weil die Gästetoilette innen liegt und keine Fenster hat. Der Timer, den ich angelegt hatte, heißt sprechenderweise “Klo Timer” und ist auf fünf Minuten voreingestellt.