[RES-3.8] 由于 flash 启动的速度慢于芯⽚读取 flash 的速度,芯片上电或 Deep-sleep 醒来后,会随机发生一次看门狗复位

影响版本: v0.0 v1.0 v1.1

描述

如果 ESP32 在 flash 可读之前就进行读取,则无效数据会使启动失败,这时会发生看门狗复位。如果 ESP32 VDD_SDIO 用作 flash 电源,则芯片上电和 Deep-sleep 醒来时都可能发生看门狗复位。

变通方法

  1. 更换更快的 flash,要求 flash 上电到可读的时间小于 800 μs。这种方法可以绕过芯片上电和 Deep-sleep 醒来时的看门狗复位。

  2. Deep-sleep 醒来后的看门狗复位问题在 ESP-IDF v2.0 及更高版本中自动绕过(延迟时间可以根据需要配置)。具体方式是从 Deep-sleep 醒来后首先读取 RTC fast memory 中的指令,等待一段时间,然后再读取 flash。

解决方案

已在芯片版本 v3.0 中修复。