community italiana di domotica personale
 
Installare e configurare Home Assistant OS (HassOS/HASSIO) su un Mini PC/Intel NUC dedicato

Installare e configurare Home Assistant OS (HassOS/HASSIO) su un Mini PC/Intel NUC dedicato

SCOPI DELLA GUIDA
  • Installare e configurare Home Assistant (distribuzione HassOS/HASSIO) su Mini PC/Intel NUC (o più in generale un comune computer desktop/laptop)
  • Livello di difficoltà: basso
CONCETTI AFFRONTATI:
  • installazione e configurazione software
COMPONENTI SOFTWARE UTILIZZATE
PREREQUISITI
  • Rete domestica connessa ad Internet
DISPOSITIVI FISICI UTILIZZATI
GUIDA MAGGIORMENTE INDICATA PER:

Tutti gli ambienti

NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In presenza di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat.
Revisione guida: 1.1

😊  QUESTA GUIDA È PARTE DEL NOSTRO PERCORSO GUIDATO ALL’INSTALLAZIONE E CONFIGURAZIONE di HOME ASSISTANT su Mini PC/Intel NUC.

Abstract

Home Assistant Official Logo

Come spiegato in altre schede, Home Assistant è il uno tra gli HUB personali ideali per realizzare una propria domotica personale in modo organico e funzionale. Questo cruciale componente software ha la possibilità di essere installato su molti sistemi e in modalità diverse: sui mini-computer Mini PC/Intel NUC la modalità solitamente più caldeggiata dagli sviluppatori è la modalità “Home Assistant OS” (anche conosciuto come HassOS, o HASSIO), ovvero una modalità sì completamente automatica, la quale prevede però di dedicare il mini-computer all’uso esclusivo di Home Assistant (ed eventuali funzionalità accessorie offerte e gestite dal suo supervisore). In pratica, Home Assistant OS incarna contemporaneamente il sistema operativo, il gestore di supervisione e l’HUB vero e proprio, tutto in uno.

La presente guida illustra come perseguire proprio questo approccio.

Si parte

Premesse (importanti)

Ogni Mini PC/Intel NUC, come qualsiasi generico computer con architettura Intel x86 o ARM necessità, va da sé, di un sistema operativo. Solitamente tali mini-computer vengono consegnati con Microsoft Windows preinstallato: salvo volerlo conservare, è possibile installare al suo posto altri sistemi operativi come Linux Debian (vedi guida) e molti altri.

Home Assistant, amato HUB personale per le propria domotica personale, può essere installato in moltissime modalità diverse, come applicativo, come applicazione su container eccetera. Una delle modalità più pratiche per l’utente è la distribuzione Home Assistant OS, ovvero un pacchetto chiavi in mano (leggi approfondimento) composto da:

  • sistema operativo Alpine Linux;
  • supervisore delle applicazioni container;
  • Home Assistant Core istanziato come (prima) applicazione su container.

Questo pacchetto può essere installato come un unicum sul proprio Mini PC/Intel NUC in modo che gestisca sia gli aspetti più “bassi” legati all’hardware e altro (la componente sistema operativo) e in modo da offrire, con pochi click, il proprio HUB Home Assistant tramite l’uso del supervisore e dell’applicazione vera a propria, Home Assistant Core.

In sostanza, per dotarsi di questo pacchetto è necessario scaricarne da Internet l’immagine (un unico file contenente tutto) e “copiarla” per intero sull’hard disk del Mini PC/Intel NUC.

Per farlo, ci sono due strade, una cafòna e una più nobile, per così dire.

Descrizione procedura

Differentemente come si fa di solito con un sistema operativo come, ad esempio, il già citato Linux Debian (vedi guida di esempio), Home Assistant OS non può essere installato tramite un programma installer e relativa procedura guidata. Bisogna per l’appunto prendere l’immagine e copiarla, brutalmente “bit a bit”, sull’hard disk del computer target.

