Bentrovati amici smart!
Nel video precedente abbiamo esplorato la sezione Dispositivi e Servizi di Home Assistant, analizzando le sue sottosezioni e comprendendo il ruolo fondamentale di ciascuna. Oggi vedremo come scaricare e installare HACS all'interno di Home Assistant.
Come abbiamo accennato nel video precedente, se non dovessimo trovare un'integrazione ufficiale per un dispositivo o un servizio, potremmo utilizzare uno strumento alternativo denominato HACS, acronimo di Home Assistant Community Store. Questo strumento non è incluso di default in Home Assistant e richiede un'installazione manuale, procedura da eseguire accedendo direttamente all'interno del Docker Container di Home Assistant.
HACS offre accesso a un vasto catalogo di integrazioni non ufficiali e tra le più disparate, sviluppate da programmatori di tutto il mondo e condivise attraverso GitHub. Parliamo di sviluppatori che, probabilmente, avendo avuto esigenze simili alle nostre e, grazie alle loro competenze, hanno creato e pubblicato soluzioni utili per la community.
Tuttavia, questo strumento non deve essere considerato soltanto come una soluzione di ripiego per integrare dispositivi non supportati ufficialmente, ma piuttosto come una risorsa che espande notevolmente le potenzialità della nostra Smart Home. Mentre le integrazioni ufficiali sono generalmente pensate per prodotti e servizi più diffusi e commerciali, HACS offre un ventaglio molto più ampio di possibilità, includendo anche integrazioni meno convenzionali e più di nicchia.
Per capire cosa intendo per disparate e non convenzionali, facciamo un piccolo esempio. Supponiamo che un membro del nucleo familiare conviva con il diabete. Grazie ad HACS è possibile trovare integrazioni sviluppate da terze parti che consentono di collegare sensori glucometro, come quelli della Freestyle di Abbott o della Medtronic, direttamente in Home Assistant. Per quanto possa sembrare assurdo, questo permette di trasformare, figurativamente, la persona stessa in un’entità della Smart Home. Pertanto, mediante delle automazioni, è possibile monitorarne la sua salute e avvisare in modo tempestivo il nucleo familiare in caso di situazioni critiche, come un valore glicemico fuori dal range ottimale.
Un esempio di automazione potrebbe essere quello di far accendere una luce rossa, inviarci una notifica, farci avvisare da un assistente vocale o, ancora, che venga inviata la posizione della persona in caso di ipoglicemia mentre è fuori casa.
Queste integrazioni, seppur estremamente utili, spesso non trovano spazio tra quelle ufficiali, perché non legate a prodotti commerciali di massa. Tuttavia, la natura open-source e la libertà di sviluppo offerte da Home Assistant permettono di superare questi limiti, consentendo a chiunque, con le competenze adeguate, di creare soluzioni che si adattano perfettamente alle proprie esigenze.
HACS, quindi, non è soltanto uno strumento per integrare "lampadine o sensori" senza supporto ufficiale, ma rappresenta una vera e propria piattaforma per esplorare nuove idee e personalizzare al massimo la gestione della propria Smart Home, attingendo a un catalogo di soluzioni che vanno ben oltre i confini del mercato commerciale tradizionale.
Ma andiamo con ordine.
Cos'è GitHub?
Brevemente, per chi non conoscesse GitHub, possiamo immaginarlo come un enorme magazzino digitale, dove chiunque può caricare, condividere e collaborare su progetti di sviluppo software di qualsiasi tipo e tecnologia.
Provando a fare un esempio di vita reale: possiamo pensare a GitHub come a una grande biblioteca aperta a tutti, con scaffali pieni di libri (i progetti), scritti da autori (gli sviluppatori). Alcuni libri sono completi e aggiornati (come per le riedizioni) pronti per essere letti, mentre altri possono essere incompleti o non aggiornati da anni.
All'interno di questa grande biblioteca chiunque potrebbe limitarsi a leggere un libro, oppure contribuire ad ampliarne i contenuti o completare un’opera incompiuta.
All'interno di GitHub è possibile trovare progetti di ogni tipo, non solo legati alla smart home, ed è un luogo dove gli sviluppatori possono condividere il proprio lavoro, rendendolo pubblico sotto licenza e permettendo ad altre persone di collaborare per migliorarne le funzionalità. Va da sé che GitHub viene utilizzato anche per progetti dedicati ad Home Assistant.
Quindi qual'è il ruolo di HACS?
HACS, invece, è uno strumento che indicizza e filtra tutti i progetti di GitHub che riguardano Home Assistant. Affinché un progetto sia visibile su HACS, lo sviluppatore deve richiederne l'inserimento nel repository ufficiale, seguendo precise linee guida.
Una volta effettuata la richiesta, il progetto viene sottoposto a revisione da parte degli amministratori di HACS, i quali ne valutano la conformità e l'idoneità prima di approvarlo. Ma tale processo potrebbe impiegare parecchi giorni.
In alternativa, nell'attesa di essere approvati o nell'eventualità di non esserlo, ognuno di noi può aggiungere manualmente un repository direttamente dalla propria interfaccia HACS, inserendo l'URL del progetto. Tuttavia, questi repository aggiunti manualmente saranno visibili e accessibili solo all'utente che li ha aggiunti, senza comparire nel catalogo pubblico di HACS.
Questa soluzione può essere utile per tutti coloro che, avendo esigenze specifiche, desiderano realizzare una soluzione su misura, integrarla in Home Assistant e, al contempo, renderla pubblica per tutti attraverso GitHub. Anche se non viene approvata immediatamente dagli amministratori di HACS, chiunque può iniziare a beneficiarne aggiungendo manualmente il repository del progetto tramite l'interfaccia di HACS.
I pacchetti delle integrazioni scaricate da HACS, saranno disponibili nella lista delle integrazioni di Home Assistant, al pari di quelle ufficiali.
Procedura di installazione HACS
L'installazione di HACS è molto semplice, ma prima di proseguire è bene accertarsi di possedere o eventualmente creare un account GitHub.
Per chi avesse già creato un account GitHub, vediamo subito cosa fare per installare e utilizzare HACS:
Per iniziare accediamo al terminale del Raspberry Pi in SSH utilizzando qualsiasi dispositivo di vostra preferenza, come visto nei video precedenti. Dopo esserci connessi e autenticati al Raspberry Pi in SSH, entriamo all'interno del container di Home Assistant eseguendo il seguente comando seguito dal testo invio:
docker exec -it home-assistant bash
Dopo essere entrati all'interno del container, passiamo subito ad installare HACS eseguendo il seguente comando seguito dal testo invio:
wget -O - https://get.hacs.xyz | bash -
Infine usciamo dal container eseguendo il seguente comando seguito dal testo invio:
exit
Adesso non ci resta che riavviare Home Assistant. Per farlo è necessario spostarsi da terminale all'interno della cartella che contiene il nostro file di configurazione di Docker Compose.
Se ricordate, il file di configurazione di docker compose lo avevamo posizionato all'interno del seguente percorso:
/home/pi/homeassistant_hub/docker-config
Per entrare all'interno del percorso appena visto, eseguiamo il seguente comando seguito dal tasto Invio:
cd /home/pi/homeassistant_hub/docker-config
così facendo saremo entrati all'interno della cartella docker-config. Per accertarcene, digitiamo il seguente comando seguito dal tasto invio:
pwd
Il terminale dovrebbe confermarci che siamo nella cartella giusta.
/home/pi/homeassistant_hub/docker-config
In caso contrario sarà necessario rieseguire il comando cd e riprovare.
Dopo aver verificato di essere nel percorso corretto, ovvero quello contenente il file di configurazione YAML di Docker Compose, eseguiamo il seguente comando seguito dal tasto invio per riavviare il container di HomeAssistant:
sudo docker compose restart home_assistant
Mostrare HACS in HomeAssistant
Per utilizzare HACS all'interno dell'interfaccia di Home Assistant, è necessario eseguire un ulteriore passaggio per integrarlo come una normale integrazione.
Ecco cosa fare:
- Rechiamoci nella sezione Impostazioni, selezioniamo Dispositivi e servizi.
- Clicchiamo sul pulsante Aggiungi integrazione.
- Nella barra di ricerca, digitiamo "HACS" e selezioniamolo dall'elenco.
- Si aprirà subito la sua schermata di configurazione. Flagghiamo tutte le opzioni richieste e clicchiamo su INVIA.
- A questo punto, l’interfaccia di Home Assistant fornirà un link a GitHub e un codice temporaneo. Appuntiamo il codice e clicchiamo sul link.
- Dopo aver cliccato sul link si aprirà una pagina GitHub, nella quale poter inserire il codice. Inseriamo il codice temporaneo e clicchiamo su Continue.
- GitHub richiederà l'autorizzazione per associare HACS al nostro account GitHub. Concediamo il consenso cliccando su Authorize HACS.
- Dopo aver autorizzato HACS su GitHub, torniamo alla pagina di Home Assistant e clicchiamo su FINITO.
- Infine, per completare l’installazione di HACS, è necessario riavviare Home Assistant eseguendo la stessa procedura vista in precedenza.
Al termine del riavvio, accediamo nuovamente all’interfaccia di Home Assistant tramite il nostro browser, oppure ricarichiamo la pagina se l’avevamo già aperta. Se la procedura è stata eseguita correttamente, dovremmo trovare la voce HACS nel menu laterale di sinistra.
Utilizziamo HACS
Selezioniamo HACS dal menu di sinistra e si aprirà una lista completa di tutti i pacchetti di integrazioni disponibili. Nella parte superiore troviamo un campo di ricerca che possiamo utilizzare per filtrare i risultati e trovare velocemente un’integrazione o un progetto specifico che desideriamo installare.
Supponiamo di voler installare l'integrazione per gestire i dispositivi Sonoff compatibili tramite rete Locale e non via Cloud come l'integrazione ufficiale.
Per chi ha seguito le tappe precedenti sulle classificazioni dei dispositivi, sa bene che è preferibile scegliere soluzioni che lavorano in Local, ove possibile. Pertanto, consiglio a chi fosse interessato di cercare e installare Sonoff LAN.
Dopo aver trovato il pacchetto dell’integrazione Sonoff LAN su HACS, clicchiamo sul pulsante blu "Scarica" posto in basso a destra. Una volta completato il download, l’integrazione sarà disponibile nella lista delle integrazioni di Home Assistant.
Non ci resta che completare il processo seguendo gli ultimi passaggi:
- Tutte le volte che scarichiamo un pacchetto da HACS, riceviamo una notifica che ci invita a riavviare Home Assistant. Per farlo, accediamo alla sezione Impostazioni, clicchiamo sull’avviso in alto e successivamente su Riavvia.
- Dopo il riavvio, entriamo nella sezione Dispositivi e Servizi e selezioniamo Aggiungi integrazione.
- Nella lista delle integrazioni disponibili, cerchiamo Sonoff e selezioniamola.
- Verrà avviata una procedura guidata che ci assisterà nella configurazione dell'integrazione. Per Sonoff LAN, il primo e unico step consiste nell’autenticazione al cloud eWeLink, utilizzata esclusivamente per scaricare la configurazione iniziale dei dispositivi.
- Una volta completata la configurazione iniziale, potremo decidere se utilizzare i dispositivi in modalità Local o Cloud. Per configurare la modalità Local, accediamo alle impostazioni, selezioniamo l'integrazione Sonoff, clicchiamo su Configura e scegliamo l’opzione desiderata.
- Tra le opzioni è anche disponibile una modalità auto, che consente all’integrazione di scegliere in autonomia il metodo migliore per comunicare con i dispositivi.
Come potete vedere, una volta installato HACS, scaricare e installare il pacchetto di un'integrazione è molto semplice.
Ricapitolando:
- Dopo aver installato HACS in Home Assistant, tutte le volte che non troviamo un’integrazione ufficiale per il dispositivo che vogliamo gestire o se abbiamo esigenze particolari non offerte dalle integrazioni ufficiali, possiamo accedere ad HACS, cercare l’integrazione desiderata e scaricare il relativo pacchetto.
- Al termine del download, riavviamo HomeAssistant, torniamo nella sezione Dispositivi e Servizi, clicchiamo su Aggiungi integrazione, e troveremo l’integrazione nella lista, pronta per essere installata e configurata esattamente come una normale integrazione ufficiale.
Con pochi passaggi, HACS ci permette di ampliare significativamente le possibilità della nostra Smart Home.
Prima di concludere, è importante fare una precisazione:
A differenza delle integrazioni ufficiali, quelle scaricate tramite HACS non sempre garantiscono lo stesso livello di supporto. Può succedere che alcuni progetti non vengano aggiornati regolarmente o, in alcuni casi, vengano abbandonati. Per tale motivo, prima di installare un’integrazione tramite HACS, è consigliabile verificare che sia recente e supportata attivamente. Questo controllo può essere effettuato visitando la pagina GitHub relativa al pacchetto e verificando la data dell’ultimo commit, ovvero l’ultima modifica apportata dallo sviluppatore.
HACS rappresenta un’ottima risorsa per espandere le funzionalità di Home Assistant, ma è sempre consigliabile usarlo con attenzione, soprattutto per integrazioni critiche per la nostra smart home.
Bene per oggi è tutto, nel prossimo video continueremo il nostro viaggio con un altro argomento interessante. Come sempre se vi fa piacere seguitemi per altri tutorial, attivate la campanellina e lasciate un like al video.