HI Thanks for replyWi-Fi gets turned off when the USB bootloader is started. Even if you use the OTA (over-the-air) WiFi bootloader it appears to get turned off when the chip resets to start your new software. The only way round this, I think, is to write your own program handler that can load new routines and patch them in, in real time. I don't think anyone has done that yet for the ESP32 having quickly scanned Github.
While this is theoretically possible, it seems extremely brittle and hard to make failsafe. I have to wonder why this is necessary. If there is new firmware, what will the WiFi be communicating with until it is running?The only way round this, I think, is to write your own program handler that can load new routines and patch them in, in real time. I don't think anyone has done that yet for the ESP32 having quickly scanned Github.
Yes You are correctWhile this is theoretically possible, it seems extremely brittle and hard to make failsafe. I have to wonder why this is necessary. If there is new firmware, what will the WiFi be communicating with until it is running?
If you kept one core as the supervisor, handling WiFi and critical timing, and used external flash, it would seem you could have the other core just be a sort of client to the supervisor that would update the flash and reset the client core to start the new firmware.
While I can’t help with specifics, I can tell you that the Arduino bootloader allows programs to be uploaded and immediately use the WiFi. Perhaps you just need a small bootloader that isn’t overwritten.Yes You are correct
But in my case when I upload new code then WiFi disable . But it is obvious when I upload new code then WiFi scan Code overwrite and WiFi disable
Can I able to upload WiFi scan code to one partition and keep it continuously WiFi reconnect when esp restart
and another partition or first boots pace for upload new codes without effecting WiFi scan codes
Please advise
Thanks in advanced
It doesn't matter any kind of reset if core0 code doesn't eraseIn theory the two partitions could be running completely independently though core0 has some supervisory functions. Certainly you could have all your WiFi routines in core0 and your gane code in core1 then only update core1 but i think you'll have to roll your own. I don't know how you reset core1 without a general chip reset.
As I said you'll have to write your own program loader and use the memory management functions to assign flash memory to store the code for core1 tasks then activate those tasks. Here's a tutorial on the latter: https://techtutorialsx.com/2017/05/09/esp32-running-code-on-a-specific-core/It doesn't matter any kind of reset if core0 code doesn't erase
Still I don't know how may I upload the codes to core1 without effecting codes in core0