Что такое ESPHome?

ESPHome (GitHub)

ESPHome — это универсальный фреймворк с открытым исходным кодом, предназначенный для быстрой разработки прошивок для устройств на базе микроконтроллеров. Поддерживает широкий спектр платформ: ESP8266, ESP32, RP2040 (Raspberry Pi Pico), а также модули Nordic (nRF52) и другие.

Ключевые особенности:

  • Большая библиотека компонентов: более 300 поддерживаемых сенсоров, дисплеев, реле и других устройств.
  • Конфигурация через YAML: описание логики работы, триггеров, действий и скриптов в человекочитаемом формате. Хотя YAML-скрипты отличаются от традиционных языков программирования, они интуитивно понятны и удобны для декларативного описания поведения устройства.
  • Гибкая система автоматизации: возможность реагировать на изменения состояний портов, аппаратных интерфейсов, таймеров и внешних событий с помощью триггеров, условий и действий.
  • Встроенный веб-интерфейс: после прошивки устройство автоматически разворачивает веб-сервер, через который можно просматривать конфигурацию, управлять параметрами в реальном времени и выполнять обновления "по воздуху" (OTA).
  • Поддержка MQTT: ESPHome может работать как MQTT-клиент, публикуя данные и подписываясь на команды через брокер (локальный или облачный). Это обеспечивает интеграцию с системами домашней автоматизации, такими как Home Assistant.
  • Безопасность: поддержка шифрования соединений по TLS (для устройств с достаточным объёмом памяти), аутентификация и авторизация доступа к веб-интерфейсу.

Примеры устройств на базе ESPHome:

Do it yourself
Tasmota