Zigbee brána pomocí Raspbery PI

Zigbee brána pomocí Raspbery PI

Tak, úvod o Zigbee spolu s důvody, proč je tak úžasný, máme za sebou z minula  a dneska se pojďme podívat na samotné rozchození.

Co budem potřebovat

Na provoz vlastní Zigbee brány budete potřebovat buď Raspberry (doporučuju RaspPI novější než v1. Na té to sice běží, ale dost pomalu). A nebo nějaký NAS nebo linuxový stroj, kde Vám pojede například Docker.

Dále pak komponenty na výrobu Zigbee brány:

A případně nějaká čidla na vyzkoušení

Já jsem se nakonec vydal cestou Raspberry 3 B+ , protože se mi nepovedla Zigbee USB rozchodit pod ESXI (ten ho chybně identifikoval jako USB drive a celý tuhnul). Zatím mi na Raspberry běží jen zigbee2mqtt, ale výhledově ho chci zkusit rozchodit spolu s Loxberry.

Flashnutí CC2531 USB snifferu

Jako první krok je potřeba stáhnout Flash Programmer (verzi 1, nikoli v2). Je nutná registrace, která je ale zdarma. Dále pak nainstalovat CC Debugger driver (zatím jen instalujte, nic nezapojujte do PC).

Nyní propojte všechny tři zakoupené komponenty z prvního seznamu mezi sebou (CC Debugger – Downloader Cable — USB Sniffer). Z USB Snifferu je potřeba vyndat chráničku, která je na pinech nastrčená. Měli byste získat celek, který má na obou koncích USB koncovku.

Propojku na USB sniffer připojte tak, že červená linka na kabelech je na straně, kde není USB zásuvka.

Nyní připojte USB kabel z CC Debugeru a ověřte, že zařízení vidíte ve správci zařízení. Mně tento krok sám o sobe nefungoval a bylo potřeba ještě ručně nainstalovat driver ze souboru swrc212a.zip z podsložky cebal\win_64bit_x64.

Pokud ve správci zařízení vidíte CC Debugger, připojte i USB Sniffer. Takže budete mít oba USB porty zapojené.

Nyní na CC Debugeru zmáčněte tlačítko Reset, čímž by se měla kontrolka rozsvítit zeleně.

Spusťte aplikaci Flash Programmer, kde byste v horním seznamu měli vidět CC Debuger zařízení. Pokud nevidíte, znamená to, že Vám nefunguje výše zmíněný driver. Zkontrolujte ho a případně nainstalujte.

Stáhněte custom firmware pro USB Sniffer – https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator/CC2531/bin

V aplikaci zvolte custom firmware a vyberte soubor stažený v předchozím kroku.

Odškrtněte “Retain IEEE address when reprogramming the chip” a stiskněte “Perform flash”.

Počkejte, než se USB sniffer zase rozsvítí zeleně. Tím poznáte, že je přeprogramování hotovo.

Aplikaci můžete ukončit a sniffer vyndat z Vašeho PC:

Pokud používáte Linux, nebo se chcete podívat na původní návod, tak ten je k dispozici zde: https://github.com/Koenkk/zigbee2mqtt/wiki/Getting-started

Instalace na Raspberry

Tady je postup vcelku primitivní a funguje přesně jak je popsáno zde: https://github.com/Koenkk/zigbee2mqtt/wiki/Running-the-bridge

Jako první krok odpojte CC Debugger a Downloader kabel a připojte USB Sniffer do Raspberry. Pak zjistěte, zda Vaše Raspberry vidí USB Sniffer. To zjistíte tak, že ve složce /dev uvidíte ttyACM0. Takže zkuste například

ls -l /dev/ttyACM0

Pro samotnou instalaci postupně spusťte kroky popsané na výše zmíněné stránce. Tzn:

sudo curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs git make g++ gcc
sudo git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt
sudo chown -R pi:pi /opt/zigbee2mqtt
cd /opt/zigbee2mqtt
npm install

Pokud se něco nepovede, zkuste zkontrolovat verze npm a verzi node dle popisu v gihubu. Mně vše fungovalo napoprvé.

Když budete mít nainstalováno, je potřeba ještě zigbee2mqtt nakonfigurovat. To se dělá v souboru /opt/zigbee2mqtt/data/configuration.yaml.

Konfiguraci proveďtě pomocí nástroje nano:

nano /opt/zigbee2mqtt/data/configuration.yaml

upravte MQTT bránu dle Vašeho nastavení a soubor uložte (CTRL+O a ukončete pomocí pomocí CTRL+X).

Nyní zigbee2mqtt spusťte a otestujte, že vše jede.

cd /opt/zigbee2mqtt
npm start

Měli byste vidět něco jako:

2018-12-04 17:12:03 INFO Starting zigbee-shepherd
2018-12-04 17:12:04 INFO zigbee-shepherd started
2018-12-04 17:12:04 INFO Currently 0 devices are joined:
2018-12-04 17:12:04 INFO Connecting to MQTT server at mqtt://mqtt.dum
2018-12-04 17:12:04 INFO zigbee-shepherd ready
2018-12-04 17:12:04 INFO Connected to MQTT server

