Home Assistant a LaskaKit Live

Teplota v obýváku, stav baterie fotovoltaiky, otevřená garážová vrata nebo odjezd tramvaje – to všechno už máš v Home Assistantu. Proč to ale pořád lovit v mobilu, když to může viset na zdi na e-paper displeji, který vydrží měsíce na baterku a v noci nesvítí?

V tomhle návodu ti ukážeme, jak dostat data z Home Assistantu na e-paper displej s ESP32. Nejdřív si projdeme tři možné cesty, které dnes existují, a pak krok za krokem nastavíme tu nejpohodlnější – integraci Živý obraz pro Home Assistant.

Tři způsoby, jak propojit e-paper s Home Assistantem

Každá cesta má své pro a proti. Záleží hlavně na tom, jestli chceš mít vše čistě lokálně, nebo dáš přednost pohodlí a hotovému firmwaru.

ESPHome display komponenta Screenshot dashboardu (Puppet) Integrace Živý obraz
Běží plně lokálně Ano Ano Ne, přes cloud Živého obrazu
Firmware Živý obraz Ne, vlastní ESPHome firmware Ano (s nastavením vlastní URL) Ano
Změna vzhledu Úprava YAML a nový flash Úprava HA dashboardu nebo nastavení v Puppetu Webový editor obrazovek
Úspora energie (low power) Spíše ne Ano (optimalizováno) Ano (optimalizováno)
Náročnost nastavení Střední až vysoká Vysoká Nízká

1. ESPHome display komponenta

ESPHome umí e-paper displeje ovládat přímo a všechno běží jen v tvé domácí síti. Háček je v tom, že podporovaných displejů je jen pár a celý vzhled obrazovky navíc popisuješ ručně v YAML – každý text, souřadnici a font. A když chceš cokoliv změnit, musíš ESP32 znovu přeflashovat.

2. Screenshot Home Assistant dashboardu

Druhá cesta je vzít hotový dashboard z Home Assistantu, vyfotit ho a poslat na displej jako obrázek. Postará se o to například addon Puppet, který ti na zadané adrese vrátí screenshot v rozlišení a barvách tvého e-paperu.

Výhodou je, že vše zůstává lokálně a firmware Živého obrazu umí obrázek z URL stáhnout bez větších úprav. Musí ti ale neustále běžet služba, která screenshoty vytváří a cachuje, nastavení je dost složité a výsledek stojí a padá na tom, jak dobře zvládneš nastylovat dashboard v HA. Pro screenshoty se vyplatí založit v HA samostatného uživatele jen pro tento účel.

3. Integrace Živý obraz pro Home Assistant

Třetí cestou je komunitní integrace ha-zivy-obraz. Data se posílají na server Živého obrazu v cloudu, takže řešení není čistě lokální. Zato funguje s firmwarem Živého obrazu hned po instalaci.

Navíc dostaneš:

  • ovládání displeje přímo z Home Assistantu – obnovení obrazovky, otočení, inverze barev, doba spánku nebo OTA aktualizace firmwaru,
  • všechna tři API Živého obrazu – export (čtení dat z panelů), import (posílání hodnot) a command (ovládání),
  • webový editor obrazovek s hotovými ukázkami, takže vzhled měníš bez flashování.

Právě tuhle cestu si teď nastavíme.

Co budeš potřebovat

Hardware

  • Sadu LaskaKit Live – stavebnici s deskou s ESP32 (většinou LaskaKit ESPink), e-paper displejem a LiPol baterií. Sady jsou dělané přímo pro Živý obraz a firmware do nich nahraješ z prohlížeče přes zivyobraz.eu. 3D tištěnou krabičku si můžeš přikoupit za příplatek, anebo si ji můžeš vytisknout sám.
  • USB-C kabel pro první nahrání firmwaru.

Baterie je součástí sady, takže displej může viset na zdi bez kabelu. Firmware Živého obrazu drží desku většinu času v hlubokém spánku a probouzí ji jen kvůli stažení nového obrázku, takže na jedno nabití vydrží až několik měsíců. Velikost displeje vyber podle toho, kolik informací chceš zobrazovat – přehled sad najdeš v tabulce níže.

