Dresden Elektronik FLS-PP lp RGB channel problems / strange behaviour

Hi all,

I recently bought the Dresden Elektronik Funkvorschaltge​rät FLS-PP lp. I’m playing around with it using a Conbee 2 Stick.
It basically works, however something I found rather strange is that the RGB channels are influenced by each other, and there exist quite big “deadzones” where a channel is not active at all, albeit it being set to e.g. 50%.

I usually use Home Assistant with the Phoscon/DeCONZ integration, but bypassing HA and directly controlling the controller (duh) by DeConz’s UI it is the same behavior.

For instance, if I set the controller to HSV (v = brightness via cluster “Level Control”) [57, 254, 255] in DeCONZ, by color conversion rules, this should result in RGB [169, 254, 1] (including rounding errors, but that doesn’t matter). This means the green channel should be on at full brightness, and the red channel should be at around two thirds, and blue should be at min brightness. Or off. Doesn’t matter much in this case.

Actually, though, when looking at the physical LEDs, green is 100%, and blue is off (which is OK), but also red is off as well. I find this rather strange, because basically it is not a yellow-ish green which it should be, but a pure green.

Other test show similar behaviour. Is this normal? Is this expected? Why does the controller ignore my 66% red channel?

I don’t know if this forum is the right one, but I didn’t find one that seemed more appropriate on the whole internet :smiley:

Thanks in advance,
chammp

@de_employees

Color handling is difficult topic for Zigbee lights when it comes to RGB, although a HSV to RGB conversion exists, it’s very “rough”. The FLS firmware mainly uses CIE xy color coordinates as preferred color system. Do you have the chance to express your colors as xy?

The extended hue (16-bit) and saturation aka ehue might also work better, butter needs some calculations as well.

Hi, thanks for that hint. With converting my desired RGB values to xy and passing this into the Color Control cluster, I can correctly reproduce all the combinations that failed. The hardest part was to find the correct illuminance values used by the controller (seemingly D65 2° is the best fit).

For the record, I used this code c - What's wrong with this RGB to XYZ color space conversion algorithm? - Stack Overflow and adapted this to the target programming language.

Brightness control is somewhat lacking, though, and I still need to solve the way back (xy + brightness → RGB)…