blog.vyoralek.cz

Centrum chytré domácnosti – HomeAssistant (Hass.io) – 9 část – Integrace ZigBee Xiaomi Mijia a Aqara

V dnešní deváté části o HomeAssistentovi se podíváme na integraci s produkty Xiaomi Mijia a Aqara používající technologii ZigBee. To vše za použití Xiaomi Gateway jako prostředníka.

🎙 Poslední aktualizace článku 13.5.2019. Pokud najdete nějaké rozdíly v aktuálním stavu, dejte vědět v komentářích, díky.

Co budeme potřebovat?

  1. Instanci HomeAssistenta
  2. Xiaomi Gateway
  3. Produkty nesoucí označení Xiaomi Mijia a nebo Aqara

1. Instance HomeAssistenta (Hass.io)

Prvotním předpokladem je běžící instance HomeAssistenta minimálně ve verzi 0.57.

Pokud ještě z nějakého nemáte HomeAssistent nainstalovaný, doporučuji kouknout na první díl tohoto seriálu.

2. Xiaomi Gateway

Dále budeme potřebovat prostředníka mezi WiFi a Zigbee technlogií – gateway. Dobrou zprávou je, že pro HomeAssistant jsou podporovány hned tři verze:

  1. Xiaomi Gateway (označována jako lumi.gateway)
  2. Xiaomi Mijia Gateway (označována jako lumi.gateway.v2)
  3. Xiaomi Mijia Gateway 2018 (označována jako lumi.gateway.v3)

Naopak nepodporována je stále nejnovější verze Xiaomi Aqara Gateway (označována jako lumi.gateway.aqhm01) a to z důvodu, že není znám způsob jak ji přepnout v Mi Home aplikaci do dev módu (co je tento mód si řekneme dále v článku).

Xiaomi Mijia brána
Xiaomi Mijia brána

Pokud ještě bránu nemáte, tak z pohledu integrace mezi verzemi nejsou větší rozdíly a měla by vám vpohodě fungovat jakákoliv verze. Já mám odzkoušenou poslední třetí verzi.

3. Produkty nesoucí označení Xiaomi Mijia a/nebo Aqara

K dispozici máme opravdu velké množství produktů. Od sensorů teploty, otevření dvěří, pohybu až po detekci kouře či úniku vody.

Velký přehled produktů najdete v článku ZigBee ekosystém Xiaomi.

Xiaomi Mijia produkty
Xiaomi Mijia produkty

Nastavení integrace

Pro postup instalace Gateway a jednotlivých produktů koukněte do už zmiňovaného článku ZigBee ekosystém Xioami – ve svém důsledku je instalace poměrně intuitivní a měl by jí zvládnout vpohodě každý.

Dále se koukneme na specifické věci k integraci s HomeAssistentem a budu předpokládat, že produkty už máte s Gateway spárovány.

1. Zapnutí dev módu Gateway

Prvním předpokladem pro napojení na HomeAssistentem je zapnutí tzv. dev módu na Gateway.

To můžeme udělat z Mi Home aplikace poměrně šalamonským způsobem:

  1. Klikneme na ikonku Xiaomi Gateway
  2. Klikneme na tři tečky v pravém horním rohu (Settings)
  3. Zvolíme první volbu About
  4. 3x rychle klikneme na plochu pod dvěmi položkami – do menu by nám měli přibýt 3 nové položky v čínštině
  5. Klikneme na třetí položku v pořadí
  6. Zapneme přepínač na prvním řádku a opíšeme si kód na druhém řádku

2. Nastavení Xiaomi Gateway komponenty pro HomeAssistent

Otevřeme si hlavní konfigurační soubor HomeAssistenta configuration.yaml a přidáme řádek:

xiaomi_aqara:
  discovery_retry: 5
  gateways:
    - key: <KodzHomeMiAplikace>

🥁 Podle všeho u poslední verze Mijia Gateway V3 se u zařízení s MAC adresou začínající na 04:CF:8C může objevit problém (u mě se toto neprojevilo) s dev módem, kdy hub HomeAssistent nenajde. Je potřeba se připojit do Hubu přes UART a spustit příkaz: psm-set network.open_pf 3. Více k problému najdete zde.

HomeAssistant zrestartujeme a po naběhnutí bychom měli vidět v systému nové entity. V mém ukázkovém případu můžete vidět:

Xiaomi Mijia a Aqara entity v HomeAssistentovi
Xiaomi Mijia a Aqara entity v HomeAssistentovi

Platí tedy, že podporované produkty připojené k bráně jsou při nastavení brány automaticky do HomeAssistenta přidány a na konci názvu mají jedinečný kód.

V případě, že byste si do budoucna pořídili další produkt je potřeba ho nejprve spárovat s Hubem a pak provést restart HomeAssistenta. Zařízení by pak mělo být během startu HA přidáno automaticky.

