Partition table builder
A partition table splits the flash chip into the app, its settings (nvs), over-the-air update slots and a file system. Start from an Arduino layout, change sizes, and this page keeps every offset aligned and warns about mistakes before the board does.
| Name | Type | Subtype | Offset | Size | Actions |
|---|
Sizes accept hex (0x140000), K or M (1280K, 1.25M) or bytes. App partitions start on 64 KB boundaries and the rest on 4 KB, which automatic offsets handle for you.
partitions.csv
Import an existing partitions.csv
Use it
- Arduino IDE: save the file as
partitions.csvin the sketch folder, next to the .ino. Arduino-ESP32 uses it in place of the scheme under Tools, Partition Scheme. The IDE's size check still uses that menu, so if it says the sketch is too big, pick a scheme with at least as much app space. - PlatformIO: put it in the project folder and add
board_build.partitions = partitions.csvtoplatformio.ini. - ESP-IDF: choose Custom partition table CSV in
idf.py menuconfig, under Partition Table. - LittleFS and SPIFFS in Arduino both look for a data partition named
spiffsby default. A different table only takes effect after a full flash, and it erases what the old file system held.
Hitting Sketch too big? Try Huge app, or remove the second OTA slot if you never update over Wi-Fi.