Integrace HomeAssistant a NodeRed
Tak dneska jsem si pro změnu hrál s propojením Home Assistant a NodeRed. Stále prozkoumávám, jak nejlépe to všechno spojit dohromady, a skoro mi začíná vycházet, že se bez NodeRedu neobejdu. Nevýhoda je, že to jsou zas 3 různé systémy, výhoda ale je, že je to s NodeRedem celé o dost snazší (a navíc rychlejší, protože to běží přes websocket).
Takže, aktuální vize je, že stejně jako mám v NodeRedu logiku na zigbee a iKamand, tak tam bude i hlavní logika na FVE. NodeRed si bude sosat data jak z HomeAssistantu, tak z Loxone, případně Loxone bude ty data do NodeRedu předávat on, to ještě doladím. Ale reálně v Loxone zůstane jen nějaká zobrazovací logika + přepínače/tlačítka, která ale budou spouštět věci v NodeRedu.
Je to trochu překombinované, ale pro mě jako vlastníka miniserveru v1 je to celé o dost rychlejší na práci i rozšiřování. Každá změna v LoxConfigu mi trvá v řádu minut, navíc nejde v LoxConfigu pořádně programovat, zatímco v NodeRedu si vyrobím logiku jakou potřebuju a změna trvá sekundu maximálně. Ale, nepředbíhejme, možná to ještě několikrát změním :).
NodeRed a HomeAssistant
Teď už k integraci. Do NodeRedu je potřeba doinstalovat node-red-contrib-home-assistant-websocket. Já jedu NodeRed přes docker, takže do DockerFile jsem si přidal RUN npm install node-red-contrib-home-assistant-websocket a hotovo. Jinde to bude potřeba řešit nějak přes addony v NodeRed UI zřejmě.
Po nainstalování a restartu NodeRedu uvidíte tyto prvky v levé liště. Je jich dost, sám v nich zatím lehce tápu, ale ty základní sem už pochopil :).
Prvotní propojení s HA je taky vcelku snadné, buď přes access token (long-lived access tokens), který vygenerujete v profilu uživatele:
a nebo pokud máte NodeRed přímo v Home Assistantu, tak je tam volba ”
Čtení hodnot z Home Assistantu
Čtení jde udělat dvěma způsoby. Jedno, kdy node red sám dotazuje HA v určitém intervalu a notifikuje hodnoty. Druhé, kdy se hodnota čte až když přijde vstupní signál.
Automatické čtení je realizováno pomocí “Events.: state” nodu:
zatímco čtení na základě eventy pomoci “current state”:
Nastavení obou je pak hodně podobné. Je potřeba node nějak pojmenovat (je fuk jak), vybrat připojený server, zadat entity ID (kterou zjístíme při kliknutí na entitu v HA a kliknutím na ozubené kolečko, viz minulý článek sekce “Bonusový krok, jak zjistit název ID stavu”).
Jako další pak jde zadat, zda má stav mít nějakou hodnotu, jak dlouho jí má mít, a v jakém formátu mají hodnoty z nodu vylézt. Výsledek pak je, že po načtení hodnoty vyleze z nodu něco jako:
{"_msgid":"8de529266cdb5849","payload":"1455","topic":"","data":{"entity_id":"sensor.solax_inverter_pv_power_total","state":"1455","attributes":{"state_class":"measurement","unit_of_measurement":"W","device_class":"power","icon":"mdi:solar-power-variant","friendly_name":"SolaX Inverter PV Power Total"},"context":{"id":"01KABAWW0DS8B1P1X0ACQY69H1","parent_id":null,"user_id":null},"last_changed":"2025-11-18T11:16:45.709Z","last_updated":"2025-11-18T11:16:45.709Z","timeSinceChangedMs":10125}}
kdy hlavní hodnota vyleze v “payload”, ale je tam připojeno i “data”, který obsahuje všechny ostatní informace, který HA vrátil.
Zápis hodnot do Home Assistantu
Zápis samotný mi dal zabrat trochu více, ale ve finále je to taky jednoduché. Jen člověk nesmí číst starší návody, kde se to jmenuje jinak :).
Zápis samotný se dělá pomocí univerzálního nodu “action” (takže až Vám budou návody říkat něco jiného, ignorujte je :)) :
V akci je potřeba opět zvolit název, server, a akci. Akce je, co se má v HA udělat. Může to být klik, může to byt togle, atd. je tam toho mraky. Abyste věděli, jakou akci volat, chce to se podívat zpět do HA a asi i trochu zkoušet. Já například chtěl nastavit % nabíjení baterie. Takže jsem šel opět do HA, do přehledu hodnot, klikl na danou hodnotu a otevřel nastavení:
tam, kde se dá zkopírovat ID entity je zároveň i prefix “number”. Opět, HA v tomto super, že má developer sekci, kde si to rovnou můžete nasimulovat. Otvírám tím pádem “Developer tools” a “Actions”. A stejně, jako když jsme testovali v minulém článku rest command, tentokrát otestujeme number.set_value.
V seznamu akcí vybírám number.set_value a do parametrů zadávám entity_id a value. V případě set_value jde navíc využít i UI režim, takže nemusíte skoro nic psát, jen si to tam naklikáte a pak se podíváte, jak YAML vypadá:
Po vyplnění stačí dát spustit akci a hned vidíte, zda se hodnota změnila či nikoli (pokud ne, zřejmě voláte jinou akci, kdy je tam například input_text.set_value, input_number.set_value` atd). Pokud se Vám hodnota úspěšně změnila, vracíme se do NodeRedu.
V prvku action tím pádem pokračujete vyplněním “action” jako number.set_value (nebo jakékoli jiné akce, kterou jste si vyzkoušeli, že Vám funguje). Jako další pak přidáte targets, kde si z dropdown prvku vyberete odpovídající propertu. v měm případě `number.solax_inverter_backup_nightcharge_upper_soc`.
A jako poslední zbývá zadat hodnotu, která se má poslat. Tady jsem se lehce zasekl, než jsem si všiml dole tlačítka “Load example data”.
Hodnota do “Data” se totiž nesmí zadat jako “30”, ale jako JSON objekt s propertou value a hodnotou “30”. Toto je lehce matoucí, ale když si člověk přečte spodní část obrazovky, kde je navíc tlačítko “Load example data”, které Vám to předvyplní, je to hotové raz dva.
Pak už jen stačí spustit akci a otestovat, že se Vám v Home Assistantu hodnota změnila.
Závěrem
Tak, tím pro dnes zas hotovo. Další způsob komunikace otestovaný. Zítra zkusím ve volné chvíli mrknout znovu na propojení Loxone a NodeRed. Kdysi jsem používal ten fajn addon na přímé propojení Loxonu a NodeRedu, ale blblo tam znovu-navázání spojení po výpadku. Tak mrknu, zda to tam náhodou už není doděláno, protože by to na toto bylo fajn.
Pak by byl Loxone opět jen v roli vizualizátora, NodeRed v roli logiky, a Home assistant jako gateway k zařízení. I když jsou to 3 různé systémy, ve finále to asi zas tak zlé nebude.

















ahoj, díky za návod… začínám zrovna taky dávat dohromady loxone+ node-red+ home assistant. Letos jsem musel zapojit raspberry s node-red pro ovládání FVE přes modbus (jelikož Loxone nedokáže zapisovat více registrů najednou, což můj střídač vyžadoval). Teď bych rád přidal zigbee světla (ikea/philips) a tak jsem si říkal, že zapojím novou malinu a nainstaluju navíc i home assistant, ale problém mám hned na začátku- nainstaloval jsem home assistant os a do něj addon node-red, ale nedaří se mi do node-red protlačit z loxonu http GET příkazy. Jednak to po mně požaduje username a password, což by zas tak nevadilo, ale do node-red prostě ty příkazy nedolezou. Neřešil někdo stejný problém?
bohuzel konkretne neporadim, ja jedu node-red v dockeru. ale z toho co popisujes bych to videl na nejaky problem bud v siti nebo na firewallu. Mas to na stejne siti, nefiltruje ti to at uz router, nebo neni potreba v tom assistant OS otevrit porty?
myslim, že to bude spíš nějaký nastavení komunikace mezi home assistant a node-red, ale v UI jsem nenašel žádné relevantní nastavení…
Otevřít web editor node-red dokážu, poslat ze sítě webhook na endpoint vytvořený v home assistant taky, ale nejde mi poslat GET přímo do node-red ani dostat ten webhook z HA do node-red (myslel jsem, že to by jít mělo).
Když jsem hledal řešení, tak jsem taky narazil na variantu nodered+zigbee2mqtt+mosquitoo v dockeru, ale s linuxem mam minimální zkušenosti, tak mi přišlo jednodušší nahodit home assistant, kde jde vše spustit jako doplňek.
chatgpt mě zatím k cíli taky nenasměroval:-)
Omlouvam se za případné nepřesnosti v termínech