Automatické spouštění po startu

Pokud chcete, aby se brána spouštěla automaticky při restartu Raspberry, je potřeba ještě zaregistrovat zigbee2mqtt jako service.

sudo nano /etc/systemd/system/zigbee2mqtt.service

Vložit:

[Unit]
Description=zigbee2mqtt
After=network.target

[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=pi

[Install]
WantedBy=multi-user.target

A opět uložit a ukončit (CTRL+O, CTRL+X).

Nyní službu nahoďtte a podívejte se, že běží

sudo systemctl start zigbee2mqtt
systemctl status zigbee2mqtt.service

a pak ji povolte jako automatickou

# Start zigbee2mqtt
sudo systemctl start zigbee2mqtt

# Show status
systemctl status zigbee2mqtt.service

A tady ještě několik užitečných příkazů, především pak ten poslední, pomocí kterého se můžete podívat na log zigbee2mqtt i když běží na pozadí (hodí se při párování dalších zařízení).

# Stopping zigbee2mqtt
sudo systemctl stop zigbee2mqtt

# Starting zigbee2mqtt
sudo systemctl start zigbee2mqtt

# View the log of zigbee2mqtt
sudo journalctl -u zigbee2mqtt.service -f

Celý návod je opět dostupný zde:https://github.com/Koenkk/zigbee2mqtt/wiki/Running-the-bridge . Stačí následovat krok za krokem.

Při prvním testování doporučuji zigbee2mqtt spustit jen z příkazové řádky (ne jako service). Lépe uvidíte, co se uvnitř děje.

Párování zařízení

Párování samotné je občas vcelku věda. Každé zařízení má totiž vlastní postup, jak vyvolat párovací proces. Zatím mám vyzkoušené jen výše uvedená zařízení, ale ostatní snad už budou podobné.

Na zigbee2mqtt wiki je opět článek o párování, ale ten mi pomohl jen částečně.

Samotný zigbee2mqtt provádí párování cca jednou za minutu. Je proto potřeba se jednak trefit do tohoto časového okna (info o párování vidíte v logu) a udržet párované zařízení online.

V případe Xiaomi teploměru šlo všechno hladce. Stačilo podržet tlačítko teploměru po dobu cca 5 sekund a nacházet se v blízkosti USB sniferu.

V případě Xiaomi cube to byl boj. Co totiž na webu nepíšou je, že zařízení usíná. Je tedy potřeba opravdu trefit párovací okno, nejprve držet párovací tlačítko cca 5sekund, kdy se 3x rozbliká modře dioda. Pak párovací tlačítko pustit a dioda blikne ještě jednou (tím pravděpodobně potvrzuje, že se rozjel párovací proces). A nyní je potřeba cca jednou za sekundu jen krátce zmáčknout tlačítko. Tím kostku udržujete vzhůru. Jakmile se kostka přihlásí v logu zigbee2mqtt, můžete zběsilého mačkání nechat.

A na závěr Ikea žárovka. Tam se pro změnu párování dělá střídavým zapínáním a vypínáním, navíc je potřeba mít USB Zigbee sniffer jen pár cm od žárovky, ideálně úplně na ní.

Na tyhle účely jsem si vyrobil kabel s vypínačem a objímkou, abych mohl žárovku pustit přímo vedle Raspberry. Poté, co žárovku umístíte k Zigbee Snifferu, je potřeba 6x zapnout a vypnout žárovku tak, že ji vždy jen na chviličku zapnete, aby se téměř nestihla rozsvítit a pak na delší dobu vypnete (cca 0.5s zapnout a třeba 1s vypnout). Po těchto šesti ji nechte buď zaplou, nebo dál blikejte.

Závěrem

Jak vidíte, párování není úplně snadné :). Ale s trochou cviku to už jde.

A to je pro dnešek vše. Návod už je docela dlouhý, ale přitom je myslím vcelku snadný. Příště pak bude následovat ukázka, jak z MQTT dostat data přes NodeRED až do Loxone.

PS:

Ještě jen doplním pár vět ohledně diskuze před minulým článkem. Co by se mi opravdu líbilo, je PLC Zigbee na DIN lištu. Aby to bylo zase hloupé a nahraditelné zařízení, stejně jako třeba Quido nebo jiná seriovka. Něco málo jsem našel, ale ceny nejsou moc příjemné. Pokud by někdo věděl, dejte vědět.

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

