Blog - Home Assistant 11 pic 1920x1080 px
|

Home Assistant seriál s Jakubem: Díl 11: Instalace ESPHome

Úvod

V dnešním díle si nainstalujeme ESPHome – výborný doplněk do našeho HA, který nám umožní integrovat velmi levné ESP desky a také nám zjednoduší programování těchto desek, které je jinak poměrně pracné a složité. Na internetu naleznete velké množství již hotového kódu a projektů. V příštích dílech (pravděpodobně hned v dalším) si na ESPHome postavíme např. radar, který nám umožní detekovat osoby v místnosti, nebo CO₂ senzor pro monitorování stavu ovzduší kdekoliv, kde jen chceme.

Žádné další zařízení postavené na ESPHome v domácnosti zatím nemám, ale do budoucna plánuji rozšířit arzenál o E-ink displej se zobrazováním předpovědi počasí a stavu CO₂ v bytě, nebo např. meteorologickou stanici s displejem.

Co budeme potřebovat

Instalace ESPHome

ESPHome budeme instalovat úplně stejně jako jakýkoliv jiný add-on (např. Zigbee2MQTT). Přesuneme se tedy do Settings->Add-ons a klepneme na Add-on Store. Do vyhledávacího políčka napíšeme ESPHome a poté klepneme na ESPHome Device Builder.


V dalším okně klepneme na Install a chvilku počkáme, než se add-on nainstaluje. Po úspěšné instalaci zaškrtneme Start on boot, Watchdog a Show in sidebar. Auto update nechávám pro jistotu vypnutý – často se totiž může stát, že následující verze obsahuje chybu a rozbije všechna ESP zařízení. Poté klepneme na Start.


Nyní bychom v levém menu (pokud jsme zaškrtli Show in sidebar) měli naleznout položku ESPHome Builder.

Přidání prvního zařízení

Po otevření ESPHome klepneme na modré tlačítko New Device a otevře se nám nabídka. Do Name vyplníme, jak se má naše zařízení jmenovat, do Network Name vyplníme SSID naší domácí Wi-Fi, do Password vyplníme heslo k Wi-Fi a klepneme na Next. V další nabídce prozatím zvolíme Skip this step. V následujícím kroku vybereme typ ESP, které máme – o typech si povíme více za chvíli. V posledním kroku klepneme prozatím na Skip.

Tímto máme připravený základ pro instalaci ESPHome na naši desku. Nyní si povíme něco o deskách jako takových a způsobech, jak na ně lze ESPHome nainstalovat.

Typy desek

ČipsetCPUWi-FiBluetoothGPIO/PeriférieVývojová podporaPoužití
ESP322× Xtensa LX6✅✅✅Arduino, ESP-IDF, MicroPythonPokročilé IoT, chytrá domácnost
ESP82661× Xtensa L106Arduino, NodeMCU, MicroPythonJednoduché IoT
Pico W2× Cortex-M0+❌ (zatím)✅✅MicroPython, C/C++ SDKVzdělávání, jednoduché projekty
BK72xx1× Cortex-M4OpenBeken, TasmotaChytré zásuvky, žárovky
RTL87xx1× Cortex-M3Tasmota, komunitní projektyMasová výroba IoT zařízení

V tabulce výše najdete krátké shrnutí, co která deska umí. Mezi nejpoužívanější v ESPHome patří první dvě. V současné době začíná být, dříve velmi oblíbená deska Wemos D1 Mini (ESP8266 čip), zastaralá a pomalu ale jistě ji vytlačuje platforma ESP32. U ESP8266 čipů je obrovskou nevýhodou malá flash paměť a absence Bluetooth.

Původně jsem měl všechny senzory postavené právě na Wemos D1 Mini, ať už kvůli menší spotřebě, nebo kvůli její velikosti, ale dva senzory jsem byl již nucen předělat na ESP32 a v brzké době budu předělávat i ostatní. Nespornou výhodou ESP32 je Bluetooth a možnost vytvořit si na těchto deskách Bluetooth-proxy. Jelikož ve většině místností používám senzory teploty a vlhkosti s Bluetooth, tak právě díky těmto proxy nemám problém se signálem. Bluetooth vysílač, který je např. v Raspberry Pi, má poměrně slabý výkon a pokryje maximálně místnost ve které je RPi umístěné. Díky Bluetooth-proxy mi stačí jedna ESP deska na každou místnost a mám pokrytý celý byt :).