Atributy produktů

Jak si můžete všimnout na obrázku výše se seznamem entit máme u jednotlivých produktů k dispozici hned několik atributů:

  1. friendly_name – automaticky generovaný název
  2. battery_level – úroveň stavu baterie
  3. unit_of_measurement – pokud to dává smysl tak jednotku měřené veličiny
  4. device_class – pokud to dává smysl tak typ měřené veličiny

Zejména battery_level je velkým přínosem, jelikož ten v originální aplikaci Mi Home není vidět.

Jak vidíme integrace je poměrně jednodnoduchá, pokud vše šlape jak drátkách.

Kompletní série o HomeAsistantovi obsahuje následující články:

  • 1. část – Instalace HomeAsisstent
  • 2. částIntegrace Sonoff s firmware Sonoff-Tasmota
  • 3. částIntegrace Homekit
  • 4. částIntegrace Sonoff s firmware Sonoff-Tasmota – 2 část
  • 5. částIntegrace s Wemos D1 a senzory teploty
  • 6. částIntegrace Sonoff s firmware ESPHome
  • 7. částIntegrace Sonoff POW s firmware ESPHome
  • 8. částIntegrace LED Magic Home s firmware ESPHome
  • 9. částIntegrace Xiaomi Mijia a Aqara
  • 10. část – Integrace vlastní Zigbee gateway
  • 11. část – Vzdálený přístup do Hass.io z Internetu
  • 12. část – zobrazení senzorových data pomocí InfluxDB a Grafany
  • 13. část – Hass.io Add-ony, které používám
  • 14. část – Integrace Xiaomi Mi Flora
  • 15. část – Integrace Withings (Nokia)
  • 16. část – náhrada SQLite databází MySQL
  • 17. část – HACS Add-ony – instalace a konfigurace
  • 18. část – Integrace Sonoff s firmware eWeLink
  • 19. část – nová integrace Sonoff pro HA
  • 20. část – měření spotřeby
  • 21. část – automatické zálohy a obnovení ze zálohy
  • 22. část – napojení hlasového asistenta Amazon Alexa
  • 23. část – automatické zálohy na síťový sdílení disk (Samba)
  • 24. část – Bluetooth zařízení a ESPHome proxy
  • 25. část – nefunkční aktualizace HomeAssistanta
  • 26. část – integrace SwitchBot produktů
  • 27. část – integrace fotovoltaiky Growatt

