I am trying to run the HTTPS OTA Demo.
https://github.com/espressif/arduino-es ... Update.ino
I just added my WiFi Credentials, URL and Certificate (I am using the certificate in another sketch, so it should work). I don't know why the OTA update is failing.
Any help is very welcome.
Hardware:
Board: ESP32 Lolin D32
Core Installation version: arduino-esp32 1.0.5-rc6
IDE name: vscode with arduino-plugin
Partion Sheme: Minimal SPIFFS
Flash Frequency: 80Mhz
PSRAM enabled: not sure
Upload Speed: 115200
Computer OS: Mac OSX
Code
Code: Select all
// This sketch provide the functionality of OTA Firmware Upgrade
#include "WiFi.h"
#include "HttpsOTAUpdate.h"
// This sketch shows how to implement HTTPS firmware update Over The Air.
// Please provide your WiFi credentials, https URL to the firmware image and the server certificate.
static const char *ssid = "**********"; // your network SSID (name of wifi network)
static const char *password = "**********"; // your network password
static const char *url = "https://vision11.ch/inklay/bin/inklay.bin"; //state url of your firmware image
const char *server_certificate =
"-----BEGIN CERTIFICATE-----\n"
"MIIEZTCCA02gAwIBAgIQQAF1BIMUpMghjISpDBbN3zANBgkqhkiG9w0BAQsFADA/\n"
"MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT\n"
"DkRTVCBSb290IENBIFgzMB4XDTIwMTAwNzE5MjE0MFoXDTIxMDkyOTE5MjE0MFow\n"
"MjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxCzAJBgNVBAMT\n"
"AlIzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuwIVKMz2oJTTDxLs\n"
"jVWSw/iC8ZmmekKIp10mqrUrucVMsa+Oa/l1yKPXD0eUFFU1V4yeqKI5GfWCPEKp\n"
"Tm71O8Mu243AsFzzWTjn7c9p8FoLG77AlCQlh/o3cbMT5xys4Zvv2+Q7RVJFlqnB\n"
"U840yFLuta7tj95gcOKlVKu2bQ6XpUA0ayvTvGbrZjR8+muLj1cpmfgwF126cm/7\n"
"gcWt0oZYPRfH5wm78Sv3htzB2nFd1EbjzK0lwYi8YGd1ZrPxGPeiXOZT/zqItkel\n"
"/xMY6pgJdz+dU/nPAeX1pnAXFK9jpP+Zs5Od3FOnBv5IhR2haa4ldbsTzFID9e1R\n"
"oYvbFQIDAQABo4IBaDCCAWQwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8E\n"
"BAMCAYYwSwYIKwYBBQUHAQEEPzA9MDsGCCsGAQUFBzAChi9odHRwOi8vYXBwcy5p\n"
"ZGVudHJ1c3QuY29tL3Jvb3RzL2RzdHJvb3RjYXgzLnA3YzAfBgNVHSMEGDAWgBTE\n"
"p7Gkeyxx+tvhS5B1/8QVYIWJEDBUBgNVHSAETTBLMAgGBmeBDAECATA/BgsrBgEE\n"
"AYLfEwEBATAwMC4GCCsGAQUFBwIBFiJodHRwOi8vY3BzLnJvb3QteDEubGV0c2Vu\n"
"Y3J5cHQub3JnMDwGA1UdHwQ1MDMwMaAvoC2GK2h0dHA6Ly9jcmwuaWRlbnRydXN0\n"
"LmNvbS9EU1RST09UQ0FYM0NSTC5jcmwwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYf\n"
"r52LFMLGMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjANBgkqhkiG9w0B\n"
"AQsFAAOCAQEA2UzgyfWEiDcx27sT4rP8i2tiEmxYt0l+PAK3qB8oYevO4C5z70kH\n"
"ejWEHx2taPDY/laBL21/WKZuNTYQHHPD5b1tXgHXbnL7KqC401dk5VvCadTQsvd8\n"
"S8MXjohyc9z9/G2948kLjmE6Flh9dDYrVYA9x2O+hEPGOaEOa1eePynBgPayvUfL\n"
"qjBstzLhWVQLGAkXXmNs+5ZnPBxzDJOLxhF2JIbeQAcH5H0tZrUlo5ZYyOqA7s9p\n"
"O5b85o3AM/OJ+CktFBQtfvBhcJVd9wvlwPsk+uyOy2HI7mNxKKgsBTt375teA2Tw\n"
"UdHkhVNcsAKX1H7GNNLOEADksd86wuoXvg==\n"
"-----END CERTIFICATE-----\n"
"";
static HttpsOTAStatus_t otastatus;
void HttpEvent(HttpEvent_t *event)
{
switch (event->event_id)
{
case HTTP_EVENT_ERROR:
Serial.println("Http Event Error");
break;
case HTTP_EVENT_ON_CONNECTED:
Serial.println("Http Event On Connected");
break;
case HTTP_EVENT_HEADER_SENT:
Serial.println("Http Event Header Sent");
break;
case HTTP_EVENT_ON_HEADER:
Serial.printf("Http Event On Header, key=%s, value=%s\n", event->header_key, event->header_value);
break;
case HTTP_EVENT_ON_DATA:
break;
case HTTP_EVENT_ON_FINISH:
Serial.println("Http Event On Finish");
break;
case HTTP_EVENT_DISCONNECTED:
Serial.println("Http Event Disconnected");
break;
}
}
void setup()
{
Serial.begin(115200);
Serial.print("Attempting to connect to SSID: ");
WiFi.begin(ssid, password);
// attempt to connect to Wifi network:
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(1000);
}
Serial.print("Connected to ");
Serial.println(ssid);
HttpsOTA.onHttpEvent(HttpEvent);
Serial.println("Starting OTA");
HttpsOTA.begin(url, server_certificate);
Serial.println("Please Wait it takes some time ...");
}
void loop()
{
otastatus = HttpsOTA.status();
if (otastatus == HTTPS_OTA_SUCCESS)
{
Serial.println("Firmware written successfully. To reboot device, call API ESP.restart() or PUSH restart button on device");
}
else if (otastatus == HTTPS_OTA_FAIL)
{
Serial.println("Firmware Upgrade Fail");
}
delay(1000);
}
Code: Select all
Starting OTA
Please Wait it takes some time ...
E (2365) esp-tls: mbedtls_ssl_handshake returned -0x2700
E (2368) esp-tls: Failed to open new connection
E (2368) TRANS_SSL: Failed to open a new connection
E (2368) HTTP_CLIENT: Connection failed, sock < 0
E (2373) esp_https_ota: Failed to open HTTP connection: ESP_ERR_HTTP_CONNECT
E (2379) esp_https_ota: Failed to establish HTTP connection
Http Event Disconnected
Http Event Disconnected
Firmware Upgrade Fail
Code: Select all
HttpsOTA.begin(url, cert_vision11, false);
Code: Select all
Attempting to connect to SSID: .Connected to Lukas WiFi
Starting OTA
Please Wait it takes some time ...
Http Event On Connected
Http Event Header Sent
Http Event On Header, key=Connection, value=Keep-Alive
Http Event On Header, key=Content-Type, value=application/octet-stream
Http Event On Header, key=Last-Modified, value=Mon, 25 Jan 2021 20:52:29 GMT
Http Event On Header, key=Etag, value="1812b0-600f2f8d-cb4e1db8c82e7411;;;"
Http Event On Header, key=Accept-Ranges, value=bytes
Http Event On Header, key=Content-Length, value=1577648
Http Event On Header, key=Date, value=Tue, 26 Jan 2021 20:48:35 GMT
Http Event On Header, key=Alt-Svc, value=quic=":443"; ma=2592000; v="43,46", h3-Q043=":443"; ma=2592000, h3-Q046=":443"; ma=2592000, h3-Q050=":443"; ma=2592000, h3-25=":443"; ma=2592000, h3-27=":443"; ma=2592000
E (7413) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
E (7450) task_wdt: - IDLE0 (CPU 0)
E (7582) task_wdt: Tasks currently running:
E (7582) task_wdt: CPU 0: ipc0
E (7582) task_wdt: CPU 1: IDLE1
E (7582) task_wdt: Aborting.
abort() was called at PC 0x401085f0 on core 0
ELF file SHA256: 0000000000000000
Backtrace: 0x40088214:0x3ffbe2c0 0x40088491:0x3ffbe2e0 0x401085f0:0x3ffbe300 0x40082e65:0x3ffbe320 0x40085485:0x3ffb9d60 0x40082541:0x3ffb9d80 0x40085203:0x3ffb9da0 0x4008942a:0x3ffb9dc0
Rebooting...