Skip to content

Instantly share code, notes, and snippets.

@victorlin
Forked from billyjacoby/inovelliLZW30.yaml
Last active May 25, 2026 16:37
Show Gist options
  • Select an option

  • Save victorlin/3da357b2093bdf2fa97e3a36fccc25d4 to your computer and use it in GitHub Desktop.

Select an option

Save victorlin/3da357b2093bdf2fa97e3a36fccc25d4 to your computer and use it in GitHub Desktop.
Inovelli LZW30-SN ZwaveJS Dimmable Blueprint (https://github.com/jasonmx/philips-hue-smooth-dimmer)
blueprint:
name: Inovelli LZW30-SN Hue Dimmer
description: >-
Use an Inovelli LZW30-SN Z-Wave JS switch to control Hue lights through
the philips-hue-smooth-dimmer custom integration.
domain: automation
input:
zwave_device:
name: Inovelli switch
description: The Inovelli LZW30-SN device from Z-Wave JS.
selector:
device:
integration: zwave_js
manufacturer: Inovelli
hue_target:
name: Hue target
description: Hue light, room, or zone target to control.
selector:
target:
entity:
domain: light
tap_2x_up:
<<: &tap_action_input
default: []
selector:
action:
name: Tap 2x Up
description: Action to run when Up button is pressed 2 times.
tap_2x_down:
<<: *tap_action_input
name: Tap 2x Down
description: Action to run when Down button is pressed 2 times.
tap_3x_up:
<<: *tap_action_input
name: Tap 3x Up
description: Action to run when Up button is pressed 3 times.
tap_3x_down:
<<: *tap_action_input
name: Tap 3x Down
description: Action to run when Down button is pressed 3 times.
tap_4x_up:
<<: *tap_action_input
name: Tap 4x Up
description: Action to run when Up button is pressed 4 times.
tap_4x_down:
<<: *tap_action_input
name: Tap 4x Down
description: Action to run when Down button is pressed 4 times.
tap_5x_up:
<<: *tap_action_input
name: Tap 5x Up
description: Action to run when Up button is pressed 5 times.
tap_5x_down:
<<: *tap_action_input
name: Tap 5x Down
description: Action to run when Down button is pressed 5 times.
mode: restart
max_exceeded: silent
variables:
device_id: !input zwave_device
trigger:
- platform: event
event_type: zwave_js_value_notification
condition:
- condition: template
value_template: "{{ trigger.event.data.device_id == device_id }}"
action:
- variables:
button: "{{ {'001': 'down', '002': 'up'}.get(trigger.event.data.property_key_name) }}"
value: "{{ trigger.event.data.value }}"
- choose:
- conditions: "{{ button == 'up' and value == 'KeyPressed' }}"
sequence:
- action: light.turn_on
target: !input hue_target
- conditions: "{{ button == 'down' and value == 'KeyPressed' }}"
sequence:
- action: light.turn_off
target: !input hue_target
- conditions: "{{ button == 'up' and value == 'KeyHeldDown' }}"
sequence:
- action: hue_dimmer.raise
target: !input hue_target
- conditions: "{{ button == 'down' and value == 'KeyHeldDown' }}"
sequence:
- action: hue_dimmer.lower
target: !input hue_target
- conditions: "{{ button in ['up', 'down'] and value == 'KeyReleased' }}"
sequence:
- action: hue_dimmer.stop
target: !input hue_target
# extras
- conditions: "{{ button == 'up' and value == 'KeyPressed2x' }}"
sequence: !input 'tap_2x_up'
- conditions: "{{ button == 'down' and value == 'KeyPressed2x' }}"
sequence: !input 'tap_2x_down'
- conditions: "{{ button == 'up' and value == 'KeyPressed3x' }}"
sequence: !input 'tap_3x_up'
- conditions: "{{ button == 'down' and value == 'KeyPressed3x' }}"
sequence: !input 'tap_3x_down'
- conditions: "{{ button == 'up' and value == 'KeyPressed4x' }}"
sequence: !input 'tap_4x_up'
- conditions: "{{ button == 'down' and value == 'KeyPressed4x' }}"
sequence: !input 'tap_4x_down'
- conditions: "{{ button == 'up' and value == 'KeyPressed5x' }}"
sequence: !input 'tap_5x_up'
- conditions: "{{ button == 'down' and value == 'KeyPressed5x' }}"
sequence: !input 'tap_5x_down'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment