Loxone-Zigbee světla, den druhý.
Tak jsem využil nakonec skoro celou neděli k tomu, abych pokračoval v akci světla. Po diskuzi se zkušenějšími Loxong guru jsem zjistil, že nový LoxConfig opravdu nabízí mnohem více v bloku ovládání osvětlení a umí přesně to, co se snažím udělat ručně v Loxone v8. Bohužel to ale jinak než ručně neudělám.
Ale nevadí, výzva je výzva a tak to dotáhnu. Nový MS2+KNX extension nyní nebudu kupovat, takže si musím poradit takto (a kvůli Quidu a elektroměrům nemohu provést update MS1 na poslední verzi).
Jen zopakuji to, co jsem již psal dříve – po celém domě předělávám osvětlení pomocí Zigbee světel tak, aby první tlačítko v každé místnosti fungovalo jako klasické hloupé – první klik zapne výchozí světlo, druhý klik vypne. Tlačítko vedle něj pak prvním klikem zapne tlumený režim a dále pak už rotuje scény, vypínání se dělá opět tlačítkem jedna. Tedy, když přijde kdokoli neznalý chytrého domu, bude na nic nepřijde a všechno bude fungovat intuitivně.
Po prvních problémech jsem nakonec vše vyřešil pomocí bloku RadioButton. Důvod, proč jsem zvolil RadioButton místo bloku ovládání osvětlení, je ten, že RadioButton reaguje již na vzestupnou hranu signálu, takže pocitově je rozsvícení světla v místnosti rychlejší, než když se rozsvítí až po uvolnění tlačítka.
Celou výše uvedenou logiku jsem pak dal dohromady tak, že na výstupu AQ z RadioButtonu pomocí zpoždění přenáším výstup zpět na vstup, kde ho pomocí AND/NOT prvků porovnávám a dle výstupu provádím buď zhasnutí nebo rozsvícení.
Abych vyřešil případné příliš dlouhé držení tlačítka, používám na vstupu ještě Monoflop, který mi udělá přesně definovaný signál bez ohledu na délku držení.
Třeba se to bude hodit někomu, kdo má také v8 a chtěl by něco podobného řešit.
Jako další výzva pak bylo přenést několik různých scén do Zigbee. Tady bych si zase rád poslechl, jak to řešíte ostatní. Já jsem to udělal pomocí NodeRED následovně:
Pomocí výstupu AZ vyčítám z RadioButtonu aktuálně zvolený výstup, který pak přenáším do prvku “Stav”. V prvku Stav pak pomocí jednoduché porovnávací tabulky převádím jednotlivé stavy na příkaz, který ukládám do “Text status”.
Příkaz má jednoduchou formu “Cílové světlo/Cílová světla oddělená čárkou” | “color_temp”/”color_xy” | brightness. Hodnoty vycházejí z hodnot podporovaných Zigbee2Mqtt.
Tyto hodnoty pak dále parsuji a zpracovávám už v NodeRED. Toto řešení jsem zvolil nakonec proto, že mi umožňuje přímo v LoxConfigu editovat různé profily, přidávat další profily, upravovat jas a celé nastavení je tak pohromadě. A až samotné zpracování je mimo.
Původně jsem zkoušel to řešit třeba přes značky nebo načítat přímo hodnotu RadioButtonu do NodeRED, ale vadilo mi, že logika nebyla uceleně na jednom místě.
Zpracování v NodeRED pak vychází ze systému, který jsem popisoval v minulých článcích například zde: https://www.vodnici.net/2022/09/zigbee-tasmota-a-nodered/
Jediný rozdíl je v přidané funkci “TransformLightCommands”, která bere obsah příkazu z volání z Loxone a překlápí ho na msg zprávu, kterou již podporuje můj stávající NodeRED systém, tzn. takový, který to pak pošle přes MQTT do Zigbee2Mqtt.
Jediné, co mi na tom ještě trochu nevyhovuje, je nutnost přidat pro každý status prvek samostatný Loxone-control-in prvek. Ale tomu se bohužel nijak nevyhnu. Aspoň je to zase přehledné, odkud všude se hodnoty vyčítají.
Zatím mám na tento systém překlopenou cca polovinu domu a vše vypadá, že funguje jak má. Budu to teď přes týden testovat a sledovat a pokud se to osvědčí, příští víkend překlopím zbytek.
Celý zdrojový kód k překladu Loxone příkazů do Zigbee2Mqtt formátu je k dispozici pro podporovatele blogu zde. Jak jsem avizoval v předchozím článku, kompletní kódy budou nově dostupné jako benefity pro podporovatele blogu.
Zatím je tam jen JavaScriptový kód na převod, ale pokud by byl zájem, přidám i celý NodeRED projekt na propojení Loxone-Zigbee2Mqtt do této sekce.
A to je pro dnes vše. Až bude zase chvilka, tak dám dohromady ještě článek o světlech samotných, protože se mi už množí dotazy, jaká světla s podporou Zigbee jsme vybrali.
Edit: Vytvořil jsem konečně článek, kde je nasdílený komplet projekt na ovládání Zigbee z Loxone, jak vstupy, tak výstupy. Nejen světla, ale i chytré zasuvky a integrace Ikea Round buttonu. Článek je dostupný pro všechny, kteří nějakým způsobem podpořili náš web.
https://www.vodnici.net/2023/11/projekt-pro-nodered-na-zigbee-vstupy-vystupy-vcetne-svetel/
Pokud někdo posílal nějaký donate a nejede mu to, napište mi prosím na [email protected], pošlete info kdy/jak jste posílali nějaký donate a já Vám oprávnění nastvím.
Jako Loxone nadšenec jsem provozoval čistý Loxone, pak integroval přes http, nakonec přes loxberry. Potom jsem si chvíli hrál s Home Assistantem a už u něj zůstanu. Existuje integrace Loxone do Home Assistantu, tak jsem začal hybridně. Pokud si jen trochu chce člověk hrát se smarthome pro sebe, tak už mi Loxone nedává vůbec smysl.
A to me zas docela jo. Jako hlavni ridici system, do ktereho integruju zbytek je to super. nemusim resit web app, nemusim resit mobile app.
Jen je skoda, ze se loxone chova jak chova a integrace externich zarizeni je cim dal slozitejsi. Z jejich business pohledu to dava smysl, ale z pohledu uzivatelu vubec.
Kdyby meli zigbee extension, kdyby podporovali vice custom programu atd, tak by clovek nepotreboval vubec nodered, vse by mel pekne na jednom HW a svet by byl krasny 😉
A to to pisu jako clovek, ktereho Loxone mistama fakt dost sere ;-).
Ale na jako hlavni vrstva na spojeni vseho mi to prijde stale nejlepsi.
Mohl bys přidat odkazy nebo napsat na jaké Zigbee světla přecházíš?
Děkuji
bude v dalsim clanku ;-). jen to musim dat dohromady
bude se hodit, zrovna to řeším, třeba zabudovaných panelu do SDK se zigbee je jako safranu 🙂 Takže se těším na tipy.
tak zrovna ty jsem nakonec neinstaloval. Mam sice koupene nejake testovaci historicky z aliexpresu, ale nakonec jsme na chodby dali uplne obycejne z lidlu.
spoustu tech svetel je neco na urovni “docasnych”, protoze jsme nechteli hned rezat do SDK pro pripad, ze by toho svetla bylo malo nebo jsme to casem chteli udelat jinak.
Ja jsem prave chtel nejake vestavne, tam kde je snizeny strop. tam kde neni nizky strop tam si dam taky pripleskle a lidl me taky neurazi. 🙂
Vypinace mas pulene-dva v jedny krabici nebo dve krabice vedle sebe. V prvnim pripade se asi o trochu hur trefuje, ale asi se taky da…
Mám doma hodně Zigbee světel, z toho 34 IKEA LEPTITER (podhledová) a jsou super. Bohužel jsem ale o víkendu zjistil, že je už nedělají – chtěl jsem přidat dětem každému 2 nad psací stůl.
Paní říkala, že náhrada není.
Tak jsem trochu pohledala zjistil jsem, že prý je IKEA vyřadila proto, že se EU nelíbí, že se nejedná o výměnný zdroj světla. A jako řešení se nabízí koupit nějakou konzoli s GU10 paticí. Například pokukuji po této: https://www.datart.cz/vestavne-svitidlo-philips-enneper-kruh-gu10-8718696160367-bile.html ale ještě jsem nevyzkoušel.
A do toho pak se už dá sehnat spousta Zigbee žárovek. Ve finále se mi to řešení docela i líbí. Nevím teda ještě, jak to moc bude svítit v porovnáním s tím LEPTITER (jak dělají silné ty GU10 Zigbee žárovky)
Já jsem tehdy nakonec před více jak 2 lety šel cestou čistě Zigbee světel (místo Loxone). I když musím říct, že jsem z toho měl trochu strach, protože jsem se bál, aby s tím nebyly nějaké problémy. Přece jen člověk úplně nechce, aby vám doma nadávali, proč nejde rozsvítit světlo :D.
Dnes mám doma cca 90 Zigbee zařízení.
Pro komunikaci s Loxone používám Node-Red. Kde mám napsané obecné převodníky, které mi převádějí potřebné atributy Zigbee zařízeních na UDP pakety, pro které pak vytvářím virtuální vstupy v Loxone. Například všechna světla mám pojmenovaná SVxxxx. Tak node vezme všechny pro Loxone zajímavé atributy a převede je do samostatných UDP packetů s hodnotou. A obráceně zase virtuální výstupy jdou přes Node-Red do Zigbee2Mqtt.
Světla jsem chtěl také udělat tak, aby nikdo nepoznal, že tam něco “chytrého” je a pokud je člověk ví, tak může využívat dalších výhod, ale jde to i bez toho.
Tak že jedním stiskem UNICA tlačítka zhasnu nebo rozsvítím. A když tlačítko držím, tak se začne světlo ztmavovat nebo zesvětlovat. Dvojklik pro odchod z místnosti používám, to je fajn.
Světelné bloky ovládám přímo přes vstupy I1..x. Přepínání “nálad” nepoužívám. Když, tak jen v aplikaci nebo přes určitou předem danou logiku.
Ještě jsem chtěl udělat ovládání teploty světla. Nejprve jsem myslel, že to udělám jen na základě času, přes další logiku za blokem Světla. Pak to dokonce přidal i Loxone přímo do toho bloku v jedné z nových verzích, což jsem si říkal, že je super.
Tak že jsem si nastavil, aby se teplota světla řídila podle denní doby. Bohužel se ale pak ukázalo, že je docela problém toto použít, pokud chce člověk používat stmívání tak jak mám já dlouhým stiskem. Protože na to už jsem musel světlo přepnout na RGB a tím pádem už nejde udělat jen zap/vyp krátkým stiskem a dlouhým držením smívání..
U světel nejde určit že mají jen bílé spektrum (nejsou RGB) – pokud tedy člověk nemá ty jejich světla. Tak že s nimi člověk musí pracovat jako by byly RGB (nebo nevím jak na to). A ty hodnoty, co na výstupu ten blok dává jsou dost nepřesná čísla – například když se blíží k hraničním hodnotám. Chvíli jsem i věnoval čas tomu, abych to dekódoval do nějakého rozumného tvaru pro Zigbee2Mqtt.
Ale při příliš malých/hraničních hodnotách tam byly už nepřesnosti. Ale nakonec jsem se na to vykašlal.
Asi nejlepší možnost by byla přesunout logiku řízení teploty světla opět mimo Loxone – akorát pak nepůjde měnit teplotu světla přímo v Loxone bloku řízení světel. Asi bych to musel dát do nějakého jiného bloku. Což se mi zase nelíbí..
Pokusně jsem si u světla v pracovně nechal barevnou teplotu řídit Loxonem – za cenu nemožnosti ovládat jas dlouhým stiskem přímo na zdi. Zde používám v Node-Red přímo modul pro Loxone a hodnotu vyčítám z jeho API. Tak že dostanu třeba temp(54,2700), tak že mám rovnou jas a teplotu. Nicméně to je opět něco za něco..
Kdybych na to měl čas a sílu, tak bych snad už i Loxone úplně vyhodil, nebo nechal jen jako podružný řídící prvek. Zatím ho mám stále jako primární řízení a hlavně UI celého systému. Při tom kdyby se otevřeli pro Zigbee, tak bych u něj i rád zůstal a i pořídil novou verzi Miniserveru.
hehe, uplne se v tom vidim. Ale je to jak pises. Kdyby meli podporu zigbee, vse by bylo o dost jednodussi. Takto clovek postupne vic a vic veci resi mimo Loxone, az vlastne Loxone je jen vizualizacni cast, ktera by sla ale v extremu taky nahradit.
“…ale pokud by byl zájem, přidám i celý NodeRED projekt na propojení Loxone-Zigbee2Mqtt do této sekce” – kolik zájemců by mělo být? Já se hlásím. Díky!
Jinak k Zigbee. Taky bych uvítal podporu přímo v Loxone. Pořád se trochu děsím toho, že funkčnost Zigbee zařízení závisí na tolika komponentách. A hlavně to, kdo to zase zprovozní, když to nebudu já. Máš nějaký krizový plán nebo jen připravené svíčky?
Ok, pripravim to a dam vedet.
Taky se mi to uplne nelibi, ze to neni integrovano, ale co nadelam, kdyz je Loxone tak palicaty :-). Krizovy plan je, ze mam zigbee svetla v rezimu, kdy po obnoveni elektriky se sami zapnou. Takze i kdyz nepojede zigbee, lze je ovladat pomoci rele v rozvadeci.
V aplikaci je u kazeho svetla krom normalni ovladani jeste “Elektrina svetlo” tlacitko, kterym ho lze uplne zapnout/vypnout. A pak u nekterych (to jeste nemam u vsech udelane) je na dvouklik hlavniho vypinace udelane vypnuti elektriky a po kliku pak zpatky zapnuti elektriky.
Takze kdyz by bylo nejhur, lze to ovladat takto.
Díky!
U varianty se zapnutím po obnovení napájení mi vadí, že po výpadku proudu se rozsvítí celý dům, tedy zigbee světla. Třeba v noci.Napadlo mě takhle nastavit lampičku, aby se dala ovládat i vypínačem, ale pak jsem si uvědomil to rozsvícení po výpadku a nepřišlo mi to jako dobrý nápad. Leda to zase ošetřovat v Loxone, ale to krátkodobé svícení tam bude.
Ahoj, je mi jasné, že čas je nepřítel, ale uvažuješ o tom slíbeném zveřejnění projektu NodeRed?
Pokusim se, vim ze jsem to slibil a pak se k tomu nedostal ;-(.
Jsem na tom casove ted strasne blbe, strasne moc prace co hori na jednom velkem projektu a vubec nestiham nic jineho letos.
Ale toto nekam nahraju, at to mate k dispozici. Udelam to behem dneska, protoze jinak to pak zas zazdim ;-(
Ok, narychlo sem to dal dohromady. Pastl jsem tam vsechny 3 sve NodeRED projekty, ktere se staraji o komplet zigbee, nejen svetla.
Clanek by mel byt viditelny vsem, kdo maji roli Donator.
https://www.vodnici.net/2023/11/projekt-pro-nodered-na-zigbee-vstupy-vystupy-vcetne-svetel/
Pokud by to nekomu nejelo, mozna jsem mu nenastavil spravne roli. V takovem pripade piste pls na [email protected] a ja to tam pridam.
Tebe Petre poprosim, zkus prosim otevrit a potvrdit, ze to vidis a jede to. diky
To je fofr, díky moc! Radši jsem to hned zkusil naimportovat, protože s časem jsem na tom podobně. Naimportovat to šlo, jen konfigurace je duplicitně ve dvou importech, tak to import ohlásil a chtěl řešení.K praktickému otestování se dostanu až později.
kdybych to neudelal hned, tak nikdy. na to se znam uz moc dobre. momentalne sem ve stavu, kdy mam focus na praci a u vseho ostatniho jen hasim to co nejvic hori 😉
ohledne toho duplicitniho nastaveni, to je divne. Protoze sem exportoval kazdou ze tri zalozek zvlast, tak to leda ze tam neco pridava spolecneho. Tam by byl idealni export vsech tri zalozek najednou, ale to sem tam takto narychlo nevidel.
dej vedet zda ti to pujde rozchodit, kdyztak zkusim jeste pohledat.
Ještě jednou díky. Sice se to nedalo vzít a nasadit, ale jako inspirace super. Konečně jsem si podle toho udělal ovládání RGB+CCT.