Hilfe bei Automatisierung für WLED-Strip basierend auf Garagentorstatus

Hilfe bei Automatisierung für WLED-Strip basierend auf Garagentorstatus**

Hallo zusammen,

ich hoffe, jemand kann mir bei meinem Home Assistant Problem behilflich sein. Ich versuche eine Automatisierung zu erstellen, die den im Garagensturz befindlichen WLED-Strip je nach Stellung des Garagentors unterschiedliche Voreinstellungen abspielen lässt. Bisher funktioniert mein Code jedoch nicht wie gewünscht.

Hier ist mein aktueller Code:

alias: Garagentor Beleuchtung
description: Rot-Grün-Rot-Spots
trigger:
  - platform: state
    entity_id:
      - binary_sensor.garagentor
    from: "off"
    to: "on"
condition: []
action:
  - choose:
      - conditions: []
        sequence:
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor Übergang
            target:
              area_id: garage
              device_id: d98df565d149e3326c943d33c8b5f44f
              entity_id: select.wled_voreinstellung
          - delay:
              hours: 0
              minutes: 0
              seconds: 2
              milliseconds: 0
          - service: select.select_option
            metadata: {}
            data:
              option: "Garagentor in Bewegung "
            target:
              area_id: garage
              device_id: d98df565d149e3326c943d33c8b5f44f
              entity_id: select.wled_voreinstellung
      - conditions:
          - condition: state
            entity_id: binary_sensor.shutter_contact_magnetic
            state: "off"
        sequence:
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor Übergang
            target:
              area_id: garage
              device_id: d98df565d149e3326c943d33c8b5f44f
              entity_id: select.wled_voreinstellung
          - delay:
              hours: 0
              minutes: 0
              seconds: 2
              milliseconds: 0
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor offen
            target:
              area_id: garage
              device_id: d98df565d149e3326c943d33c8b5f44f
              entity_id: select.wled_voreinstellung
          - delay:
              hours: 0
              minutes: 0
              seconds: 5
              milliseconds: 0
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor Übergang
            target:
              area_id: garage
              device_id: d98df565d149e3326c943d33c8b5f44f
              entity_id: select.wled_voreinstellung
mode: single

Leider funktioniert die Verzögerung und das Umschalten der Voreinstellungen nicht wie erwartet. Kann mir jemand dabei helfen, den Fehler in meinem Code zu finden?

Vielen Dank im Voraus für eure Hilfe!

Moin,
probiere es mal so:

alias: Garagentor Beleuchtung
description: Rot-Grün-Rot-Spots
trigger:
  - platform: state
    entity_id:
      - binary_sensor.garagentor
    from: "off"
    to: "on"
    id: garagentor
  - platform: state
    entity_id:
      - binary_sensor.shutter_contact_magnetic
    to: "off"
    id: contact
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - garagentor
        sequence:
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor Übergang
            target:
              entity_id: select.wled_voreinstellung
          - delay:
              hours: 0
              minutes: 0
              seconds: 2
              milliseconds: 0
          - service: select.select_option
            metadata: {}
            data:
              option: "Garagentor in Bewegung "
            target:
              entity_id: select.wled_voreinstellung
      - conditions:
          - condition: trigger
            id:
              - contact
        sequence:
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor Übergang
            target:
              entity_id: select.wled_voreinstellung
          - delay:
              hours: 0
              minutes: 0
              seconds: 2
              milliseconds: 0
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor offen
            target:
              entity_id: select.wled_voreinstellung
          - delay:
              hours: 0
              minutes: 0
              seconds: 5
              milliseconds: 0
          - service: select.select_option
            metadata: {}
            data:
              option: Garagentor Übergang
            target:
              entity_id: select.wled_voreinstellung
mode: single

Bin mir nicht sicher ob ich es so abgeändert habe, wie du es haben möchtest.

Zur Info es reicht wenn du bei den Diensten die Entität angibst, du brauchst nicht extra noch den Bereich oder Gerät angeben.

LG

Moin totow,

ich hoffe, es geht dir gut. Zuerst einmal vielen Dank für deine bisherige Unterstützung bezüglich meines Garagentor-Beleuchtungsprojekts. Es tut mir leid, dass meine Rückmeldung etwas gedauert hat. Leider hat der bisherige Code noch nicht die gewünschten Ergebnisse geliefert.

