Hello everyone,
I have a setup in which my lights are Zigbee controlled, yet behind my light switches I run Aeotec ZW132.
I’d like to have the power to my light on all the time (I think the configuration calls this the “load”), yet I want to capture the external switch signals to send to the appropriate zigbee lights.
I managed to get this setup working “reasonably” by configuring parameter 122/123 to “Control other nodes” and putting my controller in Group3/Group4 respectively. I also set up 81/82 to “Send basic set CC”.
This setup stops the nano from ever removing power on the load itself and updates the switch state on the channel when the external switch is pressed.
However, at random times my lights come on by themselves. I think I have figured it out and I’m wondering if I am right and if yes, if something can be done about it.
Observation 1: The Nano switch is sending the load on/off (not the external switch press on/off) via Hail to the channel via command class COMMAND_CLASS_SWITCH_BINARY. I assume that is the setting in/for Group 1.
Observation 2: When the external switch is operated (like physically pressed), the Nano seems to send a COMMAND_CLASS_BASIC event to the controller (That happens if the controller is in Group 3/4 respectively). This is irrespective of the load change.
The problem seems to arise if the COMMAND_CLASS_BASIC has switched the channel “off” (even though the load is still ON). In this case, my Zigbees are off because they follow that channel “Switch X”. If for some reason (e.g. polling), the Nano hails the load statuses via COMMAND_CLASS_SWITCH_BINARY, the lights go on even though the switch was not operated.
I think the problem is that there is only one channel per switch which combines the load status as well as the physical pressing of the button. And that leads to my problem. I looked at the XML for the open hab configuration and it states
<channel id="switch_binary2" typeId="switch_binary">
<label>Switch 2</label>
<properties>
<property name="binding:*:OnOffType">COMMAND_CLASS_SWITCH_BINARY:2,COMMAND_CLASS_BASIC:2</property>
</properties>
</channel>
Would I be right in my assumption if one was to create a configuration file in which COMMAND_CLASS_SWITCH_BINARY and COMMAND_CLASS_BASIC are two different channels, I could track both things in individual items and avoid this random switching of my lights? Or am I reading this upside down and the COMMAND_CLASS_BASIC here allows the hab to send information to the switch? In my testings I thought I saw this to be SWITCH_BINARY_SET but I could be wrong?
How would I go about building something like this? I found the howto on updating the database but I haven’t really found something that tells me how I could test such a config change locally before making an edit request. Appologies if I didn’t look closely enough, maybe someone could point me in the right direction?
Cheers,
Christoph