[RELEASE] Switch Bindings 2.0

Hi all, I'm new to the Hubitat community and HA in general. I'm working on getting two switches bound. I have two Kasa HS-200 switches on separate circuits on opposite sides of a room I would like to functionally make a 3-way switch so when I turn one switch on it turns the other switch on. I've installed the Kasa Integration. I tried set this up through Simple Automation, Rule Machine, and then Switch Bindings, but when I turn one switch on or off the other one does not change. Any help would be appreciated.

Have you tried the built-in Mirror Me app? I ultimately settled on this for my switch binding needs..

Edit: I don't think this will work for you, though. This app implements a master-slave configuration, and you want a 3-way

Ok, first things first: pick one binding app and get rid of the others. You don't want multiple apps trying to do the same thing. They'll interfere with each other. I'll assume you stick with Switch Bindings, and ditch the others.

Next: Make sure that your switches are sending physical events back to the hub. On the hub, open the device page for each of your switches. Verify 2 things for each:

  • That if you push the on and off commands on the device page, the device responds.
  • That if you physically turn each switch on and off, that change is reflected on the device page.

Finally: Create a Switch Bindings instance that just includes those 2 switches. Leave all other settings at their defaults.

3 Likes

Hi, thanks for the advice, that's really helpful. I had created the rules in each of the different apps and deleted them if they didn't work so they weren't running concurrently, but each had the same problem which you've helped to clarify. I could get both switches to turn on and off together if I bind them then go to devices and turn one or the other device on or off through hubitat.

Using your advice, I checked the device page when I use the physical wall and I think that's where the issue is. When I turn the device on at the wall switch, the current state for the device is still listed as off on hubitat, which must be why it's not triggering the other switch to turn on.

I opened the kasa app and when I turn the wall switch off, the light shows off within a few seconds, but does not reflect in hubitat. If I click the refresh button in hubitat it will correctly update the current state of the switch, though this doesn't trigger the other light to follow suit. I wonder if this is an issue where the switch sends something to the kasa app only and is not picked up by hubitat. Thanks.

Any ideas on how to get Kasa light switches to update hubitat that their state has changed on/off? I think this is the issue with the device not triggering the switch binding as hubitat is not detecting this change.

I don’t have those. Perhaps start a new thread and ask other owners?

Hi!
I recently installed a few sets of cooper/eaton aspire master and slave S2 dimmers (RF9640 / RF9642). I'm quickly realizing that these things are really painful to set up associations.

I'm waiting for my new hubitat hub to arrive in the mail, currently on smart things.

Once I get this set up, what sort of delay do you think I might expect between hitting power on a slave, and the light turning on? Through the association it is nearly instantaneous, but also through the association the dimmers periodically freak out and stop working entirely.

The delay I see is barely perceptible. If you're still on Smartthings you will be pleasantly surprised by the speed of EVERYTHING!

2 Likes

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”.