Greetings! I recently purchased 2x flexible 16x16 WS2812b matrix by ALITOVE from amazon.co.uk which

Greetings!
I recently purchased 2x flexible 16x16 WS2812b matrix by ALITOVE from http://amazon.co.uk which I beleive to use the new WS2812B timings from WorldSemi.

I have a project that uses FastLed and wifi on an ESP8266-07.
I understand that the flickering or glitchy animations/scrolling text on the display are due to the wifi interrupts.

I can display ok with wifi disabled or if i set #define FASTLED_ALLOW_INTERRUPTS 0 - but this causes issues with the wifi.

What I seeking to understand better is the timings used for the chipsets.h, clockless_esp8266.h and clockless_block_esp8266.h

So that I may attempt to modify the WS2812B strip timings, and calculations for interrupts required to make these new WS2812B matrix work with the wifi without flicking as the older WS2812B pixels can do successfully.

If anyone has any insight on how to approach this this then your feedback would be appreciated.

Thanks
Steve.

/sub (just to geht comments)

I ended up just using NeoPixelBus which solved all my issues. I also include the FastLed library and use a bunch of the features like Palettes tho

@Tyler_Pearce1 Interesting, I was not so aware of NeoPixelBus, by the looks, all my existing FastLED scenes, animations, matrix support, scrolling text etc, would need to be ported over?

Are you aware of a method to render a scene with FastLED then output that scene using NeoPixelBus?

My first thought would be to create a function to iterate through each FastLED pixel, acquire the RGB values and then set the corresponding pixel in NeoPixelBus + show?

Thanks!

Seems mapping from FastLED to NeoPixelBus is quite easy using…

void NeoShow() {
for(int i = 0; i < NUM_LEDS; i++) {
uint8_t Nr = leds[0][i].r;
uint8_t Ng = leds[0][i].g;
uint8_t Nb = leds[0][i].b;
strip.SetPixelColor(i, RgbColor(Nr,Ng,Nb));
};
}

Then swapping out FastLed.Show() for strip.Show().

I choose the AsyncUART method for my ESP8266-07.

So far my testing seems to work out with the LED’s, and Wifi both working nicely, now to see how stable it remains!

Thank you Tyler Pearce for your suggestion.

UPDATE:-
My sketch has now been running for 11hours straight without any issues/resets or crashes, the wifi is responding very quickly and the animations and scrolling text are able to display without any flickering/skipping or any issues.

This is the most stable I have had both wifi (with interrupts enabled) and these newer revision of WS2812B LED’s.

This is using FastLED + matrix + text + sprites libaries for rendering all the text and animation graphics and using NeoPixelBus to handle the data to the LED’s.

Works great!

Thank you!

Update: 42hours in and still strong. :smiley:

Hello @Steve_Ward
Can you describe how you integrated the FastLed scenes with NeoPixelBus? Or may be show code )

Eureka! Many thanks for the link to the solution of the problem - the ESP with WiFI and flicker. +Steve Ward +Tyler Pearce
I will add from myself, only one output on ESP can be used GIPO 3 (Rx) and of course first initialization and setup change to NeoPixelBus settings.

Glad to hear it worked out!!