Closed FlorianLudwig closed 3 years ago
Thanks for the PR! While ota.cpp with Bintray worked surprisingly stable, the code now needs to be refactored as a whole, before Bintray is taken down, as announced for May 2021.
The original ESP32 ota sample code serves a possible template:
My solution was to host the firmware files myself and have a bintray-compatible api for metadata so that the update code just needs to change the domain and certificates.
While implementing that I stumbled upon the issue that the update code used case-sensitive headers.
Using this high level API could be an alternative approach: https://github.com/espressif/arduino-esp32/blob/master/libraries/HTTPUpdate/examples/httpUpdateSecure/httpUpdateSecure.ino
HTTP Headers are case insensitive. But the OTA client expects them in a certain case. This patch makes the client treat http headers case insensitive.
This makes it easier to use a different server for storing update files.