Aircoookie / WLED

Control WS2812B and many more types of digital RGB LEDs with an ESP8266 or ESP32 over WiFi!
https://kno.wled.ge
MIT License
14.68k stars 3.16k forks source link

ESP8266: Stutter/black LEDs during animation sequence with 0.14.1-b2 #3638

Closed jambees closed 8 months ago

jambees commented 9 months ago

What happened?

I used the web flasher and didn't change any options and just flashed an ESP8266. It seems to have defaulted to the latest beta (0.14.1-b2) rather than the latest full release (0.14.0). I noticed with the meteor effect with the Icefire palette that every 4 sweeps of the effect across the length of my lighting strips would pause for about a half a second and there would be around 5-10 black LEDs before the effect would resume. I have put 0.14.0 firmware on and this issue has gone away. I would add that I think I saw bits of this issue with the Fireworks 1D effect but it due to the pattern it wasn't as obvious - but I'm sure there was a noticeable stutter every so often.

To Reproduce Bug

Flash WLED v0.14.1-b2 and set the effect to meteor and palette to Icefire. Observe several complete sweeps of a long LED strip. Every 4 sweeps there'll be a black patch of 5-10 LEDs at different positions along the strip each time the problem occurs. And it is not limited to one strip as it appeared on both of my 2 strips.

My set up is a 30 LEDs/m strip consisting of 124 LEDs configured on GPIO2 and another strip of 30 LEDs/m consisting of 123 LEDs on GPIO1 with reverse checked on this strip. The meteor trail probably needs to be quite long (most of the string) to properly observe it.

I have some video footage of this happening if needed.

Expected Behavior

No black LEDs/stutter in the effect sequence.

Install Method

Binary from WLED.me

What version of WLED?

0.14.1-b2

Which microcontroller/board are you seeing the problem on?

ESP8266

Relevant log/trace output

None available.

Anything else?

No response

Code of Conduct

blazoncek commented 9 months ago

You may want to switch to ESP32. It appears that changes to WLED 0.14 overwhelm ESP8266. Especially since you are using dual output.

jambees commented 9 months ago

I am actually intending to rebuild the hardware with ESP32 for this but I wasn't aware that 8266 was no longer really able to keep up with the latest releases.

blazoncek commented 9 months ago

Unless you need latest features I would recommend to keep using 0.13.3 until we figure out what to strip from 0.14 to make it more viable for ESP8266.

softhack007 commented 9 months ago

123 LEDs on GPIO1

@jambees Please try if using GPIO3 (for the second strip) improves the situation.

my lighting strips would pause for about a half a second

This sounds like other background activity is keeping your 8266 busy. As consequence, LEDs might freeze shortly, because the main arduino loop does not get enough time.

Unless you need latest features I would recommend to keep using 0.13.3 until we figure out what to strip from 0.14 to make it more viable for ESP8266.

@blazoncek two shots into the wild:

blazoncek commented 9 months ago

Yes, both possible.

jambees commented 9 months ago

123 LEDs on GPIO1

@jambees Please try if using GPIO3 (for the second strip) improves the situation.

That's not going to be straightforward to try given the pcbs connecting the ESP to my lights which only caters for LED data outputs from GPIO 1&2.

Sticking with v0.14.0 is working without that issue and I'll switch to ESP32 as soon as my boards arrive - then I can retest 0.14.1-b2 or whatever the latest is at that point and see if changing hardware also resolves it.

blazoncek commented 9 months ago

I have now tested 0.15 on my debug/development ESP8266 and I do not see any stutter with ESP8266. It uses one digital output with 64 pixels on GPIO2 and one analog on GPIO3. 0.15 does employ a few new features and optimisations. I do not have MQTT, Alexa, Hue enabled on that as well. It does have WS and ESP-NOW.

jambees commented 9 months ago

In case it's relevant load wise - I do have emulate Alexa turned on, but not MQTT or Hue.

blazoncek commented 9 months ago

Please post your configuration (cfg.json) and presets (presets.json). You can get them from backup & restore function in Security settings.

jambees commented 9 months ago

wled_presets_WLED-Outside.json wled_cfg_WLED-Outside.json

I have no presets set up yet but have attached the file anyway. These are downloaded from the now v0.14.0 but these settings were retained during the downgrade from 0.14.1-b2 so should still be applicable.

blazoncek commented 9 months ago

Try disabling NTP and see if stutter persists. It will prevent sunrise and sunset calculation but may help pinpointing the cause.

Doyle4 commented 9 months ago

Tried with D1 Mini ESP8266 and not happening for me, the b2 beta has been great for me so far.

blazoncek commented 8 months ago

0.14.1 has been released. If the problem persists please reopen and update title of this issue.

jambees commented 8 months ago

I've just installed the release 14.1 and the same meteor with icefire effect/palette on the same ESP8266 has no stuttering now. I tried with various speeds up to max and seems fine. 👍