X
ZigBee přes Tasmotu 2: Napojení ZigBee senzorů a aktorů na Loxone

ZigBee přes Tasmotu 2: Napojení ZigBee senzorů a aktorů na Loxone

How Can We Help?

Categories

ZigBee přes Tasmotu 2: Napojení ZigBee senzorů a aktorů na Loxone

You are here:
< Zpět

ZigBee přes Tasmotu 1: Hardware
ZigBee přes Tasmotu 2: Napojení ZigBee senzorů a aktorů na Loxone
ZigBee přes Tasmotu 3: Neznámé ZigBee zařízení (Danalock)
ZigBee přes Tasmotu 4: Automatické posílání dat senzorem

TL;DR

V Tasmotě si zapneme logování přes “syslog”. Syslog znamená, že Tasmota posílá veškeré logy přes UDP protokol, takže data ze ZigBee senzorů můžeme v Loxonu zachytávat přes UDP vstupy. Příklad rozeznání příkazu v UDP vstupu:

"Name":"ZB2.02_Digestor"\i"Humidity":\i\v

K ovládání ZigBee aktorů budeme v Loxonu používat HTTP výstupy. Příklad instrukce při zapnutí (nebo vypnutí) v HTTP výstupu:

/cm?cmnd=ZbSend {"Device":"ZB3.01_Satna_repeater","Send":{"Power":0}}

Párování

Párování koncových ZigBee zařízení s Tasmotou je primitivní a zatím jsem se nesetkal s žádnými problémy. V Tasmotě povolíme párování nových zařízení buď stisknutím  “ZigBee Permit Join” na hlavní obrazovce Tasmoty nebo tímto příkazem v konzoli:

ZbPermitJoin

Pak na samotném ZigBee zařízení spustíme párování (většinou stisknutím tlačítka). Spárované ZigBee zařízení je zatím identifikované 2 bytovým HEX kódem, takže jako první si jej přejmenujeme. Doporučuji stejný název, jaký budete používat v Loxone Configu:

ZbName 0xA291,ZB2.02_Digestor

Jestliže párování provádí koncové zařízení, tak i “odpárování” má na starosti koncové zařízení. Pokud chceme zařízení “odpárovat”, musíme mu poslat požadavek, aby opustilo naši síť:

ZbLeave ZB2.02_Digestor

A poté Tasmotě řekneme, aby si smazala zařízení ze své paměti. Pokud bychom neprovedli ZbLeave, smazané zařízení by dál vesele posílalo na Tasmotu data.

ZbForget ZB2.02_Digestor

Jakmile máme spárovaná všechna ZigBee zařízení, může výsledek vypadat třeba takto:

https://downloads.vodnici.net/uploads/wpforo/attachments/214/5119-Snmek-obrazovky-2022-04-03-232504.png

https://downloads.vodnici.net/uploads/wpforo/attachments/214/5120-Snmek-obrazovky-2022-04-03-232742.png

Vizualizace ZigBee v Tasmotě je jednoduchá, ale dostačující. Na hlavní stránce máte seznam senzorů, se stavem baterie a “lastseen” (kdy naposled senzor poslal nějaká data).

V ZigBee Map máte topografii sítě. Koncová zařízení (modrá) si sama vybírají, jestli se připojí přímo na koordinátora (červený) nebo na router (oranžový), podle toho, kdo je blíž (kdo má silnější signál). Číslo na těch spojovacích čárách znamená sílu signálu (čím vyšší, tím lepší).

Já jako router (“ZB3.01_Satna_repeater”) používám DC dimmer. Tasmota mi automaticky ukazuje stav dimmeru a nastavenou barvu, ale v reálu tam žádný RGB led pásek připojený nemám, jak jsem psal minule, dimmer mám jenom kvůli posílení ZigBee signálu  🙂

Čtení ZigBee senzorů v Loxone

Jako první skočte do konzole Tasmoty a ověřte si, že ze ZigBee senzoru chodí nějaká data. Třeba:

{"Device":"0xA291","Name":"ZB2.02_Digestor","Humidity":59.26,"Endpoint":1,"LinkQuality":79}

Jak vidíte, data chodí v human-readable JSONu. To samé, co vidíte v konzoli, bude dostávat i Loxone! Stačí, když v Tasmotě přejdete do:

Configuration > Configure Logging

A nastavíte si:

  • Syslog level: 2 Info
  • Syslog host: IP adresa Loxonu
  • Syslog port: libovolný port, na kterém bude Loxone poslouchat

Nastavení v Loxone Configu je primitivní. Přidáte nový virtuální UDP vstup, adresu odesílatele můžete nechat prázdnou, zadáte port, kde bude Loxone poslouchat (např. 514 pokud jste v Tasmotě ponechali defaultní Syslog port). A pak přidáte “virtuální UDP příkaz” pro každý ZigBee senzor. Při parsování v Loxonu doporučuju pracovat s “Name” (např. “ZB2.02_Digestor”), nikoliv “Device” (2-bajtový identifikátor, např. “0xA291”). Pokud totiž senzor s Tasmotou spárujete znovu, tak se “Device” změní, ale “Name” zůstává stejné. Konkrétně v UDP rozeznání příkazu mám:

"Name":"ZB2.02_Digestor"\i"Humidity":\i\v

Ovládání ZigBee aktorů v Loxone

Jako první krok doporučuju otestovat ZigBee aktor v konzoli Tasmoty. Seznam podporovaných ZigBee příkazů najdete tady, můžete zkusit třeba:

ZbSend {"Device":"ZB3.01_Satna_repeater","Send":{"Power":0}}

Pokud bych měl na svůj DC dimmer připojený nějaký LED pásek, tak by zrovna zhasnul. OK, funguje to, takže propojíme Tasmotu s Loxone. V Tasmotě přejdete do:

Configuration > Configure Other

A zaškrtněte “HTTP API enable”. Mimochodem, Tasmota taky umí MQTT, ale pro jistotu opakuji: vyserte se na MQTT!! “MQTT enable” můžete v klidu zrušit.

Z Loxonu budeme Tasmotu (a s ní spárované ZigBee aktory) ovládat přes Virtuální HTTP výstup. Jako adresu dáte IP Tasmoty. Potom nový “Virtuální výstup příkazu”. Používáme HTTP Get, jako instrukci při zapnutí (nebo vypnutí) dáme ten samý příkaz, který jsme testovali v konzoli Tasmoty, třeba:

/cm?cmnd=ZbSend {"Device":"ZB3.01_Satna_repeater","Send":{"Power":0}}

No a to je vše! Pro úplnost připomínám, že podobným způsobem můžete přes UDP vstupy a HTTP  výstupy číst a ovládat jakékoliv NE-ZigBee zařízení, na kterém běží Tasmota (třeba WiFi “chytrou” zásuvku). Pokud vám nějaký Tasmota příkaz (tady je jejich kompletní seznam) bude fungovat v Tasmota konzoli, bude vám fungovat i v HTTP výstupu Loxonu.

 

Pomohl Vám náš blog? Chcete nás podpořit? I málo udělá radost 😉
Table of Contents

One thought on “ZigBee přes Tasmotu 2: Napojení ZigBee senzorů a aktorů na Loxone

  1. Parada, z Loxone uz mi cteni i zapis do zarizeni funguje. Mam to tedy jen na stole. Pri odesilani se ve virtualnim vstupu musi nastavit IP ve formatu: http:\\IP. Mel jsem tam jen IP a to nejelo. Na guglu to ale jde najit.

Leave a Reply

Your email address will not be published.