Farbtemperatur per Taste ändern

Hi, ich möchte mit einem Tradfri Shortcut Taster Licht steuern. Drücken für an/aus und halten für Dimmen funktioniert.

Jetzt möchte ich aber noch bei einem Doppelklick die Farbtemperatur ändern. Dabei soll die Farbtemperatur aber nicht stufenlos oder in festen Schritten erfolgen sondern über 4-5 vorgegebene Kelvin Werte laufen. Dh jedes mal wenn ich doppelt klicke soll die nächste Farbtemperatur eingestellt werden, zB 2200k, 2700k, 3300k, 3600k, 4000k

Wie kann ich das in einer Automatisierung umsetzen?

Erste Frage: stellt dein Taster als Auslöser double_press oder ähnliches zur Verfügung?

Ich habe es bei mir mittels Hue Smart Button und single_press so gelöst:

Ich habe als erstes die Scenen erstellt mit den verschiedenen (Kelvin-)Werten. Du müsstest also 5 Scenes anlegen.
image

Dann habe ich einen input_select-Helper angelegt und dort die Scenen in der Reihenfolge hinterlegt (Optionen), wie ich sie schalten will


Bei Entitäts-ID muss der Select-Helper eingetragen werden.

Als letztes habe ich eine Automation angelegt, die den Select-Helper einfach nur der Reihe nach durchschaltet

alias: "Smart Button: Schreibtisch Scenen"
description: ""
trigger:
  - platform: device
    domain: mqtt
    device_id: xxxx
    type: action
    subtype: press
    discovery_id: 0x0017880108021666 action_press
condition: []
action:
  - service: input_select.select_next
    data:
      cycle: true
    target:
      entity_id: input_select.light_buro_scenen
  - service: scene.turn_on
    target:
      entity_id: "{{ states('input_select.light_buro_scenen')}}"
mode: single

Über Szenen hab ich das schonmal gemacht. Das wollte ich hier vermeiden und etwas universeller gestalten, damit ich nicht für jede Lampe neue Szenen und einen extra Select erstellen muss.

Die Automatisierung müsste so ähnlich aussehen, nur das ich irgendwie den Zahlenwert aus dem input_select auslese und mit einem light.turn_on den Farbwert schreibe.

Hilft dir das hier weiter?

Könnte sein. Ich kann zumindest schonmal die Farbtemperatur setzen

service: light.turn_on
data: {color_temp_kelvin: 5000}
target:
  entity_id: light.signify_netherlands_b_v_lta005_light

Ich muss den Wert nur noch aus dem Helfer bekommen. Schaue ich mir später an. Danke schonmal für den Link

Nachtrag: Es funktioniert. Hier die komplette Automatisierung:

alias: Ikea Taster Test
description: ""
trigger:
  - device_id: 2ec3bda159fcdf60636518102354d2e1
    domain: zha
    platform: device
    type: remote_button_short_press
    subtype: turn_on
    id: tap
  - device_id: 2ec3bda159fcdf60636518102354d2e1
    domain: zha
    platform: device
    type: remote_button_double_press
    subtype: turn_on
    id: doubletap
  - device_id: 2ec3bda159fcdf60636518102354d2e1
    domain: zha
    platform: device
    type: remote_button_long_press
    subtype: dim_up
    id: hold
  - device_id: 2ec3bda159fcdf60636518102354d2e1
    domain: zha
    platform: device
    type: remote_button_long_release
    subtype: dim_up
    id: release
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - tap
        sequence:
          - service: light.toggle
            data:
              transition: 1
            target:
              entity_id: light.signify_netherlands_b_v_lta005_light
      - conditions:
          - condition: trigger
            id:
              - doubletap
        sequence:
          - service: input_select.select_next
            data:
              cycle: true
            target:
              entity_id: input_select.colorloop
          - service: light.turn_on
            data:
              color_temp_kelvin: "{{states('input_select.colorloop')}}"
            target:
              entity_id: light.signify_netherlands_b_v_lta005_light
      - conditions:
          - condition: trigger
            id:
              - hold
        sequence:
          - choose:
              - conditions:
                  - condition: numeric_state
                    entity_id: light.signify_netherlands_b_v_lta005_light
                    attribute: brightness
                    above: 128
                sequence:
                  - repeat:
                      while:
                        - condition: trigger
                          id:
                            - hold
                      sequence:
                        - device_id: 12d40af97044e3e1be377e026dc0448b
                          domain: light
                          entity_id: 27f5cb019454d8064180a1a465107815
                          type: brightness_decrease
                        - delay:
                            hours: 0
                            minutes: 0
                            seconds: 0
                            milliseconds: 500
              - conditions:
                  - condition: numeric_state
                    entity_id: light.signify_netherlands_b_v_lta005_light
                    attribute: brightness
                    below: 129
                sequence:
                  - repeat:
                      while:
                        - condition: trigger
                          id:
                            - hold
                      sequence:
                        - device_id: 12d40af97044e3e1be377e026dc0448b
                          domain: light
                          entity_id: 27f5cb019454d8064180a1a465107815
                          type: brightness_increase
                        - delay:
                            hours: 0
                            minutes: 0
                            seconds: 0
                            milliseconds: 500
mode: restart

Nur zur Erklärung für die Dimmfunktion. Wenn die Helligkeit über 50% ist dimme ich nach unten, ist die Helligkeit unter 50% dimme ich nach oben.

1 „Gefällt mir“