We have some trouble switching between IDF version with an update process. (IDF 4.4.2 -> 4.4.5)
I am using IDF-Version 4.4.2 with ESP32 Wrover Module.
The Flash is encrypted and some different part of Partition too. USB downloading on the release / costumer devices is disabled.
To Update the device, we are using the OTA update function from ESP Standard library. We have two OTA Partitions and no Factory Firmware Partition.
We are planning to use the new IDF Version 4.4.5.
When we update (with OTA Update function) the device with IDF 4.4.5 builded version, we get some troubles.
The bootloader and the partition table are not updated, only the user Firmware.
1. PWM Out is not working. (No error will be generated during initialization - only after activation no PWM Output)
2. NVS Ram some parameters are lost or changed - this is only on very few devices
3. Get some wired logs from efuse:
#
Code: Select all
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 7 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 8 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 1 bits starting with 2 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 7 bits starting with 20 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 9 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 7 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 8 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 1 bits starting with 2 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 7 bits starting with 20 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 9 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 7 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 8 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 1 bits starting with 2 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 7 bits starting with 20 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 9 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 7 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 8 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 1 bits starting with 2 bit
D (9679) efuse: In EFUSE_BLK0__DATA0_REG is used 7 bits starting with 20 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 9 bit
D (9679) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 7 bit
D (9689) efuse: In EFUSE_BLK0__DATA6_REG is used 1 bits starting with 8 bit
D (9689) efuse: In EFUSE_BLK0__DATA0_REG is used 1 bits starting with 2 bit
Code: Select all
esp_log_timestamp()
A lot of small problem occur, and they are always different on different devices.
We have been making regular updates with IDF version 4.4.2 for more than a year, and so far we have never had a problem. So, this error only occurs when switching between IDF versions. If we re-flash a firmware that was generated with IDF 4.4.2, all errors will disappear. (except lost data on nvs)
I tested this update on the Development Device - with ota update too - without Flash encryption, I have no troubles till now.
For me ist look like somting with a mix flash encryption and idf version.
Has anyone tried to update IDF version using encrypted firmware? (using esp OTA Update)
Does anyone have experience with how to do this update in a safe way?
Thank you in advance.
Best regards,
Boti