ESPHome
Dashboard y compilador de firmware para dispositivos ESP8266/ESP32.
Resumen
ESPHome permite editar la configuración YAML, compilar el firmware y actualizarlo
por OTA en los dispositivos ESP. Corre en k3s y solo es accesible desde la LAN,
protegido por Authentik. Home Assistant sigue conectándose directamente a los
dispositivos por su API nativa; no pasa por este dashboard.
Estado
| Campo |
Valor |
| Estado |
Operativo |
| Argo CD Application |
esphome |
| Namespace |
esphome |
Despliegue
| Campo |
Valor |
| Método |
Manifests propios |
| Chart / imagen |
ghcr.io/esphome/esphome:2026.10.1 |
| Origen |
clusters/luka/apps/esphome/, clusters/luka/config/esphome/ |
| Config en el repo |
clusters/luka/config/esphome/ y blueprint de Authentik |
Red
| Campo |
Valor |
| Service |
esphome (ClusterIP) |
| IP |
— |
| Puertos |
80 → 6052 |
| URL interna |
https://esphome.local.gorkarevilla.com |
| URL externa |
— (solo LAN) |
| TLS |
wildcard cert-manager *.local.gorkarevilla.com |
Acceso y usuarios
- Usuarios/roles: Authentik forward-auth, grupo
admins.
- Sin auth propia: el dashboard no usa Basic; la frontera es Authentik.
- Break-glass:
kubectl -n esphome port-forward deploy/esphome 6052:6052
(queda sin auth; solo desde la LAN/SSH).
- Credenciales: WiFi/API keys en
secrets.yaml del PVC. Nunca en claro
aquí.
Configuración
- 1 réplica (0 durante la migración; 1 tras el PR 1b),
strategy: Recreate,
nodo kyrie.
args: ["dashboard", "/config"], TZ=Europe/Madrid.
- Sin
privileged ni hostNetwork.
use_address en los 3 YAML: gobot-ball → 192.168.50.209,
termostato-knob → 192.168.50.213, toldo → 192.168.50.210.
- El autodescubrimiento mDNS no funciona desde la red de pods; por eso las IPs
fijas.
- Requests
250m/512Mi; limits 2 CPU/2Gi.
Almacenamiento
- PVC
esphome-config, 8Gi, ReadWriteOnce, storageClassName: longhorn,
protegido del prune (Prune=false,Delete=false).
- Contiene YAMLs,
secrets.yaml, .git y estado del dashboard. .esphome se
regenera tras el primer build.
Dependencias
- Depende de: Traefik, Authentik, Longhorn, cert-manager.
- Usado por: Homepage (enlace), Uptime Kuma (monitor).
Backup y recuperación
- Sin backup automático. YAMLs y
secrets.yaml viven en el PVC; se recomienda
copia manual de secrets.yaml en Vaultwarden. Restore: runbook
legacy/migrar-servicio.md.
Monitorización
- No expone métricas Prometheus nativas; no hay
ServiceMonitor.
- Uptime Kuma monitoriza
http://esphome.esphome.svc.cluster.local/ (se
actualiza en el PR 1b).
Referencias
Notas / TODO
- NetworkPolicy para limitar el acceso al Service a Traefik (mejora futura).
- Home Assistant se migrará en Fase 4; el dashboard no depende de ella.
- Al añadir un ESP nuevo: reserva DHCP y añade
use_address.
termostato-knob-despacho.yaml falla esphome config con 2026.10.1 por el
esquema LVGL (indicator.value / end_angle); es un problema preexistente
del YAML, no de la migración. Pendiente de corregir.