RMT based NeoPixels (WS2812B) flickers when WiFi is used

Andreas_Mainz
Posts: 4
Joined: Sun Feb 03, 2019 6:47 am

Re: RMT based NeoPixels (WS2812B) flickers when WiFi is used

Postby Andreas_Mainz » Mon Dec 23, 2019 9:25 pm

Hello,

my experience is following:

1.) level shifter is NOT needed
2.) If i use Esp8266 every thing works fine
3.) If i use Esp32 flickering starts -> Timing issue
4.) It does not depend on Wifi and BT off -> still flickering
5.) Most important ist the strip.show() function, i removed it from the code and moved it in a timer interrupt routine

Code: Select all

  timer = timerBegin(0, 80, true);
  /* Attach onTimer function to our timer */
   timerAttachInterrupt(timer, &ISR_Task_10ms, true);
   timerAlarmWrite(timer, [b]9000[/b], true); // alle 10 ms
   timerAlarmEnable(timer);
and in the timer interrupt:

Code: Select all

void IRAM_ATTR ISR_Task_10ms()
{
  strip.show(); // Initialize all pixels to 'off'
}
So flickering is nearly but not completly disappered. The timerinterval is critical, if it still flickers change "9000" value to different
values. See attached the logic analyser tape.
Image
Attachments
ws2812_esp32.JPG
ws2812_esp32.JPG (45.52 KiB) Viewed 346 times

Who is online

Users browsing this forum: No registered users and 38 guests