Control4 SW2-ZX With ZHA

Hello everyone,

I am going away from Control4 since the controller died a few weeks ago. I’m trying to move everything to HA.

Many of our lights were using the Lutron Caseta with their Smart Hubs, and these were a snap to integrate to HA. But I have a few switches that are Control4 C4-SW2-ZX that I’m trying to integrate. I bought recently the SONOFF Zigbee dongle and it was discovered by HA in no time.

I’m now trying to see how I can make the Control4 switches be discovered by ZHA and so far with no success. I’m asking here if anyone found a way to add them to a standard Zigbee controller instead of the C4 controller.

I found this site to help me start rot reset the switches or have them tell me a big about them too.

https://technet.genesis-technologies.ch/control4-zigbee-the-definitive-guide/

Thank you for your help

I believe Control4 use a custom version of Zigbee - if there are only a few switches you can probably save yourself a lot of grief by replacing them. :grin:

I’d start by pairing them to ZHA, turning on debug logging and seeing if you see anything in the logs. If you do, then you could likely build a quirk. But as mentioned above, buying new will be way easier.

So far I was not able to pair any of these switches with ZHA. That’s the reason I’m asking if anyone had more success than I did.

There are a few threads about this - don’t think anyone has managed to do it.

Zigbee Home Automation is built on top of Zigbee Pro. It’s likely that the control 4 switches are Zigbee Pro, but not ZHA and are using a proprietary protocol instead. I had some devices that were similar, based on Zigbee Pro but not ZHA and was able to get them to work, but the amount of modifications I had to make ended up being unsupportable.

If like me, you don’t like being told to just replace them, next steps would be to monitor the logs and see if you see anything in the logs at all during the pair attempt. Quick google search says that control 4 is based on Zigbee Pro, so the question is what do you need to do to get them to join. You could sniff the traffic when they join to the control 4 coordinator with Wireshark and see what you see. They could require a specific network key or perhaps will only join to a specific coordinator. Depending on where the failure is, you may need to modify the coordinator firmware itself.

After many tries, I am removing them one by one. To keep automation possibility, I am installing standard switches with a SONOFF ZBMINIR2 and so far, I can accomplish many things I want to do. With the SONOFF it keeps the replacement at a low investment when I do not require complex settings.

Thank you all for your comments

I don’t see any information of anyone successfully getting Control4 light switches to be controlled through Zigbee from Home Assistant.

I have had some success. Based on the SmartThings drivers written by Patrick Stuart and Ben Schattinger, I managed to get a zigbee quirk which controls a C4-APD120 dimmer switch, and can turn it on and off and adjust the dimmer level. Am I the only one, or am I just not finding the right thread?

I decided to remove everything Control4 and replace them with zig bee or other similar standard devices. I still have a few to remove but I totally abandoned trying to add them to home assistant.

The only thing Control4 I’m keeping is an amplifier that some smart peoples on this forum were able to build an intégration for.

The biggest struggle I had with pairing is that the Control4 devices are annoying persistent in preferring to talk to other Control4 devices. This adds a hop back to the Home Assistant coordinator, and it appears that the insecure Transport Key response fails to pass through that extra hop. This likely is an extra security layer to force the coordinator and device to be close together at the time of an ‘insecure join’. There probably is a setting in Home Assistant to allow the insecure Transport Key response to jump over multiple hops, but I haven’t found it. I can work around it by removing power from all Control4 devices except the one I am attempting to add, but that is a pain.

So far I have the the APD120 (dimmer) and SW120 (switch) turning on and off, and setting dim level for the dimmer. There is some magic I am missing to get the devices to report when the physical button is pressed. The device is supposed to send a request for attributes 0x0008 (access point node id), 0x0009 (access point long id, aka IEEE address), and 0x000A (access point cost). The HA should then respond with its addresses. But I don’t see that message sent.

I think that is the missing piece as to why the physical button presses aren’t being reported, but I can’t figure out how to trigger the Control4 to send that request. Without the buttons being reported, the scene controller is useless, and the light switches are useable, but get out of sync often. There is a polling loop to bring the back into sync, but that is quite slow.

I did get the LOZ-5S1-W dual switched outlet working too.

I also figured out the magic to get the devices to send button click messages to Home Assistant. Needed to send a Report Attributes to the device profile 0xC25D, endpoint 2, cluster 0x0001, with attribute 8 = coordinator short address (0x0000), attribute 9 = coordinator ieee address, attribute 0x0a = 0x02, and then send an MTORR.

So now I have the 7-button scene controllers (C4-KC120277) working too. Those were a real pain because Control4 doesn’t report model numbers using the Zigbee standard, and the quirk signatures for both C4-KC120277 and C4-APD120 are identical. Had to do some magic to capture and cache the model number from the devices’ broadcast Report Attributes messages which do contain the model number.

I seem to just be talking to myself, but if there is anyone interested, I’ve uploaded my current state of the quirks to zha-device-handlers/zhaquirks/control4 at control4 · pvanbaren/zha-device-handlers · GitHub

I have the following devices working in Home Assistant:

  • C4-APD120 (dimmer)
  • C4-4SF120 (fan)
  • C4-SW120277 (switch)
  • loz-5s1-w (dual switched outlet)
  • C4-KC120277 (scene controller)
  • C4-Z2IO-ZP (garage door relay module)