“Activate” button in app works, but Activator Device does not

I’ve been migrating my busted scenes to Room Lighting, and I’ve found that in order to get all devices to change states, levels, and colors, I need to enable both the “activate even if already partially activated” option and “command devices on/off regardless of reported state”, and then check the “force” checkbox for every device in the app.

From there, using the “activate” button within the app performs the desired operation for each app. However, I’ve discovered that none of the activator devices function: the only thing that happens is devices that are in different on/off states between room scenes will change, but no level, CT, or color changes occur when the activator device is turned on. The logs show no apparent attempt to do this, either.

Am I doing this wrong?

2 Likes

Screenshots of the RL App configuration and logs for the same would be helpful in understanding what you have configured and what is happening (or not).

Sure. Here is one of the app configurations (it says it's active, but it's not, not even close (I just manually activated a different RL app)):

Clicking "activate" above will activate everything per that configuration. However, going to the activator device, which shows the following state:

image

produces the following log output when "On" is pressed:

That was a live view of "all" logs. A couple devices turned off, but nothing else happened.

If I activate it from the button inside the app, rather than the activator device, activation runs as expected:

Try turning off Zigbee Group messaging for this. You will find this under Additional Options on the Activate Options page.

2 Likes

You, sir, are a magician. That's done it! I've done that across all RL child apps, and the activator device now behaves appropriately for them all.

Your logs make me suspect there is a bug with setting up the Zigbee Group messaging for an instance like yours, where some lights are being turned off, and others on. I will look into that.

4 Likes

That might explain one of the weird behaviors I encountered when attempting to solution my own workaround. I had created a virtual button and set that as an activator device, trying both the activate and the toggle types. Whenever I would then send the virtual button a press, some of the lights would come on…and then go right back off again.

I felt a little like Captain Janeway trying to bring up Engineering in VOY: S5E1 “Night”. Absent some subspace dampening field, maybe the Zigbee groups were stepping on each other.

In any case, even with group messaging disabled and my RL configuration spamming the network with commands to every device every time, the recent improvements to messaging has the Room Lighting scenes activating with all of the butter and none of the popcorn: lightning fast and smooth as silk. I’m thrilled with this app and will be migrating the rest of my legacy scenes over ASAP!

Thank you!

1 Like

When the next release comes out, you should test this again without disabling the Zigbee Group Messaging.

2 Likes

Looking back at your posts above, it is not at all clear what the problem was. Your logs are completely confusing because they show more than one app. It's not possible from those to tell what was actually going on. Having looked into the RL app about Zigbee groups, that does not appear to be the problem, and I have no idea now why turning Zigbee Group Messaging (ZGM) off fixed this for you. I get the impression that you have groups of lights in RL apps that overlap each other, and possibly means of activation that overlap as well.

In the logs you showed there are 3 apps, one of which turned on the lights it should have using ZGM. It is not clear what the other apps are doing, or why. Both of them logged Off: null, which is very suspicious. It could be useful to get to the bottom of this issue, but to do so you would have to make changes to these apps, and post more comprehensive information about what happens.

I’d be happy to do some more data collection here when I’m home tonight, if you’d like. Anything in particular that would be beneficial to you?

Re: overlap: most of my RL apps do have overlap with devices in the other RL apps, since they were previously scenes. However they’re all only set to be activated by the activator device and no other means as of now.

Re: null in the log: that stood out to me too. If my memory is correct, clicking on it took me to the device page for my Living Room Light, which is a Groups app group of two zigbee bulbs, in a single fixture (the living room light) - group messaging is turned on for this via the Group app.

The Living Room Light app/zigbee group is included in the Room Light scene. Perhaps a nested grouping issue?

