community italiana di domotica personale
 
Home Assistant: capire come integrare un componente domotico

Home Assistant: capire come integrare un componente domotico

Una delle domande che più spesso ricorre sulla nostra chat e/o sul nostro forum è, tipicamente, “ho comprato questo o quello, come posso integrarlo su Home Assistant?

Home Assistant Official Logo v3Facciamo un passo indietro.

Home Assistant è un HUB per domotica personale gratuito che consente l’integrazione di migliaiaia (decine di migliaia?) di diversi componenti basati su diverse tecnologie e prodotti da diversi produttori; lo scopo di tutto questo è poter coordinare il tutto, fregandosene delle differenze (tecnologiche e di brand), “sotto un unico tetto”. 

Per far ciò, Home Assitant  utilizza delle cosiddette “piattaforme di integrazione”, ovvero delle porzioni di software che, partendo dalle componenti primitive dell’HUB consentono, per l’appunto, di comunicare con i componenti.

N.b. Le integrazioni non riguardano solo i singoli componenti fisici. Sono infatti integrabili anche molti servizi (eg. previsioni del tempo, rilevazioni della qualità dell’aria, servizi di rilevazione presenza e molto, molto, molto altro).

Tornando alla domanda iniziale, c’è da evidenziare come essa contenga un vizio di fondo: l’approccio dell’utente Home Assistant (e di qualsiasi altro HUB) dovrebbe essere precisamente contrario: prima verifico che esistano delle piattaforme di integrazioni, poi semmai acquisto qualcosa.

Che si provveda prima (meglio) o poi (peggio), vediamo come effettuare questa verifica.

Piattaforme ufficiali

In primis è necessario far riferimento all’elenco ufficiale delle piattaforme e componenti presenti out-of-the-box su Home Assistant.

Home Assistant - Integrations - Logo

Accedendo a tale elenco è possibile verificare se un dato brand d’interesse (o il servizio) sia tra quelli inclusi in lista. Ciò non è però sufficiente: è necessario entrare nella scheda dedicata (in caso sia presente) e verificare nello specifico quali siano i modelli eventualmente inclusi nella piattaforma di integrazione e quali siano le caratteristiche effettivamente integrabili.

Per esempio, volendo integrare delle luci Nanoleaf, la disponibilità di una piattaforma d’integrazione ufficiale garantisce l’integrabilità, ma poi leggendo in dettaglio si scopre che per esempio come Nanoleaf Remote non sia supportato. Questo vale per altre mille situazioni specifiche.

Altre opzioni

Sempre rimanendo sull’esempio Nanoleaf, nella scheda dedicata alla piattaforma di integrazione ufficiale si scopre anche che “Il controllo delle luci Nanoleaf Essentials è possibile tramite Thread e Bluetooth tramite l’integrazione del controller HomeKit.”

Questo significa che, oltre alla piattaforma Nanoleaf è possibile utilizzare la piattaforma “HomeKit Device“, la quale consente analoga integrazione.

Non è quindi detto che per integrare un componente ci sia una sola strada.
Anzi.

Custom component

Quando un dispositivo o un servizio non possiedono una piattaforma ufficiale d’integrazine non è altrettanto detto che non ve ne sia una disposizione cosiddetta “custom“, ovvero sviluppata da terzi nel mondo open source ma non ufficialmente inclusa su Home Assistant.

Prendiamo il caso delle componenti Meross da noi testate. Tale apprezzata linea di prodotti non d diispone una piattaforma d’integrazione ufficiale, ma dispone di una custom perfettamente funzionante: è sviluppata, manutenuta e messa a disposizione da un programmatore italiano.

Nel caso dei cosiddetti “custom component” la ricerca è un po’ più laboriosa, dato che non esiste un elenco globale come nel caso delle piattaforme ufficiali.

Per effettuare la ricerca solitamente basta usare Google (o altro motore di ricerca) inserendo il nome/modello del componente (il più preciso possibile), il brand e sicuramente “custom component Home Assistant” quali addendi alla ricerca.

Dato che per lo più i custom component vengono pubblicati su GitHub, ideale è anche una ricerca diretta su di esso. Non a caso custom component Meross di cui sopra è pubblicato su tale sito.

Come installarli

Mentre le piattaforme di integrazione sono già presenti sull’HUB, i custom component vanno installati. Solitamente si utilizza un sistema semplice, HACS, il quale funge da strumento di installazione, manutenzione e gestione dei custom component.

HACS - Logo

Esso stesso è però un custom component da installare una tantum. Come, lo abbiamo illustrato qui.

