In queste settimane di lockdown ho usato parte del tempo liberato per occuparmi di sistemare il mio sistema di home automation.
Per farlo ho sempre usato Home Assistant che è una roba un pochino da geek perché richiede di sporcarsi molto le mani per ottenere risultati avanzati ma che alla fine riesce a dare grandi soddisfazioni.
Per me è una bomba e sono riuscito a collegare quasi ogni oggetto connesso all’interno della mia casa.
In questi anni ho sviluppato tutta una serie di automazioni che scattano al presentarsi di una determinata serie di eventi.
Giusto qualche esempio per dare una idea:
- Accendi le luci dell’ingresso e della cucina quando rientro a casa e fai dare il benvenuto dallo speaker Sonos della Cucina.
- Attivare in maniera automatica le luci delle scale quando ci passo per poi spegnerle automaticamente.
- Spegnere tutto ed attivare l’allarme quando esco di casa.
Ci sono anche cose molto più avanzate di queste che sono tutto sommato banali. Una di queste è la mia sveglia intelligente: ogni mattina io imposto la mia sveglia e circa un’ora prima del suono della sveglia il sistema chiacchiera con Google Calendar per vedere dove devo andare per il mio primo appuntamento, calcola i tempi di percorrenza previsti usando Waze e Google Maps e verifica come è il tempo atmosferico. In funzione di questi parametri aggiusta la sveglia di conseguenza. L’idea è che se piove ci vuole più tempo per arrivare dove devo arrivare e via dicendo.
Ora, ognuna di queste automazioni è possibile usando le applicazioni native degli oggetti intelligenti che sono in casa. Posso modificare la temperatura usando l’applicazione di Nest, programmare l’accensione delle luci con l’applicazione di HUE, attivare i media player con l’applicazione di Sonos e via discorrendo.
Il vantaggio che Home Assistant mi offre è che ho un unico punto di controllo con il quale posso compiere più azione su più oggetti. Quando suona la sveglia la macchina del caffè parte automaticamente e mi viene generato un veloce brief della mia giornata che posso ascoltare mentre mi faccio la barba.
Mentre programmo il sistema mi rendo conto di una cosa rilevante che mi era sfuggita sino ad ora. In realtà tutto è pensato per il singolo utente ed il comportamento degli oggetti non cambia in funzione della presenza di altre persone in casa.
Ad esempio, quando i miei figli sono in casa l’intensità delle luci delle scale durante l’accensione notturna è più alta. Questo perché la mia casa è su tre livelli e loro non hanno scale a casa della mamma. Non vorrei quindi che nel dormiveglia non si ricordassero della presenza delle scale.
Chiaramente tutte le applicazioni native dei vari oggetti connessi non sono in grado di gestire queste tipologie di comportamenti mentre con Home Assistant posso sapere in maniera automatica se i miei figlio sono in casa e variare il comportamento degli oggetti in funzione di questi.
Di fatto una delle cose più complesse che mi sono trovato a dovere gestire è stata la verifica della presenza o meno di una persona in casa. Alla fine ho scritto un sensore bayesiano che pesa il valore di diversi sensori e decide se qualcuno è in casa oppure no.
Questo accorgimento mi permette di fare funzionare il sistema in maniera efficiente in funzione di chi si trova in casa. E poi quando i miei figli sono rintanati in mansarda li posso richiamare a cena inviando un messaggio sul Sonos usando il Text To Speech di Google.
Magari in un prossimo post scriverò della architettura della soluzione.
E’ interessante il fatto che il tutto potrebbe girare tranquillamente su un Raspberry Pi connesso in rete. Non è un fulmine di guerra ma fa il suo onesto lavoro. Ora io uso un Intel NUC perché sopra ci gira anche altra roba che mi interessa ma è certamente un overkill rispetto alle esigenze di Home Assistant.
Ciao Enrico, in realtà un Raspberry PI sarebbe andato benissimo sebbene sia un pochino lento quando le cose si fanno complesse e le integrazioni e le automazioni cominciano ad essere tanti come nel mio caso. Oltre a questo volevo avere a disposizione una macchina non ingombrante e silenziosa per altri “esperimenti”. Per questo motivo sul mio Intel NUC ho installato Proxmox VE che mi permette di virtualizzare ogni installazione. C’è una istanza con Ubuntu per farci girare sopra Home Assistant più altre macchine virtuali, una Windows e due Linux sui girano altri giocattoli con i quali mi sto divertendo. In… Read more »
Interessato al prossimo post sull’architettura, perchè ho di recente preso un PI 4B+ per farci girare PiHole e Retropie, ho installato Home Assistant ma ancora non l’ho configurato.
Curiosità: quali usi hai trovato dell’ Intel NUC?