Independent string output seems to cause flickering on ESP8266? Daniel,

Independent string output seems to cause flickering on ESP8266?
Daniel, you told me about updating one string and not another one as explained here: Multiple Controller Examples · FastLED/FastLED Wiki · GitHub

So, it works, but, it causes flicker if I print a non changing pattern.
For instance, see this simple one line change on code that only uses one strip:

FastLED.show();
// This causes flickering
//FastLED[0].showLeds();
This is with a single strip

Now, if I do FastLED[0].showLeds(256); instead, then it flickers a lot less, but still just a bit (on ESP8266).
And then if I go back to FastLED.show(); I get no flicker at all.

It’s because dithering is on by default (FastLED.show includes code to disable dithering if the frame rate drops below 100fps - but the individual controllers do not have that code) - so you have to explicitly disable dithering.

@Daniel_Garcia aaah, that was a very good call.
Except ‘FastLED.setDither(0);’ doesn’t fix it, but I removed FastLED.delay and replaced it with delay, and the flickering is gone, so you were right.
Thank you very much. Now, back to testing parallel output for the matrix, will report back on how well it works.

Not sure if this is any use (or if it works in your scenario , but adding the line #define FASTLED_ALLOW_INTERRUPTS 0
Completely eradicated flickering for me - without even using a level shifter , it’ll happily run 512 ws2812 neopixels directly from the 3.3v pin , just a separate power source … Whereas before , it was almost unwatchable …

@Lawrence_Clark actually this one issue was not interrupts but dither being enabled when frame rate was too low.
Disabling interrupts is not an option in my case since I use infrared while constantly updating the display.