ESP32 Web Updater Allows File System Management And OTA Updates

Earlier versions of the Arduino IDE made uploading files to an ESP32’s SPIFFS filesystem easy via the ESP32FS plugin. Sadly, that’s no longer possible under the rewritten Arduino 2.0 IDE. Thankfully, [myhomethings] has stepped up to solve the problem with a new tool that also adds some new functionality.

The tool in question is the ESP32 Web Updater and SPIFFS File Manager. It features a web interface courtesy of the ESPAsyncWebServer library. Simply dialing into the ESP32’s IP address will grant one access to the interface. Once connected files can be uploaded to the ESP32, or deleted at will. Text files can be created and populated through the interface as well, and the SPIFFS file system can also be formatted if required. Plus, as a bonus, the interface allows for handy over-the-air firmware updates. One need only export a compiled binary from the Arduino IDE, and then load the resulting *.bin file into the ESP32 via the web interface. It does come with the caveat that if new firmware is uploaded that doesn’t include the ESP32 Web Updater itself, there will be no way to do further firmware updates in this manner.

For those working on projects that may need regular file system management, the tool may be very useful. Alternatively, if you just need to do OTA updates on an ESP32, we recently featured a way of doing them through GitHub.

10 thoughts on “ESP32 Web Updater Allows File System Management And OTA Updates

  1. “Simply dialing into the ESP32’s IP address will grant one access to the interface.” I kept reading this like it only allowed a single access to the interface and could not understand why one would do such a thing. Perhaps “… will allow one to access the interface” would have been less confusing for me.

  2. Wow Arduino 2.X has been out for almost six months and it’s still incomplete and buggy. Rui Santos of Random Nerd Tutorials in his definitive “Getting Started with the ESP32 Development Board” tutorial [1] is still saying this:

    1. Don’t install the 2.0 (Arduino IDE) version. Select your operating system and download the software. For Windows, we recommend downloading the “Windows ZIP file“ (this is the stand-alone version, no installer).

    2. If you’re just getting started with the ESP32, start with Arduino IDE. At the time of writing this tutorial, we recommend using the legacy version (1.8.19) with the ESP32. While version 2 works well with Arduino, there are still some bugs and some features that are not supported yet for the ESP32.

    3.For beginners, we recommend using Arduino IDE. While it’s not the best IDE, it works well and is simple and intuitive to use for beginners. After getting familiar with Arduino IDE and you start creating more complex projects, you may find it useful to use VS Code with the Platformio extension instead.

    He also says this:

    To run Arduino IDE, you need JAVA installed on your computer. If you don’t, go to the following website to download and install the latest version: http://java.com/download.

    Which in my experience is NOT true with the stand-alone .zip version of the legacy Arduino IDE which comes with a built-in stand-alone Java Run-Time Edition (RTE).

    * References:

    1. Getting Started with the ESP32 Development Board

    https://randomnerdtutorials.com/getting-started-with-esp32/

    1. “You forgot, in your wisdom
      The window to the ladies’ room
      A whole new possibility
      For a cat like me”

      The way you put that brought up a memory of Studio killers – Ode To The Bouncer.

  3. It worked but I had to find and manually install two libraries.
    * me-no-dev/ESPAsyncWebServer
    * bbx10/Hash_tng
    Wondering if could work the same with LittleFS?
    I was under the impression that LittleFS now supersedes SPIFFS.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.