Home Assistant est un excellent logiciel domotique à code source ouvert qui peut être installé entre autres sur un Raspberry Pi.
Dans les faits, il peut :
Nous travaillerons ici avec la version installée sur HassOS.
Pour installer Home Assistant selon cette technique, il faut installer une image de HassOS sur la carte micro SD. L'image est disponible directement dans Raspberry Pi Imager.
Une fois le Pi démarré, HassOS téléchargera puis installera automatiquement la toute dernière version de Home Assistant.
Notez que la procédure d'installation de Home Assistant est dite headless, c'est-à-dire que vous n'avez pas besoin de brancher écran ni clavier au Raspberry Pi. La seule utilité d'un écran serait de voir l'état d'avancement de l'installation, mais ce n'est pas nécessaire.
Voici les sections couvertes dans cette procédure :
▼Publicité Le texte se poursuit plus bas
Commencez par prendre connaissance de la fiche suivante afin d'acquérir les bonnes composantes de base : Un Raspberry Pi comme unité centrale.
Pour installer le système d'exploitation HassOS sur votre Rapsberry Pi :
Ceci est normal, cliquez sur
.
Puisque la carte micro SD n'est pas lisible sur certains ordinateurs, une technique a été prévue pour effectuer les configurations initiales, par exemple le réseau sans fil, le serveur DNS et l'adresse IP statique.
Il s'agit de placer les fichiers de configuration sur une clé USB qui répond à des règles précises :
Les configurations disponibles sont détaillées sur cette fiche.
Voici un exemple de base :
[connection]
id=my-network
uuid=votre-uuid-ici
type=802-11-wireless
[802-11-wireless]
mode=infrastructure
ssid=NOM-DU-RESEAU
# Uncomment below if your SSID is not broadcasted
#hidden=true
[802-11-wireless-security]
auth-alg=open
key-mgmt=wpa-psk
psk=MOT-DE-PASSE-DU-RESEAU
[ipv4]
method=auto
[ipv6]
addr-gen-mode=stable-privacy
method=auto
Et voici un exemple plus élaboré :
[connection]
id=my-network
uuid=votre-uuid-ici
type=802-11-wireless
[802-11-wireless]
mode=infrastructure
ssid=NOM-DU-RESEAU
# Uncomment below if your SSID is not broadcasted
#hidden=true
[802-11-wireless-security]
auth-alg=open
key-mgmt=wpa-psk
psk=MOT-DE-PASSE-DU-RESEAU
[ipv4]
method=manual
address=192.168.1.145/24;192.168.1.1
dns=xxx.xxx.xxx.xxx;8.8.8.8;8.8.4.4;
[ipv6]
addr-gen-mode=stable-privacy
method=auto
Remarquez que le réseau sans fil et l'adresse IP statique peuvent aussi être configurés via l'interface Web de Home Assistant une fois que l'installation est terminée (vous aurez cependant besoin initialement d'une connection réseau câblée).
Pour pouvoir vous connecter au Raspberry Pi via SSH et ainsi avoir un accès complet du système de fichiers du Raspberry Pi, vous devez générer sur votre ordinateur la paire de clés publique et privée puis copier la clé publique dans un fichier nommmé authorized_keys à la racine du volume CONFIG.
Suivez bien les instructions qui suivent, un petit écart fera en sorte que ça ne fonctionne pas!
Sous Mac ou Linux, travaillez directement dans une fenêtre Terminal.
Sous Windows, pour effectuer les mêmes manipulations, vous devez ouvrir une fenêtre Terminal (et non CMD) ou PowerShell. Vous pouvez également installer la console Git Bash (https://git-scm.com/downloads).
Pour vérifier si les clés SSH ont déjà été générées, entrez cette commande sur votre ordinateur :
ls ~/.ssh
Nous allons utiliser l'algorithme Ed25519 qui est l'algorithme recommandé de nos jours.
La clé publique est stockée dans le fichier id_ed25519.pub et la clé privée, dans le fichier id_ed25519.
Si les clés n'existent pas, vous devez les générer les clés à l'aide de cette commande :
ssh-keygen -t ed25519 -C 'moncourriel@mondomaine.com'
Acceptez l'emplacement par défaut (sous Windows : C:\Users\MonNom\.ssh\id_ed25519, sous Mac : /Users/monnom/.ssh/id_ed25519).
Afin d'augmenter la sécurité, vous pouvez entrer un mot de passe lorsqu'on vous demande un passphrase. Par contre, ceci obligera à entrer ce mot de passe à chaque connexion. Vous pouvez donc appuyer sur Entrée sans entrer de mot de passe.
Il faut maintenant copier la clé publique dans un fichier à la racine du volume CONFIG.
La technique sera différente selon votre système d'exploitation.
Sous macOS ou Linux, le fichier sera créé et rempli par cette commande :
cat /Users/monnom/.ssh/id_ed25519.pub > /Volumes/CONFIG/authorized_keys
Sous Windows, la redirection (caractère >) cause parfois un mauvais fonctionnement (saut de ligne superflu à la fin de la clé, caractères représentés par des rectangles en début de fichier, caractères qui ressemblent à du chinois).
Il est donc préférable de procéder comme suit :
Attention : vous devez utiliser un éditeur adapté à ce type de tâche, par exemple Geany.
cat C:\Users\MonNom\.ssh\id_ed25519.pub
Le système d'exploitation est maintenant installé et les configurations de bases sont réalisées.
Passons maintenant à l'installation de Home Assistant.
Sur certains réseaux, le service NTP (protocole de diffusion du temps en réseau ou, en anglais, Network Time Protocol) ne fonctionne pas, ce qui empêche le Pi d'avoir la bonne date et la bonne heure. Ceci peut empêcher le bon fonctionnement de l'installation.
Si vous avez un doute sur les configurations de votre réseau, branchez un clavier et un écran au Pi.
Remarquez que si vous ne disposez pas d'un écran et d'un clavier, il est possible d'effectuer certaines vérifications à l'aide d'une connexion SSH mais le tout est plus facile avec écran et clavier.
Vous devriez voir cet écran dès que HassOS est rendu assez loin dans son travail d'installation.
Waiting for the Home Assistant CLI to be ready...
_ _ _ _ _
| | | | /\ (_) | | | |
| |__| | ___ _ __ ___ ___ / \ ___ ___ _ ___| |_ __ _ _ __ | |_
| __ |/ _ \| '_ \ _ \ / _ \ / /\ \ / __/ __| / __| __/ _\ | '_ \| __|
| | | | (_) | | | | | | __ / / ____ \\__ \__ \ \__ \ || (_| | | | | |_
|_| |_|\___/|_| |_| |_|\___| /_/ \_\___/___/_|___/\__\__,_|_| |_|\__|
Welcome on Home Assistant command line.
Waiting for Supervisor to start up...
System information
IPv4 Addresses for eth0:
IPv4 Adresses for wlan0: 192.168.1.145/24
IPV6 Adresses for wlan0: fe80:fde8:195c:eb0b:c18a/64
OS Version: Home Assistant OS 9.0
Home Assistant Core: 2022.9.7
Home Assistant URL: http://homeassistant.local:8123
Observer URL: http://homeassistant.local:4357
ha >
À partir de l'invite ha >, passez au terminal HassOS :
login
Lorsque vous voyez l'invite #, vous pouvez entrer cette commande :
date
Si la date n'est pas valide, prenez le temps de l'ajuster.
date -s "2022-10-17 08:50:00"
Pour installer Home Assistant, HassOS aura besoin d'accéder à Internet.
Prenez le temps de vérifier si vos configurations sont bonnes :
ping 8.8.8.8
ping google.com
nmcli con show
Le réseau peut également être disponible par câble. Vous aurez alors une ligne dont la première colonne affiche Wired connection 1 et la dernière, eth0.
NAME UUID TYPE DEVICE
Wired connection 1 85f43ecc-5f84-303c-8510-755f0b81e131 ethernet eth0
my-network-cegep bdc2edc4-2543-4d11-b8b3-cfb6b0b18b0e wifi wlan0
my-network-maison 84cd8755-2349-464e-9540-6df10ba7aef6 wifi --
Dès que le Pi est branché, qu'il a un accès réseau et que son horloge est correctement configurée, HassOS pourra finaliser l'installation.
Soyez patients, cette opération peut prendre jusqu'à 20 minutes!
Pendant que l'installation est en cours, Vous pouvez accéder à l'interface Web de Home Assistant pour voir la progression (voir détails plus bas).
Une fois l'installation complétée, vous pouvez retirer la clé USB qui contient les configurations. Vous n'en aurez plus besoin puisque les fichiers qu'elle contient ont été copiés sur le Pi.
L'accès se fait via un navigateur sur votre ordinateur ou via l'application Home Assistant sur votre téléphone.
Dans votre navigateur ou dans l'application Home Assistant, entrez l'un des URL suivants :
Notez que si vous travaillez dans un environnement qui comprend plusieurs installations de Home Assistant, par exemple une salle de classe, seule la version avec l'adresse IP fonctionnera.
Pendant que HassOS installe Home Assistant, vous obtiendrez un message à cet effet :
Pendant l'installation, vous pouvez cliquer sur le point bleu afin de voir la journalisation (log) des opérations en cours.
Les informations qui apparaissent sont également enregistrées dans un fichier journal que vous pouvez consulter à partir du terminal HassOS à l'aide de cette commande :
ha supervisor logs
Dans le terminal HassOS, Vous saurez que l'installation est terminée quand vous verrez cette ligne au bas du fichier journal.
INFO (MainThread) [supervisor.homeassistant.core] Detect a running Home Assistant instance
INFO (SyncWorker_2) [supervisor.docker.interface] Cleanup images: ['ghcr.io/home-assistant/raspberrypi3-homeassistant:landingpage']
Dans l'interface Web, vous saurez que l'installation est terminée quand vous verrez l'écran de bienvenue.
Cliquez sur
puis suivez les étapes pour finaliser la configuration initiale de Home Assistant.« Network ». Github - home-assistant/operating-system. https://github.com/home-assistant/operating-system/blob/dev/Documentation/network.md
« Debugging the Home Assistant Operating System ». Home Assistant. https://developers.home-assistant.io/docs/operating-system/debugging/
« FAQ ». Home Assistant. https://www.home-assistant.io/faq
« Why does Home Assistant have so many names? ». Home Assistant Guide. https://home-assistant-guide.com/2020/09/22/why-does-home-assistant-have-so-many-names/
« Guide: Connecting Pi with Home Assistant OS to wifi (or other networking changes) ». Home Assistant. https://community.home-assistant.io/t/guide-connecting-pi-with-home-assistant-os-to-wifi-or-other-networking-changes/98768
Site fièrement hébergé chez A2 Hosting.