RGB led: Adding WS2811 support

RGB led: Adding WS2811 support

Several customers asked us in quick succession whether the Yocto-Color-V2 was compatible with RGB WS2811 leds. In theory, the answer should be no, but as we like to please, we made the necessary modifications so that it now works.




What's a WS2811 really?

In fact, the WS2811 is not an RGB led, but rather a led controller manufactured by WorldSemi. This controller has three channels which enables you to transform any classic RGB led into a "Smart-led" which you can daisy-chain with others. Daisy-chaining is performed in a classic way by connecting the output line of each controller to the input of the next controller.

Stringing classic RGB leds thanks to a WS2811 series
Stringing classic RGB leds thanks to a WS2811 series



You can sometimes find this chip on led ribbons but this is now rare as there are leds with embedded driver. However, one of the main interests of this chip is the manufacturing of high power led modules, such as the one sold by Adafruit.

High power LED module based on a WS2811
High power LED module based on a WS2811


Compatibility

Unfortunately, the communication protocol of the WS2811 is slightly different from that of the WS2812B, WS2812C, and SK6812 leds that the Yocto-Color-V2 supports: Red and Green components are reversed. From a programming standpoint, you can naturally work around this issue by providing reversed RGB components to the module, but this trick naturally doesn't work in HSL mode. Therefore, we added explicit support for the WS2811 in the Yocto-Color-V2 and in the Yocto-MaxiBuzzer. You only need to update their firmware and to configure the correct led type in the VirtualHub or in the API.

Select WS2811 in the module configuration and that's it
Select WS2811 in the module configuration and that's it


Obviously, you still can't string leds of different types on the same module.

There you go! It works.
There you go! It works.


One last comment: if you intend to string many powerful leds such as those used here, you'll need an external power supply to power them: the USB bus is not able to provide enough current to power more that 3 of 4 of them.

Add a comment No comment yet Back to blog












Yoctopuce, get your stuff connected.