I had a fun few hours last week troubleshooting my “finished” SmartPoi firmware – which somehow decided to not do the one thing it really needs to do, connect to WiFi.
Turns out that in an effort to make everything more efficient I removed all of the delay() statements and gave the WiFi part of the microcontroller software no time to execute!
A simple yield(); in the main FastLED display loop sending image data to the LED’s solved the problem. So remember, don’t forget to yield.