Obsah sady LaskaKit Live: e-paper displej, deska ESPink, LiPol baterie, vypínač, kabely a šroubky

Takhle vypadá obsah sady LaskaKit Live: e-paper displej, deska ESPink s ESP32, LiPol baterie, vypínač, propojovací kabely a šroubky.

Sada Displej Rozlišení Čidlo SHT40
LaskaKit Live-2.13 2,13″, černobílý nebo čtyřbarevný 250 × 122 –
LaskaKit Live-2.9 2,9″, černobílý nebo čtyřbarevný 384 × 168 –
LaskaKit Live-4.2 4,2″, černobílý nebo čtyřbarevný 400 × 300 –
LaskaKit Live-4.26 4,26″, černobílý 800 × 480 Ano (na desce)
LaskaKit Live-5.83 5,83″, černobílý nebo čtyřbarevný 648 × 480 Ano
LaskaKit Live-7.4 7,4″, černobílý nebo červeno-černo-bílý 800 × 480 Ano
LaskaKit Live-7.5 7,5″, černobílý nebo čtyřbarevný 800 × 480 Ano
LaskaKit Live-7.x-Pro 7,5″ nebo 7,3″, černobílý, čtyřbarevný nebo šestibarevný 800 × 480 Ano (na desce)
LaskaKit Live-10.2 10,2″, černobílý nebo čtyřbarevný 960 × 640 Ano
LaskaKit Live-11.6 11,6″, černobílý nebo čtyřbarevný 960 × 640 Ano
LaskaKit Live-13.3 Parallel 13,3″, paralelní displej 1600 × 1200 –

Sady se prodávají jako DIY stavebnice, za příplatek je dostaneš i složené a s 3D tištěnou krabičkou.

Software a účty

  • Home Assistant – stačí čerstvá instalace, HACS společně doinstalujeme níže.
  • Účet na GitHubu – budeš ho potřebovat při instalaci HACS. Je zdarma a založíš si ho za pár minut.
  • Účet na Živém obrazu s přidaným displejem a nahraným firmwarem Živého obrazu. Jak na to, najdeš na wiki Živého obrazu.
  • API klíče – Export key, Import key a Command key. Najdeš je na Živém obrazu v záložce Účet v části API klíče.

Instalace HACS

Integrace Živý obraz není součástí Home Assistantu, nainstaluješ ji přes HACS (Home Assistant Community Store). Je to obchod s komunitními integracemi a na čerstvé instalaci Home Assistantu ho zatím nemáš.

Postup níže platí pro Home Assistant OS, tedy např. Home Assistant Green, Raspberry Pi nebo virtuální stroj s HA OS.

1. Přidej repozitář s doplňkem Get HACS

  1. Otevři Nastavení → Doplňky (v novějších verzích Aplikace) a klikni na Obchod s doplňky.
  2. Vpravo nahoře klikni na tři tečky ⋮ a vyber Repozitáře.
  3. Vlož adresu https://github.com/hacs/addons a klikni na Přidat. Pak okno zavři.

2. Nainstaluj a spusť Get HACS

  1. V obchodě s doplňky se ti objeví Get HACS. Klikni na něj.
  2. Klikni na Nainstalovat a po dokončení na Spustit.
  3. Počkej pár vteřin, než doplněk HACS stáhne, a restartuj Home Assistant přes Nastavení → Systém → ⏻ (vpravo nahoře) → Restartovat Home Assistant.

3. Přidej integraci HACS a propoj ji s GitHubem

  1. Jdi do Nastavení → Zařízení a služby a stiskni Ctrl + F5. Bez obnovení stránky HACS v seznamu neuvidíš.
  2. Vpravo dole klikni na + Přidat integraci, vyhledej HACS a vyber ho.
  3. Zaškrtni všechna potvrzení a klikni na Odeslat.
  4. Zobrazí se ti kód zařízení. Zkopíruj ho a otevři odkaz github.com/login/device.
  5. Přihlas se na GitHub, vlož kód a klikni na Continue a pak na Authorize HACS.
  6. Vrať se do Home Assistantu, případně přiřaď HACS do oblasti a klikni na Dokončit.

