136 lines
4.0 KiB
Markdown
136 lines
4.0 KiB
Markdown
---
|
|
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](https://esphome.io/) |
|
|
| **GitHub** | [esphome/esphome](https://github.com/esphome/esphome) |
|
|
| **License** | MIT |
|
|
| **Langage** | C++ (firmware) + Python (build tool) |
|
|
| **Étoiles GitHub** | 9.7k ⭐ |
|
|
| **Catégorie** | [[cat-home-automation\|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é)
|
|
|
|
```yaml
|
|
# /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)
|
|
|
|
```yaml
|
|
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
|
|
- [Documentation officielle](https://esphome.io/)
|
|
- [Composants](https://esphome.io/components/)
|
|
- [Forum communauté](https://community.home-assistant.io/c/esphome/)
|
|
|
|
## 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
|