Proper Three-Way switch setup using Associations

Hi All,

Just sent this to Hubitat support, but thought I'd post here. I can't imagine I'm the only one with this frustrating issue.

I’ve scoured the Community Forums, and while there is lots of talk about this, there has not been a solution identified.

My issue is simple – I have 10 three-way (and even four-way) set ups for a number of light switches or dimmers throughout the house. These were set up using regular two-way dimmers (Linear WD500 dimmers in most cases) at the load, and secondary switches/dimmers without traveller wires and not carrying a load, at the satellite (three-way) location (the Linear satellite switches designed for the WD500 in most cases).

I have migrated from Smartthings Classic App (V1 hub) to Smartthings new app and now to HE.

When I set them up on Smartthings originally with the Classic App, I was able to use the fantastic Z-Wave Tweaker app to easily set up Type 2 Associations between the load-carrying switch and the satellite switch. It worked absolutely perfectly for years, with zero delay on operation of any of the satellites. Z-Wave tweaker ceased to work with the new App (and the new app is a big reason I decided to get rid of Smartthings – it’s awful!), but the associations remained solid even after I migrated to the new app. When I migrated to HE, all my assocaitions were lost when I excluded the switches from ST and reincluded the switches on the Hubitat hub.

Now that I have switched everything over, I have lost this ability. People have suggested a few options, but none of them work seamlessly.

The suggestions I have read include:

  1. Use Rule Machine to mimic associations. This is very clumsy and requires (as far as I can figure out) several rules, and does not reset the satellite switch to its “on” or “off” position, no matter what I try. Also, with ten of these it would be an unwieldly set of rules.
  2. Use some custom apps, one being “mirror”. These don’t seem to work for me at all.
  3. Use Inovelli’s virtual three-way app. This doesn’t work for me either, as they are not Inovelli switches, and I have not found any generic version of this.
  4. Use an Aeotec Minimote to create the associations. I have done this before, but the problem with that is that it creates a delay between the satellite and the load switch. It’s particularly problematic for dimming.

My question is – does anybody know why Z-Wave tweaker can't be ported to HE? Has anybody found an elegant associations tool that will work with generic Z-wave switches like Tweaker did? Like I said, the old Tweaker app was so easy and straightforward, and simply worked! It's frustrating that, five years on, I seem to not be able to do things I could do with the first generation Z-Wave solutions.

Thanks in advance.


1 Like

@mike.maxwell wrote a z-wave parameter tool, although I’m not sure it can set direct device associations.

Also I believe he has stated in other threads that there are major disadvantages to controlling lights with direct associations this way. Perhaps he can elaborate?

1 Like

Thanks. I'll try it out. I don't know what advantages there could be, as they worked absolutely perfectly for me for years, using Z-Wave Tweaker. They even reported the correct condition on the physical switch (light on or off as appropriate).

I look forward to hearing from @mike.maxwell if he see this.

That tool is a great tool but doesn't allow setting of associations, only reporting of them. Maybe this is a feature that could be added to the tool? @mike.maxwell

There is also a tool from Inovelli. I don't think its specific to their devices though, I took a quick look at the code and didn't see anything that would stop it from working on other devices. I could be wrong but doesn't hurt to try. You can give that a try.

Ya. Avoid all apps for this use. I use associations around my house whenever I can. The response is so much faster.

I agree @gavincampbell, but how do you do the associations? I can't find any way to add the associations. Like I saide, ZWave Tweaker was perfect for this, but I haven't found any way to do this with HE. What's the secret? I actually have some screwed up associations now, I believe (from my Minimote "associate" process), and I want to get rid of those - same issue: I don't know how to change associations in HE.

Check the link I posted tot he inovelli tool. See if that works for you?

I personally write all my own drivers and I put association options in all of them. This doesn't help your case but hopefully the inovelli tool helps. Thats the only other way I can think of doing it.

@gavincampbell, The Inovelli tool didn't work for me. I think the problem is that the driver doesn't know what to do with the association, unless it has association options built into it. This means some required tweaking of the driver unless you're using an Inovelli driver, but I don't know what to add. Is there specific "association option" code that you could provide that I could add to my specific drivers to get the Inovelli tool to speak to it. Thanks for your help. I'm really surprised this isn't a bigger issue for people.

