GE 14294 (and Jasco equivilant) ZWave dimmer double tap (Event on Associaton Group 3) - need config help

Noone else has run into this? Or does it just not function with the addon switch? It’s a 12723 if that matters.

Yep, same thing for me. I have a 14291 on/off switch with a 12723 add-on switch. The double tap works on the 14291 but not on it’s 12723 add-on partner.

Same here. Was really hoping to make the double-tap work for all of my n-way setups.

My Appdaemon app works for me with add-on switches. I basically duplicated the automation code into appdaemon so I don’t know why it wouldn’t work for you guys.

1 Like

Man I really don’t want to go down the AppDaemon rabbit hole to get this working! :slight_smile:

To top it off my double-tap scenes just up and quit working as a few days ago. First one stopped and then the other stopped a day or so later.

Tried re-associating but so far no dice. Don’t even see the automation being triggered in the log.

1 Like

I have mine working using the standard YAML (no AppDaemon). The main switches have two variants as mentioned, and the older ones don’t support double-tap. I wonder if that’s also true of the add-on switches. If you have a another add-on switch, you might try swapping to see if that helps,.

Anybody doing this with node-red yet? I’m trying to figure out where to find the zwave.node_event trigger is.

Found it. Had to use the events: all node instead of the events: state node. Only trouble is the node receives all HomeAssistant events and you have to filter the specific one you want.

Edit: For some reason I can’t filter the zwave.node_event topic, or any other topics for that matter, i.e. using a switch node where msg.topic == zwave.node_event

Edit2: Working. Honestly don’t know what happened, but a restart solved it.

1 Like

Can you share your JSON code for Node Red? This is one of my last automations in YAML and I’d love to get it moved over.

Here you go. I hope it helps:

