4.0 KiB
4.0 KiB
title: ESPHome created: 2026-06-08 updated: 2026-06-08 type: app tags: [catalogue, home-automation, app-marathon-batch-c] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Home+Automation&app=esphome, https://esphome.io/]
🏠 ESPHome
Créez des firmware ESP8266/ESP32 en YAML : pas besoin de coder en C++, déclarez vos capteurs, compilez et flashez OTA.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | esphome.io |
| GitHub | esphome/esphome |
| License | MIT |
| Langage | C++ (firmware) + Python (build tool) |
| Étoiles GitHub | 9.7k ⭐ |
| Catégorie | cat-home-automation |
📝 Description
ESPHome transforme vos ESP8266/ESP32 en devices domotiques sans écrire de C++.
- ✅ Config YAML : déclare sensors, switches, lights, displays...
- ✅ Compilation automatique : le tool build et flash OTA
- ✅ API native : intégration Home Assistant native
- ✅ Fallback HTTP : interface web de fallback sur l'ESP
- ✅ OTA updates : mises à jour sans fil
- ✅ MQTT : alternative à l'API native
- ✅ 200+ composants : DHT, BME280, BMP280, Dallas, PWM, NeoPixel...
- ✅ Dashboard web : visualiser/éditer configs (en add-on HASS)
- ✅ Bluetooth Proxy : ESP32 = pont BLE pour HASS
- ✅ Logger intégré : logs temps réel série/web
Différence vs Tasmota : ESPHome = YAML moderne, intégration HASS native, plus actif. Tasmota = firmware pré-compilé, web UI, plus mature. Pour qui: makers qui veulent un firmware sur-mesure avec intégration domotique fluide.
🚀 Installation
Option 1 : Add-on Home Assistant (recommandé)
# /config/esphome/<device>.yaml
esphome:
name: salon-capteur
platform: ESP32
board: esp32dev
wifi:
ssid: "MonWiFi"
password: "motdepasse"
captive_portal:
api:
password: "api-password"
ota:
password: "ota-password"
logger:
sensor:
- platform: dht
pin: GPIO4
temperature:
name: "Salon Temperature"
humidity:
name: "Salon Humidity"
update_interval: 60s
Option 2 : Docker Compose (CLI)
version: '3.8'
services:
esphome:
image: esphome/esphome:latest
container_name: esphome
restart: unless-stopped
network_mode: host
volumes:
- esphome_config:/config
devices:
- /dev/ttyUSB0:/dev/ttyUSB0 # pour flasher
labels:
- "traefik.enable=true"
- "traefik.http.routers.esphome.rule=Host(`esphome.example.com`)"
- "traefik.http.routers.esphome.entrypoints=websecure"
- "traefik.http.routers.esphome.tls.certresolver=letsencrypt"
volumes:
esphome_config:
🔄 Alternatives
Open Source
- Tasmota — Firmware pré-compilé mature, web UI
- ESPurna — Firmware alternatif ESP
- WLED — Spécialisé LED strips
- Arduino/PlatformIO — Low-level si besoin de C++
- app-tasmoadmin — GUI web pour gérer parc Tasmota
Propriétaires
- Tuya cloud — Devices bon marché, dépendance cloud
- Sonoff (cloud eWeLink) — Devices flashables Tasmota
- Shelly — Devices avec firmware custom
- TP-Link Kasa — Cloud, peu de customisation
🔐 Sécurité
- Password API : obligatoire (sinon écoute réseau local)
- OTA password : changer le défaut
- Wifi credentials : stockées en clair dans le binaire (attention divulgation)
- Fallback HTTP : activer en local uniquement
- Logs : ne pas exposer publiquement
📚 Ressources
Pages Liées
- cat-home-automation — Catégorie Home Automation
- app-home-assistant — Intégration native
- app-tasmoadmin — Alternative Tasmota
- recettes-docker-compose — Templates Docker
- esphome-vs-tasmota — Comparaison firmware