Zooz Zen32 Scene Controller

I use this rule for setting LED colors and brightness on the ZEN32 based on the status of a virtual switch.
You could add the virtual switch to your scene and use it to track the on/off status which in turn triggers this rule to change LED.

Interesting approach. The Pause in the rule and waiting for the off state seems like it would eat up resources. I simply run the rule on change of scene state.

What I would prefer to have is simply a driver that changes the led color without button 5 flashing to acknowledge the change.

Out of the box, the Zen32 does exactly what I want. It seems that it is turning on or off a zwave scene. And the led changes to on or off based on that.
I think the hubitat driver is the actual issue. It likely needs child devices (perhaps a rgb light with only the available colors as a selection?). This would be tied to the zwave scene from the zen32 for each button/led.
Then, you could run a rule based on the rgb bulb state (on or off) and even change its state from other. Rules.
I’m no where near qualified to make such a driver, perhaps someone reading this is?

Yeah the pause lines reference another rule in a complex and isn’t required for the core setLED commands.
I think the main LED flashing and staying green is a function of the device firmware, not necessarily a driver function. Could be wrong though. I too would like to see that particular behavior eliminated; I want full control, please and thank you :slight_smile:

I believe I have mentioned this before, but the flashing of the button 5 LED is part of the firmware, any time you change any of the parameters. There is no other way to manually change the LED color or state without changing the parameter.

The only big IF I mentioned would be if the parameter is set to value 1, and the endpoint for the button would change the LED status based on a command telling it to turn on/off. This only would get the on/off state of the LED to change, not the color.

What is the actual issue?

  • Cant make the LEDs do what you want?
  • Its too complicated to make them do what you want?
  • LED flashes when you change the color or state of the LED manually?

@jtp10181, the real issue is that it’s a bit overwhelming to make the led’s change. And even tying the buttons to a rule (I can do it, and make it work).

It’s seems that out of the box, the buttons turn the led on and off with each press. I want that. But, as soon as I activate a rule, the led stays on or off.

As I understand, out of the box, the buttons toggle a zwave central scene. And the led alternates on or off based on the central scene. I simply want that, and to tie the zwave central scene, to a simple on or off button, perhaps a bulb device, that you can set the color.

I want simple. I figure, someone in the community is skilled enough to make a driver that can do this? I’m submitting the challenge, to those willing to take it on.

Ok here is where we are at. I see why you are having the issues, both the stock and custom drivers seem to really only allow the Buttons 1-4 LEDs to be set to always on or always off via the parameters. Which actually makes sense because the buttons are JUST buttons, there is no on/off switch state associated with them to actually tie the LED status to. When the LED is set to toggle with the button presses it is really just toggling back and forth, it is not indicative of an on/off state. The button presses just trigger a button event and thats it, again no on/off just pushed.

One could either make child devices or just custom states to track a virtual on/off of the button which in theory would tie to the LED state. BUT there is no way to toggle the LED state manually without then setting the always on/always off parameter so thats where it could get out of sync. So... it could probably be done in the driver but it would be an awful lot of parameter changes to set the LED to on/off and button 5 would be flashing like crazy! I believe this could be done already using rules but as you said it could be a little complicated.

@agnes.zooz Now here is the fun part. If Zooz could implement some additional IndicatorIDs and Properties in the INDICATOR command class then I think we would be in business! We could have a driver do all sorts of nifty things to the LED. The only thing I do not see supported in the command class is the ability to change the color of the LED which is sort of a bummer. Currently it only supports ID 0x50 with Properties 3,4,5. With just that I am able to make the Button 5 LED do all sorts of flashing tricks but always in White for some reason.

Here is what I propose.

  • Add support for Indicator IDs 0x43 - 0x47 so we can control all the LEDs from commands instead of parameters. (see screenshot from SiLabs docs).
  • For those IDs, support Properties 0x01 - 0x05 (see screenshot). Property 2 would allow to set a fixed on/off state.
  • New parameter to disable the LED from flashing when any of the LED related parameters are changed, just make the change without flashing anything (even just this alone would partially work, just cannot make the LEDs flash like you can with the indicator command class).

