blueprint: name: Philips Hue Dimmer Remote description: "Control lights with a Philips Hue Dimmer Switch." domain: automation input: remote: name: Philips Hue Dimmer Switch description: Pick either RWL020 (US) or RWL021 (EU) or RWL022 (EU) selector: device: integration: zha manufacturer: Signify Netherlands B.V. model: RWL022 light: name: Controlled light description: The light(s) to control with single press selector: target: entity: {} force_brightness: name: Force turn on brightness description: 'Force the brightness to the set level below, when the "on" button on the remote is pushed and lights turn on.' default: false selector: boolean: {} brightness: name: Brightness description: Brightness of the light(s) when turning on default: 100 selector: number: min: 0.0 max: 100.0 mode: slider step: 1.0 unit_of_measurement: "%" current_light: name: (OPTIONAL) Current Light description: 'Text helper to track the current light to dim. Set for the dimmer controls to change which light they are controlling according to the last one turned on. For instance, double press "on" and then the dimmer buttons will control the Double Press Light' default: selector: entity: domain: input_text source_url: https://github.com/xeppaka/ha-automations/blob/main/philips_zigbee_dimmer_simple.yaml mode: restart max_exceeded: silent trigger: - platform: event event_type: zha_event event_data: device_id: !input "remote" action: - variables: light: !input light command: "{{ trigger.event.data.command }}" cluster_id: "{{ trigger.event.data.cluster_id }}" endpoint_id: "{{ trigger.event.data.endpoint_id }}" args: "{{ trigger.event.data.args }}" - choose: - condition: - and: - "{{ command == 'on_press' }}" - "{{ is_state(light, 'off') }}" sequence: - service: light.turn_on target: !input "light" data: transition: 1 brightness_pct: !input "brightness" - conditions: - "{{ command == 'off_with_effect' }}" sequence: - service: light.turn_off target: !input "light" data: transition: 1 - conditions: - "{{ command == 'step' }}" - "{{ args == [0, 30, 9] }}" sequence: - service: light.turn_on target: !input "light" data: brightness_step_pct: 10 transition: 1 - conditions: - "{{ command == 'step' }}" - "{{ args == [0, 63, 9] }}" sequence: - service: light.turn_on target: !input "light" data: brightness_step_pct: 25 transition: 1 - conditions: - "{{ command == 'up_press' }}" sequence: - service: light.turn_on target: !input "light" data: brightness_step_pct: 10 transition: 1 - conditions: - "{{ command == 'step' }}" - "{{ args == [1, 30, 9] }}" sequence: - service: light.turn_on target: !input "light" data: brightness_step_pct: -10 transition: 1 - conditions: - "{{ command == 'step' }}" - "{{ args == [1, 63, 9] }}" sequence: - service: light.turn_on target: !input "light" data: brightness_step_pct: -25 transition: 1 - conditions: - "{{ command == 'down_press' }}" sequence: - service: light.turn_on target: !input "light" data: brightness_step_pct: -10 transition: 1