Per farlo i casi sono due:

  • modalità cafòna: si smonta fisicamente l’hard disk dal Mini PC/Intel NUC, si collega (tramite un adattatore) al computer d’appoggio e tramite esso si copia l’immagine sull’hard disk;
  • modalità nobile: si installa su una chiavetta USB un sistema operativo usato per avviare temporaneamente il Mini PC/Intel NUC, tramite il quale scaricare “al volo” l’immagine e copiarla così sul disco principale del mini-computer.

Noi perseguiremo la seconda strada, quella che, senza il bisogno di smontare alcunché (anche perché ricordiamoci che “aprire un computer” ne fa decadere, di fatto, la garanzia), permette di ottenere il risultato.

Scaricare il sistema operativo “live”

Prima di tutto, bisogna scaricare da internet (tramite il proprio computer d’appoggio) l’immagine “live” (ovvero che possa funzionare direttamente dalla chiavetta USB) di un sistema operativo Linux. Tranquilli: non ci sarà necessità di “imparare a usare Linux” (sebbene male non farebbe a nessuno).

Ecco dove scaricare l’immagine:

Se si è in dubbio quale dei due (se Intel o ARM), verificare sulla scheda tecnica del proprio mini-computer (o computer che sia). Comunque, 9 volte su 10 si tratta di architetture Intel 64bit.

Caricarlo sulla chiavetta USB

È possibile farlo tramite un tool grafico (subito a seguire) oppure da riga di comando (CLI), a scelta.

Tramite tool

L’opzione più semplice per caricare l’immagine appena scaricata sulla chiavetta USB è quella di utilizzare un semplice tool ad interfaccia grafica. In questa guida prenderemo in considerazione l’uso di Balena Etcher, un elementare tool per Windows, macOS e Linux.

La procedura quindi è la seguente:

  • scaricare e installare il software Balena Etcher sul computer di supporto;
  • collegare la chiavetta USB al computer di supporto;
  • eseguire Balena Etcher sul computer di supporto;
  • selezionare l’immagine appena scaricata;
  • selezionare la chiavetta USB;
  • cliccare “Flash!” per caricare l’immagine;
  • attendere il completamento del task.
Balena Etcher
l’interfaccia di Balena Etcher.

Terminata la procedura (la quale sarà più o meno veloce in base alla velocità dell’interfaccia USB), sarà possibile scollegare la chiavetta USB dal computer di appoggio e passare all’installazione vera e propria di Home Assistant OS.

Tramite riga di comando (CLI)

Dopo aver scaricato l’immagine, il suo caricamento sulla chiavetta USB è effettuabile anche via riga di comando.

Procedura MACApple Logo

Collegare la chiavetta USB al computer e, da terminale, eseguire:

diskutil list
per identificare il numero disco (NON la partizione, proprio l’unità fisica della chiavetta USB), per esempio disk4 e non disk4s1.
Smontare la chiavetta USB col comando:
diskutil unmountDisk /dev/disk<NUMERO_DISCO>
indicando il <NUMERO_DISCO> precedentemente identificato (e.g. diskutil unmountDisk /dev/disk4).
Effettuare l’installazione dell’immagine tramite il comando:
sudo dd bs=1m if=NOME_IMMAGINE of=/dev/rdisk<NUMERO_DISCO> conv=sync
dove NOME_IMMAGINE è il nome file dell’immagine da copiare e <NUMERO_DISCO> è il numero del disco precedentemente identificato (quindi la chiavetta USB), per esempio:
sudo dd bs=1m if=focal-desktop-amd64.iso of=/dev/rdisk4 conv=sync

Terminata la procedura (la quale sarà più o meno veloce in base alla velocità dell’interfaccia USB), sarà possibile scollegare la chiavetta USB e passare all’installazione vera e propria di Home Assistant OS.

Procedura LinuxLinux logo

Collegare la chiavetta USB al computer e, da terminale, eseguire:

