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à: medio
CONCETTI AFFRONTATI:
  • installazione e configurazione software
COMPONENTI SOFTWARE UTILIZZATE
PREREQUISITI
  • Rete domestica connessa ad Internet
DISPOSITIVI FISICI UTILIZZATI
GUIDA maggiormente DEDICATA A utenti:
Tutti gli ambienti
NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e 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;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.
Revisione guida: 2.7

😊  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.

N.b. Abbiamo spiegato sulla scheda dedicata ai primi passi su Home Assistant quali siano i dispositivi “tipo” sui quali utilizzare Home Assistant. Nello specifico, abbiamo testato con risultati positivi i seguenti Mini PC:

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.

N.b. Questa guida porta alla cancellazione del disco primario del Mini PC (salvo usare un disco secondario). In caso si tratti di un computer nuovo, si consiglia – prima di proseguire – di salvarsi da parte la licenza Windows con la quale probabilmente esso è arrivato e alla quale si ha diritto. Per farlo è necessario avviare almeno una volta Windows, terminare la procedura di configurazione (magari accedendo al cloud Microsoft col proprio account, così da salvare la licenza anche in cloud) per salvarsi da parte il numero di licenza tramite l’esecuzione del comando “slmgr/dli” da prompt dei comandi.

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 volgare 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à volgare: 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 per poi copiarla 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.

N.b. Attenzione: il caricamento dell’immagine presso la chiavetta USB cancellerà qualsiasi precedente contenuto di quest’ultima. La chiavetta USB deve essere di una dimensione non inferiore ai 16GB.
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=ubuntu-xx.xx-desktop-legacy-amd64 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=ubuntu-xx.xx-desktop-legacy-amd64 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 - Offerte del giorno

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 (anche wireless);
  • un cavo HDMI; da collegarsi da una parte al mini-computer e da una parte sul monitor o alla TV;
  • un monitor o una TV con ingresso HDMI;
  • 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);
  • 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.

N.b. Quello “che si verdrà sullo schermonon sarà, infatti, l’interfaccia principale di Home Assistant, ma solo la console del sistema operativo, da usarsi in casi molto rari. Home Assistant, come vedremo, si gestisce via browser e altro.

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, “Try or install 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 disabilitata, eventualmente, la funzionalità “SECURE BOOT“.

Una volta pre-avviato il sistema operativo, nel menu scegliere_

  • lingua Inglese, (c’è un motivo);
  • lingua della tastiera italiana;
  • collegarsi alla rete Internet (via cablata o Wi-Fi, è uguale)

infine scegliere Try Ubuntu“.

Si arriverà dunque alla scrivania di Ubuntu:

Ubuntu 24 - Desktop

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

Collegarsi alla rete

Affinché i comandi che seguiranno funzionino è strettamente necessario che l’host Ubuntu appena avviato abbia accesso a Internet.

Prima di procedere oltre aprire dunque il browser di Ubuntu (Firefox) e verificare che navighi: im caso negativo, qualora si utilizzi connessione via cavo, verificare quest’ultima. In caso invece si voglia utilizzare la rete wireless Wi-Fi, cliccare in alto a destra, selezionare Wi-Fi e collegarsi alla propria rete; completata questa configurazione, verificare nuovamente tramite browser che Ubuntu navighi normalmente su Intentet.

Non procedere oltre fino ad aver appurato che l’host Ubuntu sia connesso a Internet.

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.

N.b. La tastiera di default di Ubuntu sarà inglese. Per impostare quella italiana – e quindi facilitare l’immissione dei comandi che seguono – recarsi tramite il menu di Ubuntu alla voce “Settings“, “Keyboard“, rimuovere tutte le tastiere (inglesi) presenti e inserire solo quella italiana.

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à.

Tramite il terminale così aperto, eseguire:

sudo apt update -y && sudo apt install curl -y

e attendere il completamento dell’installazione del software.
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
sudo curl -L 'https://indomus.it/link/home-assistant-os-x86-64' --output /var/crash/hassos.iso.xz
ARM 64
sudo curl -L 'LINK-ALLA-IMMAGINE-CORRETTA' --output /var/crash/hassos.iso.xz

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

successivamente:

cd /var/crash
sudo unxz hassos.iso.xz

per decomprimere l’immagine di Home Assistant OS (ci vorrà qualche istante).
Al termine, usare:

lsblk

per elencare e identificare quale sia disco target (NON la partizione, proprio il disco): 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 16GB 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 lo sovrascrive utilizzando l’immagine di Home Assistant OS. Assicurarsi di aver effettuato il backup di eventuali dati presenti su tale disco, prima di procedere, in caso i precedenti contenuti possano servire in futuro, quali che siano.

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

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

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

N.b. Non usare per esempio sda1, sdb2 o altro: quelle sono partizioni. Il disco intero è identificato dalla sola lettera, eg. sda.

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“.

N.b. In alternativa, è possibile collegare l’host a Internet via cavo Ethernet e, dopo il primo avvio, configurare l’accesso alla Wi-Fi tramite interfaccia grafica, saltando così il paragrafo corrente.

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.

N.b. In caso l’host non si avviasse (per esempio con errori tipo “Reboot and Select proper Boot device or Insert Boot Media in selected Boot device and press key“), effettuare l’avvio preliminare tramite Ubuntu e, nuovamente da riga di comando, eseguire il seguente comando:

efibootmgr --create --disk /dev/sdX --part 1 --label "HAOS" \ --loader '\EFI\BOOT\bootx64.efi'

avendo cura di sostituire sdX con il disco precedentemente identificato come quello di boot (eg. sdb) – dopodiché ritentare l’avvio dell’host.
Altre indicazioni sono disponibili presso la documentazione ufficiale di Home Assistant.

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 contenente 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:

Preparing Home Assistant
la schermata di attesa di Home Assistant.
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 IPv4 è quello assegnato dal router al mini-computer e indicato in console.

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

Home Assistant - onboarding v2 - benvenuto
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.
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. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa.