Skip to content

ESP8266 allows flash split to have 3MB of SPIFFS, ESP32 only allows up to 1.5MB of SPIFFS in the arduino GUI #1799

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
marcmerlin opened this issue Aug 26, 2018 · 8 comments

Comments

@marcmerlin
Copy link
Contributor

Can you change the hardware configuration for ESP32 in arduino so that the compile menu options also allow splitting the flash so that more than 1.5MB out of 4MB is usable for SPIFFS? (default is 1MB, 'No OTA" boost this to only 1.5MB)
This is true as of today with arduino-esp32 from git, and arduino 1.8.6 pre release.

@marcmerlin
Copy link
Contributor Author

Apparently, you can change this in
arduino/hardware/espressif/esp32/tools/partitions/no_ota.csv
but I'm still thinking:

  1. I'm sure it's possible to change this file in broken ways that are going to blow up in potentially non obvious ways later. It would be nice to have a few obvious pre-sets, at least 2 or 3 (like 1/3 2/2 and 3/1)
  2. generally it would be nice to have at least the same 1/3 and 3/1 presets than are offered on ESP8266, for consistency at least, and maybe add 2/2. It kind of looks bad that by default the options easily available offer 2x less SPIFFS storage on ESP32 than available for ESP8266, even if it's just a config option

@francescolavra
Copy link

You can change your csv partition file without blowing up things as long as you don't touch the nvs and otadata partitions and as long as the app0 partition starts at address 0x10000.

@marcmerlin
Copy link
Contributor Author

Thanks, it would however be nicer if the GUI allowed more splits or at least allowed a split as big as the lesser ESP8266 chip.

@me-no-dev
Copy link
Member

Awww... it's been a while @marcmerlin :) feel free to come up with better partition schemes and make a PR :P Surely we can have as many partition schemes as we want. Just someone with need needs to pus some time. Reason is that unless we hit a particuylar limitation that can not be handled by one of the existing ones, nobody knows what to create.

@marcmerlin
Copy link
Contributor Author

marcmerlin commented Dec 14, 2018

Hi @me-no-dev yes, I work a lot on something for a while, and then disappear for a year or so as I move to one of my too many other hobbies ;) I'll see if I can make a proposal for this but someone else is welcome to beat me to it.

@marcmerlin
Copy link
Contributor Author

With the latest git, "large app, no OTA" gives 2MB of spiffs, which is not bad. The only problem is how non obvious how much or little spiffs you get from each of the options.
Now, I have confirmed that reading animated gifs from that spiffs causes too many hangs for my use, so I need to switch to fatfs and hope that works better.

@marcmerlin
Copy link
Contributor Author

@me-no-dev would it be possible to simply show the amount of program flash vs spiffs room for each compile option (like minimal: 1M/1M, No OTA 2M/2M, Huge App: 3M/1M, etc...)

marcmerlin added a commit to marcmerlin/arduino-esp32 that referenced this issue Mar 30, 2019
Existing format options were unclear on how much spiffs you were
getting. Also add missing 1MB App/3MB Spiffs split.
This addresses espressif#1799

This makes it very clear what each option gives you, and also adds 2 options
to get ffat on 4MB chips..
@marcmerlin
Copy link
Contributor Author

@me-no-dev @lbernstone better late than never I guess, this PR addresses this issue (and then some) as well as adds some ffat options to esp32-dev:
#2623

me-no-dev pushed a commit that referenced this issue Apr 10, 2019
…s. (#2623)

* Added 2 ffat partition schemes for 4MB modules + improved descriptions.

Existing format options were unclear on how much spiffs you were
getting. Also add missing 1MB App/3MB Spiffs split.
This addresses #1799

This makes it very clear what each option gives you, and also adds 2 options
to get ffat on 4MB chips..

* Added link to ffat howto.
dash0820 added a commit to dash0820/arduino-esp32-stripped that referenced this issue Mar 10, 2025
…s. (#2623)

* Added 2 ffat partition schemes for 4MB modules + improved descriptions.

Existing format options were unclear on how much spiffs you were
getting. Also add missing 1MB App/3MB Spiffs split.
This addresses espressif/arduino-esp32#1799

This makes it very clear what each option gives you, and also adds 2 options
to get ffat on 4MB chips..

* Added link to ffat howto.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants