Does FastLED influence millis()...?

Does FastLED influence millis()…? Time goes by faster somehow

If you are using neopixels, yes it does - because writing that led data out requires blocking interrupts, and the Millis clock is based on the SYSTICK interrupt firing. To try and compensate for this FastLED does try to adjust the time for what passed while writing out led data but it isn’t perfect. If you need wall clock accurate time you will need to either switch to something like the apa102 - which doesn’t need to block interrupts or use an external realtime clock. (Also, even without this, Arduino clocks are notoriously imprecise - drifting on the order of 15 minutes/day or more)

Damn. I don’t need clock precision but I recently switched my code to FastLED and I was puzzled as to why my animations weren’t timing properly. This will be a headache… guess no more neopixels after this

Add the line:

#define NO_CORRECTION 1

Before the #include<FastLED.h>

And that will disable FastLED’s attempt to adjust the timing. It will result in millis running much slower, however it would be in line with the timing you would get out of the neopixel library.

Yeah this is much closer to the real thing now. Awesome thank you