RGBW LED controller (Zigbee2MQTT) not detected by diyHue

Hello,

(Sorry if this is in the wrong category!)

My Zigbee network comprises a CC2530 coordinater plugged into a mini PC running Zigbee2MQTT in a Docker container. I have just discovered the diyHue project (also running in a Docker container) and it seems to be working nicely with my IKEA lights and Zigbee2MQTT.

I am now trying to set up an RGBW controller (Gledopto GL-C-007, 2ID version) but it’s not showing up in diyHue.

I think the reason for this is the discovery topic found on line 28 of BridgeEmulator/protocols/mqtt.py:

autodiscoveryTopic = discoveryPrefix + "/light/+/light/config" # + in topic is wildcard

One of my IKEA lights, for example, has the following topic:

homeassistant/light/0x90fd9ffffe8716ec/light/config

whereas the RGBW controller has two topics - one for the RGB LEDs and one for the warm white LEDS:

homeassistant/light/0x00124b001fb5e57d/light_rgb/config
homeassistant/light/0x00124b001fb5e57d/light_white/config

If this is indeed why my RGBW controller isn’t showing up, are there any plans for diyHue to work with this type of controller over MQTT?

Thank you for your time.

Chris

This is very strange. Your controller should handle the composition of the light based on the commands from DIYHue. For example, if you want to have a warm-white light, DIYHue is not going to figure out what level of what channels of your LEDs have to be at what brightness. it is just going to order the Color-Temp value in Kelvin to the light. It’s up to the Light to figure out what LEDs to put on at whatever brightness is required. I’m very surprised that Zigbee2MQTT breaks it out into 2 devices. Is there no way for it to be configured as a single device in Z2MQTT?

There are two types of controllers “1ID” and “2ID”. My understanding is that with the 1ID controllers, they will work as you describe and mix the RGB light with white light to achieve the desired colour. With 2ID controllers, two separate lights - RGB and white - show up in the Hue app. My controllers is the 2ID type, as I wanted to be able to control the warm white LEDs separately from the RGB LEDs.

From the reddit post Which Gledopto controller do I need?:

1ID Controller vs. 2ID Controller

The 1ID controller shows up as one light in the Philips Hue app. This means that it can be controlled as being one light just in the same way as a regular Philips Hue light strip. This is convenient when using it with voice control (Alexa/Google Home). The disadvantage is that you cannot turn on both the colored LEDs and the White LEDs at the same time.

The 2ID controller shows up as TWO lights in the Philips Hue app. This is different from a regular Philips Hue light strip. The advantage of this is that you can turn on both the colored AND the white LEDs at the same time, allowing for more light output and control of saturation. The disadvantage is that it can be inconvenient when using voice control (Alexa/Google Home) as you need to control two sepparate lights.

I don’t have a Philips Hue bridge to test the controller, so I’m not sure exactly how the two light channels will be presented in the app, but I do have a wi-fi LED controller in another room that uses the Magic Home Pro app, and that gives me two screens - one RGB and one white:

Just for completeness, here is the Zigbee2MQTT page for the controller, and here are the two MQTT config payloads:

RGB: homeassistant/light/0x00124b001fb5e57d/light_rgb/config

{
  "brightness":true,
  "color_temp":true,
  "xy":true,
  "schema":"json",
  "command_topic":"zigbee2mqtt/kitchen_led_tape/rgb/set",
  "brightness_scale":254,
  "state_topic":"zigbee2mqtt/kitchen_led_tape/rgb",
  "json_attributes_topic":"zigbee2mqtt/kitchen_led_tape/rgb",
  "name":"kitchen_led_tape_light_rgb",
  "unique_id":"0x00124b001fb5e57d_light_rgb_zigbee2mqtt",
  "device":{
    "identifiers":[
      "zigbee2mqtt_0x00124b001fb5e57d"
    ],
    "name":"kitchen_led_tape",
    "sw_version":"Zigbee2MQTT 1.14.3",
    "model":"Zigbee LED controller RGBW (2 ID) (GL-C-007-2ID)",
    "manufacturer":"Gledopto"
  },
  "availability_topic":"zigbee2mqtt/bridge/state"
}

White: homeassistant/light/0x00124b001fb5e57d/light_white/config

{
  "brightness":true,
  "schema":"json",
  "command_topic":"zigbee2mqtt/kitchen_led_tape/white/set",
  "brightness_scale":254,
  "state_topic":"zigbee2mqtt/kitchen_led_tape/white",
  "json_attributes_topic":"zigbee2mqtt/kitchen_led_tape/white",
  "name":"kitchen_led_tape_light_white",
  "unique_id":"0x00124b001fb5e57d_light_white_zigbee2mqtt",
  "device":{
    "identifiers":[
      "zigbee2mqtt_0x00124b001fb5e57d"
    ],
    "name":"kitchen_led_tape",
    "sw_version":"Zigbee2MQTT 1.14.3",
    "model":"Zigbee LED controller RGBW (2 ID) (GL-C-007-2ID)",
    "manufacturer":"Gledopto"
  },
  "availability_topic":"zigbee2mqtt/bridge/state"
}

Chris