Mein Ziel ist es, mein Garagentor mithilfe von WLED zu beleuchten. An meinem Tor sind zwei Kontakte angebracht, die die Endpositionen des Garagentors (vollständig geschlossen oder geöffnet) erkennen. Die gewünschte Funktionalität ist folgende: Beim Starten der Bewegung des Garagentors von einer der Endpositionen aus soll zunächst die WLED-Voreinstellung “Weiß-Lauflicht” für ca. 2 Sekunden aktiviert werden. Anschließend soll diese von der Voreinstellung “Rot-Lauflicht” abgelöst werden, die so lange aktiv bleibt, bis das Garagentor die entgegengesetzte Endposition erreicht hat. Danach soll für zwei Sekunden die Voreinstellung “Weiß-Lauflicht” erscheinen, bevor sie bei geöffnetem Tor durch die Voreinstellung “Grün-Ruhelicht” für 10 Sekunden von der Voreinstellung “Garagentor Spots” für 3 Minuten abgelöst wird.

Wenn das Garagentor geschlossen ist, sollen anstelle des “Grün-Ruhelichts” für zwei Sekunden die “Weiß-Lauflicht”-Voreinstellungen erscheinen. Danach sollte für 3 Minuten die Voreinstellung “Garagentor-Spots” aktiviert sein.

Ich habe festgestellt, dass der Code grundsätzlich richtig zu funktionieren scheint. Beim ersten Durchlauf wird der gewünschte Ablauf erfolgreich durchgeführt. Allerdings tritt das Problem auf, dass bei erneutem Ausführen des Codes die WLED-Beleuchtung nicht mehr reagiert. Beim Überprüfen des Yaml-Codes stelle ich fest, dass bei allen Optionseingaben für select.wled_voreinstellung (Weiß-Lauflicht, Rot-Lauflicht, Grün-Ruhelicht und Weiß-Spots) die Anführungszeichen vor und nach dem Namen der Voreinstellung verschwunden sind. Zusätzlich wird dem Code bei jedem Abschnitt mit service: light.turn_on nach dem Ausführen des Codes folgendes hinzugefügt: “data: {}”. Nach Hinzufügen der Anführungszeichen und Entfernen der “data: {}” Angaben funktioniert der Code erneut für einen Durchlauf.

Hier ist mein aktueller Code:

alias: Garagentor Beleuchtung
description: weiß-rot-grün-spots
trigger:
  - platform: state
    entity_id:
      - binary_sensor.garagentor
    from: "off"
    to: "on"
condition: []
action:
  - service: light.turn_on
    target:
      entity_id: light.wled
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: "Weiß-Lauflicht"
  - delay:
      hours: 0
      minutes: 0
      seconds: 2
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: "Rot-Lauflicht"
  - wait_for_trigger:
      - platform: state
        entity_id:
          - binary_sensor.shutter_contact_magnetic
        from: "on"
        to: "off"
  - service: light.turn_on
    target:
      entity_id: light.wled
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: "Weiß-Lauflicht"
  - delay:
      hours: 0
      minutes: 0
      seconds: 2
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: "Grün-Ruhelicht"
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: "Weiß-Lauflicht"
  - delay:
      hours: 0
      minutes: 0
      seconds: 2
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: "Weiß-Spots"
mode: single

Kannst du mir erklären, warum die Anführungszeichen verschwinden und “data: {}” hinzugefügt wird, und ob du eine alternative Code-Umstellung vorschlagen kannst, um dieses Problem zu umgehen?

So sieht der Code nach dem Ausführen aus:

alias: Garagentor Beleuchtung1
description: weiß-rot-grün-spots
trigger:
  - platform: state
    entity_id:
      - binary_sensor.garagentor
    from: "off"
    to: "on"
condition: []
action:
  - service: light.turn_on
    target:
      entity_id: light.wled
    data: {}
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: Weiß-Lauflicht
  - delay:
      hours: 0
      minutes: 0
      seconds: 2
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
    data: {}
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: Rot-Lauflicht
  - wait_for_trigger:
      - platform: state
        entity_id:
          - binary_sensor.shutter_contact_magnetic
        from: "on"
        to: "off"
  - service: light.turn_on
    target:
      entity_id: light.wled
    data: {}
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: Weiß-Lauflicht
  - delay:
      hours: 0
      minutes: 0
      seconds: 2
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
    data: {}
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: Grün-Ruhelicht
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
    data: {}
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: Weiß-Lauflicht
  - delay:
      hours: 0
      minutes: 0
      seconds: 2
      milliseconds: 0
  - service: light.turn_on
    target:
      entity_id: light.wled
    data: {}
  - service: select.select_option
    target:
      entity_id: select.wled_voreinstellung
    data:
      option: Weiß-Spots
