-
Notifications
You must be signed in to change notification settings - Fork 7.8k
Description
Board
ESP32-C3
Device Description
Custom Board
Hardware Configuration
It's not relevant, cuz it works for OTA processes that have the same "partitions table scheme".
But, only power components and using BT and WiFi to build a "sensor gateway", no special hardware connected.
Version
v3.0.4
IDE Name
PlatformIO
Operating System
Windows 11
Flash frequency
40MHz
PSRAM enabled
yes
Upload speed
115200
Description
Hi @VojtechBartoska and everyone,
I’m working with an ESP32-C3 using PlatformIO and the Arduino framework, and I’ve run into an issue with updating devices in the field via OTA. The current partition table on the devices limits the maximum firmware size, and my new firmware is larger than what the current partition table allows.
I’ve successfully created a smaller, intermediate firmware that fits within the existing partition table and uses a new partition table configuration. However, even after flashing this intermediate firmware via OTA, it seems that the partition table on the device is not updated. As a result, when I try to upload the larger firmware (which would fit in the new partition layout), I still receive a "too large" error, indicating that the partition table remains unchanged.
I’m looking for a solution to remotely update the partition table via OTA so that I can upload the larger firmware without having to physically access the devices. Is there any way to perform this partition table update via OTA, since I have nowadays many many devices country wide (Brazil)?
Any guidance or suggestions on how to handle this situation would be greatly appreciated.
Thanks in advance for your help!
Sketch
A bigger firmware than it could fit on actual partition table.Debug Message
[112397][E][Updater.cpp:163] begin(): too large 1351296 > 1310720
Other Steps to Reproduce
Steps:
- Install my original firmware using "Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)" partition_table
- Send a new firmware with partition_table with "NVS = 20 Kb, OTA = 8Kb, app0 = 1664Kb, app1 = 1664Kb, spiffs = 640Kb, coredump = 64Kb" using Updater.cpp OTA Method
- See the debug message from serial
I have checked existing issues, online documentation and the Troubleshooting Guide
- I confirm I have checked existing issues, online documentation and Troubleshooting guide.