V levém menu Home Assistantu ti teď přibude položka HACS. A to je vše, můžeš se pustit do instalace samotné integrace Živý obraz.

Jak nastavit integraci Živý obraz v Home Assistantu

Jak se hodnota dostane z Home Assistantu na displej

Než se pustíš do samotného nastavení, pomůže vidět celou cestu jedné hodnoty. Ukážeme si ji na teplotě z čidla v obýváku, tedy entitě sensor.teplota_obyvak:

  1. Home Assistant: entita má štítek ZivyObraz.
  2. Integrace: v nastaveném intervalu pošle její stav přes Import API na server Živého obrazu jako hodnotu sensor_teplota_obyvak.
  3. Živý obraz: hodnotu uloží a ukáže ji v sekci Hodnoty.
  4. Obrazovka: v návrháři určíš, kde a jak se hodnota na displeji zobrazí.
  5. Displej: při dalším probuzení si ESP32 stáhne obrazovku s aktuální hodnotou a vykreslí ji.

Displeji tedy Home Assistant nic neposílá přímo. Posílá jen hodnoty na server a displej si z něj stahuje hotový obrázek.

1. Instalace přes HACS

  1. V levém menu otevři HACS a vyhledej Živý Obraz.
  2. Otevři ho a klikni na Download (Stáhnout).
  3. Restartuj Home Assistant.

2. Přidání integrace

  1. Jdi do Nastavení → Zařízení a služby → Přidat integraci.
  2. Vyhledej Živý Obraz.
  3. Vyplň klíče, které najdeš na Živém obrazu v záložce Účet v části API klíče:
Pole K čemu slouží Povinné
Export key Čtení dat z tvých panelů (baterie, poslední synchronizace, IP adresa…) Ano
Group ID Načte jen panely z jedné skupiny, prázdné = všechny Ne
Import key Posílání hodnot z Home Assistantu na Živý obraz Ne, ale bez něj se hodnoty z HA na Živý obraz neposílají
Command key Ovládání displejů z Home Assistantu Ne
Label Štítek, podle kterého integrace pozná, které entity má posílat (výchozí ZivyObraz) Ne
Prefix Předpona názvů hodnot, např. zo Ne

Integrace klíče před uložením ověří, aniž by na displejích cokoliv změnila.

3. Označ entity štítkem ZivyObraz

Integrace posílá jen entity, které mají štítek (label) ZivyObraz:

  1. V Home Assistantu otevři Nastavení → Zařízení a služby → Entity a najdi svou entitu, třeba sensor.teplota_obyvak.
  2. Klikni na ni, otevři nastavení (ozubené kolečko) a do pole Štítky přidej ZivyObraz. Při prvním použití štítek rovnou založíš.
  3. Ulož změny.

Místo jednotlivých entit můžeš štítek dát i celému zařízení. Integrace pak pošle všechny jeho viditelné a aktivní entity.

Ve výchozím stavu se posílají jen změněné hodnoty. Entitu, která se má poslat pokaždé, označ navíc štítkem ZivyObraz Always. Ten si musíš založit sám.

4. Zkontroluj, že hodnoty dorazily

Integrace vytvoří kromě displejů ještě jedno zvláštní zařízení Živý Obraz – název instance. Najdeš ho v Nastavení → Zařízení a služby → Živý Obraz vedle svých displejů. V kartě Konfigurace u něj najdeš interval odesílání Push interval (60 až 86 400 sekund) a přepínač Automatic push.

Tyto entity se vytvoří, jen když máš vyplněný Import key. Pokud jsi ho při přidávání integrace přeskočil, otevři u integrace Konfigurovat → Data upload / Import API, zaškrtni Změnit nebo odebrat Import key a klíč doplň.