18 comments

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..

  • Díky za Vaše články. Brána mi přišla před pár dny. Bohužel jsou s ní od začátku problémy. Objednal jsem starší verzi – podporu HomeKitu nepotřebuji, používám Home Assistent (HA), ovšem tahle brána nejprve nešla přidat ani do aplikace MiHome. Vyměnit telefon nepomohlo, teprve po mnoha pokusech mě napadlo dát bránu hned vedle jednoho z routerů (v domě máme 3, signál nikde neklesne pod 80 %) a telefon položit vedle. Fajn, brána se konečně přidala do aplikace.

    Další problém byl s jejím přepnutím do dev modu. Aplikace totiž ihned po vybrání brány v menu nabízela update FW a dál člověka nepustila. To bylo k vzteku, zablokování přístupu brány k internetu na hlavním routeru nepomohlo, když se od netu odřízl telefon, tak s bránou nekomunikoval vůbec. Řešením se ukázalo být prosté vytažení kabelu od antény do master routeru :-). Konečně přestal otravovat update, byl povolen dev mód, získáno heslo a brána připojena k HA. Přidání senzorů proběhlo bez problémů (2x teplota a vlhkost, 2x PIR). Na cestě jsou dveřní čidla, wireless button a kostka. Brána je nyní pomocí FW odříznuta od přístupu k internetu, což mobilní aplikaci činí nepoužitelnou, což ovšem díky HA vůbec nevadí (minimálně do okamžiku, kdy budu potřebovat přidat další sensory).

    Určitě dokoupím další teplotní čidla a PIR do míst, kde není jednoduchý přístup k elektřině, protože jinak dávám přednost DIY přístupu s Wemos D1 mini nebo NodemCu v hlavních rolích. Po počátečních problémech s bránou ale silně uvažuji o tom, že se jí zbavím a nahradím ji opensource řešením.

    • O alternativě brány bych chtěl dokončit článek tenhle víkend. Čili pokud mi do toho nic nevleze tak budu mít návod a první zkušenosti 🙂

      • Tak článek bohužel nebude. Zjistil jsem, že jsem si objednal nesprávný USB stick CC2540 namísto CC2531, čili ho budu schopen dokončit až tak za měsíc 🙁

        • Nevadí, rád počkám :-). V jednom z komentářů u minulého článku píšete, že máte vaše brána má MAC začínající 04:cf:8c – zrovna jako ta moje. Můžu vědět, jakou verzi FW máte? V aplikaci mi visí update na 1.4.1_167.0158, u kterého se tak trošku bojím, aby nezpůsobil rozpad komunikace mezi bránou a Home Assistantem.

          • Jj, mám právě tento. Nicméně bych bych asi opatrný. Já ten update provedl ještě před zapnutím lokálního sdílení a tuším, že v komentářích někdo psal, že s tím měl problém. Pokud vám vše funguje tak bych asi zůstal raději u toho stávajícího dokud nebudete mít zálohu v podobě alternativní brány o které jak to půjde napíšu článek 🙂

        • Zdravím, doporučuji ZIGBEE2MQTT nainstalovat přes doplněk do HASSIO. Na ten návod se taky těším, ale poprosím o výslený zápis v configuration.yaml. Tasmota má zápis topic: „tele/hass/LWT“ a Zigbee zápis topic: „hass/status“ ? Jak by teda měl vypadat tento konfig?

    • Dobrý den, jakou verzi aplikace používáte? Já se o to pokouším a v-bec nemohu najít nabídku about,

  • Ja se mesic snazim jenom rozchodi Mi Home. Mimo mainland China se alespon naloguju a zarizeni nepridam, a v mainland China se ani nenaloguju (Unable to sign in. Please check current network connection and try again „timediff“). Zkousel jsem na ruznych sitich a mobilech. Takze takhle jsem dopadl s nakoupenym hafo zbozi Mijia.

    • S tímhle problémem jsem se nesetkal a nedaří se mi k tomu najít i nic na internetu. Pokud máte zboží na Zigbee tak určitou náhradou může být použití neoficiální brány Zigbee, kterou jsem popisoval v tomhle článku: https://blog.vyoralek.cz/iot/vlastni-zigbee-gateway/ .. dokáže to to pak kompletně fungovat bez Mi Home aplikace.

  • Super návod, nastavení funguje. Povedlo se i odblokování HUBů (mám dva) přes UART. Jediné s čím jsem se trošku musel poprat bylo nastavení, kdy je u více zároveň připojených HUBů nastavit i MAC adresy:

    xiaomi_aqara:
    gateways:

    HUB Obývák

    - mac: 04:CF:8C:**:**:**
    key: tdkqowhn6-------

    HUB Ložnice

    - mac: 04:CF:8C:**:**:**
    key: 0arzcq2az-------

    S čím se teď potýkám je, že čas od času (ale třeba 5x denně) se mi HUBy odpojí od HA a já musím vždy HA restartovat, aby je zase našel. Zkoušel jsem i vytvořit automatizaci, kdy mi jeden z HUBů každých 30s blikne a doufal jsem, že tím navázání spojení udržím, ale ani to nepomáhá. Odpojí se vždy oba dva HUBy naráz a ani když jsem čekal třeba půl dne, tak se už znovu nepřipojili. Nesetkal se s tím někdo? V konfiguraci jsem vynechal discovery_retry: 5, protože s tím se mi při startu HA vždy zasekl, může to mít vliv (dle mého je to jen počet pokusů o spojení při incializaci HA – je tak? ). Díky za rady

  • Ahoj. Vies mi poradit ako zaradit – battery_level – do HA ako samostatny senzor,aby sa s nim dalo dalej pravcovat v automatizacii? Diky.

    • V případě použití gateway od Xiaomi by hodnota baterie měla být přístupná pomocí atributu sensoru, např. states.sensor.temperature_xxxxxxxxx.attributes.battery_level – je potřeba použít value_template sensor. Pokud máš sensory připojené pomocí zigbee2mqtt tak se na baterii vytvoří automaticky nový sensor, který je dostupný přímo ve formátu sensor.0xxxxxxxxx_battery

  • Dobrý den, od napsání tohoto článku už uběhl nějaký čas, a proto bych se chtěl zeptat, jestli už neexistuje způsob, jak do HA implementovat nejnovější verzi brány Xiaomi Mijia Smart Gateway 3.

      • Nejsem si jistý jestli budu někdy schopen přímo odpovědět, jelikož jsem myšlenku zigbee bran od Xiaomi kompletně zatím opustil a tímpádem to nemám ani jak ověřit. Ale je zde poměrně velká šance, že se najde nějaký čtenář který bude vědět.

  • Diky za super rady – jsem vsak uplny zacatecnik – zacinam s HOOBS – neporadil by prosim nekdo, jak presne upravit konfiguracni soubor aby mi GATEWAY detekoval? Mezi pluginy jsem zadny pouzitelny nenasel :-/ Diky

Odebírejte blog emailem

Mějte ihned informaci o novém článku ze světa technologií.