Capteur 4-en-1 BME680 (Temp, Hum, Pression, COV)
Introduction
Après les écrans, revenons aux capteurs avec un modèle très complet : le BME680. Ce capteur “4-en-1” de Bosch est capable de mesurer non seulement la température et l’humidité, mais aussi la pression atmosphérique et les composés organiques volatils (COV), ce qui en fait un excellent indicateur de la qualité de l’air intérieur (QAI).
Cet article vous guidera pour intégrer ce capteur puissant à votre domotique via ESPHome et Home Assistant, vous permettant de surveiller de près votre environnement.
Le capteur BME680
Le BME680 est un capteur environnemental numérique qui combine quatre mesures en un seul boîtier compact. Son principal atout est son capteur de gaz à oxyde métallique (MOX) qui peut détecter une large gamme de composés organiques volatils (COV) comme l’éthanol, l’acétone, le formaldéhyde, etc. Une concentration élevée de COV peut affecter le confort et la santé.

L’indice de qualité de l’air (IAQ ou AQI) calculé par la bibliothèque du BME680 donne une valeur simple à interpréter pour juger de la qualité de l’air ambiant.
Caractéristiques techniques
- Tension d’alimentation : 3.3V à 5.0V.
- Interface de communication : I2C et SPI.
- Plages de mesure :
- Température : -40 à +85°C
- Humidité : 0 à 100% HR
- Pression : 300 à 1100 hPa
- Résistance du gaz : variable (pour le calcul des COV)
Installation
Les composants nécessaires sont :
- 🛒 Un module capteur BME680 (interface I2C) ~5-10€
- 🛒 Un WEMOS D1 Mini ou un autre ESP32/ESP8266 ~2-3€
- 🛒 Quelques câbles Dupont
1. Câblage
Comme pour l’écran OLED, nous utilisons l’interface I2C qui simplifie grandement le câblage.
Sur un WEMOS D1 Mini (ESP8266) :
- VCC du capteur -> 3.3V du WEMOS
- GND du capteur -> GND du WEMOS
- SDA du capteur -> D2 (GPIO4) du WEMOS
- SCL du capteur -> D1 (GPIO5) du WEMOS

2. Le code
Le code ESPHome pour le BME680 est très simple. La bibliothèque officielle gère toute la complexité, y compris le calcul de l’indice de qualité de l’air (IAQ).
esphome:
name: air_quality_monitor
friendly_name: air_quality_monitor
esp8266:
board: d1_mini
# ... (votre configuration wifi, api, etc.)
# Activer le bus I2C
i2c:
sda: D2
scl: D1
scan: true
# Configurer le capteur BME680
sensor:
- platform: bme680
address: 0x77 # ou 0x76, vérifiez avec le scan i2c
temperature:
name: "BME680 Temperature"
oversampling: 16x
pressure:
name: "BME680 Pressure"
humidity:
name: "BME680 Humidity"
gas:
name: "BME680 Gas Resistance"
iaq:
name: "BME680 IAQ"
update_interval: 60s
Pour une configuration plus avancée (modification de l'adresse I2C, sur-échantillonnage, etc.), vous pouvez consulter la documentation officielle d'ESPHome pour le BME680 : https://esphome.io/components/sensor/bme680.html
Note importante : Le capteur de gaz a besoin d’une période de “rodage” et de calibration. Les premières heures (voire les premiers jours), les valeurs de l’IAQ peuvent être instables. La bibliothèque ESPHome gère automatiquement un état de base pour des mesures plus fiables dans le temps.
3. Intégration
Après le téléversement, les 5 nouvelles entités (température, humidité, pression, résistance du gaz et IAQ) apparaîtront automatiquement dans Home Assistant via l’intégration ESPHome. Vous pouvez alors les ajouter à votre tableau de bord.
Cas d’usage (Use Cases)
Use Case 1 : Purificateur d’air ou VMC intelligent
Le besoin : Assurer une bonne qualité de l’air dans une pièce sans faire tourner la ventilation ou un purificateur en permanence.
La solution : C’est le cas d’usage principal du BME680. Créez une automatisation dans Home Assistant qui surveille l’entité sensor.bme680_iaq
.
- Déclencheur : Si l’IAQ dépasse un certain seuil (ex: > 150, indiquant une qualité d’air médiocre).
- Action : Allumer une prise connectée qui contrôle un purificateur d’air ou activer la vitesse supérieure de votre VMC (si elle est connectée).
- Action inverse : Lorsque l’IAQ redescend en dessous d’un seuil acceptable (ex: < 75), éteindre l’appareil pour économiser de l’énergie.
Use Case 2 : Détection d’occupation “chimique” et prédiction météo
Le besoin : Détecter une présence humaine de manière passive ou anticiper un changement de temps.
La solution : Ce cas d’usage combine deux aspects du capteur :
- Détection d’occupation : Le capteur de COV est sensible à la respiration humaine (qui libère des COV). Une augmentation soudaine et localisée de l’IAQ dans une pièce peut être un indicateur de présence, même si la personne est immobile. Cela peut compléter un détecteur PIR qui, lui, ne voit que le mouvement.
- Baromètre et tendance météo : Le capteur de pression est un excellent baromètre. Dans Home Assistant, vous pouvez utiliser l’intégration
derivative
pour calculer la tendance de la pression atmosphérique.- Si la pression chute rapidement -> Le temps se dégrade (pluie/tempête probable).
- Si la pression monte rapidement -> Le temps s’améliore. Vous pouvez alors créer des notifications : “Attention, la pression chute, pensez à fermer les fenêtres !”
Conclusion
Le BME680 est un capteur extrêmement polyvalent qui fournit une mine d’informations sur votre environnement. Pour un coût modique, il vous permet de créer des automatisations avancées pour améliorer votre confort, votre santé et même anticiper la météo. C’est un incontournable pour tout projet de station météo ou de surveillance de la qualité de l’air.