Jump to content

Zen32 on ZMatter


brians

Recommended Posts

Two ways to do this..

1. Basic Association

- Can only turn on/off Z-Wave devices, Insteon devices only would have one scene on command per button so would need two buttons.
- Basic set on/off is sent by an internal state of each button on Zen32 which toggles between on/off. If the light gets toggled directly using AC for example, then the Zen32 does not know this and the state and will show LED incorrectly and will have to press twice to get desired result.

2. Programs

- Requires controller to handle the communication. Not a huge deal since IoX is usually on always.
- I do not notice a significant reduction in performance vs. basic association. ZMatter is much more stable and quicker with Zen32 than with the old Zooz dongle.

After experimenting for a bit, here is what I consider my best version so far to control lights using one button on the Zen32...

If anyone else has any ideas I would be interested.

All that is needed is 2 programs and a variable. Also includes a program to set the initial parameters on Zen32.

Programs can be modified/added to for more devices, doing things with different button presses eg. double tap, triple tap etc.

===================================================================================
Zen32 MultiLight - [ID 00D4][Parent 007E]

Folder Conditions for 'Zen32 MultiLight'

If
   - No Conditions - (To add one, press 'Schedule' or 'Condition')
 
Then
   Allow the programs in this folder to run.
 
Example programs which turn on/off a group of lights using Zen32 Button 1.
Zen71 On-Off Power Switch - ZWave On/Off Switch.
Stairs - Insteon Switchlinc Relay

- Keeps LEDs in sync using IoX!
- Manual lights turned on/off will keep Zen32 Button 1 synced correctly!


Operation:
If any or all lights in group are on, Zen32 button 1 is on. Pressing button on Zen32 will turn them all off.
If all lights in group are off,Zen32 button 1 is off. Pressing button 1 on Zen32 will turn then all on.

Just need to duplicate these two programs and variable for remaining buttons.


-----------------------------------------------------------------------------------
Button1 LED Sync Status - [ID 00CB][Parent 00D4]

If
        'Test / Zen71 On-Off Power Switch' Status is On
     Or 'Downstairs / Stairs' Status is On
 
Then
        Set 'Test / Zen32 Switch' Set Configuration Parameter 7 = 1
        $Zen32_B1_Lights_Status  = 1
 
Else
        Set 'Test / Zen32 Switch' Set Configuration Parameter 7 = 0
        $Zen32_B1_Lights_Status  = 0
 
Set Zen32 Button 1 to reflect status of Zen71 and Stairs.
LED White=Off, Blue=On

Sets variable to keep status of lights group.
Status:
1 = any or all light(s) on
0 = all lights off



-----------------------------------------------------------------------------------
Button1 Toggle Light Group - [ID 00D2][Parent 00D4]

If
        'Test / ZY Zen32 Scene Button 1' is switched On
    And $Zen32_B1_Lights_Status is 0
 
Then
        Set 'Test / Zen71 On-Off Power Switch' On
        Set 'Downstairs / Stairs' On
 
Else
        Set 'Test / Zen71 On-Off Power Switch' Off
        Set 'Downstairs / Stairs' Off
 
Performs the actual toggle.
If all lights are off then turn them all on.
If some of the lights, or all lights are on them turn them all off.



-----------------------------------------------------------------------------------
Zen32 Set Param - [ID 00D3][Parent 00D4][Not Enabled]

If
   - No Conditions - (To add one, press 'Schedule' or 'Condition')
 
Then
        Set 'Test / Zen32 Switch' Set Configuration Parameter 23 = 1
        Set 'Test / Zen32 Switch' Set Configuration Parameter 2 = 3
        Set 'Test / Zen32 Switch' Set Configuration Parameter 3 = 3
        Set 'Test / Zen32 Switch' Set Configuration Parameter 4 = 3
        Set 'Test / Zen32 Switch' Set Configuration Parameter 5 = 3
 
Else
   - No Actions - (To add one, press 'Action')
 
Sets Zen32 parameters.
Only needs to be run once - use program for ease of experimentation.

Parameter 2-5
Values:
0 – LED on when button off, LED off when button on (default)
1 – LED on when button on, LED off when button off
2 – LED always off; 3 – LED always on

Parameter 23:
Values:
0 – LED indicators flash to confirm a setting change (default)
1 – LED indicators don't flash if a setting is changed.

 

  • Like 1
Link to comment
  • 2 weeks later...

I opened a support case with Zooz and this is what I said...

 

Quote

Hi, please make a parameter to toggle/set the internal state of the small buttons 1-4.

FYI I am using UD Polisy/ISY with ZMatter ZWave dongle.

 

The reason is the following using Zen71 as an example.

 

I can use basic association on the Zen32 to use button 1 for example basic set group 4 to control another ZWave device eg. a Zen71 on/off switch. I have tested this and works fine but there is problem...

It seems that each button on Zen32 has its own internal state whether it is on or off, and sends the appropriate on/off basic assoc. command to the switch (eg. Zen71) depending on this state. Therefore the buttons on Zen32 get out of sync if the Zen71 is turned on/off manually, requiring multiple button presses on Zen32 to get desired result and LEDs kept in sync. Following is a more detailed example...

 

Zen32 and Zen71 basic assoc. using group 4 on Zen32 to turn on/off the Zen71. No other parameters on Zen32 set and is stock settings.

 

Zen71 is off

Zen32 button 1 is off (LED ON)

Press Zen32 button 1, its internal state turns ON, turns LED OFF, sends Basic Assoc ON command to Zen71, turns on Zen71.

