HA Licht-Automatisierung mit Aqara P1

Hallo zusammen,

ich versuche mich gerade an einer simplen Licht-Automation mittels Bewegungsmelder. Als Bewegungsmelder benutzte ich einen Aqara P1 mittels Zigbee2MQTT in HA. Die zu steuernde Lampe ist mittels Shelly smart gemacht worden.

Da ich nur den Shelly triggern kann, funktioniert der YAMA Blueprint nicht. Dieser kann nur Geräte vom Typ „Light“ steuern.

Daher habe ich mir eine eigene Automation geschrieben (siehe unten). Problem ist jetzt, dass das Licht immer nach 15s ausgeht, obwohl man sich noch im Raum bewegt (auch winken vor dem Sensor bringt nichts). Die 15s kommen daher, da ich in den Einstellungen des Bewegungsmelders den „Occupancy timeout“ auf 15s eigestellt habe.

Wo liegt mein Fehler?

description: ""
triggers:
  - trigger: state
    entity_id:
      - binary_sensor.it_bewegungsmelder_occupancy
    to: "on"
    id: an
  - trigger: state
    entity_id:
      - binary_sensor.it_bewegungsmelder_occupancy
    to: "off"
    id: aus
  - trigger: state
    entity_id:
      - binary_sensor.it_licht_input_0_input
    from: "on"
    to: "off"
    id: Schalter
  - trigger: state
    entity_id:
      - binary_sensor.it_licht_input_0_input
    from: "off"
    to: "on"
    id: Schalter
conditions: []
actions:
  - if:
      - condition: trigger
        id:
          - an
    then:
      - action: switch.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: switch.it_licht_switch_0
  - if:
      - condition: trigger
        id:
          - aus
    then:
      - action: switch.turn_off
        metadata: {}
        data: {}
        target:
          entity_id: switch.it_licht_switch_0
  - if:
      - condition: trigger
        id:
          - Schalter
    then:
      - action: switch.toggle
        metadata: {}
        data: {}
        target:
          entity_id: switch.it_licht_switch_0
