
ESPHome sur Docker et home assistant, donner vie à vos projets DIY !
ESPHome c’est quoi ?
Tout d’abord, bonjour et bienvenue sur mon blog Technologie Geek ! Aujourd’hui, voyons ensemble comment installer ESPHome sur Docker et Home Assistant. ESPHome est un framework open source qui vous facilite la création de logiciels pour les microcontrôleurs ESP8266 et ESP32. Ensuite, Il vous permet de programmer ces microcontrôleurs en utilisant la syntaxe YAML, vous évitant ainsi du codage plus complexe. Enfin, vous pouvez facilement contrôler tous types de capteurs tel que des sondes de températures, d’humidité, mais aussi des relais, des interrupteurs…
ESPHome est idéal pour les projets domotiques DIY (Faites le vous même). Que vous soyez un débutant ou bien un développeur expérimenté, il vous offre une solution flexible pour créer des objets connectés sur mesure. ESPHome est pris en charge par une communauté active, ce qui signifie que vous bénéficiez de mises à jour fréquentes, ainsi que de nouvelles fonctionnalités et d’une documentation complète. En installant ESPHome sur Docker vos modules sont automatiquement découverts par Home Assistant.
Les Prérequis :
- Premièrement, vous devez disposer d’une installation de Home Assistant.
- Ensuite, et comme d’habitude j’utilise Portainer.
- Le logiciel ESP Flasher.
- Pour finir, vous devez avoir un ESP32 ou un ESP8266.
Installation et test de ESPHome sur Docker et Home Assistant !
1. ESPHome sur Docker :
Pour commencer, rendez-vous sur Portainer et sélectionner votre environnement local. Ensuite, aller dans « Stacks » puis cliquer sur « Add stack » en haut à droite.
Maintenant dans « Nane » taper le nom de votre stack, pour ma part se sera « esphome » puis coller le code ci-dessous en ajustant le volume, l’identifiant ainsi que le mot de passe et cliquer sur « deploy the stack » :
version: '3.8'
services:
esphome:
container_name: esphome
image: esphome/esphome
volumes:
- /opt/docker/esphome/config:/config
- /etc/localtime:/etc/localtime:ro
restart: always
privileged: true
network_mode: host
environment:
- USERNAME=test
- PASSWORD=ChangeMe
- ESPHOME_DASHBOARD_USE_PING=true
ports:
- 6052:6052
Explication du code :
- Premièrement, version: ‘3.8’ est la version du moteur Docker. Connectez vous en ssh et taper « docker -v ». Ensuite, pour plus d’info aller à la page Docker versioning.
- services: Démarre un nouveau service.
- esphome: Est le nom du service.
- Ensuite, container_name: esphome, est le nom du conteneur.
- image: esphome/esphome, est le lien vers l’image utilisée. Rendez-vous sur Docker Hub.
- volumes: sont vos volumes pour la persistance des données ainsi que l’accés en lecture à la date et l’heure de votre système hôte.
- restart: always, le conteneur doit redémarré dans tout les cas.
- privileged: true, votre conteneur à les droits « root » sur les périphériques de votre système hôte.
- network_mode: host, la pile réseau de ce conteneur n’est pas isolée de l’hôte Docker.
- environment: Nous déclarons les variables d’environnement.
- Enfin, ports: le port de votre conteneur qui est exposé.
2. ESPHome dans Home Assistant :
Premièrement, ajoutons maintenant un raccourci ESPHome dans Home Assistant. Pour cela, rendez-vous dans « Paramètres/Tableau de bord », puis cliquer sur « Ajouter un tableau de bord/Page Web ».
Deuxièmement, dans la fenêtre qui vient de s’ouvrir, renseigner l’URL de l’interface graphique d’ESPHome « http://ip-de-votre-serveur:6052 » pour ma part « http://192.168.1.226:6052 ».
Ensuite, sur l’écran suivant, vous devez donner un titre ainsi que sélectionner une icône et cliquer sur « créer ».


3. Création d’un appareil avec ESPHome :
Pour commencer, cliquer sur ESPHome dans le menu latéral de Home Assistant, puis identifiez vous avec le nom d’utilisateur et le mot de passe que vous avez mis dans votre Docker compose. Ensuite, cliquer sur « NEW DEVICE », puis sur « CONTINUE ». Enfin, sur les écrans suivant donner un nom à votre module, renseigner vos informations de connexion pour le WiFi et sélectionner le type d’ESP.


Ça y est votre premier appareil est créé ! ESPHome vous affiche votre clé de chiffrement pour ce module, vous la trouverez également dans le fichier de configuration. Maintenant appuyer sur « SKIP », puis sur « EDIT ». Nous allons ajouter un « switch » ainsi qu’une adresse IP fixe dans notre fichier YAML. Sans cette IP fixe vous n’aurez pas le retour d’information dans ESPHome. Pour ma part j’ai connecté une LED sur la PIN 5 de mon ESP32, vous devez ajuster les paramètres « switch et WiFi » selon votre matériel !
manual_ip:
static_ip: 192.168.1.113
gateway: 192.168.1.1
subnet: 255.255.255.0
dns1: 192.168.1.1
switch:
- platform: gpio
name: "ESP"
pin: 5
4. ESPHome sur Docker, flasher votre module :
Pour flasher la première fois votre appareil, vous devez télécharger le firmware et connecter votre ESP sur votre ordinateur. Par la suite vous pourrez le faire par le WiFi. Cliquez sur les trois points, puis sur « Install » et « Manuel download » et enfin patienter un moment. Lorsque la compilation et terminer, télécharger le firmware « Factory format ».


Maintenant, rendez-vous à l’adresse https://web.esphome.io. Vous devez utiliser un navigateur compatible avec websocket, pour ma part j’utilise EDGE. Une fois votre ESP connecté sur votre PC, appuyer et maintenez le bouton « boot » jusqu’au lancement du flash ! Pour rappel, l’appuis sur ce bouton met le GPIO0 la masse. Ensuite, cliquer sur « CONNECT« , sélectionner votre port COM, puis appuyer sur « Se connecter ».
Enfin, sélectionner votre fichier bin et cliquer sur « INSTALL ».


5. Connexion de votre module ESPHome dans Home Assistant sur Docker :
Rendez vous dans Home Assistant puis dans « Paramètres/Appareils et Services/Ajouter une intégration » et chercher ESPHome. Ensuite, dans la fenêtre, renseigner l’adresse IP de votre module et valider. Enfin sur l’écran suivant copier la clé de chiffrement générée lors de la création de votre fichier dans ESPHome.


Il ne vous reste plus qu’à sélectionner la pièce à laquelle votre appareil appartient !
-
ESPHome sur Docker et Home Assistant -
Comment installer ioBroker sur Docker -
Home Assistant sur votre NSPanel Pro -
Flasher le NSPanel avec Tasmota et Lovelace-ui -
Un assistant vocal intégré à Home Assistant -
Flash Sonoff Zigbee Bridge Pro
2 réponses à “ESPHome sur Docker et Home Assistant”
Merci pour les tutos!
J’ai bien galéré sur celui ci, il ne faut plus passer par configuration.yaml pour ajouter ESPHome à l’interface.
https://github.com/home-assistant/home-assistant.io/issues/32162Oui, c’est gérer dans Home Assistant, J’ai oublier de faire les modifications, merci !
Laisser un commentaire