These are the threads I was thinking about:

I believe the second thread suggests your experience on ST won’t be the same with HE :confused:.

@ericm, I have a number of Inovelli switches, but also a number of older Linear switches for which the Z-Wave Tweaker worked great with ST Classic. I'm trying to get the association working for those as well, in HE.

You mention: "The tool requires special code to be present in the driver so it will only work with Inovelli devices. Anyone is free to add the code to other drivers though if they would like", but you don't refer to the code that needs to be added. Can you share the specific added code so I can add it to my other drivers?

@ericm, I came across this driver you wrote which is a "generic zwave association driver": Hubitat/generic-zwave-association-handler.groovy at master · erocm123/Hubitat · GitHub

Anything I could do with this that would solve my problem?

1 Like

I really don't think people take advantage of associations. Usually its done via apps and they are happy but associations are a next level. I really didnt think about it being something kind of 'missing' on the platform because I did it with my own drivers but now I see.

Hopefully @ericm can help out as it seems like there is a need for this.

1 Like

I guess it's because I wired the house without traveler wires that I really need it. People definitely use associations though - Inovelli even developed a tool to help with it. Oh well. I'll work around it.

Yes SOME people use it, but I think the point is that these days very few people use direct association anymore.

That said there are ways to do it if you really need to get it done.

1 Like

I wrote a brief explanation of it here:

This thread is for SmartThings, but the commands should be the same.


@ericm Thank you!

1 Like

I just received inovelli red series switches and dimmers. I have exactly this same scenario with 3-way satellites with 2 inovelli switches or dimmers on both legs of the 3-way. One is wired to the load and the other is not. I desperately need the associations for the wife factor. I have tried the inovelli zwave association tool and it does not work on even the inovelli switches. It's very frustrating.

I had associations working with Eaton switches on Vera and they were great. I made the assumption that the Inovelli assocation tool would work for Inovelli switches but they don't.

I really believe this is a big deficit for Hubitat that it doesn't seem to support associations. Not having lights react like people expect them too becomes a showstopper.

Anyone have any solutions?

Hubitat chose not to make a way to setup associations - for a couple reasons (mainly support related I believe, not technical).

The good thing is that the hub actually has nothing to do with Associations anyway other than initial setup. In this context associations create communications directly between devices, not to the hub (although the hub is always in the lifeline association group). So after initial association setup, there is no "hub support" required.

That said, I have no idea why the inovelli association tool isn't working for you. It has worked for others. :man_shrugging:

I understand that associations are directly between the devices. That's what I'm having trouble with getting set up with the Inovelli app that is on the Hubitat.

Anyone else have any ideas?

Would be helpful if you specified what issue you are having exactly. Problems loading the app on the hub? Click on app code in habitat and paste in the code and hit save. Then go to apps and in the upper right select add user apps. For drivers just replace apps with drivers.

The issue I, and I believe @rkmiller are having, is trying to associate a remote Z-Wave switch that is not load-carrying with the master, load carrying switch, to create a virtual 3-way setup. As I said in my original post, I have 10 of these in my house (old Linear Dimmers with dumb Linear satellite switches which do not carry a load). There used to be an app called Z-Wave Tweaker for Smartthings, which among many other things, allowed you to very easily associate whatever switches or dimmer you want with other switches, to create a virtual 3-way (or group, or mirror, if that's what you want) without running a rule. Also, this method (using the hub-based app for associations) made sure the status lights of the master and remote remained in sync. It was super simple to use and worked great. I can created Associations using my Aeon Minimote but it doesn't work exactly the same way. Using the minimote for associations, there is always a significant lag from the satellite to the master, and the status lights don't stay in sync.

I was chatting with Bobby at Hubitat and he said he loves the idea of developing something like this within Hubitat, and will take it to the developers. He says it's not on the priority list right now, but will get it on the "request" list. I suggest that if you are also looking for this hub-based association tool (based on Tweaker, or even porting Tweaker to work with Hubitat), you reach out to and ask. The more of us who request the same thing, the more likely Hubitat will listen.