Git Product home page Git Product logo

zigbee-coordinator's Introduction

Update: 10.7.2022 - Ve vyrobe koordinatora uz nepokracuju. Na trhu je dostupny SONOFF ZIGBEE 3.0 USB DONGLE PLUS ktery ma stejny chip a vykon. Nicmene mi zbylo dost dilu a plosnych spoju, takze pokud ma nekdo zajem o dodani jako stavebnici s tim, ze si objednat hlavni chip sam, tak me muze kontaktovat zigbee(zavináč)seznam.cz.

Pozor: HA OS verze 6.3 obsahuje Kernel ktery ma vadny CH340/341 driver, takze zigbee stick prestane fungovat. Tyka se to i nekterych verzi Raspbianu. Resenim je updatovat na novou verzi OS. Vice info zde.
Co nabízím Na základě kladných ohlasů na FB vyrábím Zigbee koordinátory podle designu popsaného Jagerem na modkam.ru a jejich clonech od Egony. Aktuálně nabízím koordinátor založený na CC2652P, jak USB tak RPi, za cenu 740Kč včetně dopravy po ČR Zásilkovnou, nebo za 680Kč Českou Poštou v bublinkové obálce, případně možnost vyzvednutí v Brně. Na Slovensko zasílám pomocí www.zasielkovna.sk tam celková cena vychází na 30€. Tištěná krabička je součástí.
Ke všem modelům dávám externí anténu a jsou flashnuté pro práci se Zigbee2MQTT, na přání můžu flashnout i router firmware.
Pro objednání mi napište na zigbee(zavináč)seznam.cz
Varianty
*CC2652P USB, CC2652P RPI shield

Jak si vybrat

RPi Shield vs. USB verze

Wifi a Bluetooth(BT) vysílají na stejné frekvenci jako Zigbee, takže pokud používáte na vaší Raspberry Pie(RPi) jedno z toho a potřebujete Zigbee signálem pokrýt co nejvetší oblast tak volte variantu USB a připojte ji 0.5m USB prodlužovacím kabelem k RPi.
Pokud máte RPi připojenou LAN kabelem a BT ani Wifi nepoužíváte, vypněte je v nastavení a s klidem zvolte variantu RPi shieldu, budete mít vše v jedné krabičce.
Uživatelé RPi 4 si musí dát pozor na to jestli nepoužívají USB 3.0 zařízení (typicky disk) pripojený do USB 3.0 portu (modré porty). Takový disk pak pracuje jako dokonalá rušička signalu v pásmu 2,4GHz. Řešením je opět USB prodlužka a umístění koordinátoru dále od disku.
USB3 USB3

Rozdělení koordinátorů

Starší generace:

  • CC2530: 2.4GHz Zigbee a IEEE 802.15.4 wireless MCU. Intel 8051 core, 256kB Flash, má jenom 8kB RAM. Vyžaduje externí programátor pro nahrání firmware.
  • CC2531: Stejný jako CC2530 ale má vestavěné USB. Používá se v rozšířených levných Zigbee koordinátorech. Intel 8051 core, 256 Flash, má jen 8kB RAM. Vyžaduje externí programátor pro nahrání firmware.

Současná generace:

  • CC2538: 2.4GHz Zigbee, 6LoWPAN, a IEEE 802.15.4 wireless MCU. ARM Cortex-M3 core s 512kB Flash a 32kB RAM.
  • CC2538 + CC2592: Stejný jako CC2538, ale doplněný o zesilovač CC2592. Zesílení vysílání na 22dBm a zlepšení příjmu o 3dB. Viz. data sheet.

Nejnovější generace:

  • CC2652R: Nová generace čipu od Texas Instruments pro pásmo 2,4GHz. Cortex-M0 pro rádiovou část a Cortex-M4F pro aplikační část a 80kB RAM. Vysílací výkon 5 dBm. Tento chip je použitý v coordinatoru Electrolama zzh!.
  • CC2652RB: Identický jako CC2652R, ale nevyžaduje externí krystal. Používá ho slaesh's CC2652RB stick.
  • CC2652P: Chipset CC2652R s vestavěným zesilovačem. Vysílací výkon 20 dBm. Bude v budoucnu použitý v Electrolama zzh-p.
    Zdroj informací https://electrolama.com/projects/zig-a-zig-ah/ + TI data sheets

Podporovaný firmware:

Z-Stack Device Zigbee Direct children Routes Notes
Z-Stack_Home_1.2 (default) CC2531 1.2 HA 20 30/0
Z-Stack_Home_1.2 (source_routing) CC2531 1.2 HA 5 40/40
Z-Stack_3.0.x CC2531 3.0 15 40/0 - Discussion #1445 - Max 40 Zigbee 3.0 devices
CC2538 + CC2592 3.0 100 200/400 - Discussion #1568 - Max 200 Zigbee 3.0 devices
Z-Stack_3.x.0 CC2652R,CC2652RB, CC2652P 3.0 50 100/200 - Discussion #1429 - Max 200 Zigbee 3.0 devices
Vysvětlivky:

