OTA stop working with new ESP32 Arduino Core 2.0.5

@Dmitry did you identify any issue with FOTA on new Arduino Esp32 Core 2.0.5?

I just noted that, after updating from 2.0.4 to 2.0.5 the FOTA stop working.

I also checked in the Github changelog ( Release ESP32 Arduino 2.0.5 based on ESP-IDF 4.4.2 · espressif/arduino-esp32 · GitHub )… It seems they did the change below:

“Fixed issue of device crashing in Rainmaker OTA” => https://github.com/espressif/arduino-esp32/issues/5420

I revert back to 2.0.4 and FOTA is working again.

Can you please check from your side if any fix is needed so that we can use 2.0.5?

Thanks
Hugo

Hi,

For me, OTA works with this version, please specify what error occurs and at what stage?

Hello @DimitryPB

Thanks for your response.

In that case, I will check again what can be wrong or confliting with Blynk OTA.

I will share the results of my analysis.

Just for the record, during the first implementation of Blynk OTA in our application, we concluded that interrupts were affecting the process. We will check again if anything new in 2.0.5 can now be affecting the process again…

BLYNK_WRITE(InternalPinOTA) {

//Stop all interrupts or process that can affect OTA
//
// do something
//
//Then begin OTA...

  overTheAirURL = param.asString();

  edgentTimer.setTimeout(2000L, [](){
    // Start OTA
    Blynk.logEvent("sys_ota", "OTA started");

    // Disconnect, not to interfere with OTA process
    Blynk.disconnect();

    BlynkState::set(MODE_OTA_UPGRADE);
  });
}

As I mentioned above, it looks like some change on 2.0.5 (linked to interrupt) is affecting the OTA process… I will continue testing

OTA started...

Guru Meditation Error: Core  1 panic'ed (Interrupt wdt timeout on CPU1). 

Core  1 register dump:
PC      : 0x400904f6  PS      : 0x00060135  A0      : 0x8008f496  A1      : 0x3ffb2560  
A2      : 0x3ffb4dc8  A3      : 0x3ffb8890  A4      : 0x00000004  A5      : 0x00060123  
A6      : 0x00060123  A7      : 0x00000001  A8      : 0x3ffb8890  A9      : 0x00000018  
A10     : 0x3ffb8890  A11     : 0x00000018  A12     : 0x3ffc6044  A13     : 0x00060123  
A14     : 0x007bf2b8  A15     : 0x003fffff  SAR     : 0x0000001c  EXCCAUSE: 0x00000006  
EXCVADDR: 0x00000000  LBEG    : 0x40089db0  LEND    : 0x40089dc6  LCOUNT  : 0x00000000  


Backtrace:0x400904f3:0x3ffb25600x4008f493:0x3ffb2580 0x4008e6a8:0x3ffb25a0 0x400eacc2:0x3ffb25e0 0x400e618a:0x3ffb2620 0x400e1c45:0x3ffb2700 0x400e1d4d:0x3ffb2720 0x400e18ee:0x3ffb2740 0x400e1994:0x3ffb2760 0x400dc563:0x3ffb2780 0x400dec69:0x3ffb27d0 0x400e82bd:0x3ffb2820 


Core  0 register dump:
PC      : 0x⸮

i think its more likely to be linked to the watchdog timer.

Pete.