[BETA] GE/Jasco Z-Wave Plus Dimmer Switch With Double-Tap

I just got my dimmer switches in on Friday but have not had a chance to install them up yet. I should have some time this week to get these installed and look into why this isn’t working.

Question on association functionality.

I have not purchased these yet, but what can you do with association?

Is this like zwave association where one device can directly control another? Or is it something else?

Are the 2 association groups the same thing? Or do they do different things?

Thanks

I have some GE / Jason dimmers /switches any way to check part numbers or firmware versions on them to see if they would work ?

I think this screenshot does a good job of describing how the association groups work.

Associations question follow up, does group 2 or group 3 need to the hub for instant status or is that auto handled another way.

Meaning do I have to set group to the hub for double tab to be sent to the hub or is double tab sent to the hub in addition to devices listed in group 3 automatically?

Looking at mine I have an older model that is labeled as V3.0e on the back and a newer model that is labeled as V5.0b and has 14294-2 on it. If you still have the manual Jasco told me that if the manual lists all 3 association groups it is for sure the newer version. You can also try using this DTH for it and see if it works or DTH Z-Wave Tweaker [BETA] Z-Wave Tweaker can tell you what association groups your device has, if it only has group 1 it is the older model. Jasco tells me they only made about 1,000 of the old version.

I just updated the code in GitHub, had to fix the same bug I had with joining in the On/Off version of this switch.

The DTH handles associating the hub to group 3 (which is why you can only add 4 more the first slot is already used up for the hub). Group 1 is used for other notifications (on, off, dim) and is automatically added by SmartThings as part of the join process. So short answer you do not need to use associations unless you want the switch to talk directly to another device and avoid the lag of going through the hub/cloud.

I figured out what was wrong, I was passing the button number as a string not an integer. I have updated GitHub with the fixed code. I also discovered an issue with dimmer level not getting updated in SmartThings when changed at the switch, this is also fixed.

Something still isn’t working for me. When I double tap, everything looks fine in the log but the lights never actually go to 100%. The device then updates back to the actual 5%.

I am having weird glitches also. My switch directly controls an outlet that has a lamp plugged in and I have a plug-in lamp module with a lamp plugged in on the other side of the room. The lamp module is associated with group 2 on the switch so it turns on/off/dims with the switch. I have a CoRE piston configured that a double tap up will turn on the lamp module only and a double tap down will turn off the lamp module only. The rule works perfectly if the switch is on, I can double tap the lamp module off, on, and back off again. However if the switch is off double taps show up in the log and I can see the condition in the piston change blue but the lamp module does nothing. However pressing the double tap buttons in the DTH works. Unfortunately these lamps are all in my son’s bedroom and he went to bed so I will have to troubleshoot another day.

Could this issue be part of the problem? I’m not really a developer so this goes a bit beyond my understanding but it sounds like this might be why the switch isn’t getting the commands.

Reading through this post I think it could very well have been the issue. It does look like a fix for this was pushed out today. My dimmer switch seems to be working. I did discover and issue with how I built my CoRE piston so I am not sure if my issues were only the piston or if the events weren’t working as well. Let me know if you are still having problems and we can try changing the code for you to use sendEvent instead of createEvent.

Unfortunately I’m still having trouble with double tap. Whether I double tap on the physical switch, or press the double tap button in the app, I get the same result. The level briefly updates in the app to 100%, but then updates back to 20% (or whatever it was set to before). The lights never actually change brightness though.

My core piston is pretty simple, but maybe I have it set wrong? I’m still new to core.

Weird, the buttons in the app always worked for me. Your piston looks good to me, doesn’t get much simpler than that. Maybe it is something to do with having the trigger and action on the same device. Try changing the piston to turn a different light on and see if that works. If it does you can try putting a delay in the action (I have noticed that if I double tap the switch one way and then try double tapping the other way without waiting a few seconds it ignores me). If none of that works you can try changing the following lines (line numbers 259-266):

def zwaveEvent(physicalgraph.zwave.commands.basicv1.BasicSet cmd) {
if (cmd.value == 255) {
createEvent(name: “button”, value: “pushed”, data: [buttonNumber: 1], descriptionText: “Double-tap up (button 1) on $device.displayName”, isStateChange: true, type: “physical”)
}
else if (cmd.value == 0) {
createEvent(name: “button”, value: “pushed”, data: [buttonNumber: 2], descriptionText: “Double-tap down (button 2) on $device.displayName”, isStateChange: true, type: “physical”)
}
}

to:

def zwaveEvent(physicalgraph.zwave.commands.basicv1.BasicSet cmd) {
if (cmd.value == 255) {
sendEvent(name: “button”, value: “pushed”, data: [buttonNumber: 1], descriptionText: “Double-tap up (button 1) on $device.displayName”, isStateChange: true, type: “physical”)
}
else if (cmd.value == 0) {
sendEvent(name: “button”, value: “pushed”, data: [buttonNumber: 2], descriptionText: “Double-tap down (button 2) on $device.displayName”, isStateChange: true, type: “physical”)
}
}

And see if that makes a difference.

I tried making that change, but it didn’t result in a different behavior.

I did try changing my Core piston to use some different actions, with some success. Instead of using ‘Set Level’ as I was before, I tried using ‘Fade to’ and that seemed to mostly work, although it wouldn’t go all the way up to 100% (it stopped fading up at 75%). Setting the lights to flash also seemed to work (although again, the timing wasn’t the best).

So I’m not sure if there is something wrong with using the ‘Set Level’ in Core, or if that command is broken for these switches.

So I solved my issue - setting the level to 100 (either by using ‘Set Level’ or ‘Fade to’) doesn’t work - but setting the level to 99 does.

I found what was causing this problem, updated code on GitHub should allow setting to 100%.

What firmware(s) support double tap?

You can see the firmware versions in the fingerprint section of the code:

    // These include version because there are older firmwares that don't support double-tap or the extra association groups
    fingerprint mfr:"0063", prod:"4944", model:"3038", ver: "5.26", deviceJoinName: "GE Z-Wave Plus Wall Dimmer"
    fingerprint mfr:"0063", prod:"4944", model:"3039", ver: "5.19", deviceJoinName: "GE Z-Wave Plus 1000W Wall Dimmer"
    fingerprint mfr:"0063", prod:"4944", model:"3130", ver: "5.21", deviceJoinName: "GE Z-Wave Plus Toggle Dimmer"
    fingerprint mfr:"0063", prod:"4944", model:"3135", ver: "5.26", deviceJoinName: "Jasco Z-Wave Plus Wall Dimmer"
    fingerprint mfr:"0063", prod:"4944", model:"3136", ver: "5.21", deviceJoinName: "Jasco Z-Wave Plus 1000W Wall Dimmer"
    fingerprint mfr:"0063", prod:"4944", model:"3137", ver: "5.20", deviceJoinName: "Jasco Z-Wave Plus Toggle Dimmer"