lsblk
per identificare quale sia disco (NON la partizione, proprio l’unità fisica della chiavetta USB), e.g. sba.
Dopodiché è sufficiente utilizzare il comando:
dd bs=4M if=NOME_FILE of=/dev/sdX conv=fsync
dove NOME_IMMAGINE è il nome file dell’immagine da copiare e sdX è il disco precedentemente identificato (quindi la chiavetta USB), per esempio:
dd bs=4M if=focal-desktop-amd64.iso of=/dev/sdb conv=fsync

Terminata la procedura (la quale sarà più o meno veloce in base alla velocità dell’interfaccia USB), sarà possibile scollegare la chiavetta USB e passare all’installazione vera e propria di Home Assistant OS, a seguire.

vetrina indomus

Installazione di Home Assistant OS

Le connessioni

Innanzitutto, è necessario effettuare tutti i collegamenti minimi del mini-computer per il suo primo utilizzo.
La lista di ciò che serve inizialmente è:

  • una tastiera e un mouse USB;
  • un cavo HDMI; da collegarsi da una parte al mini-computer e da una parte sul monitor o alla TV;
  • un cavo ethernet per collegare il mini-computer al modem/router di casa e fornirgli così accesso a Internet (opzionale: volendo si potrà utilizzare direttamente la rete Wi-Fi);
  • un monitor o una TV con ingresso HDMI;
  • l’alimentatore del mini-computer in questione.

Tali connessioni potranno essere rimosse successivamente alla prima installazione (a parte l’alimentazione, ovviamente) , in quanto il server verrà amministrato da remoto tramite strumenti diversi, che vedremo in seguito.

Avvio preliminare

Per avviare il sistema operativo “live” è necessario che, all’avvio del mini-computer, esso provveda a utilizzare per il boot la chiavetta USB appena preparata anziché la partizione principale di cui di base è dotato.

Per far sì che ciò accada possono esserci due diverse strade:

  1. all’accensione, premere il tasto della tastiera che consente di scegliere “al volo” quale unità utilizzare per il boot (spesso “F2” o “F10”);
  2. all’accensione, accedere al menu del BIOS del mini-computer (solitamente premendo il tasto “CANC”) e indicare, sotto la voce “BOOT” che, in presenza di una chiavetta USB inserita in una delle porte, per il boot si usi quella primariamente quella anziché la partizione primaria.

Effettuare dunque una prova: inserire la chiavetta USB e, all’avvio, verificare se la primissima schermata che appare indichi quale tasto eventualmente poter premere per scegliere quale unità utilizzare all’avvio. Se indicato, premere il pulsante e poi provvedere a selezionare la propria chiavetta USB (la quale dovrebbe venire elencata in elenco).

Se questo non funziona, riavviare e premere subito il tasto “canc” o “ESC” (o quello indicato sicuramente nella schermata di avvio) per accedere al BIOS. Recarsi alla voce relativa alle gestione dell’avvio (solitamente “BOOT”)  e selezionare al primo posto, nell’elenco che vi si troverà, gli “USB device” (la voce può variare da modello a modello di Mini PC o Intel NUC).

Uscire salvando: se tutto sarà stato fatto correttamente, l’avvio verrà effettuato utilizzando correttamente il sistema operativo “live” presente sulla propria chiavetta USB. All’avvio, selezionare la prima voce, “Ubuntu“.

N.b. Sia che il boot funzioni come necessario sia si abbiano problemi all’avvio malgrado l’unità scelta sia corretta (e correttamente configurata con l’immagine del sistema operativo “live”), accedere al BIOS (come da punto 2. della lista sopra) e assicurarsi che:

  • si attivo UEFI come modalità boot;
  • sia disabilitatosecure boot“.

Una volta pre-avviato il sistema operativo, scegliere “Try Ubuntu“.
Si arriverà dunque alla scrivania di Ubuntu:

Ubuntu 20 - Desktop

