ESP 32 Upload Filesystem Image OTA wihtout compiling it again

I would like to be able to upload the filesystem images to the ESP32 without compiling it every time it uploads, like it is possible to do with the firmware. This would allow me to create a scrip that could do massive uploads of the filesystem image to multiple devices.

I’m building the filesystem image and then upload it to the target device with pio run -t nobuild -t uploadfsota -e esp32_ota --upload-port 10.20.34.120. The problem is that doing so throws an error: Could not find the file with partitions table. . Removing the flag -t nobuild builds and uploads the FS as expected.

I have already tried to open an issue on GitHub but I got no feedback on that.

I think that’s the wrong approach to do that with PIO because it’s slow as it goes through the PlatformIO pipeline, better to get the the filesystem image once and the command to uplaod it (pio run -v -t uploadfs) and write a script that just directly invokes that esptool.py with all the different IPs.

This is the correct way. @valeros should have a look at it

Thank you very much for your suggestion @maxgerhardt I already managed to make it work directly with espota.py.