Double Press ZW4005

Hello! I am relatively new to home assistant, switching over from Hubitat.

I have a GE Z-Wave Light switch which has double press functionality and I used that functionality within Hubitat to turn on a different device using automation. But in Home Assistant Automations when I select the switch and look under “Trigger” I do not see any double press options. I also looked for scene control but that turned into a slider and a checkbox, not the typical “1x, 2x, 3x press” options I am used to seeing.

I must be missing something. Thanks for any help!

Those should use Basic CC event, with values 0 and 255.

So if I wanted to say “double press on top button”

I see “Basic CC event on Endpoint 0” but what value do I set?

Thank you for the help!

0 is the off button, 255 is on. Usually bottom/top buttons. I also have some blueprints here.

@freshcoast Apologies for re-opening this old thread.

Do you have any ideas on why my ZW4005 devices aren’t firing zwave_js_value_notification events? I had a similar automation running in NodeRed, and it recently ceased functioning (but I am not certain exactly when). From the ZWave JS control panel, under one of the ZW4005 devices in question, in the Events section, I can see:

Arg 0:
└─commandClassName: Basic
└─commandClass: 32
└─property: currentValue
└─endpoint: 0
└─newValue: 255
└─prevValue: 255
└─propertyName: currentValue

So the device is aware of the doubletap. But this is not coming through as an event. I tried listening for all zwave_js_value_notification events in Developer Tools…nothing.

ZW4005 is a generic product identifier. You would need to post which device you actually have to debug further. The config file probably needs updating. https://devices.zwave-js.io/

I think I found the trouble. My device is missing the treatBasicSetAsEvent compatibility flag.

Yes, that would be the reason. You can copy from one of the other devices into your config. If you use zwave-js UI, you can test this locally. If you are using the official add-on, you won’t be able to do much of anything.

I opened this issue.

EDIT: @freshcoast. I am using the zwave-js UI add-on. I’m not seeing how/where to access the json device configs. Can you point me in the right direction? I’m running HassOS and have ssh’ed in, but cannot find the configs for the zwave-js ui add-on.

Answering my own question in case someone else stumbles across this thread:

  • Make sure you have the community add-on version of ssh (not the official). This gives you access to docker of the underlying HassOS host. See this thread.
  • Connect to the zwavejs ui container with the following command docker exec -it $(docker ps -f name=zwavejs2mqtt -q) bash
  • Update the relevant file to add the compat flag. In my case I ran vi /data/db/devices/0x0039/39348_39455_zw4005.json

Sorry, didn’t see the question. You can just upload the files from the Store Explorer, no need to use SSH. But if that’s easier, go for it.

This file will be replaced/removed when you update the add-on. Better to install the custom file into the location as documented, in the links I posted earlier.

I couldn’t find a way to upload a file via the store explorer. Is that part of the Restore option?

I realize that file will be overwritten on add-on update, but I suppose I an naively hoping that the issue I created upstream will be addressed and incorporated into that release.

Click the folder and file + icons in the explorer page. Copy text into editor on the right. Click save to save.

Ok, I see. It’s a web-based editor only. I can’t use an IDE and then upload the file.

I got this working now. I ended up copying the file from the /data/db/devices/<manufactorId>/<device>.json location to /data/store/config/<device>.json. I reverted the changes to the original file, and made those changes in the custom copy. Restarted the container, and everything is still working.

Thanks for your help @freshcoast.

Right, you can’t upload the file, but you can copy and paste the text into the editor, so essentially it’s the same thing. Whatever works, as long as you use the config dir. :slight_smile:

It sounds like the config file is working for you? If that’s the case, consider submitting a PR to node-zwave-js so the community can benefit from your improvement.

Yep, everything is working well. I didn’t submit a PR, but did create a detailed issue in node-zwave-js noted above