Kursy • Poradniki • Inspirujące DIY • Forum
ESPHome - co warto wiedzieć?
ESPHome to darmowe narzędzie open source, które zamienia płytkę z ESP32 lub ESP8266 w urządzenie inteligentnego domu bez pisania kodu w C++. Wystarczy opisać w prostym pliku YAML podłączone czujniki i przekaźniki, a ESPHome sam przygotuje i wgra firmware. To jeden z najszybszych sposobów na własne czujniki i sterowniki dla Home Assistant.
ESPHome - co to jest?
Opisywane narzędzie to generator firmware dla mikrokontrolerów. Zamiast pisać program w Arduino IDE, przygotowujemy plik konfiguracyjny, w którym deklarujemy, co ma robić urządzenie: jaki czujnik jest na którym pinie, co ma się dziać po naciśnięciu przycisku i jak często wysyłać pomiary. Resztę - obsługę Wi-Fi, aktualizacje i komunikację z centralą - ESPHome dodaje sam.
Projekt stworzył Otto Winter, a w 2021 roku przejęła go firma Nabu Casa, która rozwija oficjalny sprzęt dla Home Assistant. Od 2024 roku ESPHome, podobnie jak Home Assistant, należy do fundacji Open Home Foundation. Nowe wersje ukazują się co miesiąc, a ich numer to rok i miesiąc wydania.
ESPHome obsługuje przede wszystkim układy ESP32 (także warianty C3, C6 i S3) oraz ESP8266. Działa też na RP2040 i RP2350 z płytek Raspberry Pi Pico, na nRF52 oraz na układach BK72xx, RTL87xx i LN882, które często siedzą w tanich gniazdkach i żarówkach Wi-Fi. Co ciekawe, dzięki temu wiele gotowych urządzeń można uwolnić od chmury producenta.
Jak działa ESPHome?
Podstawą jest plik YAML, czyli czytelny format tekstowy oparty na wcięciach. Każdy element urządzenia to tzw. komponent - ESPHome ma ich setki: od czujników temperatury, przez wyświetlacze i taśmy LED, po obsługę Bluetooth czy Modbus. Przykładowo, czujnik temperatury i wilgotności DHT22 podłączony do pinu GPIO4 można opisać tak:
esphome:
name: czujnik-salon
esp32:
board: esp32dev
wifi:
ssid: "NazwaSieci"
password: "HasloDoSieci"
api: # połączenie z Home Assistant
ota: # aktualizacje przez Wi-Fi
- platform: esphome
sensor:
- platform: dht
pin: GPIO4
temperature:
name: "Temperatura salon"
humidity:
name: "Wilgotność salon"
update_interval: 60sPo zapisaniu ESPHome kompiluje z tej konfiguracji gotowy program i wgrywa go do płytki. Od wersji 2026.7 dla ESP32 domyślnie korzysta przy tym z natywnego środowiska ESP-IDF, a nie z PlatformIO. Bardziej złożoną logikę można dopisać w tzw. lambdach, czyli krótkich wstawkach kodu C++ wewnątrz pliku YAML.
Najważniejsze: w ESPHome opisujemy, co urządzenie ma robić, a nie jak to zaprogramować. Program w C++ powstaje automatycznie przy każdej kompilacji.
Nie wszyscy wiedzą, że urządzenie z ESPHome działa samodzielnie. Automatyzacje zapisane w YAML (np. włącz przekaźnik, gdy temperatura spadnie poniżej progu) wykonują się na płytce nawet wtedy, gdy centrala jest wyłączona.
Jak zainstalować ESPHome?
Najwygodniej korzystać z ESPHome Device Builder - panelu w przeglądarce, w którym tworzy się konfiguracje, kompiluje je i wgrywa do urządzeń. Można go uruchomić jako aplikację w Home Assistant, w kontenerze Docker, jako aplikację na komputer (Windows, macOS, Linux) albo zainstalować z linii poleceń przez pip.
Pierwsze wgranie programu wymaga połączenia płytki z komputerem przewodem USB. Kolejne aktualizacje odbywają się już bezprzewodowo, przez Wi-Fi, czyli tzw. OTA (ang. Over-The-Air). Kreator podpowiada wszystkie dostępne metody instalacji, widoczne poniżej.
Jak wgrać ESPHome bez instalowania programów? Wystarczy przeglądarka Chrome lub Edge i narzędzie ESPHome Web, które łączy się z płytką przez port USB:
W ten sposób można przygotować płytkę do pierwszego użycia albo wgrać plik firmware pobrany z Device Builder. Tą samą drogą instaluje się gotowe projekty z oficjalnej strony ESPHome, np. Bluetooth proxy, który rozszerza zasięg Bluetooth w Home Assistant.
ESPHome i Home Assistant - jak połączyć?
Po wgraniu firmware urządzenie samo zgłasza się w Home Assistant, a dodanie go wymaga jednego kliknięcia. Komunikacja odbywa się przez szyfrowane natywne API, więc nie trzeba konfigurować brokera MQTT. Każdy czujnik, przekaźnik i przycisk z pliku YAML pojawia się jako osobna encja.
Warto wiedzieć, że ESPHome nie jest związany wyłącznie z Home Assistant. Urządzenia mogą wysyłać dane przez MQTT do innych systemów, a komponent web_server udostępnia prosty panel sterowania w przeglądarce. Przykład projektu, w którym ESPHome posłużył do zbudowania ekranu do inteligentnego domu, opisaliśmy w newsie:
Energooszczędny XIAO ePaper Panel (3 miesiące na jednym ładowaniu) – czytelny ekran do Twojego smart home DIY
Najnowszy gadżet w rodzinie XIAO to XIAO 7,5″ ePaper Panel, stworzony z myślą o wszystkich miłośnikach rozwiązań smart home! To…... Czytaj dalej »
ESPHome - jaką płytkę wybrać?
Do nauki wystarczy dowolna płytka deweloperska z ESP32, najlepiej taka z wyprowadzonymi pinami i portem USB-C. Płytki z układem ESP32 są dostępne u naszego partnera - w sklepie Botland, który ma w swojej ofercie tysiące produktów dla elektroników i makerów. W ofercie są też gotowe sterowniki z obsługą ESPHome, np. sterowniki boneIO do automatyki domowej.
Sprawdź płytki ESP32 w Botland »
Przy wyborze warto zwrócić uwagę na to, czego będzie potrzebował projekt. Do czujników w domu wystarczy klasyczne ESP32, do asystenta głosowego czy wyświetlacza lepiej sprawdzi się ESP32-S3 z większą pamięcią PSRAM, a do urządzeń Thread i Zigbee - ESP32-C6. Starszy układ ESP8266 nadal działa, ale ma mniej pamięci, więc przy rozbudowanych konfiguracjach szybko dochodzi do jej granic.
Chcesz wiedzieć więcej? Zadaj pytanie na naszym forum o elektronice - chętnie doradzimy!
Odnośniki do niektórych produktów umieszczone w tym wpisie prowadzą do głównego partnera serwisu – sklepu Botland. Nie są to linki afiliacyjne. Na tej podstronie opisaliśmy na czym dokładnie polega nasza współpraca.


