mode: single

Vielen Dank im Voraus für deine Hilfe!

Beste Grüße,
Philipp

Hallo und guten Abend.
Stehe auch grade vor dem Problem, wie ich das Umsetzten kann.

Habe einen Hörmann Antrieb und bekomme folgende Meldungen:
-geschlossen
-unbekannt
-teiloffen/lüften
-geschlossen

Aus diesen Positionen ausser teiloffen ( fast nie in gebrauch ), würde ich gerne ein Programm machen ( weiss aber nicht wie).

Als Lichtzszenen würde ich gerne benutzen:

  1. öffnet (rot)
  2. geöffnet 5sec GRÜN
  3. geöffnet 3min SPOT Beleuchtung
  4. schließt (rot)
  5. geschlossen 1min. nachleuchten (blitze)

Wäre sehr sehr dankbar für Hilfe, da ich nicht weiß wie ich es angehen muss.

5 Programme zu schreiben ( Automationen ) ist nicht der beste weg.

:face_with_thermometer:

Update:

id: '1727324024548'
alias: Garagentor WLED
description: Rot-Grün-Light-Rot-Nachbelichtung
trigger:
  - platform: state
    entity_id:
      - sensor.garagen_sektionaltor_turzustand
    from: closed
    to: unknown
    id: Garagentor - öffnet
  - platform: state
    entity_id:
      - sensor.garagen_sektionaltor_turzustand
    to: open
    id: Garagentor - offen -
  - platform: state
    entity_id:
      - sensor.garagen_sektionaltor_turzustand
    to: open
    id: Garagentor - offen - länger 120 Sekunden
    for:
      hours: 0
      minutes: 2
      seconds: 0
  - platform: state
    entity_id:
      - sensor.garagen_sektionaltor_turzustand
    to: unknown
    id: Garagentor - schliesst
    for:
      hours: 0
      minutes: 0
      seconds: 0
    from: open
  - platform: state
    entity_id:
      - sensor.garagen_sektionaltor_turzustand
    to: closed
    id: 'Garagentor - geschlossen - '
    for:
      hours: 0
      minutes: 0
      seconds: 0
    from: unknown
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Garagentor - öffnet
        sequence:
          - device_id: b7bde5b2db07392de93f8dfadbb59d9d
            domain: select
            entity_id: 1dfc864c17078ff5b5d0f475f1450e9a
            type: select_option
            option: Tor Fährt "Dissolve"
      - conditions:
          - condition: trigger
            id:
              - Garagentor - öffnet
              - Garagentor - offen -0 Sekunden
        sequence:
          - device_id: b7bde5b2db07392de93f8dfadbb59d9d
            domain: select
            entity_id: 1dfc864c17078ff5b5d0f475f1450e9a
            type: select_option
            option: Tor offen (grün)
          - delay:
              hours: 0
              minutes: 0
              seconds: 4
              milliseconds: 0
            enabled: true
          - device_id: b7bde5b2db07392de93f8dfadbb59d9d
            domain: select
            entity_id: 1dfc864c17078ff5b5d0f475f1450e9a
            type: select_option
            option: Garage offen (weiss)"Rippel"
      - conditions:
          - condition: trigger
            id:
              - Garagentor - schliesst
        sequence:
          - device_id: b7bde5b2db07392de93f8dfadbb59d9d
            domain: select
            entity_id: 1dfc864c17078ff5b5d0f475f1450e9a
            type: select_option
            option: Tor Fährt "Dissolve"
      - conditions:
          - condition: trigger
            id:
              - 'Garagentor - geschlossen - '
        sequence:
          - device_id: b7bde5b2db07392de93f8dfadbb59d9d
            domain: select
            entity_id: 1dfc864c17078ff5b5d0f475f1450e9a
            type: select_option
            option: Garage offen (weiss)"Rippel"
          - delay:
              hours: 0
              minutes: 0
              seconds: 30
              milliseconds: 0
            enabled: true
          - device_id: b7bde5b2db07392de93f8dfadbb59d9d
            domain: select
            entity_id: 1dfc864c17078ff5b5d0f475f1450e9a
            type: select_option
            option: 'OFF'
mode: single

Will aber nicht laufen… kann da mal einer drüber schauen?..

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

Hey @JailBraik
Hast du hierfür eine Lösung gefunden? Bin grad dabei mein ioBroker ins HA zu bringen und da bin ich jetzt auch beim WLED dran um das rein zuschieben.