Bewegungsmelder-Automation triggert nicht wie gewünscht

Hallo zusammen,

ich habe eine, wie ich finde, recht simple Automation erstellt, bei der nach Sonnenuntergang bei Bewegung Lichter angehen sollen und wenn im Zeitraum X keine neue Bewegung erkannt wird, die Lichter anschließend wieder ausgehen sollen.
Nun passiert es in manchen Fällen, dass der Bewegungsmelder Bewegung erkennt und die Lichter eine Sekunde später ausgeschaltet werden und dann auch nicht wieder eingeschaltet werden.
Es scheint, als ob der Timer bei erneutet Erkennung von Bewegung nicht neu startet.
Vielleicht kann mir dabei ja jemand helfen und zeigen, wo ich den Fehler habe:

alias: BWM_DR_Eingang
description: ""
trigger:
  - platform: event
    event_type: timer.finished
    event_data:
      entity_id: timer.timer_dr_eingang_bwm
    id: Timer Finished
  - platform: state
    entity_id:
      - binary_sensor.dr_eingang_bwm_bewegung
    from: "off"
    to: "on"
    id: Bewegung erkannt
  - platform: state
    entity_id:
      - binary_sensor.dr_eingang_bwm_bewegung
    from: "on"
    to: "off"
    id: keine Bewegung mehr erkannt
condition: []
action:
  - choose:
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Bewegung erkannt
              - condition: sun
                before: sunrise
                after: sunset
        sequence:
          - service: light.turn_on
            data:
              brightness_pct: 20
            target:
              entity_id: light.dr_eingang_sa_led
      - conditions:
          - condition: trigger
            id:
              - keine Bewegung mehr erkannt
        sequence:
          - service: timer.start
            data:
              duration: "60"
            target:
              entity_id: timer.timer_dr_eingang_bwm
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Timer Finished
              - condition: state
                entity_id: light.dr_eingang_sa_led
                state: "on"
        sequence:
          - service: light.turn_off
            metadata: {}
            data: {}
            target:
              entity_id:
                - light.dr_eingang_sa_led
mode: single

Stell den Modus von “single” auf “restart” um.

Verwende keinen Timer, der ist überflüssig.
Einfach als Trigger Bewegung aus für 60s

Gruß
Osorkon

Vielen Dank, werde ich testen.

Ich habe nachgelesen, dass wenn man HA neu startet, der Timer weiterläuft, wenn man das über den Trigger einstellt nicht. Daher habe ich mich für Timer entschieden.
Denke ich da falsch?

Das was Du gelesen hast war Timer vs. Verzögerung. Und das auch nur für längere Verzögerung, wo der Einsatz eines Timers mehr Sinn macht.
Hier sprechen wir von 60s.
Wenn Du mit einem Timer arbeiten willst, muss Du den Timer, bei jeder neu erkannten Bewegung neu starten.
Je nach dem ob Du einen echten BM oder einen BM im Präsenz Modus hast. Funktioniert das oder im Fall eines Präsenz Melders funktioniert das nicht.

Verwenden zum Ausschalten den Auslöser.
Bewegung Off für 60 sek.

Gruß
Osorkon

1 „Gefällt mir“

Das ist gut möglich, dass es da um Verzögerung ging. Das Video war in Englisch und da kann es bei mir schon mal passieren, dass ich ein Detail vielleicht falsch verstehe.

Hab es nun geändert, ist es so korrekt?
Ich kenne es noch von Javascript so, dass man versucht unnötiges Triggern bzw. schalten zu vermeiden. Ist dies auch in HA relevant? Daher habe ich z.B. als Bedingung angegeben, dass das Licht nur ausgeschaltet werden soll, wenn es auch an ist.

alias: BWM_DR_Eingang
description: ""
trigger:
  - platform: state
    entity_id:
      - binary_sensor.dr_eingang_bwm_bewegung
    from: "off"
    to: "on"
    id: Bewegung erkannt
  - platform: state
    entity_id:
      - binary_sensor.dr_eingang_bwm_bewegung
    from: "on"
    to: "off"
    id: keine Bewegung mehr erkannt
    for:
      hours: 0
      minutes: 1
      seconds: 0
condition: []
action:
  - choose:
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Bewegung erkannt
              - condition: sun
                before: sunrise
                after: sunset
        sequence:
          - service: light.turn_on
            target:
              entity_id: light.dr_eingang_sa_led
            data: {}
      - conditions:
          - condition: and
            conditions:
              - condition: state
                entity_id: light.dr_eingang_sa_led
                state: "on"
              - condition: trigger
                id:
                  - keine Bewegung mehr erkannt
        sequence:
          - service: light.turn_off
            metadata: {}
            data: {}
            target:
              entity_id:
                - light.dr_eingang_sa_led
mode: restart

Sieht gut aus.
Bei den Bedingungen brauchst Du UND nicht explizit angeben. Alle aufgeführten Bedingungen sind standardmäßig UND Verknüpft.
Nur oder muss explizit angegeben werden.

Gruß
Osorkon

1 „Gefällt mir“

Vielen Dank für deine Hilfe. Wenn jetzt Homematic noch vernünftig läuft bin ich vollkommen zufrieden :smiley: