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.
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 700Kč včetně dopravy po ČR Č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€. Můžu přidat i vytištěnou krabičku za 20Kč.
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
*Všechny varianty, pořadí tak jak na fotce: CC2652P USB, CC2652P RPI shield
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)
- 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.
- 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.
- 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
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 |
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
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.
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ě.
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.
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
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.