Schalte Steckdose an bei zone.home >0

Moin zusammen,

ich hänge hier schon länger an einem Thema und verstehe es irgendwie nicht.

Ich möchte folgendes:

Wenn jemand zu Hause ist, dann schalte nach Sonnenuntergang Versatz +00:15 Minuten eine Steckdose ein.
Wenn keiner zu Hause ist, dann Steckdose aus.
Wenn jemand nach dem Sonnenuntergang nach Hause kommt und es vor 22:15 Uhr ist, dann schalte ebenfalls die Steckdose ein.
Wenn es nach 22:15 Uhr ist und die Steckdose ist an, dann schalte aus.

Wenn jemand zu Hause ist, passiert hier leider nichts.
Kommt jemand nach Hause, funktioniert meine Automatition.

Vielleicht hat jemand einen Ansatz:

Yaml:

alias: Uhr test 2
description: ""
triggers:
  - trigger: numeric_state
    entity_id:
      - zone.home
    above: 0.1
    id: Wenn jemand zu Hause ist
  - entity_id: person.max_jakob
    zone: zone.home
    event: enter
    id: Wenn Max nach Hause kommt
    enabled: true
    trigger: zone
  - entity_id: person.julia
    zone: zone.home
    event: enter
    id: Wenn Julia nach Hause kommt
    enabled: true
    trigger: zone
  - at: "22:15:00"
    id: Wenn 22:15 Uhr ist
    enabled: true
    trigger: time
conditions:
  - condition: sun
    after: sunset
    after_offset: "+00:15"
actions:
  - alias: "Steckdose an "
    choose:
      - conditions:
          - condition: time
            before: "22:14:00"
            weekday:
              - sun
              - sat
              - fri
              - thu
              - wed
              - tue
              - mon
          - condition: trigger
            id:
              - Wenn Max nach Hause kommt
              - Wenn Julia nach Hause kommt
              - Wenn 22:15 Uhr ist
              - Wenn jemand zu Hause ist
            enabled: true
          - condition: device
            type: is_off
            device_id: 19714e8a7fbe67eb54ddd8fdfb8b04cd
            entity_id: aed4b8208ef37b70d88745a1abe54b90
            domain: switch
        sequence:
          - action: switch.turn_on
            target:
              device_id:
                - 19714e8a7fbe67eb54ddd8fdfb8b04cd
            data: {}
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Wenn 22:15 Uhr ist
          - condition: device
            type: is_on
            device_id: 19714e8a7fbe67eb54ddd8fdfb8b04cd
            entity_id: aed4b8208ef37b70d88745a1abe54b90
            domain: switch
        sequence:
          - action: switch.turn_off
            metadata: {}
            data: {}
            target:
              device_id: 19714e8a7fbe67eb54ddd8fdfb8b04cd
    alias: "Steckdose aus "
    enabled: true
  - condition: time
    before: "22:15:00"
    weekday:
      - mon
      - tue
      - wed
      - thu
      - fri
      - sat
      - sun
    enabled: false
  - type: turn_on
    device_id: 19714e8a7fbe67eb54ddd8fdfb8b04cd
    entity_id: aed4b8208ef37b70d88745a1abe54b90
    domain: switch
    enabled: false
  - action: switch.turn_on
    metadata: {}
    data: {}
    target:
      device_id: 19714e8a7fbe67eb54ddd8fdfb8b04cd
    enabled: false
mode: single

Dann musst du noch den Auslöser “Sonnenuntergang +15” mit rein nehmen.

Wohin genau?? Habs jetzt nicht verstanden…

Als Auslöser (Trigger)

  - trigger: sun
    event: sunset
    offset: "00:15:00"

Sieht ganz schön kompliziert aus, Deine Automatisierung.

Hier mal ein Bsp. wie ich es lösen würde.

description: ""
mode: single
triggers:
  - trigger: sun
    event: sunset
    offset: "00:15:00"
    id: einschalten
  - trigger: time
    at: "22:15:00"
    id: ausschalten
  - trigger: numeric_state
    entity_id:
      - zone.home
    above: 0
    id: einschalten
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - einschalten
          - condition: sun
            before: sunset
            before_offset: "00:15:00"
          - condition: numeric_state
            entity_id: zone.home
            above: 0
          - condition: time
            before: "22:15:00"
        sequence:
          - action: switch.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: switch.xyz
      - conditions:
          - condition: trigger
            id:
              - ausschalten
          - condition: state
            entity_id: switch.xyz
            state: "on"
        sequence:
          - action: switch.turn_off
            metadata: {}
            data: {}
            target:
              entity_id: switch.xyz

Gruß
Osorkon

1 „Gefällt mir“

Probiere ich aus, danke

Danke für die Unterstützung.
Aber was passiert wenn ich zwischen Sonnenuntergang und vor 22:15 nach Hause komme, da soll die Steckdose auch geschaltet werden. Oder läuft das dann automatisch über den Trigger zone.home?

