ESP32 irresponsive after Uploading Filesystem Image

This issue has started just after Uploading Filesystem Image. It doesn’t respond to app upload attempts anymore neither behave as expected, according to prior versions of the same project.

I guess there might have been some problem when saving files to SPIFFS. Does it make sense? The “data” folder contains 1,4Mb of files.

Should I try to rewrite the bootloader?

What would there be the best way to check SPI Flash partitions and contents?

What’s the recommended tool for managing SPI Flash partition schemes?

Thank you.
Regards,

Can you also not upload a new firmware if you manually put the ESP32 into bootloader mode with a hold-GPIO0-to-GND (usually the “FLASH” button), press reset, release GPIO0?

Have you checked whether you selected the right partition table with enough space?

Thank you Max.

That’s a TTGO T3 LoRa32 OLED V2.1.6 board. It has only a power switch and a reset button. It has never been necessary to push this reset button to upload any code.

I’m gonna check whether GPIO0 is somehow accessible. You mean I should try to flash new firmware while I first ground GPIO0 then press reset button, then release GPIO and later release reset. Right?

Meanwhile, should I try to flash the bootloader even without trying to ground GPIO?

Thank you.
Regards,

Hello Max.

I found IO0 available and followed your instructions. Then I could upload a simple code and watch to its response via serial.

Thank you!

Since it’s responding again, my next step is to understand SPIFFS better.

I thought PlatformIO would’n try to load files beyond the partitions capabilities.

I’ve tried to follow that link you’ve recommended, but I guess I’d need a step by step guide for listing partitions and contents, as well as for partitioning. I’d appreciate if you know any.

Thank you!
Have a nice week.
Regards

The default partition table when building with framework = arduino is the default.csv definition

That is, 1.25MB for App0 and App1, 1.4375MB for SPIFFS. The space for the available file will be slightly less due to the filesystem format.

If you are not using OTAA (aka 2 Apps), I’d just recommend to use the other available partition noota_3g.csv

The App0 is slightly reduced (1.0MB) but the SPIFFS is allocated ~2.93MB. In thet platformio.ini you’d do that as linked with

board_build.partitions = noota_3g.csv

Or look at no_ota.csv.

You can still make your own partition table and reference it, the format is very clear from the docs and reference files above.

Reading the material you sent, I can now understand this tip regarding GPIO0.
It means that my “factory” partition should be corrupt and that I had to start from “test” partition. Right?

image

Thank you Max.

There’s a lot of valuable info there. Now I can understand it better.

One more question, regarding the command line apps shown in
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/partition-tables.html

like “python gen_esp32part.py” or “idf.py”.

Do they make part or “ESP-IDF”? For years I’ve been trying to install it, but it never finishes successfully. It always ends in pages of error messages I could never understand an fix. Last night I’ve tried it again, but it happens always the same.

PlatformIO, as the build system, will call these tools automatically to convert the .csv file into the .bin file, there is no need to worry about that.