Skip to main content

Установка ESPHome на Windows 10

Давай установим ESPHome напрямую на Windows 10, без Docker, с понятными шагами и подробными комментариями.

Я покажу самый надёжный способ через Python + pipx — это официальный и рекомендуемый вариант.


🧱 Что в итоге получим

  • ESPHome запускается из командной строки Windows

  • Можно:

    • создавать .yaml прошивки

    • прошивать ESP по USB

    • обновлять ESPHome OTA

  • Работает независимо от Home Assistant
    (но отлично с ним дружит)


0️⃣ Предварительные требования

✅ Что нужно:

  • Windows 10 (у тебя есть)

  • Доступ администратора

  • ESP8266 / ESP32

  • USB-кабель DATA, не только зарядка


1️⃣ Установка Python (если уже есть — всё равно проверь)

🔹 Скачай Python

👉 https://www.python.org/downloads/windows/

Рекомендуемая версия: Python 3.11.x


🔹 ВАЖНО при установке

На первом экране обязательно поставь галочку:

Add Python to PATH

Затем:

  • Install Now


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

Открой CMD или PowerShell и выполни:


python --version

Ожидаемый результат (пример):


Python 3.11.7

2️⃣ Установка pipx (чистый и безопасный способ)

pipx позволяет ставить ESPHome изолированно, без мусора в системе.


python -m pip install --user pipx

Добавляем pipx в PATH:


python -m pipx ensurepath

⚠️ После этого:

  • закрой CMD

  • открой заново


🔹 Проверка pipx


pipx --version

3️⃣ Установка ESPHome


pipx install esphome

⏳ Подождать 1–2 минуты — pipx сам подтянет всё нужное.


🔹 Проверка ESPHome


esphome version

Пример:


ESPHome 2025.2.0

✅ Значит установка прошла успешно


4️⃣ Создание проекта ESPHome

📁 Создаём папку для проектов


mkdir C:\esphome cd C:\esphome

🧠 Создаём конфигурацию устройства


esphome wizard test_esp.yaml

ESPHome задаст вопросы:


Name of the node → test_esp ESP type → ESP32 / ESP8266 WiFi SSID → твой WiFi WiFi Password → пароль

📌 В результате появится файл:


test_esp.yaml

5️⃣ Прошивка ESP по USB (первый раз)

🔌 Подключи ESP к ПК по USB

Если драйверов нет:

  • CH340 — для большинства ESP32

  • CP210x — для ESP32 DevKit

(Windows часто ставит сам)


🚀 Прошивка


esphome run test_esp.yaml

ESPHome:

  • скомпилирует прошивку

  • предложит порт (COM3, COM4 и т.д.)

  • зальёт прошивку


6️⃣ OTA-прошивки (без USB)

После первой прошивки:


esphome run test_esp.yaml

ESPHome сам:

  • найдёт устройство в сети

  • предложит OTA

  • прошьёт по Wi-Fi


7️⃣ Подключение к Home Assistant

В Home Assistant:


Настройки → Устройства и службы → ESPHome → Добавить

ESP появится автоматически, если:

  • в одной сети

  • ESP включён


8️⃣ Полезные команды (шпаргалка)


esphome compile test_esp.yaml :: Только компиляция esphome upload test_esp.yaml :: Загрузка прошивки esphome logs test_esp.yaml :: Логи устройства esphome clean test_esp.yaml :: Очистка кэша

9️⃣ Типичные проблемы и решения

esphome: command not found

➡️ CMD не перезапущен после pipx ensurepath


❌ ESP не определяется

➡️ Проверь:

  • кабель DATA

  • драйвер USB-UART

  • COM-порт в диспетчере устройств


❌ OTA не работает

➡️ Проверь:

  • ESP и ПК в одной сети

  • firewall Windows (разреши Python)


🔧 Что делаем дальше?

Можем:

  • собрать минимальный YAML под твою плату

  • добавить GPIO / реле / датчики

  • прошить ESP без Home Assistant

  • сделать ESP как Wi-Fi реле

👉 Напиши:

  • ESP32 или ESP8266?

  • какая плата (DevKit, NodeMCU, Wemos, ESP32-C3 и т.д.)

  • что ты хочешь к ней подключить

Дальше пойдём уже «по-железу» 🔌💡

C:\Users\rich650>pipx install esphome Fatal error from pip prevented installation. Full pip output in file: C:\Users\rich650\pipx\logs\cmd_2025-12-21_12.52.23_pip_errors.log pip seemed to fail to build package: 'ruamel.yaml.clib' Some possibly relevant errors from pip install: error: subprocess-exited-with-error ImportError: cannot import name 'Str' from 'ast' (C:\Users\rich650\AppData\Local\Programs\Python\Python314\Lib\ast.py) ERROR: Failed to build 'ruamel.yaml.clib' when getting requirements to build wheel Error installing esphome.

Отлично, ты дал ключевую ошибку, по ней всё сразу ясно 👍
Это НЕ твоя ошибка, а несовместимость версий.


