not all HTTP servers works fine with OTA, why???
When I send the GET request to the HTTP server, I send:
Code: Select all
10.0.0.20--[02/oct/2018:15:06:52 +0200] “GET/ firmware.bin http/1.1” 2001 1159872 “-“ “esp32 http Client/1.0”
Using different HTTP servers with the same firmware on my ESP32 I do not get the same result, some work and others do not it.
//////////////////////////////
// These are my tests //
/////////////////////////////
------------------------------------------------------------------
From Internet :
No problem - Works fine OTA OK
I use CONFIG_FIRMWARE_UPGRADE_URL = http://my_site/my_folder/image.bin without indicating any port
downloads correctly the image.bin and upgrade the firmware
on HTTP server I use example CONFIG_FIRMWARE_UPGRADE_URL = http://10.10.10.2:8080/image.bin
------------------------------------------------------------------
From Android:
SimpleHTTpServer - ubi.jp - Works fine OTA OK
HFS HTTP File Server 1.0 - vortexinfinitum - Works fine OTA OK
Http Server – streamingnology inc - Not works OTA error
Tiny Web Server – Leonardo Javier Russo - Not works OTA error
HTTP Server powered by Apache - Tautvydas Andrikys - Not works OTA error
------------------------------------------------------------------
From IOS:
AirDisk -XUEHUI wu - Not works OTA error
Files – File Manager & Browser – Hian Zin Jong - Works fine OTA OK
------------------------------------------------------------------
But if I download the image.bin file from all HTTP server above with a browser and then compare it with the original, the files are identical and start with 0xE9 0x09
Now I would like to build a custom app to perform OTA, but I would like to know what is the reason why a server works and another server does not.
Any idea?