Hi guys! I just installed a long WS2813 strip in my ceiling (1100 LEDs)

Hi guys!

I just installed a long WS2813 strip in my ceiling (1100 LEDs) and I am currently driving them with an Arduino Mega and the FastLED library.

The problem is that the refresh rate for the animations is VERY slow, and I was wondering: What microcontroller do you recommend for this specific case? I’ve seen a lot of people using the Teensy 3.2, do you think using it will make a big difference?
I’d prefer not to drive them in paralell since it’s a single strip and I want to avoid adding even more wire (I have a lot for the power already). Do you think I can get away with driving all of these LEDs with a single output at a decent framerate?

Thanks!

Hello @Matto_Godoy the refresh rate is linked to the hardware refresh rate of the leds. For instance for ws2812b it’s 30us per leds hence 33ms for 1100leds => 30fps. Now a faster cpu could improve the ‘calculation’ of the next image but in no way the execution time of the fastled.show(). It’s hardware related. If you want to have faster refresh rate with only using one pin you should go to clock driven leds. In this case the refresh rate is linked to the speed at which you send the data.

Oh man, I was afraid that was the reason… Thanks for clarifying that :slight_smile:
In that case, dividing the strip in various shorter ones and connecting them in parallel should improve the framerate, right? I wanted to avoid that, but I guess it’ll be my only option.

@Matto_Godoy yes indeed. But you need to use the parallel output functionality of the FastLED library. Go to https://github.com/FastLED/FastLED/wiki/Parallel-Output to check if your board is supported. http://fastled.io

Great! Thank you for that.
One last question: I’ve read that for these LEDs the signal wire has to be very short. Is that true?
Because in my case I would have to have signal wires as long as 10 meters so I can keep the entire strip working with a single controller (it’s all around the ceiling).
Any ideas?

@Matto_Godoy it doesn’t have to be short but i that case you’ll need to use ‘a power booster’ for the signal I use 74hc245 (it’s a level shifter )to do this. Otherwise your signal will drop. For 10meters I suggest you put one next to your board then one after 3m and another one after 3m … this way you will distribute correctly the signal. Do not forget to put a couple hundred ohms resistor in serie attached as close as you can to the ledstrip.

30 fps should be a decent rate. Are you sure it’s not calculations that slow things down?

This is a teensy 3.2 with 1600 pixels @25 FPS using fastLED octows2811 (parallel out). Teensy uses rj45/cat6 to send the signals . 10 meters is no problem for signal runs using the level shifter 100 ohm resistors (see octows2811 on the teensy site). This setup is capable controlling 5440 pixels receiving data over wiznet Ethernet module

youtu.be - Ws2811 Pixel Matrix (1600 12v Pixels)

To drive long lines a good and cheap option is to place one pixel close to your micro (the so-called ‘null pixel’), and let that drive the long line. 10m is no problems for that.

Re refresh rate – if you parallel n lengths, then you see your pattern repeated n times along the length.

Another option – use a Teensey and OctoWS2811 board. This lets you drive up to 8 individual segments whichever way you want – eg as a single 1100 LED string (you just have to run n additional signal lines and break the existing signal line n-1 times).

Doing this on a Teensey I can drive 2500 individual LEDs at > 100 fps.

Using a Teensey you can also do realtime FFT using the builtin DSP and Paul’s audio library, which means you can do realtime spectrum analyser etc.

Amazing stuff!

@LED_Head I am building a 120x 48 leds panel would you have the link to the fft library. I am using a esp32 I could see if I can adapt the code.

@Yves_BAZIN
Check out the Teensey audio library (https://www.pjrc.com/teensy/td_libs_Audio.html), specifically the audio design tool & the FFT analyse blocks. Don’t know if porting that would be easy as it is very hardware specific (and relies on a hardware DSP).

@LED_Head thank you !! I will have a look at the code

Thank you all for your useful comments!
I have somewhere to start now

Teensy 3.2 and the OCTO adaptor board will get you much of the way there. IT allows the output to be sent via 8 parallel streams which is a goodly step forward…