81 thoughts on “Zigbee brána pomocí Raspbery PI

    1. Ber to nejnovejsi, at je nejrychlejsi.

      Ja kdyz to testoval na te v1, tak pokud jsem dostatecne rychle klikal/menil intenzitu svetla, tak to Rapberry nestacilo obsluhovat MQTT a posilat to do Zigbee.

      Idealne vem ten model co mam ja, to je ta Pi 3Model B+, bral sem taky z rpishopu. Nevim, jestli ty na AliExpresu jsou stejne kvality, nebo je to kopie. Ale jelikoz stoji podobne, prislo mi to zbytecne resit.

      SD kartu, kryt i zdroj sem pak uz z ali vzal. tam je ta cena docela rozdil

      1. OK díky. Počkám na Zigbee propriety z Ali, které jsem objednal.
        Pro začátek to zatím zkusím rozchodit na nějakém virtuálním PC mimo Raspi.. díky za návod.

        1. tam je akorat problem,ze se ti musi do te virtualni PC povest dostat ten USB dongl.

          bohuzel windows-docker neumi mapovat USB/COM, takze bud Linxu docker, nebo teoreticky nejaky VMWare/VirtualBox a zkusit ten USB namapovat.

          Schvalne pak napis pod cim se ti to povedlo.

          1. Chci jít cestou VMWare. Pokud by to nešlo, tak to zkusím pro testy pustit přímo na nějakém PC.
            Raspi přijde na řadu posléze..

          2. Neviem sice aky NAS pouzivas ale v “Unraid OS” viem do VM (QEMU) dat cely USB radic, potom by to nemalo robit problem.
            Docker vzdy stiahnem hotovy, takze neviem ako to tam bude s USB podporou :/

            BTW: Offtopic – nie je lepsie dat tieto diskusie na Forum? lebo takto su info na 2 miestach. Ku kazdemu clanku rovno zalozit “temu” a komenty zakazat 😉
            Za nejaky cas stratime prehlad…

            1. Nepouzivam NAS, ale ESXI na 2x XEON + 128GB RAM ;-). Mam ho pracovni a zaroven mi na nem bezi jeden docker na dum 😉

              Problem s USB neni v dockeru, ale v ESXI. On virtualizuje vsechen HW, ale ten HW musi byt podporovan. A ten stick ocividne neni. Mysli si, ze je to HDD a zacne cely tuhnout.

            2. Ad diskuze, toto jsem zkousel driv a zase byly namitky, ze se clovek musi registrovat, pokud chce jen neco dodat/zeptat se. Takze je to takto 😉

  1. To je náhoda, alebo skôr nie 🙂 že mi dnes došiel z číny Zigbee zniffer. Dobrý návod, úž to mám rozchodené. Najotravnejšia je asi TI registrácia inak je to malina rozbehať na maline (3B+).

    Čo sa týka HW tiež by sa mi viac páčila možnosť otvorenej Gateway, ktorá by len posielala preložené MQTT alebo UDP správy po sieti. Zatiaľ najbližšie k tejto myšlienke má asi https://zigate.fr s Wifi verziou. Škoda len tej francúštiny, nechápem ako môže niekto takéto riešenia nepísať v angličtine.

      1. Obávam sa, že ano. To už radšej vlastnú gateway, ale prepísať logiku zo zigbee2mqtt do arduina by bol asi projekt na pár týždňov.

        Uvidím aké stabilné to bude. Mám na tom Rpi momentálne nodered, mosquitto, homebridge, zigbee2mqtt a pokusne 3G modem a už mi to občas stvrdne pri deploymente Node-redu.

        1. ta vyhoda zigbee2mqtt je, ze maji v sobe celou logiku nejen toho prijimani a odesilani, ale i peknou databazi konvertoru na znama zarizeni. Takze z toho leze hezky json

          V jadru ten zigbee2mqtt pouziva jakyhosi zigbee-shepherd, coz je prave ten transportni protkol na zigbee.

          A k tomu se pouziva zigbee-shepherd-converters (https://github.com/Koenkk/zigbee-shepherd-converters) kde jsou definovana vsechna ta pravidla.

          Takze teoreticky by stacilo vzit jen ten shepherd a convertors a zamenit mqtt za tcp/udp.

          Ale v pythonu a nodeJs se naprosto nevyznam, takze by to musel udelat nekdo jiny 😉

          To mqtt je dostatecne na senzory nebo jednorazove zapnout/vypnout. Ale kdyz se v LoxoneApp hybe prstem pres intenzitu svetla treba, tak to nasypa hodne mqtt zprav a zbytecne to ucpe. Tam uz se to mqtt uplne nehodi.

      1. Ackoli teda tady vypada, ze neco hotoveho majit, protoze maji nejake propojeni do homeasistantu. ale neni tam poradne videt co presne posilaji a jak propojeni funguje

    1. urcite bylo, pokud nekdo vyrobil SW na to.

      Problem je, ze ty zakladni zigbee zarizeni jen preposlou zigbee protokol do site. a to je jen par bytu informaci.

      to dulezite je pak prevest tyhle data na konkretni info dle konkretniho zarizeni (to v mqtt nebeha, tam behaji treba 4 cisla + id zarizeni).

      a zminovany zigbee2mqtt podporuje jen mnou uvadeny usb stick

  2. Dík za článek k Zigbee a další inspiraci!
    Mám jenom pár laických dotazů:

    HW:
    Nekoukal jsi se náhodou i na XBee?
    https://www.link-labs.com/blog/zigbee-vs-xbee
    https://www.aliexpress.com/item/XBee-module-Series-2-Zigbee-module-wireless-data-transmission-module-imported/32640474357.html
    Z toho, co jsem vyčetl, tak Xbee umí komunikovat se Zigbee zařízeními. Je sice dražší, ale údajně tam není tolik bastlení.

    SW:
    Opravdu je nutný mqtt? Spousta návodů na Node Red (nejenom ty tvoje) zahrnují i instalaci mqtt (mqtt brokera), ale já jsem se zatím bez mqtt obešel. Konkrétně mi běží:
    DHT22->Arduino->USB->Raspberry (Node Red, Serial node)
    GSM modul->USB->Raspberry (Node Red, serial)
    1-wire->Raspberry (owfs + Node Red a owfs node)
    Nic proti, koncept mqtt broadcastů vypadá zajímavě, ale je to další server (mosquitto), který musím nainstalovat a starat se o něj. Nezkoušel jsi třeba
    https://flows.nodered.org/node/node-red-contrib-zblight
    nebo jít cestou XBee a
    https://flows.nodered.org/node/node-red-contrib-xbee

    Jinak zahazování triaků, to už mi přijde dost radikální 🙂 Tímhle tempem budeš měnit technologie každé dva roky.

    1. ja porad moc nechapu ten rozdil mezi zigbee a xbee. prijde mi, ze zigbee je protokol a xbee je komercni imlementace toho HW. kazdopadne, neni problem sehnat bastl zarizeni, problem je sehnat zarizeni s rozumny SW.

      Ad mqtt, taky bych radsi bez mqtt a radeji nejake UDP. Jenze, neni. Bud budes prijimat hrubej zigbee protokol, coz je par znaku a budes to cele muset dekodovat, nebo pouzijes zigbee2mqtt ktery to pekne dekoduje do jsonu. Viz moje odpoved nekde tady ve vlakne.

      ty veci co pises sem nezkousel, protoze sem nenasel zadnou poradnou recenzi a navod na to. U toho zigbee2mqtt je mraky navodu, komunita, je to odladeno. a jak sem psal, stacilo by vzit zigbee-sheperda, zigbee-sheperd-convertor a z mqtt to predelat na udp.

      Kazdopadne, pokud rozchodis neco jineho, tesim se na navod!

      PS: Ad triaky. jde o to, ze na ne nemam v rozvadeci tolik mista kolik bych chtel, kazdy musel byt jinde a je to dodelavano post. a tim padem naprd. Navic sme zjistili, ze to stmivani vubec nepouzivame. Proto mi pridje zbytecne to tam mit.

  3. Zatím Zigbee/XBee netestuju (vystačím si s triaky). Jenom jsem na to koukal, když jsem přečetl tvoje články.

    Co jsem zatím vyzjistil k XBee:
    – existuje několik HW verzí XBee. “XBee Zigbee” je jenom jednou z možných (viz https://www.sparkfun.com/pages/xbee_guide dole). Vlastně existují dvě varianty: “XBee Zigbee” a “XBee Zigbee Pro” (dražší s větším dosahem).
    – XBee má vlastní API. Takže se nemusíš prčit s nějakým hrubým Zigbee protokolem. Tohodle API potom využívá Xbee node.
    – Samotné XBee nemá USB konektor, musíš si dokoupit odpovídající shield (pro Arduino, pro Rasbperry nebo shield s USB konektorem). Zase viz https://www.sparkfun.com/pages/xbee_guide dole. Ty shieldy se taky dají sehnat na Ali.
    – co se týče návodů, Google mi vyhodil třeba toto:
    https://www.cooking-hacks.com/documentation/tutorials/xbee-arduino-raspberry-pi-tutorial (spojení dvou Arduin nebo dvou malin přes XBee)
    http://www.raspberry-pi-geek.com/Archive/2015/12/Analyzing-sensor-readings-with-an-XBee-wireless-connection (čtení ze Zigbee senzorů)
    V konfiguračním softwaru Xbee (SW se jmenuje X-CTU) by se měla dát vyhledat (a spárovat) Zigbee zařízení.

    Na node red jsem návod nenašel, ale předpokládám, že jakmile je síť nakonfigurovaná přes X-CTU (zařízení jsou spárovaná a znáš jejich “destinace”), tak na ně můžeš posílat příkazy (požadavky na čtení) přes Node Red….. Ale tady už vařím z vody. Vím, že musíš poskládat nějaký frame (viz příklad tady dole https://flows.nodered.org/node/node-red-contrib-xbee) a toť vše. Tady už je potřeba to vyzkoušet.

  4. Ještě k tomu XBee

    Ano, je to komerční implementace Zigbee (dá se ale sehnat na Ali…). Primárně určená ke komunikaci s jinými moduly Xbee Zigbee. Nicméně je možné XBee nakonfigurovat tak, aby komunikoval se Zigbee zařízeními jiných výrobců. Ta konfigurace XBee modulu je popsaná tady:
    https://www.digi.com/support/knowledge-base/zigbee-home-automation
    a tady (konfigurace se trochu liší…)
    https://flows.nodered.org/node/node-red-contrib-zblight

    Takže výrobce XBee oficiálně umožňuje s jinými Zigbee zařízeními, ale nezaručuje ji.

    1. Diky za spoustu zajimavych linku, na nektere jsem jeste nenarazil.

      ad ta xbee, zapada mi to do toho co jsem si myslel a co jsem ruzne cetl.

      cim si ale nejsem uplne jist je ta kompatabilita. je divne, ze to nikdo poradne nikde nepouziva a nejsou na to ucelene navody (a nebo jsem jen nenarazil).

      stejne tak treba ta node-red zblight, tak to podporuje jen svetla. proc je to takto uzce zamereno, proc nejsou univerzalni zigbee i na teplomery

      obecne mi prijde, ze by bylo snazsi vzit RaspPI+xbee shield, nez slozite vyrabet firmware do toho Usb sniferu, ten pak stejne dat do raspi a psat to na to cele znovu.

      a i kdyz sem procital fora zigbee2mqtt, tak ty xbee nikdo moc nezminoval.

      tohle nechapu.

  5. Proč node-red zblight podporuje jenom světla? Moje vysvětlení by bylo, že borec, který to programoval, potřeboval jenom ovládat světla. Tenhle node je opuštěný (poslední update od vývojáře byl někdy před 2 roky). I proto bych si myslel, že to byl jednorázový počin. Potřeboval akorát světla a víc se tomu nevěnoval.

    Pro úplnost, tady je další (celkově třetí) node pro XBee:
    https://flows.nodered.org/node/node-red-contribe-xbee-api

    1. Diky, narychlo jsem prilitl vsechny linky a nemuzu si pomoct, ale neprijde mi to tak pripraveno jako ten zigbee2mqtt. Jednak mi vadi, ze se tam ladi nejake ty interni hodnoty, kdy nikdo poradne nevi co tam ma byt a metodou pokus-omyl ma kazdy vyzkouseno co mu zhruba fungue. Dal pak vsechny navody jsou vetsinou o tom, ze se sparuje jedna vec s druhou, pripadne se sice prida treba xiaomi device, ale uz nikde neni ukazano, ze by z toho lezl nejaky pouzitelny json.

      Ty vsechny linky co jsi poslal jsou proste jen fragmenty toho co to umi. Nikde neni navado typu: potrebujes to a to, nainstalujes to, komunikujes s tim tak. To ze si nasel node-red-nody, ty sem nasel taky. Ale neni videt jak ma vypadat msg na odeslani a prijmuti. Tzn vubec nevime, co to dela (tzn uplne k nicemu, jestli to znamena to jeste vse testovat).

      Jak sem psal, rad si pockam na nejaky uceleny navod. Ja se tomu ted urcite venovat nebudu 😉

  6. Ahoj, již delší dobu (přes rok) úspěšně používám řešení od https://www.dresden-elektronik.de, konrétně tento modul https://www.dresden-elektronik.de/funktechnik/products/boards/development-boards/raspbee/description/?L=1 , který lze přímo připojit přes GPIO do Raspberry. Za cenu cca 30 éček (+ malina) lze zprovoznit kompletní Zigbee bránu bez nutnosti dalšího zařízení.

    Modul (vyráběj i USB stick pro PC) získáte s obslužným softwarem https://www.dresden-elektronik.de/funktechnik/products/software/pc/deconz/ , kde lze spravovat ZigBee nody. Celé to funguje i pouze z konzole (nemusíte mít na Raspberry Xka).

    Pomocí REST pluginu, který se velmi živě vyvijí – https://github.com/dresden-elektronik/deconz-rest-plugin lze ovládat bránu přes API (vyčítání hodnot, a x dalších věcí) a (což je velmi důležité) můžete přes websockety napojit node-red a přes velmi jednoduchý můstek spojit s Loxone (já využívám přeposílaní na UDP – nemusím nikde registrovat nové zařízení (kromě Zigbee) a automaticky se přeposílá do Loxone na Virtuální UDP vstup ve tvaru TypAIdCidla=hodnota – jen založím nový UDP příkaz s rozeznáním příkazu). To je teď pár měsíců novinka, dokud nebyl websocket přeposílal jsem si pársované údaje z deConz logu přes pipu do Loxone bash scriptem.

    Maj i frontendovou aplikaci pro jednoduchou administraci čidel, světel, atd, ale tu využívám jen pro rychlý debug. Jinak mají všechno velmi pěkně zdokumentované. Seznam podporovaných zařízení je zde: https://github.com/dresden-elektronik/deconz-rest-plugin/wiki/Supported-Devices , na přání (po sdělení pár informací z aplikace) přidaj ale podporu dalšího zařízení.

    Já aktuálně využívam teplotní a vlhkostní čídla, buttonky, vypínače, pohybové senzory a senzory otevření dveří od XIOAMI. Nemám žádný trvale připojitelný node (nemám tedy opakovač) a zvládne to obluhovat dvoupatrovej dům o ploše 120m2 i sklep – mám umístěno cca uprostřed domu.

    Kdyby byl zájem mohu (spíš ve fóru) zodpovědět nějaké dotazy či pomoci s rozjetím.

    1. Diky za sepsani zkusenosti.

      na ten dresden electronic jsem koukal, ale nebylo mi uplne jasne jak jim funguje ten ekosystem. Prislo mi, ze primarne to maji jako podporu na nejaky svuj typ chytrho domu.

      Videl jsem, ze maji i primo Raspberry shield, ktery se nacvakne (to tusim neni ten zminovany produkt, ze?)

      Jestli maji ale udelany ten SW takto pekne, tak by to stalo za vyzkouseni.

      Jen bych se zeptal. Kdyz se prida nove cidlo, tak jak vypada vystup? Protoze ten zigbee2mqtt posila treba

      { light:on; shade:0.5; color: 442233 }

      jako stav svetla a zaroven podoby json i prijima na nastaveni toh osvetla.

      Ten Dresdenackej modul, ten taky nejak preklada tyto hodnoty u znamych zarizeni? a to pri prijem i odeslani?

      Nebo je potreba naparovat cidlo a ty hodnoty pak nejak dekodovat sam (takto to totiz ma spoustu jinych mustku).

      Jinak ten jejich sw na budovani site se mi libli, to ten zigbee2mqtt paruje nejak sam a je otazka, jestl to bude vzdy optimalni.

      1. Ten shield bude presne to co jsem posilal (podivej se na posledni obrazek) – ten primo vyuzivam.

        Ten vystup (ve websocket message) vypada hodne podobne, bohuzel nemam na vyzkouseni zarovku, ale treba senzor teploty a vlhkosti posila primo tento json:

        “{“e”:”changed”,”id”:”2″,”r”:”sensors”,”state”:{“lastupdated”:”2018-12-10T20:44:23″,”temperature”:2083},”t”:”event”}”

        “{“e”:”changed”,”id”:”3″,”r”:”sensors”,”state”:{“humidity”:4981,”lastupdated”:”2018-12-10T20:44:23″},”t”:”event”}”

        Podle dokumentace se nastaveni svetel dela primo pres api: https://dresden-elektronik.github.io/deconz-rest-doc/lights/#setstate

        1. Aha, tak to je super, ze uz maji i ty convertory. Bez toho je to totiz strasny opruz.

          Mrknu co vsechno podporujou. Urcite je to dalsi cesta jak ten zigbee integrovat.

          Uplne nejlepsi by bylo, kdyby ten dresden udelal primo neco na DIN listu. To by se mi libilo nejvic.

            1. Mne na tom vadi to RaspPI ;-). Je to komplexni OS a musi se do nej neco instalovat.

              Za 5let bude nove RaspPI a pokud neco odejde, bude se to muset resit cele znovu.

              Zatimco jednoucelove PLC bych proste vymenil kus za kus a nema se tam toho tolik co pokazit.

      1. Jojo, ten vypada pekne. Az budes mit doma, napis plz jak funguje. Problem totiz neni v ZIgbee modulu jako takovem, ale pak tom pridavnem SW, ktery umi dekodovat jednotliva zarizeni. A u Dresdenu jsem nenasel zadny seznam toho, co vsechno podporuje.

          1. jojo, jenze ten wave, to je zas jen HW. K tomu neni poradne SW, ktery by pak umel delat ten zigbee-to-mqtt, stejne tak k tomu nejsou ty prevodniky ze zigbee zarizeni do rozumneho formatu.

  7. Ahoj, rozjizdim nejaka teplotni cidla od xiaomi do home assistant. Podarilo se mi vse naparovat a v konzoli zigbee2mqtt vidim prvni public, do home assistant se mi ta prvni hodnota prenese do grafu. Jak ale rici cidlu, aby treba po 10 vterinach znovu poslala udaje, ktere zachytim a vypisu do home assist ? Je to nastaveni samotneho home assist nebo mosquitto ? Dekuji za radu

    1. ani jedno, je to nastaveni cidla. to si samo ridi kdy posle hodnotu. posila jen pri zmene a jeste jen po nejakych intervalech, aby setrilo baterku.

  8. Zdravim, jak prosím funguje párování dalších čidel? Stačí spárovat jedno čidlo, a na to napárovat další, nebo se každé musí párovat se základnou?

      1. S Raspbee jsem sparoval Philips Hue Go asi na 3 metry. Teplomer od Xiaomi asi na metr. Tve reseni je jine, ale tak vyrazny rozdil pri parovani je zvlastni.

        1. Zalezi zrejme hlavne na zarizeni. Ikea zarovka musi byt uplne na dotyk, xiaomi cube stacilo cca 10-20cm, a je pravda, ze xiaomi teplomer byl na metr a chytl se.

          podle mne je to ochrana, aby se zarizeni nedalo naparovat do cizi site. proto je tam potreba ta blizkost.

  9. Prosim,
    Jak moc velky problem je toto reseni integrovat na Apple Homekit?

    Pokud si rozjedu na Raspbbery tuto zigbee gateway, je mozne na stejnem stroji zaroven nainstalovat homebridge a naintegrovat to do HomeKit a AppleTV? Myslim ze teoreticky by to fungovat melo, ale prakticky nevim
    Nezkousel to nekdo?
    Diky moc

    1. myslim, ze by to nemel byt problem. zigbee brana + mqtt neni nic narocneho ani se to nevylucuje s ostatnim SW. takze jet by to melo, ale vyzkouseno nemam

  10. Zasekl jsem se u toho flashnutí:
    http://cloud1.zoolz.co.uk/s-9nUxLF6q
    Neměl jsi problém s vybráním toho .hex souboru ? Když dám procházet, tak ten soubor v programu není vidět… Zkoušel jsem tam tu cestu a jméno souboru zadat a spustit, ale napsalo mi “Could not open…”. Zkoušel jsem restarty apod., ale zatím neúspěšně..
    Program normálně komunikuje, instalace proběhla správně..:
    http://cloud1.zoolz.co.uk/s-tPMhHAwv
    Díky.

      1. Ten soubor jsem stahoval těsně poté, co jsi dal tady tento článek. Když to teď zkouším znovu, tak mi to nejde stáhnout. Jako by byl soubor už nedostupný.
        Ten předtím stažený soubor jsem zkoušel na dvou instalacích otevřít a nic, asi je fakt špatně stáhnutý, přitom má 697KB a když ho otevřu v poznámkovém bloku tak vypadá OK…

  11. Zkouším rozjet na virtuálním PC – Windows 7.
    Nainstaloval jsem Mosquitto Brokera. Dále jsem instaloval vše pro sniffera.
    Postupoval jsem částečně dle tohoto návodu:
    https://forums.homeseer.com/forum/lighting-primary-technology-plug-ins/lighting-primary-technology-discussion/mcsmqtt-michael-mcsharry/1264779-zigbee2mqtt-on-windows

    Po spuštění se to logicky zasekne na spojení k MQTT brokeru.
    http://cloud1.zoolz.co.uk/s-hHAP6kZO
    V .yaml souboru jsem nastavil nějaké IP (ještě jsem nastavil COM3 pro sniffera), ale vlastně nevím jaké IP nastavit, kde se nastavuje vzájemná vazba… poradíte ? Díky.

  12. tezko rict co zlobi, muze to byt firewall na MQTT brokerovi, nebo firewall na virutalce.

    zkus si nainstalovat mqtt sub/pub command line client, a zkus se pripojit a odeslat data pres cmdline.

    pokud pojede, hledej pak dal veci v tom zigbee2mqtt.

    jinak ip se nastavuje klasicky. do zigbee2mqtt se da IP adresa brokera., vic se nenastavuje. port by mel byt defaultni

    1. Neuvědomil jsem si, že to mám všechno na stejném virtuálu, takže stačilo místo IP dát “localhost” a už to jede 🙂 díky za support..

    1. no jestli to mas na virt.text. vstupu tak nikde.

      jedine co z toho jde, je jako virtualni vstup s hodnotou a vytahnout z toho treba jedno cislo.

  13. Ta zelena… potvora

    ZIGBEE2MQTT —-> MQTT plugin jenž je v loxberry —> webservice HTTP

    Vše sem chtěl mít na jenom Loxberry/Raspberry
    Node-red to asi jistí co???

    1. tak tak. Velka zelena si nepreje, aby si integroval nejaky cizi zarizeni do jeho ecosystemu. Velka zelena chce, abys pouzil vse jejich ;-).

      NodeRED je proste nutnost. i kdybys vyresil toto nejak pres ty priserne parsery, priste narazis na neco dalsiho.

  14. je to smutné jak velka zelená nepřeje inovacím
    MQTT by stačilo integrovat a produkt je o level jinde

    rozchodil jsem na LOXBERRY zigbee2MQTT a node-red tak si přes víkend pohraji a vše dohromady snad pošlape na jedné MALINE

  15. záhada:
    nainstaloval jsem zigbee na loxberry
    čidla neposílají do MQTT stav “battery”:99,”voltage”:3005}
    napadá vás čím to může být ??

  16. asi jsem to blbě napsal:
    payload na raspianu:
    payload ‘{“temperature”:31.56,”linkquality”:110,”humidity”:96.32,”pressure”:962,”battery”:99,”voltage”:3005}’
    payload na loxberry
    payload ‘{“temperature”:29.36,”linkquality”:115,”humidity”:88.7,”pressure”:955}’
    ve zprávě chybí info o bareri
    ??

  17. Vyzkouším ráno a voala stav baterie tam je..
    někde na webu jsem včera zahlídnul že senzor neposílá stav baterie pokaždé ale v nějakých intervalech..
    blíže sem nepátral

  18. Data mám v node.red:
    http://cloud1.zoolz.co.uk/s-NLt3l3DE
    Máte někdo data přímo z Cube Controller (nebo Aquara Temperature Sensoru) v Loxonu ? Čerpám mimojiné odtud: https://www.vodnici.net/2017/12/propojeni-dat-z-mqtt-do-loxone/
    S Node-red dělám poprvé, tak zatím moc nevím, jak dál.. v payload je celý dlouhý string. Jak ideálně s daty pracovat a dostat je do Loxone ?
    Co doporučujete, ať nemusím objevovat už dávno objevené ?
    Díky.

    1. mel bych dodelat ten treti clanek co 😉

      Zjednodusene:

      //naparsuje prijaty json do objektu
      var objPayload = JSON.parse(msg.payload);

      //otestovat data v objektu a dal zpracovat
      if ( objPayload.action == “flip90” )
      {
      node.error(“flip90 “+ objPayload.to_side);
      msg.payload = “flip”+ objPayload.to_side;
      }

      a takto zpracovana data (payload) pak poslat pres UDP uz na virtualni vstup do loxonu

      1. Díky, pohraju si s tím 🙂
        Jinak Zigbee2MQTT (+ MQTT + Node-Red) běží v pohodě na virtuálu (VMware) na Windowsech (Windows 7). Raspi zatím nemám, tak jsem si to chtěl otestovat zatím jen na windowsech…

  19. se stavem baterie to není asi není tak jednoduché
    mám dvoje dveřní kontakty Xiaomi MCCGQ01LM
    jedny měli baterii 55% a jedny 99%
    ty co včera neukazovali nic jsou 55
    prohodil jsem baterie mezi sebou dneska ráno a ještě teď oboje kontakty ukazují původní hodnoty
    vypadá to že se pošle hodnota baterie cca jednou za den
    uvidím zítra a případně pošlu dotaz na autora

  20. Já zatím implementoval dveřní kontakty a teploměr
    data z node-red posílám přes webservice (node-red-contrib-loxone)

    článek III by byl super – třeba to dělám moc složitě

    1. ty WS jsou taky resenim, k tomu jsem se jeste porad nedostal to otestovat. Takze jdu radsi primou cestou UDP, kde uz neni zadny dalsi prostrednik

  21. Díky za pěkný popis, bránu jsem úspěšně zprovoznil přesto to není úplně bez problémů a třeba nahrazování stmívačů Zigbee mi nepřijde úplně nejvhodnější. Například v případě, kdy dojde k chybě komunikace nebo po výpadku proudu. Naopak pro teplotní čidla to zajímavé je. Jsem zvědavý na pokračování s popisem komunikace Loxone-Zigbee. Mimo teplotního čidla jsem jsem zprovoznil Osram Smart Plug a chtěl jsem, aby šla zásuvka ovládat jak z Loxone i tlačítkem na zásuvce a vizualizace se synchronizovala. V podstatě to funguje, ale když vypnu proud do zásuvky a znovu ho zapnu, tak se neobnoví původní stav zásuvky, ale zůstane vypnutá a změní stav v Loxone. Zle nějak vyřešit vzájemné potvrzování a udržování stavu podle toho co má nastavené Loxone?
    Jedna ze tří zásuvek se mi chová záhadně v tom, že nevysílá změnu stavu tlačítkem. Jinak na ní vše funguje.

    1. no, ty stmivace jsou diky kombinaci Loxone+mqtt hodne pomale. To je to co jsem psal.

      Clanek se SW casti bych chtel dat dohromady. Chtel sem to udelat pres vikend, ale dost tvrde na nas zaklekla nejakej dost agresivni kmen chripky a cela rodina lezime v 39C horeckach ;(

  22. Ahoj, jeden dotaz z laickeho prostredi, pokud ucis cidla etc. Chapu to spravne ze je ucis primo do maliny bez xiaomi home serveru ? Mam ted doma ten server a na nej pichnuty 3 lampicky a 2 tlacitka kvuli zvonku, ale sevrer neni zmineny, tak predpokladam je to bez neho ze ?
    Diky……..

  23. Také díky za článek k Zigbee a další inspiraci! 🙂
    Konečně mi dorazila i poslední část skládačky (ta redukce) a mohl jsem to flashnout.
    Zatím jsem to testoval jen s 1 Ikea žárovkou a Openhab2 + přímý binding pro Zigbee a šlape to super.

    https://www.openhab.org/addons/bindings/zigbee/

    Akorát co jsem tak koukal, tak například ty Ikea žárovky fungují na 2.4GHz (a asi i všechny ty sensory od Xiaomi), tak že se to kryje s 2,4 GHz WiFi sítí. Vzhledem k tomu, že dům ještě stavíme a bydlíme v paneláku, tak je okolí doslova zamořeno různými WiFi sítěmi a tak nějak silnější vyhrává…. V podstatě je nemožné najít kanál, který by v celém bytě byl nekonfliktní s jinou sítí…

    Něco málo k těm kanálům

    https://support.metageek.com/hc/en-us/articles/203845040-ZigBee-and-WiFi-Coexistence

    Občas jsem narazil na nějaké Zigbee zařízení co funguje na, pro nás povolených, 868MHz. Ale to asi ten cc2531 neumí? Respektive v Openhabu jsem neměl možnost nastavit jiné Zigbee frekvence než v pásmu 2.4GHz.

    1. Tak ohledne pasem bohuzel neporadim, tady na vesnici je vsude volno, takze jsem nechal vse v defaultu a beha mi to jak ma.

Leave a Reply

Your email address will not be published. Required fields are marked *