Direct children: Počet zařízení, které se mohou připojit přímo na koordinátora. Není to maximální počet zařízení v síti, ale po dosažení tohoto počtu zařízení musíte do sítě přidat aspoň jeden router, aby mohla sít růst dál. Router je většinou každý prvek, který je trvale zapojený do elektřiny, jako je třeba zásuvka, žárovka, ale záleží na konkrétním výrobci.
Routes: Počet cest "routes" které může koordinátor držet v paměti. Například 100/200 znamená, že koordinátor zvládne 100 normálních a 200 source routes. Source routes zlepšují celkovou odezvu a výkon větších sítí s 40+ zařízeními.
Zdroj: https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator

Jak si nastavit nový koordinátor v Zigbee2MQTT

Pokud přecházíte z jiného koordinátoru s čipem Texas Instruments, jako je třeba CC2531, tak od verze zigbee2mqtt 1.21.0 by měla migrace proběhnout sama viz. https://www.zigbee2mqtt.io/information/FAQ.html#how-do-i-migrate-from-a-cc2531-to-a-more-powerful-coordinator-eg-zzh nicméně aktuálne (31.10.2021) HA nabízí pořád verzi 1.18.1-1 jako poslední možnou. Kazdopádně je možné zkusit zmigrovat celé nastavení sítě viz. https://github.com/FixxCZ/Zigbee-Coordinator/blob/main/Migrace.md

Pro nastavení RPI verze začněte tady s USB verzí můžete číst dál.
K vaší už existující konfiguraci je nutné přidat několik parametrů.
Změna nastavení portu - buď přímo na RPi můžete spustit příkaz ls -l /dev/serial/by-id/ nebo v Home Assistant v menu Supervisor > System > v okýnku Host jsou tři tečky a tam je Hardware.
Výsledek by měl vypadat nějak takhle:

pi@raspberrypi:~ $ ls -l /dev/serial/by-id/
lrwxrwxrwx 1 root root 13 Feb  7 18:45 usb-1a86_USB_Serial-if00-port0 -> ../../ttyUSB0

Do configurace doplňku Zigbee2MQTT tedy napíšeme tohle:

serial:
  port: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0  #na RPI4 taky nekdy /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0

advanced:
  baudrate: 115200  #tahle položka je nutná protože používáme UART převodník viz. níže
  rtscts: false  #tahle funkce je vypnutá protože řízení toku vyžaduje jiný FW a nefunguje dobře na RPi
  pan_id: 6752 #Pokud používáte pan_id musíte nastavit hodnotu i jedna vyšší než máte nyní. Takže pokud máte pan_id: 6752 tak dáte pan_id: 6753

experimental:
  transmit_power: 20  #toto funguje jen pro CC2652P kde je možné výkon řídit. 20 je maximum, dostupné hodnoty jsou -20, -18, -15, -12, -10, -9, -6, -5, -3, 0, 1..5, 14..20

Na desce je přítomný UART převodník CH340, aby bylo možné nahrávat nový FW bez nutnosti dalšího HW (J-Link), z toho důvodu se koordinátor nehlásí jako třeba usb-Texas_Instruments_TI_CC2538_USB, ale jako usb-1a86_USB_Serial-if00-port0.

Doporučuju si zapnout i nový Zigbee2MQTT frontend:

frontend:
  port: 8485
experimental:
  new_api: true  #tahle hodnota je aktuálně nutná jen pokud bežíte na Home Assitant. Stand alone instalace Zigbee2MQTT ji nevyžaduje.

Port 8485 potřebujete pokud máte Home Assitant v Dockeru, jinak můžete použí výchozí port 8080. Samozřejmě za předpokladu, že nepoužíváte SOCAT. Rozhraní pak poběží na stejné adrese jako Home Assistant jen na portu 8485 a ne 8123. Přídání do sidebaru mě nefunguje, ale třeba se vám zadaří.

Pokud máte problém napárovat zařízení co vám předtím fungovalo, přesunte se co nejblíže koordinátoru a přesvedčte se, že baterie nemá méně než 20%. Zařízení se slabou baterií se odmítají párovat.

LED diody

Funce LED diod je daná firmware nahraným v koordinatoru, takže pokud si tam nahrajete jiný, můžou ukazovat něco jiného.
CC2652P
LED1 (zelená) svítí pokud síť běží. Bliká když je aktivní párovací režim.
LED2 (červená) blikne ve chvili kdy jsou přijmuta data ze sítě.

Krabičky - 3D Tisk

3D
CC2652P - https://www.thingiverse.com/thing:4695634 Vrchní díl je někdy trošku volnějsí, osvedčilo se mi ho zvetšit na délku ve sliceru na 100.64% takže na rovných 47 mm.

Flashovani firmware

Dongly jsou vybaveny UART prevodnikem, takze na jejich flashovani neni potreba zadny dalsi hardware. Postup je popsan zde: https://github.com/FixxCZ/Zigbee-Coordinator/blob/main/Firmware.md

Co s původním nevyužitým CC2531? Přece router!

Pokud vám po upgradu zůstal nevyužitý koordinátor CC2531 a máte CC debuger, můžete do nej flashnout router firmware CC2531-router.hex (ptvo.info) a pokrýt třeba oblast se slabším signálem. Pokud CC debuger nevlastníte, je několik alternativních metod jak do něj nahrát FW.

zigbee-coordinator's People

Contributors

fixxcz avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.