ayushsharma82 / ElegantOTA

OTA updates made slick and simple for everyone!
https://elegantota.pro
GNU Affero General Public License v3.0
643 stars 119 forks source link

Firmware updating doesn't works with huge partition table #234

Open Vano3d opened 2 weeks ago

Vano3d commented 2 weeks ago

Hello, I'm using huge partition csv: Name, Type, SubType, Offset, Size, Flags nvs, data, nvs, 0x9000, 0x5000, otadata, data, ota, 0xe000, 0x2000, app0, app, ota_0, 0x10000, 0x300000, spiffs, data, spiffs, 0x310000,0xF0000,

And I use a lot of another libs in my project:

gyverlibs/GyverOLED@^1.6.1 gyverlibs/EncButton@^3.6.0 gyverlibs/GyverTimer@^3.2 gyverlibs/GyverBlinker@^1.1.0 bblanchon/ArduinoJson@^7.0.0 mathieucarbou/AsyncTCP @ 3.2.10 https://github.com/ayushsharma82/ElegantOTA#3.1.6 adafruit/Adafruit ADS1X15@^2.5.0 bodmer/TFT_eSPI@^2.5.43 gyverlibs/GyverSegment@^1.4.5 build_flags = -DELEGANTOTA_USE_ASYNC_WEBSERVER=1

ElegantOTA stops updating on 14%, then ESP32 rebooting (( With standard partition or without updating working perfectly, but I have a big project.

Thanks for assistance!

mathieucarbou commented 2 weeks ago

I am in the same use case as you, that's why I did MycilaSafeBoot: a recovery partition allowing to flash a bigger app partition. You can learn more at:

https://github.com/mathieucarbou/MycilaSafeBoot

ElegantOTA requires a standard partition model where you have two app partitions: ota_0 and ota1 with the same size for both.