I am developing an app for a esp32s3 based device from Waveshare.
It has 16MB flash. Wiki here: https://www.waveshare.com/wiki/ESP32-S3-Touch-LCD-1.85C
Wiki says :
-
- If the app has a speech recognition model, then select "ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL)" for Partition Scheme
- If the app doesn't have a speech recognition model, then select "16M Flash (3MB APP/9.9MB FATFS)" or other for Partition Scheme
Now these 2 partition schemes work fine.
However, I need larger application space. So either I will decrease/remove the SPIFFS/FATFS partition, or I will remove the OTA.
So I create a new partition scheme with following content:
#Name, Type, SubType, Offset, Size, Flags
nvs, data, nvs, 0x9000, 0x5000,
otadata, data, ota, 0xe000, 0x2000,
app0, app, ota_0, 0x10000, 0x780000,
app1, app, ota_1, 0x790000,0x780000,
spiffs, data, spiffs, 0xF10000,0x0EF000,
or this one:
#Name, Type, SubType, Offset, Size, Flags
nvs, data, nvs, 0x9000, 0x5000,
otadata, data, ota, 0xe000, 0x2000,
app0, app, ota_0, 0x10000, 0x640000,
app1, app, ota_1, 0x650000,0x640000,
spiffs, data, spiffs, 0xc90000,0x360000,
coredump, data, coredump,0xFF0000,0x10000,
and then I select it from the IDE (new partition scheme is only visible after deleting cache folder of IDE)
but when building I receive the following error as if the app partition is only 1.3MB (default)
Sketch uses 3393222 bytes (258%) of program storage space. Maximum is 1310720 bytes. Global variables use 156608 bytes (47%) of dynamic memory, leaving 171072 bytes for local variables. Maximum is 327680 bytes.
I assume the IDE could not find my partition definition (csv) file. So I tried spoiling the partition scheme. I changed the size to a value which is not divisible to 16. The IDE complained about it.
So I understand that IDE can find my csv file and use it. But then why it does not assign the correct partition space and meet requirement of the app ?
