[RELEASE] Switch Bindings 2.0

I have about a second lag between two Zooz dimmers which I have binded. Would that be considered normal/acceptable? Also a couple of other questions:

  1. Should I include the group dimmer along with the two switches I'm binding? My goal is to syncronize them a bit more.

  2. Could lag time have anything to do with the 5 second ramp rate that I have set in the device level settings for each switch?

Have you tried using the associations instead for Zooz? If you setup associations on the device the commands go direct from device to device and not the hub so it works faster and also even if the hub was unreachable for any reason.

2 Likes

Do you know if there is some way to setup associations for the dimmer/relay of a zooz double switch (ZEN30)? It seems the relay gets a hex value that's incompatible format. I'm using your driver.

I assume you want to point an association on another device TO the relay? You would have to set a multichannel association on the other device to point to endpoint 1 for the relay. This tool I ported from ST can do it: [BETA] ZWave Tweaker port from ST

If you are just trying to set associations from the ZEN30 to point to another device I am not understanding the problem? Use the Group 2/3 boxes in the settings.

@jtp10181
I am embarrassed to admit but I really don't totally understand the answer fully. This is my first foray into associations, and it's for an odd reason.

I have the ZEN30 because I was having issues with a ZEN21 that kept requiring turning off the circuit breaker to get the switch to respond. The folks at Zooz thought it was the type of load, and suggested the ZEN30 relay would overcome that. I had no use for the dimmer portion right now and set it up to fake events but not actually power the wiring (for safety).

However, if the dimmer portion is physically pressed, I want the relay to turn on (or off), and to minimize the lag. I had read that associations act more quickly because they don't involve passing through the hub, and that's what prompted my question. From what I saw in the device settings, the relay ends up with a 1 tacked on the end, so it doesn't match the format for associations inputs.

Perhaps I need an associations tutorial, too :thinking:

Have never tried to associate a device with itself on a different EP but its worth a shot.

I just posted a little tutorial on the tweaker post: [BETA] ZWave Tweaker port from ST - #2 by jtp10181

You will need to set Group 2, and set it to the network ID of the ZEN30 plus :1 for endpoint 1 (the relay).

I've just installed this app and it's working great for me. My question is if you'd be able to add a restriction to temporarily unbind/pause a child app.

My use case is that I have a virtual switch that turns on during 'super peak' electrical rates from my electricity provider. Then I have the restriction in rule machine, motion lighting, and simple automation set to disable when this virtual switch is on.

This way I'm keeping off a few lights and other things that don't necessarily need to turn on during super peak rates that are always in the middle of the day anway.

I'm not able to do this in the built in Mirror app but I'm liking the Switch Bindings app better, plus I don't want to write a huge RM rule to bind a switch so I can have the restrictions as I've never been able to keep things in sync that way.

Am I following right? You're asking for a switch selector, and if that switch turns on, the binding would be disabled until it turns back off?

Yep, that's what I'm looking for.

I have been using Switch Bindings to bind wall switches to smart bulbs. Has worked great. For my Hue bulbs, though, there's always been a fade-in lag. Come to find out, Hue bulbs can be turned on instantly if they are sent the setLevel command with a value of 0 for the duration. If they are just sent the on() command, though, they fade on rather than turn on instantly.

Feature request: give the option for sending a setLevel command to turn a switch on, rather than just an on() command. Either with a fixed duration of 0 or make the duration configurable if there's a use case for that.

Thoughts? If you'd accept a pull request for that feature, I'd be happy to code it up and send it to you for approval.

I love pull requests!

1 Like

Pull request submitted. Pretty simple. Since Hue bulbs have the transition time as a setting, we can just make this transparent to the user and use setLevel to honor whatever setting the user has specified for the transition time.

Note: for whatever reason, Hue bulbs don’t honor the transition time when turning bulbs off. So no point in doing the same thing for “off”.

In my experience, they do, but then they turn on to level 1 next time, not the previous level like they would otherwise do. This is avoided by using setLevel() to turn them on instead (or, more specifically to the Hue API, providing a brightness value and telling them to be/turn on instead of just the latter)--a workaround it sounds like you're already using. So this might actually work for you.

I should also note that it's possible that different bulb models, firmware, or perhaps even Bridge hardware or firmware versions may affect this behavior, but it's what I've seen on all of mine and has been reported by at least some other people.

Interesting. Mine doesn't do this. They will go from level 100 to level 1 instantly, but not to level 0 instantly, even if turned on via set level. Perhaps I'll look into what firmware I'm running on the bulb and hub.

EDIT: well, looks like I’ve got auto updates on so running the latest firmware…

Just wanted to say that this is now my favorite app. I've replaced several rule machine apps with switch bindings now (I turn on entertainment devices when their corresponding Harmony activity starts) -- so clean and easy. I just wish I had found this earlier!

Thank you.

3 Likes

First thanks for such a useful app! I have a couple places in the house where I'd love to have had a pair of switches control the lights, and this provides the bridge to make that happen.

Can I request a way to make a Binding conditional? I've encountered two areas where this would be useful:

  • I have two switches which are bound during the daytime, but operate independently (actually, one turns on and one stays off) at night. I currently have a Rule Machine rule that conditions on the Mode.
  • I've been debugging weird behavior in a Scene Transition, and found that disabling the Switch Binding between devices involved in the Transition makes the behavior work properly.

(Though admittedly, the latter case is probably better solved by removing one of the devices from the Scene and letting the Scene treat the bound pair as a single device.)

Hi Joel -
I'm trying to use an RGBGenie zigbee remote to control a leviton zwave dimmer plug. It seemed that your switch bindings app was a good way to do this, but perhaps I'm misunderstanding the intended use case (I have previously tried Device Mirror Plus , which worked but with long delays sometimes). Unfortunately, I'm having the same issue here. Sometimes the leviton devices respond fairly quickly, other times there are delays as long as a minute. Dimming is worse than on/off but neither is consistently rapid.
When I control the dimmer via Hubitat device page the responses are quite fast ; similarly, I can see the button presses on the remotes right away. So the delay seems to be getting from the remote to the dimmer.

Any thoughts? Any parameters to change that might improve this?
Thanks,
Michael

Joel - would you expect this to work with an RGBGenie wireless zigbee remote ? I'm getting inconsistent results in an inconsistent way. I've bound a child device from the remote (dimmer) to a zwave dimmer outlet (leviton). Sometimes it works great, sometimes on/off works but not dim, and sometimes it's completely unresponsive. I can't really make sense of the differences so far.
I wanted to confirm whether a remote of this sort with a driver that assigns each group control to a child device dimmer at least should work.
Also - I was looking for documentation on the settings in the app - what is the reason for setting one of the devices as a master? If you choose a master, but don't limit the communication to one direction - what are you effectively doing?
Thanks,
Michael

So I have an intermittent issue. I have two switches, once is ZWave the other is Zigbee bound to each other. One switch connected to the actual light (ZWave), one which is not physically connected to any light (Zigbee), its only purpose is to control the ZWave switch. When I turn on the Zigbee switch it will turn on the ZWave light and then the light will immediately turn itself back off. I have to then turn off the Zigbee switch and back on at which point the ZWave light will turn on and stay on. I turned on debug logging to see if I can catch what is going on but have yet to have it duplicate since I've turned logging on.

This app should have been one of the built-in apps...
I was using the Mirror app to sync up devices, but Switch Bindings is much easier and cleaner, and doesn't run into infinite loop issues when syncing.

6 Likes