maxgerhardt / pio-esp32-esp8266-filesystem-downloader

Script for expanding PlatformIO's ability to download LittleFS and SPIFFS filesystems from ESP32 and ESP8266 chips and their contents
29 stars 9 forks source link

The original contents of the LittleFS partition #11

Closed Pako2 closed 1 month ago

Pako2 commented 1 month ago

Hello. Thank you in advance for a great tool. But I've been having some strange problems lately. I used it a long time ago and I don't remember anything not working. Now I went back to it and ran into an unexpected problem. I use VS Code and PlatformIO, current version. The problem occurs across different mcu's (ESP32, ESP32-S2, ESP32-C3). Description of the problem: When I download and extract the content of the littlefs partition using this tool, I don't see the expected content, but the exact same content that was created with "Build File System Image" and "Upload File System Image". But the expected state is that I will see the files that have been changed in the meantime, for example using the "SPIFFS editor", which is part of ESPAsyncWebServer. I must be doing something wrong and it is also quite likely that the problem is not related to this tool. In any case, I would appreciate any advice.

Pako2 commented 1 month ago

I created a simple project that has no practical meaning, but it can be used to demonstrate the described problem. In addition to the files needed for the web server, the file system also contains the "counter.txt" file. This file contains (in its original form) the digit 0. The web server displays a switch that can be used to turn the LED on and off. Each individual toggle of this switch increments the counter in the "counter.txt" file. When I use the "pio-esp32-esp8266-filesystem-downloader" tool, I expect to find the actual toggle count in the downloaded file. But that won't happen - the file still only contains the digit 0. esp32c3-webserver-littlefs.zip

Pako2 commented 1 month ago

If someone reads this issue - the solution has already been found. I found out that practically the same problem was already discussed here: Download of LittleFS: Assertion in littlefs/lfs.c failing. And there I found the solution. It is necessary to use a different mklittlefs.exe than the one included in the espressif32 package.