ПинЛог

erase_flash: когда обязательно нужен полный стёр ESP32

Команда esptool.py erase_flash полностью очищает содержимое флеш-памяти чипа, включая NVS и старую partition table — это лечит целый класс проблем, которые не решаются обычной перепрошивкой скетча.

Возможные причины

  • Смена схемы partition table между прошивками оставляет несовместимые старые данные
  • Повреждённые данные NVS вызывают сбои при чтении сохранённых настроек Wi-Fi/конфигурации
  • Плата залипла в странном режиме загрузки после неудачной прошивки сторонней прошивки
  • Нужно гарантированно начать с чистого состояния для диагностики bootloop

Что сделать

  1. Войдите в bootloader (если плата не входит автоматически: BOOT + EN, см. статью про esptool.py).
  2. Выполните полную очистку: esptool.py --port COMx erase_flash — процесс занимает от нескольких секунд до пары минут в зависимости от объёма флеш.
  3. После erase_flash обязательно прошейте плату заново — пустая флеш-память не содержит загрузчика и код не запустится.
  4. Если используете PlatformIO/Arduino, просто выполните обычную загрузку скетча сразу после erase_flash — она восстановит и загрузчик, и приложение.
  5. Проверьте результат через Serial Monitor: чистая загрузка без повторяющихся ошибок подтверждает, что стёр помог.

Когда менять железо

Замена не нужна — erase_flash это штатная операция обслуживания флеш-памяти, а не признак поломки платы.

Не официальная поддержка Espressif Systems. Названия команд и параметры сверяйте с версией esptool/IDF, установленной у вас.

Связанные материалы