Essentials for the ESP8266 and ESP32 to get you started with your Arduino project without any of the annoying stuff.
- Serial output
- Wifi connection management using WiFiManager
- Webserver including file upload and editing via browser
- OTA firmware update
- Web firmware update
- WiFiManager ≥ 2.0.0
ESPEssentials only needs three lines of additional code:
#include <ESPEssentials.h>
void setup()
{
ESPEssentials::init("Project Name");
}
void loop()
{
ESPEssentials::handle();
}By default the baud rate will be 115200. You can specify it with
ESPEssentials::init("Project Name", 9600);All WiFiManager methods can be accessed through the Wifi instance. For example to reset wifi settings:
ESPEssentials::Wifi.resetSettings();More information can be found here.
HTTP requests can be initialized within setup(). For example to reset wifi settings by accessing http://<device-ip>/reset_wifi:
ESPEssentials::WebServer.on("/reset_wifi", HTTP_GET, [&]() {
ESPEssentials::WebServer.send(200, "text/plain", "Wifi settings reset.");
ESPEssentials::Wifi.resetSettings();
});Note: The routes /edit, /handle_update, /list, /reboot and /update are already used by ESPEssentials and can not be used.
To edit files inside your browser upload /data/edit.htm.gz to the root directory. The easiest way to do this is by accessing http://<device-ip>/edit and uploading it from there. Afterwards you can access the file editor via the same URL to edit files directly on the device.
Each file created/uploaded that way can be accessed via the corresponding URL (e.g. http://<device-ip>/myPage to access /myPage.htm).
An OTA password can be set up with
ESPEssentials::init("Project Name", "hunter2");Open http://<device-ip>/update and select a .bin file to upload a new firmware to the ESP8266/ESP32 from within the web browser. If a password has been supplied to init you will be asked to authenticate. The username is admin.