ESP32-S2 wifi causing neopixel flickering #15565
Replies: 3 comments 5 replies
-
Wifi is enabled ... are you connected to some other device and there is traffic? If so, I would put an oscilloscope on 3V3 and see if there are voltage dips. |
Beta Was this translation helpful? Give feedback.
-
How are you powering the LEDs? You might need an additional PSU for them if wifi is drawing too much from USB. |
Beta Was this translation helpful? Give feedback.
-
If "flicker" means irregular behaviour, then this could be due to WiFi operations blocking the process for some time. Although there is a second CPU and RTOS, I see on the ESP32-S3 that the wifi network operations even with asyncio block the primary CPU. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
I picked up some esp32-S2FN4R2 4MB Flash 2MB PSRAM boards (generic mini) recently and have noticed flickering when wifi is enabled and neopixels are being updated. If I don't enable wifi, it works fine.
The same code runs fine on an esp8266 with wifi enabled.
I'm running v1.23.0 downloaded here:
https://micropython.org/resources/firmware/ESP32_GENERIC_S2-20240602-v1.23.0.bin
I've tried v1.20.0 and v1.19.1 with the same results.
The code that I'm running has several underlying modules and is using async, but the one that updates neopixels is:
https://github.com/DougWilkinson/ams/blob/master/ledclock.py
Note: I added a Timer to perform the led.write() to see if updating while inside an ISR would help. It didn't and was not my original approach to this in case you are wondering.
I've searched everywhere for things to try (like increasing RMT RAM?) but not sure if that can be done or is applicable.
As I understand it, micropython runs as an application on RTOS that handles things like wifi, so is the S2 just a bad chip to use in this case? Any other ideas?
Thank you,
--Doug
Beta Was this translation helpful? Give feedback.
All reactions