I added OTA features to my esp32 project and have a problems(My hardware is ESP32-Ethernet-Kit_A_V1.1(ESP32-WROVER-B + IP101), and my IDF version is ESP-IDF v4.0-beta1-180-ga21eb04cc.I have installed the Ethernet driver correctly and got the local IP (DHCP succeeded)):
When I use Hello word.bin (file size is 150kb), I can successfully implement OTA(Almost every test was a success), however when I use my own project's .bin file (file size is 1.2MB), OTA always failed and always return the errors :
Same hardware, same server, different image file sizes,the small image can succeed, but the larger image is not successful, so I guess this is not the HTTP server fault, but the defect of ESP IDF.[15:05:53:726] <0x1b>[0;32mI (1085052) esp_https_ota: Starting OTA...<0x1b>[0m␍␊
[15:05:53:726] <0x1b>[0;32mI (1085052) esp_https_ota: Writing to partition subtype 17 at offset 0x200000<0x1b>[0m␍␊
[15:06:33:788] <0x1b>[0;31mE (1125122) esp-tls: read error :-76:<0x1b>[0m␍␊
[15:06:33:804] <0x1b>[0;31mE (1125122) TRANS_SSL: esp_tls_conn_read error, errno=No more processes<0x1b>[0m␍␊
[15:06:38:860] <0x1b>[0;32mI (1130182) esp_https_ota: Connection closed, all data received<0x1b>[0m␍␊
[15:06:38:860] <0x1b>[0;32mI (1130182) esp_image: segment 0: paddr=0x00200020 vaddr=0x3f400020 size=0x33b7c (211836) map<0x1b>[0m␍␊
[15:06:38:988] <0x1b>[0;32mI (1130302) esp_image: segment 1: paddr=0x00233ba4 vaddr=0x3ffbdb60 size=0x03858 ( 14424) <0x1b>[0m␍␊
[15:06:38:988] <0x1b>[0;32mI (1130312) esp_image: segment 2: paddr=0x00237404 vaddr=0x40080000 size=0x00400 ( 1024) <0x1b>[0m␍␊
[15:06:39:004] <0x1b>[0;32mI (1130312) esp_image: segment 3: paddr=0x0023780c vaddr=0x40080400 size=0x08804 ( 34820) <0x1b>[0m␍␊
[15:06:39:020] <0x1b>[0;31mE (1130342) esp_image: invalid segment length 0xffffffff<0x1b>[0m␍␊
[15:06:39:020] <0x1b>[0;31mE (1130342) main: Firmware Upgrades Failed 5379, 0x00001503<0x1b>[0m␍␊
[15:06:39:036] <0x1b>[0;31mE (1130342) main: ota 1st fail!,again<0x1b>[0m␍␊
so I guess the problem is your esp-idf's bug:when the firmware image size is larger, the lower the success rate or OTA.
I'd like to know if you have tested the OTA when the firmware size is larger than hello word.bin (for example, the image size is larger than 1.5 MB).In particular, have you tested the OTA situation when using ip101(ethernet mode) for network communication?
Best Wishes!
Harry