Esp32 Web Updater und SPIFFS-Dateimanager

Mit früheren Versionen der Arduino IDE war es einfach, Dateien mit dem ESP32FS-Plugin in SPIFFS hochzuladen. Leider funktioniert diese Erweiterung nicht unter der komplett überarbeiteten Arduino IDE Version 2.0. Um dieses Problem zu lösen, habe ich die Skizze „Esp32-Web-Update-and-SPIFFS-Dateimanager“ erstellt, die unten heruntergeladen werden kann und eine Web-OTA-Update-Option enthält.

Web Updater und SPIFFS-Dateimanager - Webseite
Esp32 Web Updater und SPIFFS-Dateimanager – Webseite

Die über einen Webbrowser zugängliche Schnittstelle wird von ESPAsyncWebServer bereitgestellt. Der Server kann über das WLAN-Netzwerk unter der IP-Adresse des ESP32 oder durch Eingabe der URL „http://esp32-filemanager.local/manager“ erreicht werden.

Können wir die URL in der Datei config.h beliebig ändern. Das Webinterface ist passwortgeschützt gegen fremde Eingriffe. Das Standardpasswort finden wir in der Datei config.h, wir können diese Kennungen hier ändern. Geben wir am Anfang der Datei die SSID und das Passwort ein, die für die Wi-Fi-Verbindung erforderlich sind.

Esp32 Web Update und SPIFFS Manager Konfigurationsdatei
Esp32 Web Update und SPIFFS Manager Konfigurationsdatei

Auf dieser Weboberfläche können wir Dateien hochladen und löschen. Es ist auch möglich, Textdateien zu bearbeiten und ein neues Textdokument zu schreiben. In der Datei config.h können wir festlegen, welche Dateierweiterungen bearbeitet und im Dateieditor erstellt werden dürfen. Es ist auch möglich, die gesamten SPIFFS zu formatieren.

Esp32 Web Update und SPIFFS Manager-Datei bearbeiten - neue Datei hinzugefügen
Esp32 Web Update und SPIFFS Manager-Datei bearbeiten – neue Datei hinzugefügen

Das Programm bietet die Möglichkeit, ein OTA-Firmware-Update durchzuführen. Mit der Update-Bibliothek können wir eine in Binärcode übersetzte Skizze drahtlos auf den ESP32 hochladen. Kompilieren wir unseren Sketch mit der Arduino IDE. Menüpunkt ‚Sketch -> Kompilierte Binärdatei exportieren‘ auswählen, oder Drücken wir der Tastenkombination Alt+Strg+S‘.

Arduino IDE – Sketch->Kompilierte Binärdatei exportieren
Arduino IDE – Sketch->Kompilierte Binärdatei exportieren

Im Ordner /project_folder/build/esp32.esp32.xxx/ wurde eine Binärdatei mit der Endung „.ino.bin“ erstellt.

Wählen wir auf der Weboberfläche im Abschnitt „ESP32-Firmware-Update“ die zuvor vorbereitete Binärdatei aus und klicken wir dann auf „Update!“. Knopf. Am Ende des Updates erhalten wir den folgenden Bildschirm.

Esp32-Web-Update und SPIFFS-Manager - erfolgreiches Update
Esp32-Web-Update und SPIFFS-Manager – erfolgreiches Update

Wir können auf diese Weise jede Firmware auf den ESP32 hochladen, aber wenn wir den unten heruntergeladenbaren Code nicht hinzufügen, später kann das ESP32 nicht drahtlos aktualisiert werden

Wenn wir die kommentierten Teile im Skizze lösen, erhalten wir ein „blinkendes LED“-Beispiel.