[{"id":"c8a9938a.b2c3c8","type":"server-events","z":"6bbf42c0.fcb1bc","name":"","server":"f053f2ed.c5201","x":140,"y":1560,"wires":[["41a7bf5f.caabb"]]},{"id":"41a7bf5f.caabb","type":"switch","z":"6bbf42c0.fcb1bc","name":"filter for zwave.node_event","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"zwave.node_event","vt":"str"}],"checkall":"true","outputs":1,"x":400,"y":1560,"wires":[["2077efae.d1576","35a4e8f5.b44d08","2d873e53.5a1b9a","11133c3a.c66fa4","d4bb3fdc.7b4ed","2a192cf8.f099e4","732cae.5e6a3b54","d801f370.236218","1b2bc1af.bc9be6","ed45ded4.a4692","1c722e53.39c442","7aba61ba.e73ce8","959c4661.6e6418","599cf7c6.872f78"]]},{"id":"d801f370.236218","type":"switch","z":"6bbf42c0.fcb1bc","name":"filter bedroom_north_back_bedroom","property":"payload.entity_id","propertyType":"msg","rules":[{"t":"eq","v":"zwave.bedroom_north_back_bedroom","vt":"str"}],"checkall":"true","outputs":1,"x":770,"y":1560,"wires":[["76ffe05c.bfa"]]},{"id":"76ffe05c.bfa","type":"api-current-state","z":"6bbf42c0.fcb1bc","name":"Bedroom north back bedroom light on?","server":"f053f2ed.c5201","halt_if":"off","entity_id":"light.bedroom_north_back_bedroom_level","x":1136,"y":1560,"wires":[["da27bc4c.794f38"]]},{"id":"da27bc4c.794f38","type":"api-call-service","z":"6bbf42c0.fcb1bc","name":"Turn light on to lowest dim","server":"f053f2ed.c5201","service_domain":"light","service":"turn_on","data":"{\"entity_id\": \"light.bedroom_north_back_bedroom_level\", \"brightness\": \"30\"}","x":1469,"y":1560,"wires":[]},{"id":"732cae.5e6a3b54","type":"switch","z":"6bbf42c0.fcb1bc","name":"filter bedroom_north_middle_bedroom","property":"payload.entity_id","propertyType":"msg","rules":[{"t":"eq","v":"zwave.bedroom_north_middle_bedroom","vt":"str"}],"checkall":"true","outputs":1,"x":770,"y":1500,"wires":[["96f58b00.97426"]]},{"id":"96f58b00.97426","type":"api-current-state","z":"6bbf42c0.fcb1bc","name":"Bedroom north middle bedroom light on?","server":"f053f2ed.c5201","halt_if":"off","entity_id":"light.bedroom_north_middle_bedroom_level","x":1136,"y":1500,"wires":[["f1146d5f.3be7a"]]},{"id":"f1146d5f.3be7a","type":"api-call-service","z":"6bbf42c0.fcb1bc","name":"Turn light on to lowest dim","server":"f053f2ed.c5201","service_domain":"light","service":"turn_on","data":"{\"entity_id\": \"light.bedroom_north_middle_bedroom_level\", \"brightness\": \"30\"}","x":1469,"y":1500,"wires":[]},{"id":"f053f2ed.c5201","type":"server","z":"","name":"Home Assistant","url":"http://10.0.3.1:8123","pass":"admin13667"}]

Is there another automation for the actual double-tap detection and actions?

You have to configure the switch in zwave config first. The above flow starts with a node that listens for all HomeAssistant events. It filters the double tap event then creates an automation for the switch to turn the light on to the lowest dim for nightlight use.

Can you elaborate on “You have to configure the switch in zwave config first”?

I have the switches I want to control in a node group association. And the double-tap works fine in YAML.

I’ve tried deploying your JSON and updating for my switches but it doesn’t do anything.

My YAML:

- id: turn_off_basement_stairs_light_double_tap_turn_off_basement_lights
  alias: Basement Stairs lights double-tapped off
  trigger:
# Trigger off double-tap of basement stairs lights
  - platform: event
    event_type: zwave.node_event
    event_data:
      entity_id: zwave.basement_stairs_light
      basic_level: 0
  action:
    - service: homeassistant.turn_off
      entity_id: group.basement_lights

My JSON:

[{"id":"b42a9a22.560328","type":"server-events","z":"13afa021.58e6e","name":"","server":"f5118dc2.6d791","x":120,"y":440,"wires":[["9d68803c.e2af"]]},{"id":"9d68803c.e2af","type":"switch","z":"13afa021.58e6e","name":"filter for zwave.node_event","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"zwave.node_event","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":380,"y":440,"wires":[["79e3a3fa.40abcc","70f9cd13.6582d4"]]},{"id":"70f9cd13.6582d4","type":"switch","z":"13afa021.58e6e","name":"filter basement_stairs_light","property":"payload.entity_id","propertyType":"msg","rules":[{"t":"eq","v":" zwave.basement_stairs_light","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":720,"y":440,"wires":[["21dff674.21066a"]]},{"id":"21dff674.21066a","type":"api-current-state","z":"13afa021.58e6e","name":"Basement stairs light on?","server":"f5118dc2.6d791","halt_if":"off","entity_id":"switch.basement_stairs_light_switch","x":1076,"y":440,"wires":[["a844269d.e89098"]]},{"id":"a844269d.e89098","type":"api-call-service","z":"13afa021.58e6e","name":"Turn basement lights off","server":"f5118dc2.6d791","service_domain":"homeassistant","service":"turn_off","data":"{\"entity_id\": \"group.basement_lights\"}","x":1449,"y":440,"wires":[]},{"id":"79e3a3fa.40abcc","type":"switch","z":"13afa021.58e6e","name":"filter basement_stairs_light","property":"payload.entity_id","propertyType":"msg","rules":[{"t":"eq","v":" zwave.basement_stairs_light","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":720,"y":380,"wires":[["b7d28e3c.eb343"]]},{"id":"b7d28e3c.eb343","type":"api-current-state","z":"13afa021.58e6e","name":"Basement Stairs light on?","server":"f5118dc2.6d791","halt_if":"off","entity_id":"switch.basement_stairs_light_switch","x":1066,"y":380,"wires":[["9ed6663f.b741f8"]]},{"id":"9ed6663f.b741f8","type":"api-call-service","z":"13afa021.58e6e","name":"Turn basement lights on","server":"f5118dc2.6d791","service_domain":"homeassistant","service":"turn_on","data":"{\"entity_id\": \"group.basement_lights\"}","x":1449,"y":380,"wires":[]},{"id":"f5118dc2.6d791","type":"server","z":"","name":"Home Assistant","url":"","pass":""}]

Sorry I’m not more help but I’m on vacation until the end of the month. Sounds like you’ve already configured your switch for group association. Try using the debug nodes to make sure you’re getting the right events. I had trouble until I restarted HomeAssistant early on as well.

Is there anyway to detect a single tap vs a double tap with the zwave.node_event?

Based on my testing, it looks like the basic_level for a tap up is 255 regardless if it is a single or a double tap.

I associated the second group, Basic - Load, so I can get notified when the dimmer is turned on via the physical switch but now it appears I can’t use double taps because the basic_level is reported the same.

Just for reference, you can get both double tap on and off functionality in one automation using templates. For example, I have a switch near my backdoor control a separate switch on my patio when you double tap:

- alias: double tap
  trigger:
    - platform: event
      event_type: zwave.node_event
      event_data:
        entity_id: zwave.outside_light_back
  action:
    service_template: >
      {% if trigger.event.data.basic_level == 255 %}
        switch.turn_on
      {% elif trigger.event.data.basic_level == 0 %}
        switch.turn_off
      {% endif %}
    entity_id: switch.patio_switch
5 Likes

Hi @kylerw, your code is awesome. Since I do not yet know python, may I ask for your help? I have an Aeotec Wallmote Quad which I wanted to use the slide/swipe function. The catch is that the slide button actions are not sent in as basic set or as central scene but as Configuration Report when I swipe on the button (swipe up and swipe down). Is it possible to use your code and modify it to monitor the following:

2018-12-15 18:01:07 DEBUG (Dummy-4) [openzwave] Z-Wave Notification ValueChanged : {‘notificationType’: ‘ValueChanged’, ‘homeId’: 4218879153, ‘nodeId’: 2, ‘valueId’: {‘homeId’: 4218879153, ‘nodeId’: 2, ‘commandClass’: ‘COMMAND_CLASS_CONFIGURATION’, ‘instance’: 1, ‘index’: 10, ‘id’: 72057594081706147, ‘genre’: ‘Config’, ‘type’: ‘Int’, ‘value’: 67191093, ‘label’: ‘Parameter #10’, ‘units’: ‘’, ‘readOnly’: False}}

I am actually interested in this piece of information where Parameter #10 has its value changed after a swipe action. Where should I modify your code to filter out this info?

Your help is very much appreciated, thank you in advance!!

Just thought I’d update since it’s been forever in case anyone else was trying to do this in Node Red.

There may be simpler ways to do this but it works.

In my case I:

  1. use a Events All Node and filter using the Event Type field for: zwave.node_event.
  2. use a switch to catch whichever entity_id I’m wanting to montor double taps on.
  3. feed another switch to filter for the basic_level of either 0 (double tap off) or 255 (double tap on)
  4. call whatever services based on the output of off our on

This is what it looks like:

JSON:

[{"id":"7034fa94.43b414","type":"server-events","z":"c500858.5d64e78","name":"Monitory Double Tap","server":"184ea099.c5a8af","event_type":"zwave.node_event","x":370,"y":660,"wires":[["4d8698cd.294398"]]},{"id":"4d8698cd.294398","type":"switch","z":"c500858.5d64e78","name":"Which Entity?","property":"payload.entity_id","propertyType":"msg","rules":[{"t":"eq","v":"zwave.powder_room_light","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":600,"y":660,"wires":[["8062db7c.20ecf8"]]},{"id":"8062db7c.20ecf8","type":"switch","z":"c500858.5d64e78","name":"Double Tap On or Off","property":"payload.event.basic_level","propertyType":"msg","rules":[{"t":"eq","v":"0","vt":"str"},{"t":"eq","v":"255","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":860,"y":660,"wires":[["9d3b5c8b.a6266","ae874eab.c818e"],["ffdc3798.c09c58","eef1137f.6594a"]],"outputLabels":["Off","On"]},{"id":"9d3b5c8b.a6266","type":"api-call-service","z":"c500858.5d64e78","name":"Turn light off powder room fan","server":"184ea099.c5a8af","service_domain":"homeassistant","service":"turn_off","data":"{\"entity_id\": \"switch.powder_room_fan_switch\"}","mergecontext":"","x":1150,"y":620,"wires":[[]]},{"id":"ae874eab.c818e","type":"api-call-service","z":"c500858.5d64e78","name":"Turn light off powder room light","server":"184ea099.c5a8af","service_domain":"homeassistant","service":"turn_off","data":"{\"entity_id\": \"switch.powder_room_light_switch\"}","mergecontext":"","x":1150,"y":660,"wires":[[]]},{"id":"ffdc3798.c09c58","type":"api-call-service","z":"c500858.5d64e78","name":"Turn light on powder room fan","server":"184ea099.c5a8af","service_domain":"homeassistant","service":"turn_on","data":"{\"entity_id\":\"switch.powder_room_fan_switch\"}","render_data":false,"mergecontext":"","x":1150,"y":720,"wires":[[]]},{"id":"eef1137f.6594a","type":"api-call-service","z":"c500858.5d64e78","name":"Turn light on powder room light","server":"184ea099.c5a8af","service_domain":"homeassistant","service":"turn_on","data":"{\"entity_id\":\"switch.powder_room_light_switch\"}","render_data":false,"mergecontext":"","x":1150,"y":760,"wires":[[]]},{"id":"184ea099.c5a8af","type":"server","z":"","name":"Home Assistant"}]

REALLY wished these switches supported the full Central Scene command set like the HomeSeer and Inovelli switches!

Has anyone figured out how to do this? I have the same switches and for me i tried what was done here:

But when i went to the Z-Wave node management i see this under ‘Node group associations’


so i already see a double tap function. However, when i tried to group this with itself instead of another z wave switch i didn’t see any traffic on the log which is weird. I think the OP mentioned he was able to see traffic after he created the grouping. I don’t know what I am doing wrong. Just to experiment i went ahead and grouped this switch with another switch which is what you will see now in the screenshot and it works it controls the other z wave switch but still no log appears designating a double tap which is very frustrating.

NVM! I know what i was doing was wrong. I need to group it with my USB Stick!