Is it possible to use the FastLED library to communicate with WS2812B LEDs using

gplus
(Aaron Albers) #1

Is it possible to use the FastLED library to communicate with WS2812B LEDs using spidev from Linux user space? If so, where is a good place to start?

(Daniel Garcia) #2

The ws2812b isn’t an SPI chipset, so I’m not sold on being able to use spidev to talk to them. What platform is this on/for?

(Ashley M. Kirchner [Norym]) #3

As Daniel stated, the WS2812s don’t use the SPI protocol. Use LPD8806 strips and you can do that.

(Aaron Albers) #4

I realize that the WS2812B isn’t an SPI chipset, but isn’t the FastLED library capable of communicating with that 3-wire LED using an SPI MOSI pin as the DATA pin? I’m able to do this using the SPI MOSI pin from a TeensyUSB. Now I want to do it using a Freescale iMX6 SBC running Linux that has SPI support. I curious what would need to be modified in the library to achieve this.

(Daniel Garcia) #5

Using the pin, but bitbanging to keep the exactish timing the ws2812’s want. I’m not using the SPI hardware at all for the ws2812 and friends (since its data protocol isn’t SPI)

(Aaron Albers) #6

I also realize that other things such as GPIO can be used to drive the WS2812s, but GPIO from Linux user space would not be fast enough to handle the timing needed. I need to use SPI. So any suggestions on where to get started?

(Ashley M. Kirchner [Norym]) #7

I gave you one: switch to an actual SPI based chipset, such as the LPD8806 strips or the older WS2801 strips.