Shrink LittleFS partition, grow OTA app slots

Web assets only use ~489 KB but the default 1.375 MB spiffs
partition wasted the rest. Rebalance to 768 KB spiffs / 1.56 MB
per app slot (was 1.25 MB), giving the tight esp32 build real
headroom (99.6% -> 79.7% flash used) while preserving dual-slot
OTA. Wire the custom layout into both the local PlatformIO build
(new partitions.csv + platformio.ini) and the Arduino-CLI CI/release
pipeline (PartitionScheme=custom, matching littlefs image size and
merge_bin offset).
This commit is contained in:
Frédéric Metrich 2026-09-05 23:15:29 +02:00
parent db22c16bb3
commit 182d859870
4 changed files with 83 additions and 16 deletions

View file

@ -44,7 +44,7 @@ jobs:
- name: Create LittleFS
run: |
./mklittlefs/mklittlefs --create data --size 1441792 SomfyController.littlefs.bin
./mklittlefs/mklittlefs --create data --size 786432 SomfyController.littlefs.bin
- name: Upload binaries
uses: actions/upload-artifact@v3
@ -65,22 +65,22 @@ jobs:
- board: esp32
addr_bootloader: 0x1000
chip: ESP32
fqbn: esp32:esp32:esp32
fqbn: esp32:esp32:esp32:PartitionScheme=custom
name: ESP32
- board: lolin_c3_mini
addr_bootloader: 0x0
chip: ESP32-C3
fqbn: esp32:esp32:lolin_c3_mini
fqbn: esp32:esp32:lolin_c3_mini:PartitionScheme=custom
name: LOLIN-C3-mini
- board: lolin_s2_mini
addr_bootloader: 0x1000
chip: ESP32-S2
fqbn: esp32:esp32:lolin_s2_mini
fqbn: esp32:esp32:lolin_s2_mini:PartitionScheme=custom
name: LOLIN-S2-mini
- board: lolin_s3_mini
addr_bootloader: 0x0
chip: ESP32-S3
fqbn: esp32:esp32:lolin_s3_mini
fqbn: esp32:esp32:lolin_s3_mini:PartitionScheme=custom
name: LOLIN-S3-mini
steps:
@ -137,7 +137,7 @@ jobs:
${{ matrix.addr_bootloader }} build/SomfyController.ino.bootloader.bin \
0x8000 build/SomfyController.ino.partitions.bin \
0x10000 build/SomfyController.ino.bin \
0x290000 SomfyController.littlefs.bin
0x330000 SomfyController.littlefs.bin
- name: Upload ${{ matrix.name }}
uses: actions/upload-artifact@v3