You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adafruit's Neopixel library has a 'send' method that waits/blocks if the previous send was too-recently. This wait relies on micros() for duration computation. Because micros() becomes stuck at max_unsigned_int after sntp runs, the micros() clock never moves, and the next Neopixel send() will get stuck and trigger the watchdog.
Code:
Console before/after sntp:
After SNTP, micros() starts returning 4294967295 (2^32 - 1) for all calls.
micros() is based on mg_time() which returns a double and reports wall clock (it is not monotonic).
The Arduino docs say this about
micros()
:Should mongoose's Arduino compat, then, use the boot-time (monotonic?) clock instead of the wall clock (sync'd with sntp)?
The text was updated successfully, but these errors were encountered: