If a light is already on, and you manually press that paddle switch again, there’s no signal sent or detected unless there’s actually a change in the light itself.
A tap of a button on an already on light could be used to disable an automation temporarily. We’ve found this to be a challenge when programming our ceiling fan switches.
Now if you are talking about a Z-Wave wall switch (Jasco, GE, etc…), then the following can be used. The state of the switch doesn’t matter for these events. BUT, you MUST associate Group 1 for single tap and Group 2 for double tap to the Z-Wave controller (Node 1) so that the switch will send the events to the controller. You can also associate other Z-Wave devices to Group 1 and Group 2 to control them through Z-Wave network. I do this for lights/switches I want to be controller together and remove the need to HASS to have to process this automation, but if you want the same functionality if you turn on the light from HASS, you have to setup an automation because turning on the light/switch from HASS will not trigger the event associated with Group 1 or Group 2, but this can be device dependent…
automation:
- alias: "Livingroom - Light Double Tap On"
mode: single
trigger:
- platform: event
event_type: zwave.node_event
event_data:
entity_id: zwave.livingroom_couch_lamps
basic_level: 255
action:
# Turn on Livingroom and Kitchen lights with auto brightness
- service: light.turn_on
entity_id:
- light.livingroom_auto
- light.kitchen_auto
# Turn on TV
- service: input_select.select_option
entity_id: input_select.harmony
data:
option: 'Watch TV'
Hope this is helpful, this is how you can do this currently. All that being said, I will repeat myself, I agree with this WTH. It is a struggle to figure this out and did update the documentation, but the location of this documentation can be hard to find…