This is a blueprint for triggering actions based on presses of the On/Off buttons of the Homeseer HS-WD200+ Dimmer using the new ZWave-JS Integration.
blueprint:
name: Homeseer HS-WD200+ Dimmer (ZWave-JS)
description: Create automations for the Homeseer HS-WD200+ Dimmer using the ZWave-JS integration.
domain: automation
input:
homeseer_switch:
name: Homeseer Dimmer
description: "List of available Homeseer Dimmers"
selector:
device:
integration: zwave_js
manufacturer: HomeSeer Technologies
model: HS-WD200+
## Paddle Press 1 time
button_a:
name: Button A - Up/On press 1x
description: "Action to run, when the button is pressed one time.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
button_b:
name: Button B - Down/Off press 1x
description: "Action to run, when the button is pressed one time.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
## Paddle Held Down
button_a_held:
name: Button A - Up/On held down
description: "Action to run, when the button is held down.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
button_b_held:
name: Button B - Down/Off held down
description: "Action to run, when the button is held down.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
## Paddle Press 2 times
button_a2:
name: Button A - Up/On press 2x
description: "Action to run, when the button is pressed two times."
default: []
selector:
action: {}
button_b2:
name: Button B - Down/Off press 2x
description: "Action to run, when the button is pressed two times."
default: []
selector:
action: {}
## Paddle Press 3 times
button_a3:
name: Button A - Up/On press 3x
description: "Action to run, when the button is pressed three times."
default: []
selector:
action: {}
button_b3:
name: Button B - Down/Off press 3x
description: "Action to run, when the button is pressed three times."
default: []
selector:
action: {}
## Paddle Press 4 times
button_a4:
name: Button A - Up/On press 4x
description: "Action to run, when the button is pressed four times."
default: []
selector:
action: {}
button_b4:
name: Button B - Down/Off press 4x
description: "Action to run, when the button is pressed four times."
default: []
selector:
action: {}
## Paddle Press 5 times
button_a5:
name: Button A - Up/On press 5x
description: "Action to run, when the button is pressed five times."
default: []
selector:
action: {}
button_b5:
name: Button B - Down/Off press 5x
description: "Action to run, when the button is pressed five times."
default: []
selector:
action: {}
mode: single
max_exceeded: silent
variables:
device_id: !input homeseer_switch
trigger:
- platform: event
event_type: zwave_js_value_notification
condition: "{{ trigger.event.data.device_id == device_id }}"
action:
- variables:
button_id: "{{ trigger.event.data.property_key_name }}"
press_count: "{{ trigger.event.data.value }}"
- service: "logbook.log"
data:
name: "Button Id"
message: "{{ button_id }}"
- service: "logbook.log"
data:
name: "Press Count"
message: "{{ press_count }}"
- service: "logbook.log"
data:
name: "Device"
message: "{{ zwave_device }}"
- choose:
- conditions: '{{ button_id == "001" and press_count == "KeyPressed" }}'
sequence: !input button_a
- conditions: '{{ button_id == "002" and press_count == "KeyPressed" }}'
sequence: !input button_b
- conditions: '{{ button_id == "001" and press_count == "KeyHeldDown" }}'
sequence: !input button_a_held
- conditions: '{{ button_id == "002" and press_count == "KeyHeldDown" }}'
sequence: !input button_b_held
- conditions: '{{ button_id == "001" and press_count == "KeyPressed2x" }}'
sequence: !input button_a2
- conditions: '{{ button_id == "002" and press_count == "KeyPressed2x" }}'
sequence: !input button_b2
- conditions: '{{ button_id == "001" and press_count == "KeyPressed3x" }}'
sequence: !input button_a3
- conditions: '{{ button_id == "002" and press_count == "KeyPressed3x" }}'
sequence: !input button_b3
- conditions: '{{ button_id == "001" and press_count == "KeyPressed4x" }}'
sequence: !input button_a4
- conditions: '{{ button_id == "002" and press_count == "KeyPressed4x" }}'
sequence: !input button_b4
- conditions: '{{ button_id == "001" and press_count == "KeyPressed5x" }}'
sequence: !input button_a5
- conditions: '{{ button_id == "002" and press_count == "KeyPressed5x" }}'
sequence: !input button_b5
Edit 4/7/21: Updated to support HA 2021.4.0 release
if you remove model: from the input selector, it will work with HS-WS200 and the HS-FC200 =-) I couldn’t figure out how to “and” the models and limit it to just those 3.
Unsure if this is helpful to anyone but I modified it for the HS-WS200+ by simply changing the model and descriptions @black_thunder
I only tested double-tap on and off so apologies if any of the other functions don’t work, I only use the doubles
blueprint:
name: Homeseer HS-WS200+ Switch (ZWave-JS)
description: Create automations for the Homeseer HS-WD200+ Switch using the ZWave-JS integration.
domain: automation
input:
homeseer_switch:
name: Homeseer Switch
description: "List of available Homeseer Switches"
selector:
device:
integration: zwave_js
manufacturer: HomeSeer Technologies
model: HS-WS200+
## Paddle Press 1 time
button_a:
name: Button A - Up/On press 1x
description: "Action to run, when the button is pressed one time.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
button_b:
name: Button B - Down/Off press 1x
description: "Action to run, when the button is pressed one time.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
## Paddle Held Down
button_a_held:
name: Button A - Up/On held down
description: "Action to run, when the button is held down.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
button_b_held:
name: Button B - Down/Off held down
description: "Action to run, when the button is held down.
Typically, you will only set this if you have disabled the relay."
default: []
selector:
action: {}
## Paddle Press 2 times
button_a2:
name: Button A - Up/On press 2x
description: "Action to run, when the button is pressed two times."
default: []
selector:
action: {}
button_b2:
name: Button B - Down/Off press 2x
description: "Action to run, when the button is pressed two times."
default: []
selector:
action: {}
## Paddle Press 3 times
button_a3:
name: Button A - Up/On press 3x
description: "Action to run, when the button is pressed three times."
default: []
selector:
action: {}
button_b3:
name: Button B - Down/Off press 3x
description: "Action to run, when the button is pressed three times."
default: []
selector:
action: {}
## Paddle Press 4 times
button_a4:
name: Button A - Up/On press 4x
description: "Action to run, when the button is pressed four times."
default: []
selector:
action: {}
button_b4:
name: Button B - Down/Off press 4x
description: "Action to run, when the button is pressed four times."
default: []
selector:
action: {}
## Paddle Press 5 times
button_a5:
name: Button A - Up/On press 5x
description: "Action to run, when the button is pressed five times."
default: []
selector:
action: {}
button_b5:
name: Button B - Down/Off press 5x
description: "Action to run, when the button is pressed five times."
default: []
selector:
action: {}
mode: single
max_exceeded: silent
variables:
device_id: !input homeseer_switch
trigger:
- platform: event
event_type: zwave_js_value_notification
condition: "{{ trigger.event.data.device_id == device_id }}"
action:
- variables:
button_id: "{{ trigger.event.data.property_key_name }}"
press_count: "{{ trigger.event.data.value }}"
- service: "logbook.log"
data:
name: "Button Id"
message: "{{ button_id }}"
- service: "logbook.log"
data:
name: "Press Count"
message: "{{ press_count }}"
- service: "logbook.log"
data:
name: "Device"
message: "{{ zwave_device }}"
- choose:
- conditions: '{{ button_id == "001" and press_count == "KeyPressed" }}'
sequence: !input button_a
- conditions: '{{ button_id == "002" and press_count == "KeyPressed" }}'
sequence: !input button_b
- conditions: '{{ button_id == "001" and press_count == "KeyHeldDown" }}'
sequence: !input button_a_held
- conditions: '{{ button_id == "002" and press_count == "KeyHeldDown" }}'
sequence: !input button_b_held
- conditions: '{{ button_id == "001" and press_count == "KeyPressed2x" }}'
sequence: !input button_a2
- conditions: '{{ button_id == "002" and press_count == "KeyPressed2x" }}'
sequence: !input button_b2
- conditions: '{{ button_id == "001" and press_count == "KeyPressed3x" }}'
sequence: !input button_a3
- conditions: '{{ button_id == "002" and press_count == "KeyPressed3x" }}'
sequence: !input button_b3
- conditions: '{{ button_id == "001" and press_count == "KeyPressed4x" }}'
sequence: !input button_a4
- conditions: '{{ button_id == "002" and press_count == "KeyPressed4x" }}'
sequence: !input button_b4
- conditions: '{{ button_id == "001" and press_count == "KeyPressed5x" }}'
sequence: !input button_a5
- conditions: '{{ button_id == "002" and press_count == "KeyPressed5x" }}'
sequence: !input button_b5
Anyone else have this blueprint stop working with 2023.7.3 update?
My automation (triple click using the blueprint) doesn’t get triggered at all running this update. Revert back to 2023.7.2 and it starts working again.
There isn’t much reason to use the blueprint. Simply create a device trigger for the dimmer. You will see the central scene options after selecting the device trigger. Scene 1 is the up button.
Turns out it’s not the blueprint or the ZWave event that has issues. It’s the automation system in the latest HA update.
Looking at the trace of my automation, it hangs up after the trigger but before executing any actions. Says “still running” but no actions have been fired. Ugh.