Goal, Use a Zooz ZEN30 relay button to act as a manual scene control.
Issue, When I press the Zooz relay button (aka button 1) the scene goes off as it should but comes right back on. Devices not associated with the scene stay off.
The log highlighted with the red arrow seems to be the culprit but I don't know why it is being triggered.
The Zooz relay switch (output) is not connected to anything)
Events are empty. It seems most devices / apps I've checked have no event entries.
Scene app has no "events" control, that I was able to find.
I'm at a loss here, looking at the Zooz relay events it seems the unexpected "on" command is coming from the Zooz relay button, however the logs show differently.
I can't get at the driver so troubleshooting is limited.
Let me rephrase that (I assumed it was an app, as it normally is): what is "A01 Zooz Relay Button Scene Control"? If you click that link, what does it take you to?
Now I see. Are you sure this isn't all happening because your rule turns (some) lights off if they're on, then checks if they (some of the same) are off and turns them on? If the events happen fast enough, that second condition will be true by the time it is evaluated, so what you describe could happen.
Enabling all logging for that rule will help figure this out. Using a "full" conditional action and not a simple condition, plus an ELSE-IF instead of an IF, would ensure that only one of the two sets of actions is executed.
as I already suggest above as well. Need to enable all the rule logging and then see logs.
It's not empty? You show a screenshot of it. It is saying that your rule is what is turning it on. Hence the need for the logs from the rule to see what is going on.
Make sure you also enable all logging for the rule, as @jtp10181 also suggested a while up, to make troubleshooting easier if it doesn't do what you want.
If Accent Lights is on, turn off lots of stuff including Accent Lights
If Accent Lights is off (which it always will be, thanks to the previous line), turn on Accent Lights and Window Lights
The second condition becomes true when the first one executes, because it's turning off the Accent Lights. Replace the second IF with an ELSE IF (or simply an ELSE) and you should be good to go.
I caught that too but I noticed he said it happens when he turns it OFF, and then it comes back on right away, so the opposite order of the rule. So then I thought hmm maybe that's not it, lets see the logs. Still waiting for logs...
The funny thing is, with a physical device, this would probably work -- calling off() sends a command to the device over the mesh, the device responds, and the status gets updated with the new reported state. By the time that happens, the second line will likely have already executed. It's still a race condition, but one you'll probably win most of the time.
But with a Group Activator, the state change happens immediately and queues the commands to the underlying physical devices. So this race condition bites you.