Skip to content

Commit 352d285

Browse files
committed
Fixed a Webpage Bug
Optimized Library and a fixed a webpage bug where, it would not display any fail reason. - Optimized Arduino Library - Fixed `Failed Reason` not showing on Webpage - Used Zopli to decrease size of webpage for better performance.
1 parent ffc150a commit 352d285

File tree

4 files changed

+22
-8
lines changed

4 files changed

+22
-8
lines changed

examples/ESP32_Async_Demo/ESP32_Async_Demo.ino

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ void setup(void) {
3131
request->send(200, "text/plain", "Hi! I am ESP32.");
3232
});
3333

34-
AsyncElegantOTA.begin(server); // Start ElegantOTA
34+
AsyncElegantOTA.begin(&server); // Start ElegantOTA
3535
server.begin();
3636
Serial.println("HTTP server started");
3737
}

examples/ESP8266_Async_Demo/ESP8266_Async_Demo.ino

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ void setup(void) {
3131
request->send(200, "text/plain", "Hi! I am ESP8266.");
3232
});
3333

34-
AsyncElegantOTA.begin(server); // Start ElegantOTA
34+
AsyncElegantOTA.begin(&server); // Start ElegantOTA
3535
server.begin();
3636
Serial.println("HTTP server started");
3737
}

src/AsyncElegantOTA.h

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#include <Hash.h>
1414
#include <AsyncTCP.h>
1515
#include <Update.h>
16+
#include <esp_int_wdt.h>
17+
#include <esp_task_wdt.h>
1618
#endif
1719

1820
#include <ESPAsyncWebServer.h>
@@ -23,14 +25,16 @@
2325
class AsyncElegantOtaClass{
2426
public:
2527

26-
void begin(AsyncWebServer &server){
27-
server.on("/update", HTTP_GET, [&](AsyncWebServerRequest *request){
28+
void begin(AsyncWebServer *server){
29+
_server = server;
30+
31+
_server->on("/update", HTTP_GET, [&](AsyncWebServerRequest *request){
2832
AsyncWebServerResponse *response = request->beginResponse_P(200, "text/html", ELEGANT_HTML, ELEGANT_HTML_SIZE);
2933
response->addHeader("Content-Encoding", "gzip");
3034
request->send(response);
3135
});
3236

33-
server.on("/update", HTTP_POST, [&](AsyncWebServerRequest *request) {
37+
_server->on("/update", HTTP_POST, [&](AsyncWebServerRequest *request) {
3438
// the request handler is triggered after the upload has finished...
3539
// create the response, add header, and send response
3640
AsyncWebServerResponse *response = request->beginResponse((Update.hasError())?500:200, "text/plain", (Update.hasError())?"FAIL":"OK");
@@ -74,11 +78,21 @@ class AsyncElegantOtaClass{
7478

7579
void loop(){
7680
if(restartRequired){
77-
ESP.restart();
81+
yield();
82+
delay(1000);
83+
yield();
84+
#if defined(ESP8266)
85+
ESP.restart();
86+
#elif defined(ESP32)
87+
esp_task_wdt_init(1,true);
88+
esp_task_wdt_add(NULL);
89+
while(true);
90+
#endif
7891
}
7992
}
8093

8194
private:
95+
AsyncWebServer *_server;
8296
bool restartRequired = false;
8397

8498
};

src/elegantWebpage.h

Lines changed: 2 additions & 2 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)