I am making Scenes with Sengled RGB bulbs and found something I can't explain.
If a Scene sets the bulbs to a color temperature, then it works as expected: I activate the Scene from the Scene page or a dashboard button, and the lights come on.
If the Scene calls for an RGB color, then activating the Scene does nothing unless the bulbs are already on. If I watch the log, the commands are not even sent. If I turn the involved lights on to any setting and then activate the Scene, the commands are sent and the bulbs come on.
Here's the config for one scene with all colors set. It will not activate unless these lights are already on. I have a scene that is just like this but the bulbs are set to color temperature, and I can activate it even if the devices are already off.
Any ideas?
Do you have color prestaging enabled for these bulbs? (You'd have to go to the device page for that bulb, e.g., "Living Room Track A," to figure this out. You will see an option for that on many, though not all, color-capable devices/drivers.) The behavior you're describing sounds a lot like what might happen if you do.
3 Likes
I do have prestaging on. I just turned it off, and... That fixed it. Thanks!
Time to look up what it does; I thought I knew but apparently not!
If you can't find it in the docs, "prestaging" allows you to set either color/color temperature (for color prestaging) or level (for level prestaging) without turning on the bulb. Normally, a "Set Color," "Set Color Temperature," or "Set Level" command will turn a bulb off if it's on. With prestaging, you can run these commands to "stage" the color or level, then the bulb will turn on to those settings with a subsequent "On" command (but not until you explicitly issue one...or, I think, sometimes if you stage the same value that was already staged, but I'm not sure about that part).
Many apps rely on the "standard"/non-prestaging behavior and so assume that these commands will turn on the lights, as Groups and Scenes apparently does. If you don't have a specific reason that you turned this setting on for, I'd consider turning it off (as it is by default).
Wherever I read it the first time, it was someone else's summary, I think. It was not clear to me that prestaging required an additional On command... At the time it sounded like a benefit of better transitions, with no downside. But it makes sense now.
Maybe they can add prestaging support to the core apps. Even if I had to know to turn it on myself for each device in the driver and scene configuration, it would be great to have.
Yeah, I'm not sure what people's use case is for wanting this feature enabled, but I suppose on some bulbs it may (at other, more awkward IMHO expense) eliminate the quick flash of the previous color or CT when turning on. I haven't tested this much myself so can't say what various bulbs do there, but pretty much all I've seen do that without prestaging. This doesn't bother me at all--just something I accept about how they work. 
If you have a use for enabling this setting, you could consider activating the scene another way, like with a virtual button you create, so you can both activate and turn on. Or I've never tested this, but you could probably create a rule triggered by a "push" of the scene activator device that also turns on the bulbs. Or you cab decide the trade-offs aren't worth it...haha.
I'd never heard of it before but I will definitely be using it! I hate when lights come on as their previous colour and brightness and gradually slither into the new setting. If I want bulbs to come on a certain setting I want it like that from the instant they come on 
Me too!. I have a feeling that the problem the OP described is limited to Sengled bulbs and/or the Sengled driver.
The level prestaging option available on the driver can cause this. I have mostly Hue and Sylvania color bulbs, but the few Sengled bulbs I have, I found to be more reliable with either level prestaging set to "off" (I have no problems with keeping color prestaging on), or just using the generic zigbee rgbw driver. I don't know that scenes send an "on" command if a level command is sent since devices usually come on with a level command. I use scenes in several of my Motion Lighting apps and have never had this issue.
I know this is true for level prestaging. If level prestaging is "on", sending a level command will not turn the light on, unless it is already at that level, so 2 setlevel commands of the same level will turn it on.
1 Like