Flash budget

From 0.13.14, application slots and managed filesystem writes retain 5% free. Packaging checks application size; runtime checks guard filesystem writes. Existing partitions and saved data are unchanged.

Measured from the clean v0.13.17 release builds:

Board Physical flash Application bytes OTA slot bytes Slot free Further application bytes before limit
Waveshare AMOLED 32 MiB 2,834,144 6,291,456 54.95% 3,142,739
M5Stack StopWatch 16 MiB 3,002,784 4,194,304 28.41% 981,804
Spotpear 16 MiB 2,695,152 6,291,456 57.16% 3,281,731
Seeed XIAO Round 8 MiB 2,490,688 3,145,728 20.82% 497,753
Waveshare Lite 16 MiB 1,844,000 6,291,456 70.69% 4,132,883

The separate OTA slot supports update recovery. Filesystem allocations hold user files; their usage depends on the device. More flash does not increase internal RAM, radio capacity or processor throughput. Each package includes its exact memory-budget.json.

The four full boards share the application workflows with hardware-specific capture and storage limits. Lite uses five compact pages, 2 MiB PSRAM and one button. Feature matrix · Validation.