parent
810be0f891
commit
d26c41f8a0
@ -0,0 +1,66 @@ |
|||||||
|
/*
|
||||||
|
OTAUpdate.ino, Example for the AutoConnect library. |
||||||
|
Copyright (c) 2020, Hieromon Ikasamo |
||||||
|
https://github.com/Hieromon/AutoConnect
|
||||||
|
This example is an implementation of a lightweight update feature |
||||||
|
that updates the ESP8266's firmware from your web browser. |
||||||
|
You need a compiled sketch binary file to the actual update and can |
||||||
|
retrieve it using Arduino-IDE menu: [Sketck] -> [Export compiled binary]. |
||||||
|
Then you will find the .bin file in your sketch folder. Select the.bin |
||||||
|
file on the update UI page to update the firmware. |
||||||
|
|
||||||
|
Notes: |
||||||
|
If you receive a following error, you need reset the module before sketch running. |
||||||
|
Update error: ERROR[11]: Invalid bootstrapping state, reset ESP8266 before updating. |
||||||
|
Refer to https://hieromon.github.io/AutoConnect/faq.html#hang-up-after-reset for details.
|
||||||
|
|
||||||
|
This software is released under the MIT License. |
||||||
|
https://opensource.org/licenses/MIT
|
||||||
|
*/ |
||||||
|
|
||||||
|
#if defined(ARDUINO_ARCH_ESP8266) |
||||||
|
#include <ESP8266WiFi.h> |
||||||
|
#include <ESP8266WebServer.h> |
||||||
|
typedef ESP8266WebServer WiFiWebServer; |
||||||
|
#elif defined(ARDUINO_ARCH_ESP32) |
||||||
|
#include <WiFi.h> |
||||||
|
#include <WebServer.h> |
||||||
|
typedef WebServer WiFiWebServer; |
||||||
|
#endif |
||||||
|
#include <AutoConnect.h> |
||||||
|
|
||||||
|
WiFiWebServer server; |
||||||
|
AutoConnect portal(server); |
||||||
|
AutoConnectConfig config; |
||||||
|
|
||||||
|
void setup() { |
||||||
|
delay(1000); |
||||||
|
Serial.begin(115200); |
||||||
|
Serial.println(); |
||||||
|
|
||||||
|
// Responder of root page and apply page handled directly from WebServer class.
|
||||||
|
server.on("/", []() { |
||||||
|
String content = R"( |
||||||
|
<!DOCTYPE html> |
||||||
|
<html> |
||||||
|
<head> |
||||||
|
<meta charset="UTF-8" name="viewport" content="width=device-width, initial-scale=1"> |
||||||
|
</head> |
||||||
|
<body> |
||||||
|
Place the root page with the sketch application.  |
||||||
|
__AC_LINK__ |
||||||
|
</body> |
||||||
|
</html> |
||||||
|
)"; |
||||||
|
content.replace("__AC_LINK__", String(AUTOCONNECT_LINK(COG_16))); |
||||||
|
server.send(200, "text/html", content); |
||||||
|
}); |
||||||
|
|
||||||
|
config.ota = AC_OTA_BUILTIN; |
||||||
|
portal.config(config); |
||||||
|
portal.begin(); |
||||||
|
} |
||||||
|
|
||||||
|
void loop() { |
||||||
|
portal.handleClient(); |
||||||
|
} |
Loading…
Reference in new issue