diff --git a/src/main.cpp b/src/main.cpp index 610fa92..13bad7a 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -2,32 +2,32 @@ Source: https://randomnerdtutorials.com/esp32-over-the-air-ota-programming/ -To update the firmware with Platform IO, do a build and then upload in the web interface the file -.pio/build/esp32doit-devkit-v1/firmware.bin +To update the firmware with Platform IO, do a build and then upload in the web +interface the file .pio/build/esp32doit-devkit-v1/firmware.bin */ #include /* - * Rui Santos + * Rui Santos * Complete Project Details http://randomnerdtutorials.com */ -#include -#include -#include #include #include +#include +#include +#include const char* host = "esp32ota"; const char* ssid = "JoNelsDarlings"; const char* password = "Paris2016"; -//variabls to blink without delay: +// variabls to blink without delay: const int led = 2; -unsigned long previousMillis = 0; // will store last time LED was updated -const long interval = 1000; // interval at which to blink (milliseconds) -int ledState = LOW; // ledState used to set the LED +unsigned long previousMillis = 0; // will store last time LED was updated +const long interval = 1000; // interval at which to blink (milliseconds) +int ledState = LOW; // ledState used to set the LED WebServer server(80); @@ -35,34 +35,34 @@ WebServer server(80); * Login page */ -const char* loginIndex = - "
" +const char* loginIndex = + "" "" - "" - "" - "
" - "
" - "" - "" - "" - "" - "
" - "
" - "" - "" - "" - "
" - "
" - "" - "" - "" - "" + "" + "" + "
" + "
" + "" + "" + "" + "" + "
" + "
" + "" + "" + "" + "
" + "
" + "" + "" + "" + "" "
" - "
ESP32 Login Page
" - "
" - "
Username:
Password:
" + "
ESP32 Login Page
" + "
" + "
Username:
Password:
" -"
" -""; - + ""; + /* * Server Index Page */ - -const char* serverIndex = -"" -"
" - "" - "" + +const char* serverIndex = + ""; + "
progress: 0%
" + ""; /* * setup function */ void setup(void) { pinMode(led, OUTPUT); - + Serial.begin(9600); // Connect to WiFi network WiFi.begin(ssid, password); Serial.println(""); - // Wait for connection or reboot if it doesn't connect for too long + // Wait for connection or reboot if it doesn't connect for too long uint32_t wifiConnAttements = 0; while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); if (wifiConnAttements++ > 120) { - Serial.println(""); + Serial.println( + ""); ESP.restart(); } } - Serial.println(""); Serial.print("Connected to "); Serial.println(ssid); @@ -148,7 +151,7 @@ void setup(void) { Serial.println(WiFi.localIP()); /*use mdns for host name resolution*/ - if (!MDNS.begin(host)) { //http://esp32ota.local + if (!MDNS.begin(host)) { // http://esp32ota.local Serial.println("Error setting up MDNS responder!"); while (1) { delay(1000); @@ -165,30 +168,37 @@ void setup(void) { server.send(200, "text/html", serverIndex); }); /*handling uploading firmware file */ - server.on("/update", HTTP_POST, []() { - server.sendHeader("Connection", "close"); - server.send(200, "text/plain", (Update.hasError()) ? "FAIL" : "OK"); - ESP.restart(); - }, []() { - HTTPUpload& upload = server.upload(); - if (upload.status == UPLOAD_FILE_START) { - Serial.printf("Update: %s\n", upload.filename.c_str()); - if (!Update.begin(UPDATE_SIZE_UNKNOWN)) { //start with max available size - Update.printError(Serial); - } - } else if (upload.status == UPLOAD_FILE_WRITE) { - /* flashing firmware to ESP*/ - if (Update.write(upload.buf, upload.currentSize) != upload.currentSize) { - Update.printError(Serial); - } - } else if (upload.status == UPLOAD_FILE_END) { - if (Update.end(true)) { //true to set the size to the current progress - Serial.printf("Update Success: %u\nRebooting...\n", upload.totalSize); - } else { - Update.printError(Serial); - } - } - }); + server.on( + "/update", HTTP_POST, + []() { + server.sendHeader("Connection", "close"); + server.send(200, "text/plain", (Update.hasError()) ? "FAIL" : "OK"); + ESP.restart(); + }, + []() { + HTTPUpload& upload = server.upload(); + if (upload.status == UPLOAD_FILE_START) { + Serial.printf("Update: %s\n", upload.filename.c_str()); + if (!Update.begin( + UPDATE_SIZE_UNKNOWN)) { // start with max available size + Update.printError(Serial); + } + } else if (upload.status == UPLOAD_FILE_WRITE) { + /* flashing firmware to ESP*/ + if (Update.write(upload.buf, upload.currentSize) != + upload.currentSize) { + Update.printError(Serial); + } + } else if (upload.status == UPLOAD_FILE_END) { + if (Update.end( + true)) { // true to set the size to the current progress + Serial.printf("Update Success: %u\nRebooting...\n", + upload.totalSize); + } else { + Update.printError(Serial); + } + } + }); server.begin(); } @@ -196,7 +206,7 @@ void loop(void) { server.handleClient(); delay(1); - //loop to blink without delay + // loop to blink without delay unsigned long currentMillis = millis(); if (currentMillis - previousMillis >= interval) {