a questo punto premere il “tasto windows” della tastiera (solitamente alla sinistra della barra spaziatrice), cercare “Terminal” nella buca di ricerca e cliccare infine sull’applicazione (icona) che apparirà.

Saremo dunque pronti a scaricare l’immagine di Home Assistant OS e a copiarne i contenuti sul disco di avvio del mini-computer.

Scaricare e copiare Home Assistant OS

A questo punto, dal prompt dei comandi del terminale appena avviato, eseguire il download e la decompressione dell’immagine di Home Assistant OS.

In primis eseguire:

sudo apt install curl

poi, in base al fatto di possedere un mini-computer con processore Intel x86-64 o ARM64, andrà scelto il comando appropriato:

Intel x86-64
curl -L 'https://indomus.it/link/home-assistant-os-x86-64' --output hassio.iso.xz
ARM 64
curl -L 'LINK-ALLA-IMMAGINE-CORRETTA' --output hassio.iso.xz

le casistiche sulle architetture ARM sono le più disparate. Trovare l’ultima immagine aggiornata per la propria consultando il repository ufficiale.

successivamente:

unxz hassio.iso.xz

per decomprimere l’immagine di Home Assistant OS (ci vorrà qualche istante), seguito da:

lsblk

per elencare e identificare quale sia disco target (NON la partizione), per esempio sdb (ovviamente parliamo del disco interno del mini-computer sul quale andare a copiare Home Assistant OS). Per identificarlo ci potrà aiutare la dimensione del disco stesso, indicata nei dettagli della schermata evocata col comando lsblk: se ci sono per esempio un disco da 4GB e uno da 128GB, il primo sarà la chiavetta mentre il secondo sarà, ovviamente, il disco interno del Mini PC.

ATTENZIONE: il comando che segue cancella il disco scelto e vi installa l’immagine di Home Assistant OS. Assicurarsi di aver effettuato il backup di eventuali dati presenti su tale disco, prima di procedere.

Per avviare la copia di Home Assistant OS sul disco interno è sufficiente utilizzare il comando:

sudo dd bs=4M if=hassio.iso of=/dev/sdX conv=fsync

dove sdX sarà il disco precedentemente identificato (eg. sdb).

Alla fine della procedura, eseguire:

sudo shutdown now

Infine, quando indicato a schermo scollegare la chiavetta USB e premere invio. L’unità si spegnerà.

Siamo dunque pronti a passare alla configurazione vera e propria di Home Assistant “Core”, ovvero l’HUB vero e proprio, a seguire.

Configurazione Home Assistant Core

Arrivati a questo punto abbiamo installato Home Assistant OS sul disco di boot del mini-computer, ma l’HUB vero e proprio non è ancora pronto. Per farlo è sufficiente (ma lo faremo a breve, non immediatamente) accendere il mini-computer e lasciare che si avvii dal disco interno e con la rete connessa.

In caso si voglia utilizzare il mini-computer collegandolo alla rete cablata (preferibile), è sufficiente proseguire oltre saltando il prossimo paragrafo, altrimenti prima è necessario attivare la Wi-Fi, come segue.

Attivazione Wi-Fi

Per utilizzare direttamente la rete Wi-Fi al posto della cablata, dobbiamo eseguire ancora un’ultimo, banale passo operativo. Prendere la precedentemente usata chiavetta USB, formattarla usando il proprio computer di appoggio in standard FAT32 (non exFAT) e battezzarla “CONFIG“.

Dopodiché, accedervi e creare una cartella chiamata “network“; una volta provveduto, accedervi e creare un file di testo (senza estensione) dal nome “my-network” contenente il seguente testo:

[connection]
id=my-network
uuid=72111c67-4a5d-4d5c-925e-f8ee26efb3c3
type=802-11-wireless

[802-11-wireless]
mode=infrastructure
ssid=MIO_SSID
# Uncomment below if your SSID is not broadcasted
#hidden=true