Základy flashování

Pro flashnutí naší desky máme několik možností. Prvotní flash musí vždy proběhnout po kabelu, další flashování je již možné bezdrátově.

U desek ESP8266 (např. Wemos D1 Mini) se často objevují následující problémy:

  • špatný ovladač
  • špatný kabel (např. není datový, ale pouze napájecí)
  • zařízení není ve flash módu
  • cokoliv dalšího 🙂

Nejčastějším problémem je špatný ovladač. Mně funguje tento. Zkoušel jsem i verzi z roku 2024, ale s tou se mi desku nepodařilo flashnout, i když byla ve Windows vidět.

Zkuste tedy na počítači ve Startu vyhledat Správce zařízení, připojit desku přes USB kabel a v sekci Porty (COM a LTP) by se vám pak měla deska objevit. Klepněte na ni pravým tlačítkem a zvolte odinstalovat. Následně doporučuji restartovat počítač, stáhnout ovladač z odkazu výše a nainstalovat ho. Tím se vyřeší 90 % problémů.

Dále můžete vyzkoušet jiný USB kabel (pokud ale desku vidíte ve správci zařízení, tak na 99 % nebude problém v kabelu). Další postup, který může, ale nemusí fungovat, je před připojením kabelu držet tlačítko BOOT na desce, připojit kabel, počkat 2 sekundy a tlačítko pustit. Tím by se deska měla dostat do flashovacího módu. Tento postup ale ve většině případů není nutný.

ESP Tool (web)

Webový nástroj nalezneme zde. Pokud vše funguje, je postup jednoduchý a rychlý. Otevřeme si web, připojíme desku k počítači přes USB kabel a klepneme na Connect. Vyskočí nám dialogové okno, kde bychom měli vidět naši ESP desku, vybereme ji a klepneme na připojení.


Otevře se nám nová nabídka, kde máme dvě možnosti: buď si můžeme stáhnout naši konfiguraci z ESPHome Builderu (klepneme na tři tečky v pravém spodním rohu, vybereme Install a Manual download) nebo klepneme na Prepare for first use. Tím se nám na desku nahraje základní verze ESPHome a přes průvodce nastavíme Wi-Fi. Poté se nám deska objeví v ESPHome Builderu a můžeme s ní dále pracovat bezdrátově, bez kabelu.

My si teď ukážeme druhou variantu. Klepneme tedy na Prepare for first use a chvilku počkáme, než proběhne instalace.


Po dokončení instalace klepneme na Connect to Wi-Fi.


V seznamu vyhledáme naši Wi-Fi síť, vyplníme heslo k Wi-Fi a klepneme na Connect.


Pokud se deska úspěšně připojila k Wi-Fi, objeví se tato nabídka:


Nyní se můžeme vrátit zpět do našeho HA a ESPHome Builderu, kde by se nám mělo objevit nové zařízení.


Klepneme na Take Control, v nabídce si zařízení pojmenujeme a opět klepneme na Take Control.


V další nabídce vybereme Install.


Po klepnutí na Install se vám pravděpodobně objeví následující chyba:

Please specify at least an SSID or an Access Point to create.


Chybu opravíme jednoduše. Klepneme na Close a u naší desky klepneme na EDIT. Buď můžeme zkopírovat celý následující kód a nebo stačí jen doplnit sekce wifi. Změňte si prosím ssid a password :). Jedná se jen o hotspot, který deska začne vysílat pokud se nepřipojí k naší domácí Wi-Fi. Tato funkce se občas hodí pro záchranu pokažené konfigurace a podobně.