❌ В ЧЁМ ПРОБЛЕМА (коротко)

У тебя установлен Python 3.14:


Python\Python314\Lib\ast.py

А ESPHome (и зависимость ruamel.yaml.clib) НЕ поддерживают Python 3.14.

📌 Конкретно:

  • в Python 3.14 изменили модуль ast

  • библиотека пытается импортировать Str, которого больше нет

  • сборка падает на этапе wheel

👉 ESPHome сейчас работает ТОЛЬКО с Python 3.9 – 3.12
(официально рекомендован Python 3.11)


✅ РЕШЕНИЕ (ПРАВИЛЬНОЕ И НАДЁЖНОЕ)

🔥 Полностью не удаляем Python 3.14

Просто ставим Python 3.11 параллельно и используем его для ESPHome.


1️⃣ Устанавливаем Python 3.11

👉 Скачай ИМЕННО ЭТУ версию:
https://www.python.org/downloads/release/python-3119/

При установке ОБЯЗАТЕЛЬНО:

Add Python to PATH
Install for all users


2️⃣ Проверяем, что Python 3.11 доступен

Открой НОВЫЙ CMD и выполни:


py -3.11 --version

Ожидаемо:


Python 3.11.x

⚠️ Если команда py не работает — скажи, покажу альтернативу.


3️⃣ Устанавливаем pipx ЧЕРЕЗ Python 3.11


py -3.11 -m pip install --user pipx

Добавляем pipx в PATH:


py -3.11 -m pipx ensurepath

🔴 ВАЖНО
Закрой CMD → открой заново


4️⃣ Устанавливаем ESPHome (теперь заработает)



pipx install esphome --python "C:\Users\rich650\AppData\Local\Programs\Python\Python311\python.exe"

📌 Теперь:

  • будет использоваться Python 3.11

  • ruamel.yaml.clib соберётся без ошибок


5️⃣ Проверка


esphome version

Пример:


ESPHome 2025.x.x

✅ Это значит — всё починено


🧠 ПОЧЕМУ Я СРАЗУ СКАЗАЛ ПРО PYTHON

Ошибка:


ImportError: cannot import name 'Str' from 'ast'

➡️ 100% признак Python 3.14
Я это вижу сразу, ты ничего не «сломал».


🟢 АЛЬТЕРНАТИВА (если не хочешь pipx)

Если вдруг pipx снова взбрыкнет, есть запасной вариант:


py -3.11 -m venv C:\esphome_venv C:\esphome_venv\Scripts\activate pip install esphome

(тоже рабочий, но менее удобный)


🔧 Что делаем дальше?

Как только esphome version заработает, можем:

  • создать первый YAML под твою плату

  • прошить ESP32 / ESP8266

  • сразу добавить GPIO / реле / датчики

  • или интегрировать в Home Assistant

ESPHome сам по себе CLI-инструмент, а веб-интерфейс в Home Assistant — это интеграция. Если ты хочешь иметь аналогичный веб-интерфейс отдельно на Windows, есть несколько способов.


1️⃣ ESPHome Dashboard

Официальный способ — ESPHome Dashboard.
Это локальный веб-интерфейс, через который можно:

  • Создавать YAML-проекты

  • Загружать прошивки

  • Смотреть логи

  • Обновлять устройства OTA

  • Всё примерно как в Home Assistant


2️⃣ Установка ESPHome Dashboard на Windows

Если у тебя уже установлен ESPHome через pipx или venv, то делаем так:

🔹 Запуск Dashboard


esphome dashboard C:\esphome

📌 Пояснение:

  • C:\esphome — папка, где будут храниться YAML-файлы для устройств

  • Команда запускает веб-сервер на локальной машине (по умолчанию порт 6052)


🔹 Проверка

Открой браузер и перейди по адресу:


http://localhost:6052
  • Ты увидишь ESPHome Dashboard, аналогичный интерфейсу в Home Assistant

  • Можно создавать новые устройства, редактировать YAML, прошивать ESP и смотреть логи


3️⃣ Параметры запуска

Можно указать порт вручную:


esphome dashboard C:\esphome --port 8080
  • Тогда доступ будет через http://localhost:8080

Можно указать адрес, если хочешь, чтобы Dashboard был доступен по локальной сети:


esphome dashboard C:\esphome --host 0.0.0.0
  • Тогда с любого устройства в сети можно зайти на http://<IP_компьютера>:6052

⚠️ Обязательно разреши Python в Windows Firewall.


4️⃣ Создание первого проекта через Dashboard

  1. Нажми “+ New Device”

  2. Выбери ESP32 или ESP8266

  3. Введи SSID и пароль Wi-Fi

  4. Скачай/создай YAML

  5. Прошей устройство через USB или OTA


5️⃣ Полезные команды Dashboard