N.b. I custom component si installano tranquillamente “a mano”. HACS rappresenta una consigliata (ma non stettamente necessaria) semplificazione del processo di installazione e gestione.

Processi esterni

Talvolta piattaforme ufficiali e custom component non bastano.

In alcuni casi, infatti, c’è bisogno di un qualche tramite tra Home Assistant e il componente hardware finale (o il servizio in questione).

È questo il caso, per esempio, di tutte le (tantissime) componenti basate per esempio su standard ZigBee, Z-Wave e Thread, le quali hanno fisiologicamente bisogno di un BRIDGE/Gateway intermedio per coordinare le comunicazioni da e verso l’HUB. Solitamente, per ZigBee si usa ZigBee2MQTT o ZHA, per Z-Wave si usa Z-Wave JS, per Thread si utilizza OpenThreadBorderRouter (per lo più in abbinamento con Matter).

N.b. ZHA è de facto un componente interno a Home Assistant e si implementa tramite esso ma, comunque sia, va considerato come un processo a se stante, esterno all’HUB.

Altri casi (estremi)

Esistono ulteriori eccezioni. Esistono infatti anche componenti domotici che, magrado siano direttamente connessi, magari via Wi-Fi, non siano direttamente integrabili via piattaforme di integrazione, ufficiali o custom.

Questo perché prevedono, per tanti e diversi motivi tecnici, dei componenti intermedi – non proprio dei BRIDGE/Gateway (come per i sopracitati componenti ZigBee, Z-Wave eccetera) ma qualcosa di simile. Si tratta comunque di componenti aggiuntivi esterni a Home Assistant.

In questi casi la ricerca da fare è pressoché la medesima dei custom component.

La risultante, invece di un custom component, può essere quella di un componente aggiuntivo (un vero e proprio mini-server ad hoc), il quale venga installato come add-on in caso di installazioni Home Assistant OS/Supervised o applicazioni, magari installabili via Docker, in altre installazioni Core.

N.b. Se non si ha chiara la differenza tra Home Assistant OS/Supervised e Core, è necessario capirla, magari leggendo questa scheda dedicata al tema.

Un esempio è quello di AirCon, un componente dedicato alle comunicazioni da e per alcuni climatizzatori Wi-Fi HiSense, Fujitsu e altri brand.

Tale componente prevede di installarne l’add-on (su OS/Supervised) o il l’immagine Docker come container (su altre installazioni) al fine di comunicare da una parte col cloud e, dall’altra, verso Home Assistant (via MQTT).

Vetrina

Come scegliere

Nel caso (non raro) esistano più piattaforme (ufficiali o custom) e/o componenti aggiuntivi utili all’integrazione, quale scegliere?

Naturalmente, le valutazioni variano da caso a caso.

Per scegliere, l’ordine di preferenza (dal migliore al peggiore) dovrebbe essere:

  • piattaforme di integrazione ufficiale;
  • piattaforma di integrazione custom component;
  • componenti aggiuntivi esterni a Home Assistant.

A monte di questa scelta, bisognerebbe sempre tenere a mente che, a prescindere, andrebbero preferite strade di integrazione che prevedano la piena integrazione locale e non via Cloud.

Un’integrazione locale funziona sempre e comunque, a prescindere (salvo guasti locali, ovviamente). Una Cloud, oltre a essere meno performante, è comunque legata al funzionamento di infrastrutture delle quali non si ha certezza di funzionamento e, sopratutto, che garantiscono un livello di privacy inferiore a quello garantito dal funzionamento locale.

Morale: tra una piattaforma ufficiale basata su cloud e un custom component dal funzionamento locale, meglio scegliere il secondo; a parità di condizioni (ovvero che utilizzino entrambi o cloud o locale), meglio scegliere la prima (ovvero una piattaforma ufficiale).

A tale tema abbiamo dedicato un’importante scheda.

E se non trovo nulla?

Non trovando alcuna piattaforma di integrazione né componenti aggiuntivi esterni a Home Assistant beh, allora si mette male. Le chance di integrazione si riducono notevolmente: ciononostante non bisogna demordere.

Esistono infatti delle tecniche secondarie, laterali ma comunque efficaci, per riuscire a integrare. È per esempio il caso dei climatizzatori/condizionatori tradizionali o Wi-Fi non integrabili, i quali possono comunque essere integrati utilizzando i raggi infrarossi, come per esempio spiegato in questa guida.

Al tema, comunque, abbiamo dedicato un FOCUS ad hoc:

Domotizzare il non-domotico

 

⚠️ Se di Home Assistant ne sai poco ma sei interessato a capirne di più, ti suggeriamo di partire da qui.

Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Se ti sei perso, a tua disposizione c'è la mappa.