Následně klepneme v pravém rohu na Install. Kód se musí zkompilovat a nahrát na desku, tak se neděste, že to trvá poměrně dlouho. Na konci by se vám měl objevit fialový text, kde uvidíte sílu Wi-Fi signálu a další údaje. Tím je konfigurace dokončená a my můžeme libovolně měnit kód a nahrávat ho na desku. To využijeme v příštím článku, až si budeme vytvářet radar pro detekci přítomnosti :).

ESPHome Flasher (desktop aplikace)

Desktopová aplikace nemá žádnou speciální výhodu oproti webové aplikaci. Naopak je mnohem méně pohodlná. Hodí se spíše v případech, kdy máme hotovou nějakou konfiguraci a chceme ji na desku nahrát. Případně pokud se nám nedaří na desku připojit pomocí webové aplikace a chceme na desku nahrát alespoň základní konfiguraci, abychom s ní mohli dále pracovat.

Desktopovou aplikaci nalezneme zde a hned v úvodu se dozvíme, že je zastaralá a máme používat webovou aplikaci. Nicméně já jsem přes dektopovou aplikaci zkoušel flashovat Wemos D1 Mini a vše proběhlo bez problémů. Aplikaci tedy stáhneme a nainstalujeme. Dále potřebujeme nějakou konfiguraci, kterou na desku chceme nahrát. To může být klidně již nějaký hotový projekt, který jsme někde stáhli a nebo naše základní konfigurace. Tu si můžeme stáhnout v ESPHome Builderu klepnutím na tři tečky -> Install -> Manual download.

Následně připojíme naši desku přes USB kabel k počítači a otevřeme aplikaci. V políčku Serial port vybereme naši desku (pokud se neobjevuje, tak klepneme na šipky vpravo). V políčku Firmware ve flasheru klepneme na Browse a vyhledáme náš konfigurační soubor. V posledním kroku klepneme na Flash ESP. V logu bychom měli vidět úspěšnou instalaci.


Následně se nám deska opět objeví v ESPHome Builderu v našem HA a můžeme s ní dále pracovat, jak se nám zachce.

UART převodník

Poslední a nejsložitější variantou kterou si ukážeme, je nahrání konfigurace přes UART převodník. V podstatě se jedná o stejný postup jako v prvním a druhém případě, jen mezi desku a počítač vložíme UART převodník. Pro většinu případů je tento postup zbytečný. Hodí se snad jen v případě, že deska nemá funkční USB port (datovou část). Jak používat převodník jsme si ukazovali v díle: Home Assistant seriál s Jakubem: Díl 6: Sonoff SwitchMan M5-3C vypínač. Zde budeme postupovat obdobně.

Pokud má deska na sobě připájený male header (pinovou lištu), tak nám stačí 4 kusy female to female propojek. Pokud male header nemáme, tak buď můžeme využít male to female propojky nebo drátky dočasně připájet. Popřípadě lze male header dokoupit (sice není 8-pinový, ale stačí ho po 8 pinech zlomit a připájet, to samé na druhé straně desky).

Nejprve se ujistěte, že na UART převodníku máte jumper nastavený na 3V3 a VCC. Pokud se spletete a jumper bude nastaven na 5V a VCC, tak desku nenávratně usmažíte! Desku a UART převodník propojíte následovně:

Vlevo UART převodník, vpravo ESP deska.

VCC -> 3V3
GND – G
TXD – RX
RXD – TX

Poté připojíme USB kabel do počítače a převodníku a budeme postupovat dle první nebo druhé varianty, tj. desku můžeme flashnout buď přes webovou nebo desktopovou aplikaci.

Možná existují ještě nějaké další metody nebo aplikace, ale myslím, že si ve většině případů vystačíte s prvními dvěma variantami. Doporučuji používat tu první a to webovou aplikaci. Ve většině případů funguje bez problémů a je nejjednodušší a nejrychlejší variantou.

Závěr

V dnešním díle jsme si ukázali, jak nainstalovat ESPHome Builder a jak flashovat ESP desky. V dalším díle si postavíme radar pro detekování přítomnosti osob v místnosti a ukážeme si dva příklady, jak ho používám já. Možná budeme i trochu pájet :). Ale nebojte, ukážeme si i variantu bez pájení.

Tak levným ESP deskám zdar!

Podobné příspěvky

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *