Color Temperature error with Inovelli LZW42 Bulbs and HubConnect

This is a problem with the HubConnect RGBW Bulb driver. It will need to be updated to match the "new" (as of Hubitat firmware 2.2.6) specification for the setColorTemperature() command, which can now accept up to three parameters instead of just the required one (color temperature, level, and duration; not just color temperature).

I'm not sure it's "officially" abandoned, but we know the original app developer no longer uses Hubitat as his primary hub. Unlike the app, the drivers are under an open license, but my suspicion is that this is still unlikely to happen. If you wanted to fix it yourself, there appears to be a set of lines in the RGBW driver now that looks like this (starting at line 173 in the code I'm looking at in the current v2 repo, but this may be different at a different point in time):

def setColorTemperature(value)
{
   // The server will update status
   parent.sendDeviceEvent(device.deviceNetworkId, "setColorTemperature", [value])
}

If you change it to something like this instead, it should work:

def setColorTemperature(ct, level=null, duration=null) {
   if (level == null && duration == null) {
    // just in case any pre-2.2.6 drivers don't like the "extra" parameters and they
    // aren't specified--more likely to be compatible:
    parent.sendDeviceEvent(device.deviceNetworkId, "setColorTemperature", [ct])
  }
  else {
    parent.sendDeviceEvent(device.deviceNetworkId, "setColorTemperature", [ct, level, duration])
  }
}
3 Likes