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)


Ошибка
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

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


Включаем вебморду Dashboard


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:\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