esp_ota_begin() causes reset

JetForMe
Posts: 10
Joined: Mon Jan 27, 2025 8:55 am

esp_ota_begin() causes reset

Postby JetForMe » Mon May 19, 2025 5:42 am

I'm struggling to implement OTA updates. Whenever I call esp_ota_begin(), the ESP32-S3 just resets itself, with a second or two. If I attempt to erase a very small portion of of a partition (like 4K), it succeeds. But I can't call esp_ota_begin(), I have to call esp_partition_erase_range() to do that. So I can't really do an OTA update.

When it resets, it writes this to the serial port:

ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x8 (TG1WDT_SYS_RST),boot:0x8 (SPI_FAST_FLASH_BOOT)
Saved PC:0x40379e60
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce2820,len:0x118c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xc20
load:0x403cb700,len:0x30e0
entry 0x403c88b8

And then begins running my application again.

I've verified that the partition it’s trying to write to is the correct one. My partition map looks like this:

# Name, Type, SubType, Offset, Size, Flags
nvs, data, nvs, 0x9000, 0x5000,
otadata, data, ota, 0xe000, 0x2000,
app0, app, ota_0, 0x10000, 0x640000,
app1, app, ota_1, 0x650000, 0x640000,
storage, data, littlefs, 0xc90000, 0x360000,
coredump, data, coredump, 0xFF0000, 0x10000,


Any ideas?

Who is online

Users browsing this forum: Applebot, Barkrowler and 6 guests