Per chi non lo sapesse Home Assistant è un software open-source basato su Python 3 in grado di gestire e controllare tutti i dispositivi tecnologici presenti nella nostra abitazione, dalle luci alle prese intelligenti. Home Assistant è in constante aggiornamento perché alle spalle c’è un ampia community che ci lavora essendo il progetto open-source . Ogni release introduce nuove funzionalità e sempre più dispositivi da poter controllare.
Qualcuno potrebbe dire ma esiste già Google Home, Alexa e HomeKit di casa Apple perché dovrei utilizzare Home Assistant per rendere domotica casa?
La risposta è semplice, visto l’alta quantità di dispositivi e servizi compatibili (IFTTT, Telegram, Sensori Xiaomi…) Home Assistant permette di gestire e creare automazioni per diverse piattafrome da un’unica interfaccia risultando così molto versatile.
Per farvi comprendere meglio quello che vi ho appena detto vi mostro la mia personale interfaccia di Home Assistant.
Come potete vedere dalla foto, in alto sono presenti le varie stanze di casa ognuna con i dispositivi/servizi relativi mentre nella home le info generali.
Ogni pagina è completamente personalizzabile a partire dai raggruppamenti nelle schede fino alle icone per identificare i vari dispositivi.
Entrando più nel dettaglio possiamo notare i vari sensori della Xiaomi (temperatura, movimento, porte/finestre), la possibilità di attivare/disattivare l’allarme e accendere/spegnere alcune prese di casa.
Installazione Home Assistant su Raspberry
Ora che abbiamo visto le potenzialità di questo software passiamo all’installazione sul raspberry seguendo i seguenti passaggi:
- Scaricate la versione dell’immagine di Home Assistant in base alla versione del Raspberry (se avete il Raspberry Pi 3 vi consiglio di scaricare la versione a 32 bit)
- Formattate la SD card usando SD Card Formatter
- Caricate l’immagine di Home Assistant, appena scaricata, sull’SD usando Etcher
- Se volete connettere il Raspberry alla rete utilizzando la connessione WiFi seguite lo step 5 altrimenti passate al 6
- Formattate una pennetta USB in NTFS, nella root creare una cartella “network” con all’interno un file senza estensione di nome hassos-wifi ed incollateci quanto segue
[connection] id=resin-wifi type=wifi [wifi] hidden=true mode=infrastructure ssid=<name-wifi> [ipv4] address1=<ip-raspberry>/24,192.168.1.1 dns=8.8.8.8;8.8.4.4; dns-search= method=manual [ipv6] addr-gen-mode=stable-privacy method=auto [wifi-security] auth-alg=open key-mgmt=wpa-psk psk=<password-wifi>
Dovete sostituire solamente name-wifi con il nome della vostra rete wifi, ip-raspberry con l’indirizzo che volete associare al raspberry (deve essere un IP libero all’interno della vostra rete WiFi) ed infine password-wifi con la password della rete WiFi scelta
- Inserite la SD nel Raspberry ed eventualmente collegate la pennetta USB se avete scelto di collegarlo alla rete WiFi
- Connettete il Raspberry alla corrente, al primo avvio Home Assistant scaricherà l’ultima versione disponibile, questa operazione può durare circa 20 minuti
- Dopo che Home Assistant sarà aggiornato si potrà accedere alla Home al seguente link http://hassio.local:8123 .Se non dovesse funzionare sostituite hassio.local con l’indirizzo IP del Raspberry, se lo avete connesso al WiFi sarà quello definito nel file di prima altrimenti dovreste cercare l’IP che è stato assegnato in automatico, in questo caso vi consiglio di usare l’app Fing per Smartphone
Raggiungere Home Assistant da remoto (Duck-DNS)
Ora che avete installato Home Assistant sul vostro Raspberry Pi il primo ADD-ON che dovete assolutamente installare è Duck-DNS il quale vi permetterà di raggiungere il vostro Raspberry da remoto e non solo all’interno della vostra rete di casa.
Per installare questo ADD-ON seguite questi semplici passi:
- Cliccate sulle tre barre in alto a sinista, vi si aprirà un menù laterale
- Selezionate Hassio.io e spostatevi nella scheda ADD-ON STORE
- Nella sezione Official add-ons cliccate su Duck-DNS
- Nella pagina che si apre cliccate su install e attivate Start on boot e Auto update
- Andate sul sito Duck-DNS , iscrivetevi se non lo avete già fatto, e fate il login
- Scegliete il nome per il vostro sub domain e cliccate su add domain
- Inserite il vostro IP di casa nel campo current ip e cliccate su update ip (per conoscere il vostro IP potete usare il sito myIP)
- Copiatevi il token presente nella sezione in alto della pagina di Duck-DNS
- Tornate nella pagina di Duck-DNS che avete installato su Home Assistant e sostituite il file di configurazione con questo
{ "lets_encrypt": { "accept_terms": true, "certfile": "fullchain.pem", "keyfile": "privkey.pem" }, "token": "<token-Duck-DNS>", "domains": [ "<name-sub-domain>.duckdns.org" ], "seconds": 300 }
Sostituite il campo token-Duck-DNS con quello che avete copiato e name-sub-domain con quello che avete scelto prima.
- Cliccate su Restart e se tutto è andato a buon fine dovreste raggiungere il vostro Raspberry usando il seguente link https://<name-sub-domain>.duckdns.org:8123 (ricordatevi che il protocollo ora è HTTPS non più HTTP)
Se non avete un IP fisso a casa non è necessario andare ad aggiornare Duck-DNS ogni volta che riavviate il modem, Home Assistant non appena si riconnetterà ad internet aggiornerà l’IP in automatico
Ora avete la versione di Home Assistant sul vostro Raspberry funzionante e raggiungibile da remoto, nei prossimi articoli vedremo come realizzare un’interfaccia simile a quella nella foto vista prima, come creare script, automazioni, gruppi e tante altre cose. Stay tuned 😉