mode: single ```
1 „Gefällt mir“

Hast du die Automation auf Modus restart?

1 „Gefällt mir“

Bisher stand sie auf single. Hab es jetzt mal auf restart umgestellt, aber ohne Erfolg. Nach 15s geht das Licht aus und lässt sich auch erst wieder nach 15s per Bewegung einschalten.

1 „Gefällt mir“

Geh in die Einstellungen deines Bewegungsmelders und stelle „Occupancy timeout“ wieder auf 0s. Ich hatte das auch schon mal und sobald ich einen Wert gesetzt hatte, waren nur Probleme vorhanden.

Wenn du einen Timeout willst, mach es am besten als Trigger.

So hab ich es gemacht.

alias: Keine Bewegung wurde erkannt
trigger: state
entity_id:
  - binary_sensor.bewegungsmelder_bz_occupancy
to: "off"
id: Keine Bewegung wurde erkannt
for:
  hours: 0
  minutes: 5
  seconds: 0

Aber dann bleibt das Licht ja mind. 90s (default) an oder?

Wie lange soll denn das Licht anbleiben wenn es keinerlei Bewegung mehr erkannt hat?

30s wären okay. Wichtig wäre aber, dass wenn innerhalb dieser 30s wieder eine Bewegung erkannt wird, das Licht natürlich anbleibt.

Ok, ich hab mich mal dran gesetzt und das sollte deinen Wünschen entsprechen. Wenn etwas nicht so funktioniert wie es soll kannst du gern Bescheid geben. Aber ich nutze eine ähnliche Automation für mein Badezimmer und das funktioniert ohne Probleme.

description: ""
triggers:
  - trigger: state
    entity_id:
      - binary_sensor.it_bewegungsmelder_occupancy
    to: "on"
    id: "Bewegung: Ja"
  - trigger: state
    entity_id:
      - binary_sensor.it_bewegungsmelder_occupancy
    to: "off"
    id: "Bewegung: Nein"
    for:
      hours: 0
      minutes: 0
      seconds: 30
  - trigger: state
    entity_id:
      - binary_sensor.it_licht_input_0_input
    id: Schalter gedrückt
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - "Bewegung: Ja"
        sequence:
          - action: switch.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: switch.it_licht_switch_0
      - conditions:
          - condition: trigger
            id:
              - "Bewegung: Nein"
        sequence:
          - action: switch.turn_off
            metadata: {}
            data: {}
            target:
              entity_id: switch.it_licht_switch_0
      - conditions:
          - condition: trigger
            id:
              - Schalter gedrückt
        sequence:
          - action: switch.toggle
            metadata: {}
            data: {}
            target:
              entity_id: switch.it_licht_switch_0
mode: restart

1 „Gefällt mir“

Schau dir mal mein neustes Videos zu dem Thema an, da beschreibe ich auch eine klassische Licht-Schaltung quasi nebenbei:
https://youtu.be/gf7NqMvfC-o

Vielen Dank Euch beiden für die Tipps.

Problem ist allerdings, dass die 30s nun zu den 90s (Occupancy timeout) hinzukommen, so dass es im Zweifel 2min dauert, bis das Licht wieder ausgeht.
Verkürze ich den Occupancy timeout auf z.B. 10s geht das Licht immer nach ca. 40s aus (Occupancy timeout + 30s Auslöseverzögerung), obwohl man sich bewegt.
Sind die Timer für die Bewegungserkennung andere, wenn der Bewegungsmelder ausgelöst wurde?

Außerdem wird das Licht nicht wieder eingeschaltet, wenn man kurz nach dem Ausschalten wieder den Bewegungsmelder auslöst. Die Automation steht immer noch auf Mode: restart.

Hinzukommt noch, dass mein 2. Bewegungsmelder dauerhaft auf Bewegung erkannt steht :triumph:

Ich würde es mal so versuchen:

description: ""
mode: single
triggers:
  - entity_id:
      - binary_sensor.xy_occupancy
    id: motion-on
    from: "off"
    to: "on"
    trigger: state
  - entity_id:
      - binary_sensor.xy_occupancy
    id: motion-off
    from: "on"
    to: "off"
    for:
      hours: 0
      minutes: 0
      seconds: 10
    trigger: state
conditions: []
actions:
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 250
  - choose:
      - conditions:
          - condition: trigger
            id:
              - motion-on
        sequence:
          - target:
              entity_id:
                - light.xy
            data: {}
            action: light.turn_on
      - conditions:
          - condition: trigger
            id:
              - motion-off
        sequence:
          - target:
              entity_id:
                - light.xy
            data: {}
            action: light.turn_off

Das funktioniert leider auch nicht wie erhofft. Sobald ich den Occupancy timeout verringere geht das Licht trotz Bewegung aus.
Scheinbar gibt es noch einen Detection Interval, wie man auf diesem Screenshot sehen kann.

Den gibt es bei mir aber nicht.
Bildschirmfoto 2025-01-06 um 14.49.36

Laut Zigbee2MQTT Doku gibt es das Detection Interval beim Modell RTCGQ14LM, mein erkanntes Modell ist aber RTCGQ11LM. Also wohl das alte Modell und das hat einen festen Detection Interval von 60s :pensive: Das war mir vor dem Kauf nicht bewusst und daher hab ich auch nicht drauf geachtet. Ärgerlich!!

Ich muss sagen, habe das alles bei mir mittels diesem Blueprint umgesetzt und das funktioniert super!

https://community.home-assistant.io/t/sensor-light-motion-sensor-door-sensor-sun-elevation-lux-value-scenes-time-light-control-device-tracker-night-lights/481048

1 „Gefällt mir“

Der Blueprint sieht super aus und bietet viele Möglichkeiten. Ich habe aber bisher keine Option gefunden, einen herkömmlichen Schalter für das Licht einzubinden. Und die Problematik mit dem Detection Interval bei dem alten Sensor bleibt natürlich.

Du kannst normalerweise den switch in light umwandeln
Bildschirmfoto 2025-01-09 um 10.48.31

das detection_interval lässt sich nur über Z2M interface einstellen. Wird nicht in HA angezeigt. wird doch angezeigt…

was mir jedoch noch aufgefallen ist. Ich habe den RTCGQ14LM. Du hast den RTCGQ11LM.

Hier ist es wohl wichtig das detection_interval nicht unter 60 zu setzen
https://www.zigbee2mqtt.io/devices/RTCGQ11LM.html

1 „Gefällt mir“