Bonjour,
Mon retour d’expérience
Générer des messages MQTT Auto Discovery pour une reconnaissance automatique des mes cateurs (Température / Humidité / Pression atmosphérique)
Ma configuration
[center]
System Information
| version | core-2026.1.3 |
|---|---|
| installation_type | Home Assistant OS |
| dev | false |
| hassio | true |
| docker | true |
| container_arch | amd64 |
| user | root |
| virtualenv | false |
| python_version | 3.13.11 |
| os_name | Linux |
| os_version | 6.12.67-haos |
| arch | x86_64 |
| timezone | Europe/Paris |
| config_dir | /config |
Home Assistant Community Store
| GitHub API | ok |
|---|---|
| GitHub Content | ok |
| GitHub Web | ok |
| HACS Data | ok |
| GitHub API Calls Remaining | 5000 |
| Installed Version | 2.0.5 |
| Stage | running |
| Available Repositories | 2850 |
| Downloaded Repositories | 3 |
Home Assistant Cloud
| logged_in | false |
|---|---|
| can_reach_cert_server | ok |
| can_reach_cloud_auth | ok |
| can_reach_cloud | ok |
Home Assistant Supervisor
| host_os | Home Assistant OS 17.1 |
|---|---|
| update_channel | stable |
| supervisor_version | supervisor-2026.03.0 |
| agent_version | 1.8.1 |
| docker_version | 29.1.3 |
| disk_total | 28.6 GB |
| disk_used | 9.0 GB |
| nameservers | 192.168.1.1, 2a02:842a:2ef:8201::1 |
| healthy | true |
| supported | true |
| host_connectivity | true |
| supervisor_connectivity | true |
| ntp_synchronized | true |
| virtualization | |
| board | generic-x86-64 |
| supervisor_api | ok |
| version_api | ok |
| installed_addons | File editor (5.8.0), ESPHome Device Builder (2026.1.5), Z-Wave JS (0.29.1), Mosquitto broker (6.5.2), Terminal & SSH (10.0.2), Get HACS (1.3.1) |
Dashboards
| dashboards | 4 |
|---|---|
| resources | 1 |
| views | 2 |
| mode | storage |
Network Configuration
| adapters | lo (disabled), enp1s0 (enabled, default, auto), hassio (disabled), docker0 (disabled), veth8a25c6c (disabled), veth1037ac9 (disabled), veth2914a56 (disabled), vethab737d5 (disabled), veth7bb966f (disabled), veth6794469 (disabled), vetheb1b6a1 (disabled), vethd0c2475 (disabled), veth1fce8ca (disabled), vethdaa7f29 (disabled) |
|---|---|
| ipv4_addresses | lo (127.0.0.1/8), enp1s0 (192.168.1.90/24), hassio (172.30.32.1/23), docker0 (172.30.232.1/23), veth8a25c6c (), veth1037ac9 (), veth2914a56 (), vethab737d5 (), veth7bb966f (), veth6794469 (), vetheb1b6a1 (), vethd0c2475 (), veth1fce8ca (), vethdaa7f29 () |
| ipv6_addresses | lo (::1/128), enp1s0 (2a02:842a:2ef:8201:1a0d:f057:4bcc:780d/64, fe80::f29f:32bf:9b64:3599/64), hassio (fd0c:ac1e:2100::1/48, fe80::50fb:43ff:fe37:fbc5/64), docker0 (fe80::9c6b:adff:fe81:a78/64), veth8a25c6c (fe80::64cd:cff:fe2e:c94e/64), veth1037ac9 (fe80::80c3:51ff:fed8:a08e/64), veth2914a56 (fe80::3cf1:7dff:fef7:ab87/64), vethab737d5 (fe80::cc30:9eff:fed4:5141/64), veth7bb966f (fe80::5cfb:30ff:fe45:302a/64), veth6794469 (fe80::580f:34ff:fe44:707c/64), vetheb1b6a1 (fe80::d492:d0ff:fe74:4e87/64), vethd0c2475 (fe80::89f:5eff:feb1:c6e8/64), veth1fce8ca (fe80::70ac:c1ff:fec2:6c96/64), vethdaa7f29 (fe80::a0d4:94ff:fee4:a92a/64) |
| announce_addresses | 192.168.1.90, 2a02:842a:2ef:8201:1a0d:f057:4bcc:780d, fe80::f29f:32bf:9b64:3599 |
Recorder
| oldest_recorder_run | 4 mars 2026 à 13:28 |
|---|---|
| current_recorder_run | 15 mars 2026 à 08:57 |
| estimated_db_size | 132.81 MiB |
| database_engine | sqlite |
| database_version | 3.49.2 |
Mon capteur GY-21P est sous ESPEasy:
Firmware : ESP_Easy_mega_20260108_normal_ESP8266_4M1M.bin
Flash : esptool.py -p /dev/ttyUSB0 write_flash 0x00000 ESP_Easy_mega_20260108_normal_ESP8266_4M1M.bin
En le sauvegardant, j’ai une version que je peux re-installer à l’identique en cas de panne de mon module esp8266
Pour la configuration ESPEasy , il y plein de tuto je passe rapidement:
-
Connexion au réseau WiFi
-
Advanced : Serveur de temps, DST, Time Zone Offset : Si vous voulez …
-
A faire obligatoirement
- Unit Name : Weather
- Unit Number : 4 (autre que 0)
- I2C
- GPIO ⇄ SDA: GPIO-4 (D2)
- GPIO → SCL: GPIO-5 (D1)
-
Controleur : Home Assistant (openHAB) MQTT
- A connecteur au MQTT Mosquito installé sur mon Home Assistant (user/password)
- Activer le flag Retain
-
Tools / I2C Scanner:
-
Déclaration des deux capteurs:
-
Vérification avec MQTT Explorer (Connecté au MQTT Mosquito de Home Assistant):
A partir de là il y a deux solutions:
1 - Déclarer chaque capteur dans la section mqtt de configuration.yaml
2 - Envoyer des messages d’Auto Discovery
J’ai choisi l’option 2 et après avoir pas mal galéré, c’est magique:
Rules Set 1 :
On MQTT#Connected Do
// <discovery_prefix>/<component>/<object_id>/config,<json_config>
Publish, homeassistant/sensor/%sysname%_temperature/config,'{ "name": "%sysname%_temperature","unique_id" : "%sysname%_temperature", "icon": "mdi:thermometer","state_topic":"Weather/SI7021/Temperature","device_class":"temperature","unit_of_measurement": "°C"}'
Publish, homeassistant/sensor/%sysname%_humidity/config,'{ "name": "%sysname%_humidity","unique_id" : "%sysname%_humidity", "icon": "mdi:water-percent","state_topic":"Weather/SI7021/Humidity","device_class":"humidity","unit_of_measurement": "%"}'
Publish, homeassistant/sensor/%sysname%_pressure/config,'{ "name": "%sysname%_pressure","unique_id" : "%sysname%_pressure", "icon": "mdi:gauge","state_topic":"Weather/BMP280/Pressure","device_class":"pressure","unit_of_measurement": "hPa"}'
Endon
- Re démarrer ESPEasy pour que l’envoi des 3 messages soit effectué
- Pour chaque capteur le static_topic doit pointer sur la valeur de chaque capteur
- Il est impératif de déclarer « unique_id » (identique au name) pour pouvoir attribuer ce capteur à une pièce
- Faites une petite vérification avec MQTT Explorer de vos 3 messages dans homeassistant
- Retained doit être activé
- Le json dans la partie droite doit être correctement décodé et colorié (si ce n’est pas le cas, le json est mal formatté : vérifier les guillements, les virgules, les deux points)
Et après si comme moi vous avez conservé la Vue d’ensemble en mode automatique, les 3 capteurs apparaissent tout seul dans la partie Capteur sans aucune configuration de Home Assistant
Bon usage




