On the device page, I can set a colour temp without a problem.
But if I have an app setting the colour temp, it won't change and I have an error in the logs.
At 8:35 I set the colour temp from the device driver page successfully. At 8:36 a test rule fired off, and the lights would not change.
Is there a way to fix this?
You are using some custom driver for this device. You'll need to update it to match some platform changes that were made a couple years ago or more (or switch to a different driver--there may be one built in--or use only apps that assume the "old" spec).
I'm using the custom RGBGenie driver from Bryan. There is no stock driver that I can find that will operate this device. The only other thing I am doing that might be causing this error is that I use Mirror Me
There was a lot of fan fare in the forums about these RGB Genie products, and this thing wasn't cheap. I would really like to find a way to get this working as intended.
Is it this one? If so, it really should be updated, but to just get rid of this error for the meantime, you can modify line 521, which should be this:
void setColorTemperature(temp) {
to something like this:
void setColorTemperature(temp, level=null, tt=null) {
(or a similar modification in whatever driver you're using--there should be a line that defines the setColorTemperature()
method.)
This will get rid of the error but will not allow the new functionality, being able to pass a level or transition time in as part of the same command (so those options in Rule Machine, etc. won't work -- you'll have to set level as a separate action if needed). The driver should be able to be modified to actually work in this way, too, but I don't have this device and didn't dig into the driver much.
1 Like
I know this has taken a while, but I finally got a chance to put this code in last night, and it looks like it's working! Thank you so much!