Как стереть Flash память ESP8266 NodeMCU (аппаратный сброс модуля)


В данной статье мы рассмотрим как стереть Flash память (флэш-память) модуля ESP8266 NodeMCU, то есть выполнить аппаратный сброс модуля и вернуть его к заводским настройкам. Восстановление заводских настроек модуля ESP8266 может быть полезно, если вы хотите удалить любые изменения, внесенные в прошивку или настройки конфигурации; если система часто дает сбои и вы не можете загрузить новый код; для очистки данных, которые больше не нужны, и других приложений. Стирать Flash память модуля ESP32 мы будем с помощью инструмента под названием esptool. Ранее на нашем сайте мы рассматривали аналогичную процедуру стирания Flash памяти модуля ESP32.

Как стереть Flash память ESP8266 NodeMCU (аппаратный сброс модуля)Установка esptool.py

Для выполнения сброса к заводским настройкам модуля ESP8266 NodeMCU мы будем использовать программу esptool, которая представляет собой платформо-независимую утилиту с открытым исходным кодом, основанную на языке Python. Она используется для взаимодействия с ROM загрузчиком (bootloader) в чипах от компании Espressif, к которым относится и ESP32.

Чтобы установить утилиту esptool необходимо чтобы на вашем компьютере был установлен Python 3.7 или новее. Вы можете скачать свежие версии установщика Python с его официального сайта.

Когда Python 3 будет установлен на вашем компьютере, откройте окно терминала (Terminal window ) и установите самую последнюю стабильную версию программы esptool.py с помощью установщика pip:

Примечание: с некоторыми установленными версиями Python приведенная команда может не работать и выдавать ошибку, в этом случае попробуйте одну из следующих команд:

Примечание №2: если и ни одна из этих команд не помогла, то по совету пользователя Сергея, написавшего его в комментарии к данной статье, попробуйте проапгрейдить установщик pip командой

После чего должна сработать команда

Также будет необходимо установить и утилиту Setuptools - в некоторых операционных системах ее нет по умолчанию. Ее можно установить с помощью следующей команды:

Итак, после описанных шагов у вас будет установлена программа esptool.py (в каталог Python по умолчанию для исполняемых файлов) и вы ее сможете запускать на выполнение. В окне терминала выполните команду:

Если esptool у вас установлена корректно, то в результате выполнения этой команды вы на экране должны увидеть следующую картину (независимо от вашей операционной системы):

Доступные параметры для программы esptool

Стирание Flash памяти ESP8266 NodeMCU

Чтобы стереть флэш-память модуля ESP8266 NodeMCU выполните следующую последовательность шагов:

1. Подключите модуль ESP8266 NodeMCU к вашему компьютеру.

2. Откройте на компьютере окно терминала.

3. Нажмите кнопку BOOT/FLASH на модуле ESP8266 NodeMCU.

4. Выполните следующую команду в окне терминала (продолжая удерживать кнопку FLASH/BOOT):

5. Когда начнется процесс стирания (Erasing) Flash памяти вы можете отпустить кнопку BOOT/FLASH. Через несколько секунд Flash память модуля ESP8266 NodeMCU будет стерта.

Процесс стирания Flash памяти модуля ESP8266 NodeMCU

Примечание: если после появления сообщения “Connecting …” на экране будут появляться новые серии точек (…) это будет означать что модуль ESP8266 не находится в режиме загрузчика/режиме прошивки (bootloader mode/flashing mode). В данном случае вам необходимо будет снова повторить все описанные шаги и снова держать кнопку BOOT/FLASH чтобы убедиться в том, что модуль ESP8266 перейдет в режим загрузчика/режим прошивки и процесс стирания Flash памяти успешно завершится.

Дисклеймер

Как видно из описания представленного способа, существуют некоторые "подводные камни", из-за которых по ряду причин он может не сработать. Поэтому просьба не писать в комментариях гневные фразы по поводу того, что я выложил здесь неработающий способ. К сожалению, более простого и 100% работающего способа стереть Flash память модуля ESP8266 NodeMCU я пока не нашел в сети интернет.

Источник статьи

(Проголосуй первым!)
Загрузка...
4 949 просмотров

Комментарии

Как стереть Flash память ESP8266 NodeMCU (аппаратный сброс модуля) — 12 комментариев

  1. Здравствуйте, попытался скачать программу все получилось, но ввожу я комманду ||python -m....|| то ответ powershell или cmd оба выдают просто python. Версия питона 3.14

    • Добрый вечер.
      Проблема в том, что команда python -m ... не работает, а просто запускает Python, указывает на то, что модуль (например, esptool) не установлен глобально или установлен неправильно.
      Поскольку у вас Python 3.14 (очень новая версия, даже свежее 3.12), вот пошаговый план исправления:
      1. Используйте правильную команду установки
      Замените python на py или python3 (часто помогает в Windows):
      py -m pip install esptool
      Если не работает, используйте:
      python -m pip install --upgrade esptool

      2. Проверьте, установился ли esptool
      После установки проверьте командой:
      py -m esptool --help
      Если видите справку — всё работает. Если ошибка No module named esptool — повторите установку.

      3. Если проблема сохраняется — обновите pip и setuptools
      py -m pip install --upgrade pip setuptools
      Затем снова:
      py -m pip install esptool

      4. Альтернатива: запуск без -m (если esptool добавлен в PATH)
      esptool.py --help
      (Иногда установщик кладёт esptool.py в папку Scripts, и его можно вызывать напрямую)

      Важно для стирания Flash ESP8266
      Когда esptool запускается, используйте полную команду с указанием порта (замените COMx на ваш порт):
      py -m esptool --port COM3 erase_flash
      Или:
      esptool.py --port COM3 erase_flash

      Диагностика: где лежит esptool?
      Выполните:
      py -c "import esptool; print(esptool.__file__)"
      Если выдает путь — модуль установлен. Если ошибка импорта — нет.
      Совет: После установки перезапустите CMD/PowerShell, чтобы обновить кэш команд.
      Если ничего не помогает — установите esptool через pipx (изолированная установка):
      py -m pip install pipx
      pipx install esptool
      esptool --help

      Попробуйте эти шаги — после правильной установки python -m esptool перестанет запускать просто Python.

  2. Я установил Питон. Открыл окно терминала виндоуз. А терминал не принимает команды pip. Я что то не так делаю?? может запустить Питон и в его окне...я так делал тоже ошибки...
    С какого конца подходить к стиранию памяти 8266??

  3. Добрый вечер. Спасибо за статью. Грамотно изложен материал. После обновления по OTA ESP8266mod вообще отключилась. Перепрошивка этой же прошивкой результата не дала. Прошил пример подключения к Wi-Fi плата подключилась (скетч маленький)понял надо память стирать полностью. Теперь по сути. Не подошёл ни один из 4 вариантов установки esptool. Но красным текстом были описаны ошибки и предложение про апгрейдить установщик pip командой python -m pip install esptool --upgrade pip. После этого сработала команда python -m pip install esptool. Ну а дальше всё по тексту статьи. После очистки плата прошилась и заработала. Можете дополнить статью. Ещё раз спасибо.

    • Добрый и вам вечер. Спасибо вам за подробный комментарий, дополнил статью по вашему совету.

  4. А как быть если модуль теперь при включении отрубает вай фай и пк его не видит? Сбросить флэш не получается так как пишет что порт com6 не подлючен. Есть способ может перемычкой какой или без вариантов?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *