What this costs
- One full frame
- 24 KB
- One second stored
- 288 KB
- The same second computed
- ~200 B
That is why no frame sequence sits in flash. Each animation is a function that computes a frame from elapsed time.
Each runs at twelve frames a second. That is a style decision: the panel is meant to step visibly, the driver library could do far more. All of them are computed, not stored: one full frame would be 24 KB, a formula is two hundred bytes.
What this costs
That is why no frame sequence sits in flash. Each animation is a function that computes a frame from elapsed time.
Interruptible
Every animation has to be able to stop at any moment. Otherwise flight data waits behind a greeting, and the panel feels slow instead of alive.
if (frameReady) anim.cancel();
Reduced motion
There is no operating system on the device to report a preference. So it needs its own switch in the settings that cuts every animation down to its final state.