Abys nemusel čekat na interval, stiskni u stejného zařízení v kartě Ovládání tlačítko Push values now. Pak se přihlas na zivyobraz.eu, otevři stránku Hodnoty a podívej se do sekce Hodnoty zaslané na Živý obraz.

Název hodnoty vznikne z ID entity, ve kterém se tečka nahradí podtržítkem. Z sensor.teplota_obyvak tak bude sensor_teplota_obyvak. Pokud jsi v integraci nastavil prefix, např. zo, bude to zo_sensor_teplota_obyvak. Přesný název si zkopíruj z této stránky, budeme ho potřebovat v návrháři.

Stránka Hodnoty na Živém obrazu s hodnotami poslanými z Home Assistantu

Hodnoty poslané z Home Assistantu s prefixem zo, např. zo_sensor_s3_scd_sht_co2 (CO₂ z čidla) nebo zo_weather_forecast_home (předpověď počasí).

Když tam hodnota není, zkontroluj, že máš v integraci vyplněný Import key a zapnuté Automatic push. Entity ve stavu unknown nebo unavailable se neposílají a najdeš je v diagnostice Failed entities.

5. Vlož hodnotu do obrazovky

  1. Na Živém obrazu otevři Obrazovky a vytvoř novou. Nastav její rozlišení stejně jako má tvůj displej, např. 800 × 480 pro LaskaKit Live-7.5.
  2. Přidej prvek Hodnota a ze seznamu vyber sensor_teplota_obyvak.
  3. Do pole Suffix napiš °C (s mezerou na začátku), nastav font, velikost a polohu. Náhled se překreslí po každém stisku Enteru.

Editor obrazovek Živého obrazu s náhledem obrazovky a seznamem prvků

Editor obrazovek: vlevo náhled tak, jak ho uvidíš na displeji, vpravo seznam prvků a dole lišta pro přidání widgetů, třeba Hodnota, Proměnná nebo Graf.

Chceš-li hodnotu vložit do věty, použij prvek Text a název hodnoty napiš do dvojitých složených závorek:

V obýváku je {{sensor_teplota_obyvak}} °C, svátek má {{SVATEKCZ}}.

Název musí sedět přesně včetně velkých a malých písmen, jinak se nenahradí. Samostatný prvek Hodnota má navíc užitečné volby, třeba podmíněnou barvu (červeně, když teplota klesne pod 18 °C) nebo upozornění na starou hodnotu.

Nakonec v nastavení svého e-paperu na Živém obrazu vyber tuto obrazovku jako zdroj obsahu.

6. Ovládej displej z Home Assistantu

Když vyplníš Command key, každý displej dostane v Home Assistantu vlastní zařízení s tlačítky a přepínači. Můžeš tak vyžádat obnovení obrazovky, otočit ji o 180°, invertovat barvy nebo spustit OTA aktualizaci firmwaru.

Příkazy se ale neprovedou okamžitě. Displej většinu času spí, aby šetřil baterii, a příkaz si vyzvedne až při svém dalším probuzení.

Víc displejů najednou ovládáš akcí zivy_obraz.command. Třeba OTA aktualizace všech displejů ve skupině 6 vypadá takto:

action: zivy_obraz.command
data:
  target: "group:6"
  ota: true

A protože jde o běžné akce Home Assistantu, můžeš je použít i v automatizacích. Displej může například v noci spát déle pomocí parametru sleep_forced (5–240 minut).

Integrace navíc hlídá tvoje panely. Upozorní tě, když se některý dlouho neozval, a z napětí baterie odhadne, kolik dní uplynulo od posledního nabití.

A tím máš hotovo!

Tvůj e-paper teď ukazuje data z Home Assistantu a vzhled změníš pár kliknutími v editoru, bez flashování. Pokud ti vadí závislost na cloudu, zkus jednu z lokálních cest – ESPHome nebo screenshoty přes Puppet.

Užij si svůj živý obraz!

Odkazy

Diskuze (0)

Buďte první, kdo napíše příspěvek k této položce.

Nevyplňujte toto pole