Как прошить MicroPython на ESP32

Новая плата ESP32 приходит без MicroPython: на ней заводская прошивка или чужой скетч. Прежде чем писать на Python, на плату нужно один раз записать интерпретатор. Показываем два пути — без командной строки и с ней.

Прошивка 26 сентября 2026 6 минут

Зачем прошивать

MicroPython — это Python для микроконтроллеров. Он живёт на самой плате: компьютер лишь передаёт ей текст программы, а выполняет его интерпретатор, записанный во флеш-память. Поэтому прошивка нужна один раз — после неё программы загружаются без перепрошивки, за секунду.

Прошивка у каждого чипа своя: у ESP32, ESP32-S2, S3 и C3 разные файлы, и записанная «не та» плата просто не запустится. Стереть MicroPython тоже можно в любой момент — например, чтобы вернуться к Arduino.

Одной кнопкой в RobX Studio

  1. Скачайте RobX Studio и подключите плату кабелем USB — кабель должен передавать данные, а не только заряжать.
  2. Выберите порт платы: Studio находит её сама и помечает звёздочкой.
  3. Запустите прошивку MicroPython из окна программы. Studio определит чип, скачает подходящую прошивку и запишет её.

Командная строка, Python на компьютере и esptool при этом не нужны — всё уже внутри программы.

Вручную через esptool

Если хочется сделать это руками или под рукой другой компьютер, понадобится утилита esptool (ставится командой pip install esptool) и файл прошивки с официального сайта micropython.org/download — выберите там свою плату и скачайте файл .bin.

Сначала сотрите флеш-память (вместо COM3 — ваш порт, на Linux и macOS это /dev/ttyUSB0 или /dev/cu.usbserial-…):

esptool.py --chip esp32 --port COM3 erase_flash

Затем запишите прошивку. У классического ESP32 и ESP32-S2 — с адреса 0x1000:

esptool.py --chip esp32 --port COM3 --baud 460800 write_flash -z 0x1000 ESP32_GENERIC.bin

У ESP32-S3 и ESP32-C3 — с адреса 0, и в --chip указывается esp32s3 или esp32c3. Имя файла подставьте своё.

В новых версиях esptool команда называется просто esptool, а подкоманды пишутся через дефис: erase-flash, write-flash. Если старый вариант не срабатывает — попробуйте новый.

Как проверить, что всё получилось

Откройте консоль платы (REPL) — в RobX Studio она внизу окна — и нажмите Enter. Должно появиться приглашение >>>. Проверка одной строкой:

print('Привет, ESP32')

Дальше — первые программы: светодиод, кнопка, Wi-Fi. О них статья «Программирование ESP32 на MicroPython: первые шаги».

Если плата не отвечает

  • Порта нет в списке. У плат с мостом CH340 или CP210x нужен драйвер моста. Какой мост на вашей плате, видно по надписи на микросхеме рядом с USB-разъёмом.
  • «Failed to connect». Зажмите кнопку BOOT на плате, нажмите и отпустите RESET (EN), затем отпустите BOOT — плата войдёт в режим загрузки.
  • После прошивки тишина. Скорее всего, записан файл не под ваш чип или не с того адреса. Сотрите флеш и запишите заново.
  • Порт занят. К плате одновременно может подключиться только одна программа — закройте Arduino IDE, Thonny и монитор порта.