Integration of WS2805 - How?

I want to control a WS2805 based light strip with home assistant. They are RGBCCT devices, which means RGB + 2 white LEDs (warm+cold)

Typical way to integrate light strips are esphome or wled running on a ESP device.
After some research I figured out:

  • ESPhome is not able to handle a 2nd white channel at all.
  • WLED is able to handle the WS2805.
    For WLED, there is a RGB circle, birghtness for RGB, CCT and a color temperature for the white channel. These controls are also visible in Home Assistant. So far, so good. Unfortunately, they don’t work the right way. When a change is done, e.g. set RGB to red, the light turns red. Now the point in the RGB circle jumps back to the original value. When I reduce RGB brightness to 0%, RGB goes off but the slider jumps back to the old value (100%). Now, when CCT brightness is increased from 0% to 100%, RBB is also turned on, because in home assistant, the old value is still used. CCT brightness jumps back to 0%.

So both, ESPhome and WLED are both not really useable.

Is anyone of you using WS2805 LEDs?
Which setup are you using?

As the WLED integration for WS2805 seems to be broken, I was looking for other options.

My first idea war to use the http API and a template light. I was very close to a solution. An issue is that this way, WLED has no way to update its status. Home Assistant has too poll which is not a good solution.

MY next ieda was to mqtt. I managed it to register WLED witht eh addon Mosquitto. In general it seems to connect but mqtt is not really working. Mosquito receives the status topics but changes from Home Assistant are not really working. I can change the brightness but not the color. Chanign the color end up in a not responind LED strip.

Does anyone has different ideas?

I found a way to fix it: