Kako Home Assistant učiniti pouzdanijim?
Kratki odgovor, odmah na početku: tako da Home Assistant tretirate kao mozak, a ne kao leđnu moždinu. Osnovna sklopna logika (pritisnem tipku, svjetlo se upali) seli se u uređaje ili se povlači izravno između njih: kao ESPHome automatizacija na mikrokontroleru, kao Zigbee binding od tipke prema svjetiljci, kao Z-Wave asocijacija. Home Assistant zadržava sve što stvarno traži mozak: kontekst, scene, statistiku, nadzornu ploču. A kad server upravo instalira update, restarta se ili je jednostavno mrtav, svjetlo u tušu svejedno radi.
To je cijela teza ovog teksta. Ostalo je obrazloženje, dvije konkretne upute i poštena tablica što koji put može.
Zašto me tema ne pušta: Home Assistant odavno nije hobi-projekt, nego infrastruktura. Više od 654.000 aktivnih instalacija dobrovoljno se javlja u statistiku projekta, a to je samo dio koji je pristao na opt-in; stvarna brojka je znatno viša. No infrastruktura se ne mjeri po nadzornoj ploči. Mjeri se po prekidaču za svjetlo. Prekidač iz 1975. ima dostupnost u koju svaki softverski stack može samo zuriti. Tko ugrađuje pametnu tehniku, natječe se s tim očekivanjem, htio to ili ne.
Usko grlo između tipke i svjetiljke
Prođite u usporenoj snimci što se događa u tipičnoj instalaciji kad netko pritisne Zigbee tipku. Tipka šalje radiom prema koordinatorskom sticku. Stick predaje okvir Zigbee2MQTT-u. Zigbee2MQTT objavljuje na MQTT broker. Home Assistant je pretplaćen, automatizacija okine, pozove light.turn_on, i naredba ide istim putem natrag: broker, Zigbee2MQTT, stick, radio, svjetiljka.
Ovisno kako brojite, to je sedam stanica za „upali svjetlo”. Svaka od njih je proces koji mora raditi. Svaka dobiva update-e. Nekoliko ih dijeli istu SD karticu, isti disk, isto malo računalo u hodniku. Padne li jedna stanica, ne gubite komfornu funkciju. Gubite prekidač. Kako izgleda takav ispad kad stigne u najgorem trenutku, opisao sam u priči o Z2M kaskadi jednog četvrtka poslijepodne — otada svaka automatizacija koju gradim prolazi kroz pitanje: što se dogodi kad ovaj lanac pukne?
Da bude jasno: ništa od ovoga nije prigovor Home Assistantu. Stack je začuđujuće stabilan i većina tih sedam stanica radi mjesecima bez trzaja. Ali stabilnost nije isto što i neovisnost. Update ostaje update, restart ostaje restart, i oboje spada u pošten pogon. Pitanje nije hoće li server nakratko nestati. Pitanje je što u tom trenutku još radi.
Mozak i leđna moždina
Ljudsko tijelo taj je problem riješilo elegantno. Dotaknete li vruću ploču štednjaka, refleksni luk povuče ruku prije nego što signal uopće stigne do mozga. Odlučuje leđna moždina. Mozak sazna trenutak kasnije i smije se baviti zanimljivim dijelom: psovati, analizirati uzrok, idući put biti oprezniji.
Točno takvu podjelu posla želim u kući, jer ona čini Home Assistant pouzdanijim, a ništa mu ne oduzima. Refleksi (tipka pali svjetlo, prekidač vozi roletu) pripadaju najnižem sloju koji još radi: mikrokontroleru, radijskom protokolu, po potrebi rednoj stezaljci. Mozak radi kontekst: noću samo 20 posto svjetline, rolete dolje kad sunce udari sa zapada, grijanje isključeno kad nikoga nema. Padne li mozak, kuća gubi inteligenciju, ali ne i osnovnu funkciju.
Moj test je jednostavan: ugasite server i prošećite kućom. Sve što sad više ne radi, a po mišljenju ukućana „mora uvijek raditi”, leži na krivom sloju.

Metoda 1: ESPHome — automatizacija stanuje na čipu
Prvi i najtemeljitiji put. Tko gradi uređaje s ESPHomeom, bira gdje logika živi: kao automatizacija u Home Assistantu ili kao automatizacija u YAML-u samog uređaja. Za osnovne funkcije odgovor je jednoznačan. Zidna tipka fizički spojena na GPIO kontrolera dobije on_press koji izravno prebacuje lokalni relej ili lokalno svjetlo. Bez mreže, bez pitanja centrali.
ESPHome dokumentacija ovdje je osvježavajuće izravna. Na pitanje rade li automatizacije bez mrežne veze odgovara doslovno: „YES! All automations you define in ESPHome are executed on the microcontroller itself and will continue to work even if the Wi-Fi network is down”. To nije nuspojava. To je cilj dizajna.
Najljepše od svega: Home Assistant ne gubi ništa. Stanje releja i dalje se javlja čim se veza vrati, nadzorna ploča ispravno prikazuje svjetlo, a svaka HA automatizacija smije šaltati povrh toga — navečer prigušiti, ugasiti kad svi odu, što god kontekst traži. Ali tipka na zidu radi i onda kad Wi-Fi, broker i server svi zajedno šute. Ja u međuvremenu svaki ESPHome aktuator spajam tako da mu je primarno upravljanje lokalno, a sve što dolazi izvana tretiram kao dodatak.
Metoda 2: Zigbee binding pušta tipku da razgovara izravno sa svjetiljkom
Drugi put ne traži lemilicu. Zigbee ima izravno upravljanje uređaj-uređaj ugrađeno u protokol; funkcija se zove binding. Zigbee2MQTT dokumentacija opisuje to točno tako: uređaji upravljaju jedni drugima, „without the intervention of Zigbee2MQTT”. Tipka svoju naredbu ne šalje koordinatoru na obradu. Šalje je kroz mesh izravno vezanoj svjetiljci. Server se restarta? Zigbee2MQTT usred update-a? Svjetiljku za to nije briga.
U praksi se rijetko veže na jednu svjetiljku, nego na Zigbee grupu: tipka u kupaonici na grupu „kupaonica”, i sva tri spota reagiraju istovremeno, jednom grupnom naredbom umjesto tri pojedinačne. Što, usput, rasterećuje radijsku mrežu. ZHA korisnici ne moraju biti ljubomorni; binding tamo ide jednako, preko stranice uređaja.
Dvije poštene ograde. Prvo, ne podržava svaki uređaj binding — to ovisi o proizvođačevoj Zigbee implementaciji; IKEA oprema tradicionalno je poslušna, druge marke vezane promjene stanja javljaju natrag samo djelomično. Drugo, tipke na bateriju duboko spavaju: kod postavljanja bindinga treba ih probuditi, inače postupak tiho propadne. Oboje piše u povezanoj dokumentaciji, oboje se rješava za deset minuta.
Što još ide izravno
Z-Wave zna isto i zove to asocijacijom. Uređaju se u jednu od asocijacijskih grupa upiše cilj i on otada svoj Basic_Set šalje izravno, čak i kad je kontroler isključen ili pokvaren. Pod Home Assistantom to se postavlja preko stranice uređaja u Z-Wave JS-u, u pravilu od grupe 2 nadalje. Naredbe su namjerno jednostavne: upali, ugasi, priguši, i to je to. Za reflekse je to točno dovoljno.
Tko u kući ima Hue Bridge, njegov vlastiti pribor može koristiti kao dodatni sloj: Hue dimmer uparen izravno s bridgeom pali svoje svjetiljke i onda kad Home Assistant ne odgovara. Strogo gledano, to je manja centrala umjesto nikakve, ali je druga i neovisna — i update-a ima znatno rjeđe.
Shelly releji nose princip sve do podžbukne kutije. Fizički zidni prekidač električki visi na sklopnom ulazu releja i šalta lokalno na uređaju, s Wi-Fijem ili bez njega. Zanimljiv je obrnuti slučaj: popularni „detached mode”, u kojem ulaz samo šalje evente, a šaltanje preuzima server, ponovno ugrađuje upravo onu ovisnost o kojoj ovaj tekst govori. Ponekad komfor to vrijedi. Samo neka to bude svjesna odluka, a ne navika.
A Matter? Standard bindinge izričito predviđa; uređaji bi trebali upravljati jedni drugima bez kontrolera u sredini. Home Assistant je dodao prve binding funkcije u svoj Matter add-on, još rudimentarne, a podrška na uređajima je tanka. Pratiti, još ne graditi na tome. KNX ekipa smije se na ovom mjestu blago nasmiješiti: kod njih logika u uređajima desetljećima je standard, a sabirnica uopće ne poznaje središnji server koji bi mogao pasti.
Slojevi u usporedbi
| Put | Šalta kad HA padne? | Treba li funkcionalnu mrežu? | Snaga logike |
|---|---|---|---|
| ESPHome automatizacija na čipu | ✅ | ❌ (ni Wi-Fi) | srednja: uvjeti na uređaju |
| Zigbee binding (uređaj/grupa) | ✅ | Zigbee mesh, bez servera | niska: on/off/prigušenje/boja |
| Z-Wave asocijacija | ✅ | Z-Wave radio, bez kontrolera | niska: osnovne naredbe |
| Shelly sklopni ulaz (spregnut) | ✅ | ❌ | niska: šaltanje |
| Hue pribor na bridgeu | ✅ | Hue Bridge + Zigbee | niska do srednja |
| Automatizacija u Home Assistantu | ❌ | cijeli stack | visoka: sve, s punim kontekstom |
Zadnji red nije najgori. On postoji za nešto drugo. I upravo je to poanta: ne radi se o svrgavanju Home Assistanta, nego o tome da svaki komad logike legne na sloj koji mu stvarno treba. „Upali svjetlo” ne treba Python interpreter.
Što onda ostaje mozgu?
Sve zanimljivo. Scene koje koordiniraju više sustava. Prisutnost, rasporedi, cijene energije, vrijeme. Obavijesti, statistika, nadzorna ploča kao prozor u kuću. Tko reflekse izmjesti, ne degradira Home Assistant, nego ga čini pouzdanijim i slobodnijim istovremeno: server sad smije raditi ono što samo on može, i nitko ne zadržava dah tijekom update-a. Ista je to ideja zbog koje su lokalne instalacije otpornije od ovisnosti o cloudu, samo primijenjena sloj niže — na vlastiti server umjesto na tuđi.
Za sve koji Home Assistant profesionalno postavljaju kod klijenata, ovo je više od higijene. Instalacija čije osnovne funkcije ne osjete update-e i restarte ne proizvodi pozive u 21 sat. Održavanje se može voditi u čistom, vremenski ograničenom prozoru, Core ažurirati, add-one restartati, a klijent jednostavno ništa ne primijeti. S nekoliko vlastitih uređaja to provjeravate rukom. Kod dvadeset klijentskih instalacija želite stanje i update-e svih sustava vidjeti na jednom mjestu, inače kontrola pojede vrijeme koje je arhitektura upravo uštedjela.
Za kraj, natrag pod tuš gdje je ovaj tekst počeo. Core update se vrti, server se diže, nadzorna ploča je nakratko siva. A svjetlo? Svjetlo se pali. Jer između tipke i svjetiljke više nitko ne sjedi u sredini s pametnijim poslom.