EDIT: If anyone is interested here is the basics of the command to make the Button 5 LED do tricks. This should also work on any of the ZEN7x switches with indicators. In this example it will flash on/off every 0.2 seconds for 30 repetitions.

zwaveSecureEncap(zwave.indicatorV3.indicatorSet(value:0xFF, indicatorCount:3, indicatorValues:[
            [indicatorId:80, propertyId:3, value:2], //This property is used to set the duration in tenth of seconds of an On/Off period.
            [indicatorId:80, propertyId:4, value:30], //This property is used to set the number of On/Off periods to run
            [indicatorId:80, propertyId:5, value:0] //This property is used to set the length of the On time during an On/Off period. It allows asymetic On/Off periods.
         ]))
3 Likes

I love the thought you have put into this @jtp10181! I really hope this can help simplify the setup and usage of the Zen32. Hopefully @agnes.zooz can take your suggestions and make an implementation. I will be highly enthusiastic about trying it out. I suppose someone will need to tweak a driver for this as well.
I really love the Zen32. I’ve already installed 2. I want (and plan on) more, but I want to see a simpler setup, that’s been the most frustrating part with them.

Simple on and off of the led when the connected scene or whatever is turned on or off. Just like a regular switch button. Where you can turn led on when Connected scene/device is on or led on when connected scene/device is off.

1 Like

These are great ideas. I've been watching this thread intently. If Zooz implements your ideas, I would be very excited to buy some of these.

1 Like

I'll send you a message so we can make sure it's implemented how you outlined so we can start working on this!

3 Likes

image

My inner child couldn’t resist.

1 Like

Where has this device been all of my life? This thing is amazing and exactly what I want in many different places.

The green flash on the main button when changing the led states is pretty annoying though.

@agnes.zooz Any thoughts on releasing a firmware update with just one additional parameter to disable that flash on configuration changes? It seems like a lot of people in this thread would be interested in that.

Could someone spell out the syntax for setLED clearly?
I'm in RuleMachine, setting custom command, choosing "setLED", and then what?
Zooz documentation says: " You will now see the additional setting display in the device view in Hubitat where you can customize the sensor." I don't see any of that. I have PARAMETER TYPE: string, number, decimal. I tried STRING and entering 1, 'blue', 100 - that didn't work.

What is the correct syntax for entering the three fields required to control the LEDs?

They are 3 separate parameters. The UI for custom actions with multiple parameters is a little confusing. The first time PARAMETER TYPE pops up, do NUMBER with a value of 1. Then you need to click "Add another parameter" and do STRING with 'blue'. Then "Add another parameter" again and do NUMBER with 100.

1 Like

got it working, thank you

Do you mean you wouldn't like the LED to confirm that an advanced setting was successfully changed but you would still like to keep all other LED notifications?

I can't speak for them but can say that that is what I would like. :slight_smile: It makes the LEDs more practical to use as status indicators without getting distracting any time they're changed. (I don't mind if they still flash to confirm the changing of parameters not related to this usage, I suppose.)

1 Like

I don't really know what the other LED notifications are. It's only the one on advanced settings change that is really distracting.

I wrote up a huge request for this before and it looks like we have a couple emails back and forth on June 3rd but then the trail went cold and I did not hear anything back.

See this post above: Zooz Zen32 Scene Controller - #111 by jtp10181

2 Likes

It looks like your request for an Indicator Command Class was implemented. What does this mean for us trying to control the LEDs in a clean manner? @bertabcd1234 Did you update your driver to account for this?

@jtp10181 submitted a patch a while back that I think might do that, but I haven't been able to update the firmware on mine yet to test for sure (the C-7 updater isn't working for me, so I'm going to try the USB stick route, but that will take more effort/time). I'd like to test this before committing the changes myself, but you can try it it from the link above in the meantime if you want.

Also, when I asked Zooz for documentation on what this added, they just referred me to the regular "advanced" parameter manual, which doesn't explain anything about how they're using the Indicator command class -- but I think this might be more standardized than I know (I've only seen v1 in real use before and I don't think it can handle things like this on its own; guessing newer versions can).