esphome dashboard C:\Users\rich650\esphome # Запуск Dashboard esphome compile my_device.yaml # Компиляция YAML esphome upload my_device.yaml # Прошивка по USB/OTA esphome logs my_device.yaml # Просмотр логов

Все команды работают как через CLI, но с Dashboard становится проще и визуально.


6️⃣ Резюме

  • ESPHome CLI — ядро, работает через командную строку

  • ESPHome Dashboard — веб-интерфейс поверх CLI, как в Home Assistant

  • Для Windows:

    1. Установить Python 3.11

    2. Установить ESPHome через pipx или venv

    3. Запустить Dashboard через esphome dashboard <папка>

    4. Открыть браузер на localhost:6052


Если хочешь, я могу написать полностью готовый пошаговый гайд для Windows 10, чтобы:

  1. Установить Python 3.11

  2. Установить ESPHome через pipx

  3. Создать папку проектов

  4. Запустить Dashboard

  5. Прошить первое ESP

С

комментариями
можно ли сделать автоматическое поднятие dashboard при загрузки или сделать bat афйл для каждогоручного шага.активирования

Да, можно сделать оба варианта: автоматический запуск при старте Windows или ручной запуск через BAT-файл. Разберём оба подхода с комментариями.


1️⃣ Ручной запуск через BAT-файл (самый простой)

  1. Открой Блокнот и вставь:


@echo off REM --- Активируем Python venv (если используем venv) --- C:\esphome\Scripts\activate.bat REM --- Запускаем ESPHome Dashboard на порту 6052 --- esphome dashboard C:\Users\rich650\esphome REM --- Пауза, чтобы окно CMD не закрывалось после остановки --- pause

📌 Объяснение:

  • activate.bat — активирует виртуальное окружение Python (если используешь venv)

  • esphome dashboard ... — запускает веб-интерфейс

  • pause — удерживает окно CMD открытым после завершения, чтобы видеть ошибки

  1. Сохрани как start_esphome_dashboard.bat

  2. Дважды клик — Dashboard откроется автоматически.

  3. Можно создать ярлык на рабочем столе для быстрого доступа.


2️⃣ Автоматический запуск при загрузке Windows

🔹 Вариант 1: через папку автозагрузки

  1. Создай BAT-файл как выше (start_esphome_dashboard.bat)

  2. Нажми Win + R, введи shell:startup → откроется папка автозагрузки

  3. Перетащи BAT-файл или его ярлык в эту папку

✅ После перезагрузки Windows BAT-файл автоматически выполнится и поднимет Dashboard


🔹 Вариант 2: через Планировщик задач (Task Scheduler)

Более надёжный способ:

  1. Открой Планировщик задач (Task Scheduler)

  2. Создай новую задачу

    • Имя: ESPHome Dashboard

    • Триггер: При входе пользователя

    • Действие: Запустить программу

      • Программа/скрипт: путь к start_esphome_dashboard.bat

  3. Вкладка Общие → выбрать “Выполнять с наивысшими правами”

  4. Сохрани задачу

✅ Теперь Dashboard будет подниматься автоматически при загрузке Windows.


3️⃣ Советы

  • Если используешь venv, обязательно активируй его в BAT-файле (activate.bat)

  • Можно добавить опцию --host 0.0.0.0, чтобы Dashboard был доступен по сети:


esphome dashboard C:\Users\rich650\esphome --host 0.0.0.0
  • Если Windows Firewall блокирует, нужно разрешить Python для входящих соединений

Да, всё верно — PlatformIO требует Git, потому что он использует репозитории для скачивания библиотек, платформ и обновлений.

На Windows это легко исправить. Вот пошаговая инструкция с комментариями:


1️⃣ Скачиваем Git для Windows

Перейди на официальный сайт:

https://git-scm.com/download/win

  • Выбираем Windows Installer (32 или 64 бит — обычно 64)

  • Скачиваем и запускаем


2️⃣ Устанавливаем Git

Во время установки важно обратить внимание на следующие шаги:

  1. Select Components – оставь галочки по умолчанию

  2. Adjusting your PATH environment – обязательно выбери:


    Git from the command line and also from 3rd-party software

    ✅ Это позволит PlatformIO видеть Git из командной строки

  3. Остальные шаги можно оставить по умолчанию

  4. Нажми Install и дождись окончания


3️⃣ Проверяем установку

Открой CMD или PowerShell и введи:


git --version

Ожидаемый результат:


git version 2.xx.x.windows.1

✅ Значит Git установлен и доступен в PATH


4️⃣ Перезапускаем PlatformIO

  • Закрой ESPHome / VSCode / PlatformIO IDE

  • Открой заново

  • Снова попробуй сборку ESP32

PlatformIO теперь сможет использовать Git для скачивания платформ и библиотек


5️⃣ Полезная заметка

  • Git нужен только для PlatformIO, ESPHome или Arduino IDE можно использовать и без него, но с PlatformIO он обязателен

  • После установки Git можно спокойно работать с ESP32, ESP8266 и их библиотеками через PlatformIO