Press Zen32 button 1 again, its internal state turns OFF, turns LED ON, sends Basic Assoc OFF command to Zen71, turns off Zen71.

Turn on Zen71 locally by pressing its top paddle. Zen32 is not made aware this happened, therefore it still thinks Zen71 is OFF.

Press Zen32 button 1, since its internal state is currently OFF, turns LED OFF, sends Basic Assoc ON command to Zen71... but nothing changes because Zen71 is currently already ON.

To Turn off Zen71 using Zen32 button 1, have to press the Zen32 button 1 a second time and then it is synchronized again.

 

I request at least 4 parameters which will allow the internal state of each button 1-4 to be changed to either ON or OFF, resulting in LEDs also turning on/off appropriately presuming if LED is set default in Zen32. If this was the case, in example above I could write a program that detects the status of Zen71 ON or OFF and then the program would set the button state appropriately on Zen32 via a parameter. I do something similar using Insteon switchlinc keypads to keep those in sync with manual presses of switchlinc relays.

 

Right now I can do something with Zen32 and programs on ISY, not having basic association scene and instead just detecting the scene button 1 on command of Zen32 button 1, changing LED on Zen32 and switching on/off the Zen71 appropriately. The program also detects Zen71 state and keeps LED on Zen32 in sync. However it would be much better to use ZWave basic association for performance reasons turning light on/off would be near instant, and also in case of my primary controller crashing/going offline, the Zen32 will still work to turn Zen71 on/off with only drawback of having to press button twice to keep in sync, but better than not being able to turn on/off at all.

 

Or, instead of parameters you could make all the four buttons proper on/off nodes which accept basic assoc on/off that could be controlled by Zen71 for example.

 

Also please don't advise me to use the LED parameters to turn on/off LEDs, I want to turn on/off the actual button state if possible. If this is not possible on Zen32, then please make sure its successor can :)

Maybe if more of us here request something similar they may consider this.

Thank you.

 

Link to comment
  • 2 weeks later...

I also have a Zen32, and am not sure if I am missing nodes, or I don't understand how you were able to work-around figuring out the states of buttons 1-4.

I can see the buttons under the scene buttons, but i cannot tell anything else or control them , or use in programs.

Only Query, which does not seem to indicate the proper status.

thanks,

Steve

 

Link to comment
1 hour ago, SteveT said:

I also have a Zen32, and am not sure if I am missing nodes, or I don't understand how you were able to work-around figuring out the states of buttons 1-4.

I can see the buttons under the scene buttons, but i cannot tell anything else or control them , or use in programs.

Only Query, which does not seem to indicate the proper status.

thanks,

Steve

 

Don't use scenes, use program method instead.

You are never able to query a state of the small buttons (only big button). Therefore, I don't worry at all what the state of buttons are on Zen32, and instead set the LEDs of the Zen32 buttons to how I want: to states of the lights etc. desired for each button. Look at the programs again above

 

The last (3rd) program I set parameters to keep LEDs always on... the program is not needed and you can do all this manually but I find convenient to have in testing and makes sense hopefully when I look at it months from now.

The first program turns button blue when any light status on, and white when all lights are status off, both using Parameter 7 for button 1 on Zen32 (see comments in that program which sets the parameters), and also sets a variable indicating if lights are on or off.

The 2nd program turns the lights on or off from Zen32 button 1 depending on how that variable is set which makes it a toggle (which is why I put Toggle in the program name). Variable is used to track the light state because every time press a Zen32 button is pressed it sends an On command. I also use variable to track multiple lights being controlled by Zen32 but if were just using one light then can instead just check status of the one light instead of using variable. Note that you have to make these two programs for each button, and a variable, therefore 8 programs and four variables for one Zen32.

I suggest you make a couple programs like above and experiment with them and you should figure it out when you see it working and compare to what I have done or maybe you will find a different way that works. There is really nothing else I can explain further.

 

Edited by brians
  • Thanks 1
Link to comment

@brians is right. The Zen32 is advertised as a scene controller but it's really not. I've even tried using it as a scene controller with Home Assistant and you still have to navigate the lack of scene functionality on the four smaller buttons. It's a 5 button PITA, but once you learn how to deal with the indicators on the smaller buttons it's one of the better options for multi- button controllers available atm.

  • Thanks 1
Link to comment

Oh I got a response from Zooz, they basically told me that zwave scenes using basic association are not that common anymore and the way to do is how I did it in programs, even providing an argument that all zwave devices have to have same security to do basic assoc as a reason not to do this way (who cares, I can handle that). I am sure their engineers could still add the tweaks I suggested pretty easily, unless they are very constricted by memory for new code/routines... or maybe nobody there knows how to fix it anymore eg. original devs gone, maybe part was outsourced or some intern wrote the code years ago... who knows. Just baffles me that they can develop something this far, but not make it function like one would expect.

Edited by brians
  • Like 1
Link to comment

@brians I couldn't agree more. I've gone a couple of rounds with their support pleading for scene support for the Zen32 to no avail. I also had a recent mediocre service experience with them. I had a Zen32 fail. It would no longer join/leave a z-wave network and wouldn't factory reset.

After my first email they wanted more testing which I provided, then the same after the second and third emails, finely they wanted a video of my testing and I said, "No." I further started that I was going to buy a new one from Amazon and then return the bad one in the new ones box and they could deal with Amazon. At which point they sent me a new one, that works perfectly, but I wasted an hour dealing with a very nice person who made me jump through too many hoops and left me feeling reluctant to deal with them again.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...