Ja, läuft dann über den Trigger der zone, denn wenn niemand zu hause und jemand nach Hause kommt, ändert sich zone.home auf über 0.

Nicht jemand, sondern wenn die erste Person nach Hause kommt.

Wenn der Switch auch eingeschaltet werden soll, wenn die Zweite Person nach Hause kommt, dan bräuchte es noch einen weiteren Auslöser.

  - trigger: numeric_state
    entity_id:
      - zone.home
    above: 1

Gruß
Osorkon

Ich habe es geändert.

Ich habe das mit deiner Automatition so getestet. Funktioniert leider nicht. Ich weiß nicht woran es liegt… Hast du noch eine Idee?

Was genau funktioniert denn nicht?

Die steckdose geht nicht an. Und nicht aus bei einer bestimmten Uhrzeit.
Mal ne Frage am Rande…
Wie oft werden denn die Bedingungen getriggert?
Jede Minute? Kann bzw muss man das einstellen?

Zeige mal Deine Automatisierungen und am besten auch den Trace dazu.

Bedingungen werden gar nicht getriggert, diese werden auf ihren Wahrheitsgehalt geprüft.

Der Trigger ist der Auslöser. Dann werden die Bedingungen geprüft und wenn diese zutreffen wird die Aktion ausgeführt.

Gruß
Osorkon

Yaml:

alias: Uhr Netzvorschlag
description: Uhr Netzvorschlag
triggers:
  - trigger: sun
    event: sunset
    id: einschalten
    enabled: true
    offset: "00:15"
  - trigger: time
    at: "22:15:00"
    id: ausschalten
  - trigger: numeric_state
    entity_id:
      - zone.home
    above: 0
    id: einschalten
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - einschalten
            enabled: true
          - condition: sun
            after: sunset
            after_offset: "00:15"
          - condition: numeric_state
            entity_id: zone.home
            above: 0
          - condition: time
            before: "22:15:00"
        sequence:
          - action: switch.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: switch.wohnzimmer_fensterbank_sockel_1
      - conditions:
          - condition: trigger
            id:
              - ausschalten
            enabled: true
          - condition: state
            entity_id: switch.wohnzimmer_fensterbank_sockel_1
            state: "on"
          - condition: time
            after: "22:14:00"
            weekday:
              - mon
              - tue
              - wed
              - thu
              - fri
              - sat
              - sun
        sequence:
          - action: switch.turn_off
            metadata: {}
            data: {}
            target:
              entity_id: switch.wohnzimmer_fensterbank_sockel_1
mode: single

Traces:

choose:
  - conditions:
      - condition: trigger
        id:
          - einschalten
        enabled: true
      - condition: sun
        after: sunset
        after_offset: '00:15'
      - condition: numeric_state
        entity_id: zone.home
        above: 0
      - condition: time
        before: '22:15:00'
    sequence:
      - action: switch.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: switch.wohnzimmer_fensterbank_sockel_1
  - conditions:
      - condition: trigger
        id:
          - ausschalten
        enabled: true
      - condition: state
        entity_id: switch.wohnzimmer_fensterbank_sockel_1
        state: 'on'
      - condition: time
        after: '22:14:00'
        weekday:
          - mon
          - tue
          - wed
          - thu
          - fri
          - sat
          - sun
    sequence:
      - action: switch.turn_off
        metadata: {}
        data: {}
        target:
          entity_id: switch.wohnzimmer_fensterbank_sockel_1

Frage mich aber wieso er nicht oben anfängt?
image

Sorry für die ganzen Fragen, bin noch nicht so lange im Thema.

Im Trace sieht man, dass es keinen Auslöser gibt.
Welcher Trigger hätte denn auslösen müssen?

na eigentlich zone.home
Ist ja auch als Auslöser definiert.

Dann gehört die Trace Timeline nicht zum Zeitpunkt des heimkommens.
Wurde zone.home denn von 0 auf >0 geändert?

Geändert nicht.
Aktuell sind es 2.
er soll ja auch ausführen und immer prüfen, wenn wer zu Hause ist. Und nicht nur wenn wer nach Hause kommt. Sondern generell, wenn zone.home über 0, und es ist nach Sonnenuntergang und vor 22:15 Uhr dann schalte Steckdose ein.
Zusätzlich später wenn wer nach Hause kommt und der Wert sich erhöht in zone.home, dann schalte auch die Steckdose ein

Trigger reagieren bei Über- oder Unterschreiten eines Schwellenwertes. Ist der Wert schon drüber oder drunter, löst nichts mehr aus.

Wenn du öfter abfragen willst, nimmst du einen Time Trigger, der z. B. alle 5 Minuten triggert. Dann gehört zone.home > 0 aber zusätzlich noch in die Bedingungen.