[802-11-wireless-security]
auth-alg=open
key-mgmt=wpa-psk
psk=MIA_PASSWORD

[ipv4]
method=auto

[ipv6]
addr-gen-mode=stable-privacy
method=auto

Personalizzare tale configurazione avendo cura di inserire il nome della propria Wi-Fi nel campo “ssid” e la password d’accesso nel campo “psk” (al posto di “MIO_SSID” e “MIA_PASSWORD“). Attenzione a non commettere errori.

Salvare e disconnettere la chiavetta USB. A questo punto inserirla sul minio-computer ancora spento (possibilmente in una porta USB 2.x, ovvero non quelle blu). Questo farà sì che al primo boot mini-computer entri automaticamente – e per sempre – dentro la propria Wi-Fi. La chiavetta, dopo il primo boot, potrà essere rimossa.

Avvio e prima configurazione

Ora siamo davvero pronti per accendere il mini-computer il quale, avviandosi da disco interno (e quindi dal sistema operativo Alpine Linux di Home Assistant OS), provvederà a scaricare dalla rete Internet (via connessione cablata o Wi-Fi) i pacchetti che servono per configurare Home Assistant Core, l’HUB vero e proprio.

Al temine del primo avvio, sul monitor/TV connesso al mini-computer si arriverà a una schermata come questa:

HassOS up and running

la quale indica l’indirizzo IP (IPv4 e IPv6) al quale collegarsi per il primo accesso, spiegato nel paragrafo che segue.

N.b. Se si fosse adottata la configurazione Wi-Fi ed essa non dovesse funzionare al primo avvio (ovvero nessun IP assegnato alla voce IPv4) – provvedere – sempre con la chiavetta inserita contenete la configurazione corretta – ad eseguire i seguenti due comandi su terminale:

ha os import
ha host reboot

al riavvio, l’host dovrebbe accedere alla Wi-Fi.

Primo accesso su Home Assistant

Come detto, all’atto della prima accensione del mini-computer Home Assistant Core avvierà la fase automatica di prima installazione, la quale impiegherà qualche minuto (in base alla velocità di connessione Internet, alla velocità del mini-computer).

La procedura iniziale sarà di fatto completa quando ci si riuscirà a collegare, tramite il proprio browser sul computer di appoggio, al seguente indirizzo:

http://homeassistant.local:8123

dovrebbe infatti apparire una schermata di questo tipo:

HASSIO Waiting screen

N.b. In caso non ci si riesca a collegare, assicurarsi che sul proprio router sia attivo il multicast DNS (mDNS). Se non lo è, la risoluzione del nome “homeassistant.local” non va a buon fine e il browser non riesce a collegarsi: la soluzione, per l’appunto, è quella di attivare il multicast (che provvede a questa cosa). Alternativamente è comunque sempre possibile collegarsi all’indirizzo diretto, ovvero http://INDIRIZZO_IP_DEL_COMPUTER:8123, dove l’indirizzo IP è quello assegnato dal router al mini-computer e indicato dalla console.

Al termine del completamento della fase di primissima installazione dovrebbe apparire un sito analogo a questo:

Home Assistant - onboarding - creazione utente
Il quale consente di impostare le prime, elementari e personali informazioni di “onboarding relative alla propria domotica.
Complimenti! Home Assistant è ora operativo.

Rifinitura

A questo punto Home Assistant è sì pronto, ma ci sono alcuni perfezionamenti, i quali derivano dall’installazione delle componenti aggiuntive che consideriamo “imprescindibili, da attuare.

A prescindere, rimane sempre utile consultare la scheda che illustra tutte le cose da fare dopo questa prima installazione.

Aggiornamento

Tutte le modalità di aggiornamento per Home Assistant Core sono riassunte su questa scheda ad hoc:

Utilità: come aggiornare Home Assistant

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

Dicci la tua o poni la tua domanda nei commenti qui sotto!

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.
Telegram News Channel