Инструкции

Установка esptool под Windows, macOS и Linux

7 мин чтения·Июнь 2026·RoboArm R1

esptool — официальная консольная утилита Espressif для работы с чипами ESP32 и ESP8266 через последовательный порт: прошивка, стирание флеша, чтение информации о чипе. Это Python-пакет, поэтому установка почти одинакова на всех ОС. Ниже — установка под Windows, macOS и Linux, проверка и решение частых проблем.

Что понадобится

  • Python 3.10 или новее (для последней версии esptool). Для Python 3.7–3.9 ставьте esptool v4.x.
  • Плата на ESP32/ESP8266 и USB-кабель с линиями данных.
  • Драйвер USB-UART (CP210x или CH340) — см. настройку Arduino IDE.

Установка через pip (любая ОС)

В большинстве случаев достаточно одной команды:

pip install esptool

Если pip не найден — попробуйте pip3 install esptool или python -m pip install esptool. Дальше — особенности по операционным системам.

Windows

  1. Скачайте Python с python.org и запустите установщик.
  2. Обязательно отметьте галочку Add python.exe to PATH на первом экране — иначе команды не будут видны в терминале.
  3. Установите, откройте новый PowerShell или cmd и выполните pip install esptool.
Установщик Python с галочкой Add python.exe to PATH
Не забудьте включить «Add python.exe to PATH»

macOS

Проще всего поставить Python через Homebrew:

brew install python
pip3 install esptool

Подойдёт и установщик с python.org. На свежих macOS система может не давать ставить пакеты в общий Python — тогда используйте pipx или venv (ниже).

Linux

Установите Python и pip пакетным менеджером дистрибутива:

# Debian / Ubuntu
sudo apt install python3-pip

# Fedora
sudo dnf install python3-pip

# Arch
sudo pacman -S python-pip

Затем pip3 install esptool.

⚠️

На свежих Debian/Ubuntu и Raspberry Pi OS (Bookworm) pip install выдаёт ошибку externally-managed-environment. Это защита системного Python — ставьте esptool через pipx или venv (ниже), а не через sudo pip.

Чтобы обращаться к последовательному порту без root, добавьте пользователя в группу dialout и перезайдите в систему:

sudo usermod -aG dialout $USER

Изолированная установка: pipx или venv

Рекомендуемый способ на современных системах — не засорять системный Python.

pipx ставит утилиту в отдельное окружение, а команда остаётся доступной глобально:

pipx install esptool
pipx ensurepath

venv — виртуальное окружение под проект:

python -m venv esptool-env
source esptool-env/bin/activate      # Windows: esptool-env\Scripts\activate
pip install esptool

Без Python: готовые бинарники

Если Python ставить не хочется, Espressif публикует готовые исполняемые файлы esptool на странице релизов в GitHub — для Windows (x86_64), macOS (Intel и Apple Silicon) и Linux (x86_64, armv7, aarch64). Скачайте архив под свою ОС, распакуйте и запускайте esptool напрямую. Минусы: больше размер, медленнее старт и иногда нужны системные библиотеки.

Проверка установки

esptool version
ℹ️

В свежих версиях команда называется esptool, в более старых — esptool.py. Универсальный вариант, который работает всегда: python -m esptool.

Если установка прошла успешно, esptool выведет номер установленной версии и завершит работу — например, esptool v5.0.2 (в старых версиях — esptool.py v4.x.x). Увидели номер версии — значит утилита установлена и доступна из терминала. Если же появляется ошибка command not found (в Windows — «не является внутренней или внешней командой»), каталог со скриптами Python не прописан в PATH — см. раздел «Частые проблемы».

Базовые команды

Узнать тип чипа и информацию о флеше (порт замените на свой):

esptool --port /dev/ttyUSB0 chip_id
esptool --port /dev/ttyUSB0 flash_id

Прошить бинарник по адресу 0x0:

esptool --port /dev/ttyUSB0 --baud 460800 write_flash 0x0 firmware.bin

На Windows порт выглядит как COM3, на macOS — /dev/cu.usbserial-*.

Частые проблемы

⚠️

esptool: command not found / не распознаётся — каталог со скриптами Python не в PATH. На Windows переустановите Python с галочкой Add to PATH; на любой ОС выручает запуск через python -m esptool.

⚠️

Permission denied / порт недоступен (Linux) — добавьте пользователя в группу dialout (см. выше) и перезайдите. На macOS/Windows проверьте драйвер USB-UART.

⚠️

Failed to connect to ESP32 — зажмите кнопку BOOT в момент подключения esptool и снизьте --baud до 115200.

Что дальше

Рекомендуемые продукты

Связанные статьи