Both app 75 and app 104 are commanding off in response to this instance of RL being activated. Is that to be expected? It would be more useful to only show the logs from this RL instance. It appears that some of your devices are not responding to commands, but super hard to tell what's going on. The problem needs to be broken down to isolate what is and what is not working as expected. Debug logging in the RL app will show responses from the devices. Also, it's not clear why you have Force enabled, and what impact (if any) that has. Please remove that option. Try to isolate it this way: RL will show when it commands a device. Debug logging will show when devices respond. See if you can determine what is not responding as expected.

Data dump incoming!

I built you a brand new RL app from another one of my scenes and, besides re-capturing it to get the initial states correct, have left it completely as default:

My live log view is totally empty as of this moment. I have another scene active. To successfully activate this RL app from present state, "Bedroom Light" (app 104) and "Living Room Light" (app 75) (both zigbee groups of 2 bulbs in a fixture, via a Group 2.1 app) will need to turn on. Accent Light, Bedside Lamp, Desk Lamp, Edison Lamp, Lava Lamp, Nightstand, and Tesla Coil will need to turn on. Bias Light, Cabinets, Backsplash, Nightstand, and Island should change to a different RGBW setting (but not the same setting; they all go to various different colors and levels).

Here are all log events from pushing the activator device on for Relaxing Illumination:

All devices that were supposed to change power state did so successfully. However, no devices that were supposed to change color did so (this was the reason I had "Force" on in my other RL apps).

I then restore my environment to the state it was in previously, and enable "Activate even if already partially Activated" and no other options for Relaxing Illumination, then re-run the activator device. The apparent result is the same; here's the log from that:

Now, I'll remove the "Activate even if already partially Activated", and add in "Command devices on/off irrespective of reported state (Force)," then check each device's box for Force. Re-run activator device. No RGBW changes, and logs are a little shorter:

Now, I'll remove "Command devices on/off irrespective of reported state (Force)" and add in "Don't use Zigbee Group Commands" -- the fix that worked last night. Re-run activator device. Most devices are now in the desired state.

Noticed after that run that Backsplash and Bias light were captured as CT instead of RGBW, whoops. Other than that, looks like we're executing successfully without Force enabled in the options (NB: For the above run, I disabled it from Other Activation Options, but I did not un-check each box first. Let's do that to be 100%).

Here is the now fully-refined RL app configuration:

Let's run it with the activator.

Success! The Force and Activate if Partial Activated options have proven to be unnecessary here, but we do need to disable the Zigbee Group Messaging to get our decorative changes to happen.

Zigbee Group Messaging responds to the command given the activator device. In your case, that command is on. Consequently, it will issue on commands to the devices, not setColor commands. So yes, to get colors to happen from an on command to the Activator, Zigbee Group Messaging has to be turned off. The whole intent of Zigbee Group Messaging is to blast a single command to every device in the group.

1 Like

Makes perfect sense! Is the way group messaging is leveraged by default in the RL app a design to economize traffic on the mesh? The activator device seems like it would only be able to accomplish an on/off toggle. Could this be changed to act as a trigger, rather than a pass-thru command, and modify the RL grouping logic to create groups based on all properties of a device sharing the same activation state? This would still leverage groups for economy where possible, but send individual commands to devices that have unique activation properties.

Or, perhaps less of a rewrite to the app, if a device is added to RL with an RGBW activation state, just automatically enable the option to disable group messaging.

In any case, brainstorming ideas on the forum is definitely easier than changing the app, so please forgive my thinking out loud here. I am glad we found the reason my scenes were being ornery, and really appreciate the help!

You're right, It should not be creating Zigbee Group Messaging setup when imported from a Scene. ZGM is only for Groups, not Scenes.

2 Likes

I did wind up turning Force back on for Bedroom Light and Living Room Light, as I have “Show group state in group device” for those Group apps off. So, if the group activation/setting misfires, the group app doesn’t report it, and the RL app won’t know it’s not aligned to the actual state.

In other words, I think I’m now using Force as a scalpel for the intended use case, instead of a megaphone to scream at the mesh.

Download the Hubitat app