Qué aporta el panel y qué no
Home Assistant no riega: ejecuta la decisión que tú has definido. Su valor está en tres cosas que un programador de jardín no hace: guardar el historial, avisarte cuando algo va mal y permitirte cambiar el criterio sin desmontar nada.
La parte difícil no es la automatización, es la regla. Un panel puede tener las entidades más bonitas del mundo y seguir regando de más si el umbral está mal puesto.
Si aún no tienes el panel montado, la instalación de Home Assistant paso a paso es el punto de partida.
La regla básica: umbral e histéresis
El error clásico es “riego cuando la humedad baje del 40 %”. Con ese umbral, la bomba se enciende al llegar a 40, riega, la lectura sube a 45 y vuelve a bajar a 40 poco después: la bomba se enciende y se apaga continuamente, y la planta recibe gotas.
La solución es la histéresis: dos umbrales distintos.
- Arranca el riego cuando la lectura baja del umbral de inicio.
- Termina el riego cuando la lectura sube del umbral de parada.
Con eso el ciclo es largo y la planta recibe agua cada vez, no por rachas. En Home Assistant eso son dos automatizaciones, porque una sola no puede reaccionar a los dos sentidos de la lectura:
automation:
- alias: "Riego por humedad - arranque"
triggers:
- trigger: numeric_state
entity_id: sensor.humedad_suelo
below: 38
for: "00:10:00"
conditions:
- condition: state
entity_id: input_boolean.riego_habilitado
state: "on"
actions:
- action: switch.turn_on
target:
entity_id: switch.bomba_riego
- action: timer.start
target:
entity_id: timer.parada_riego
- alias: "Riego por humedad - parada por histéresis"
triggers:
- trigger: numeric_state
entity_id: sensor.humedad_suelo
above: 45
actions:
- action: switch.turn_off
target:
entity_id: switch.bomba_riego
- alias: "Tope de tiempo de seguridad"
triggers:
- trigger: event
event_type: timer.finished
event_data:
entity_id: timer.parada_riego
actions:
- action: switch.turn_off
target:
entity_id: switch.bomba_riego
Antes de esto necesitas dos entidades de apoyo: un input_boolean
(input_boolean.riego_habilitado) para poder desactivar el riego, y un timer
(timer.parada_riego) con una duración de cinco minutos. El temporizador es el
que apaga la bomba aunque el sensor nunca llegue al umbral de parada.
Los números del ejemplo son orientativos: los tuyos salen de la calibración en dos puntos.
La sintaxis de disparadores numéricos y de estados está en la documentación de automatizaciones de Home Assistant y las entidades de ESPHome se crean con la integración correspondiente.
El temporizador de seguridad, obligatorio
Toda automatización de riego necesita un tope de tiempo independiente. Si la bomba no se para porque el sensor se ha quedado clavado o porque la automatización se ha quedado a medias, ese temporizador es lo único que evita la inundación.
- Un segundo temporizador que apague la bomba a los cinco minutos, sea cual sea el estado del sensor.
- Una entidad de “riego en curso” que se reinicie cada vez que arranca el ciclo.
- Registro en el historial de cuánto duró cada riego: si un día dura cuatro minutos y otro cuarenta, algo ha cambiado en el sistema.
La parte electrónica de esto está resuelta en el proyecto de riego con ESPHome, incluido el criterio de que la planta no dependa de que el panel esté abierto.
Qué hacer cuando el sensor falla
Este es el escenario que casi nadie diseña y el que más plantas mata. Si el sensor se desconecta, el valor puede quedarse en el último dato, puede pasar a desconocido o puede dar valores absurdos. Las tres opciones son malas si no has decidido qué hacer:
| Situación | Comportamiento sensato |
|---|---|
| Lectura antigua (no cambia en una hora) | No regar y avisar |
| Lectura imposible (0 o 100 % fijo) | No regar y avisar |
| Sensor desconocido | No regar y avisar |
| Batería o conexión caída | avisar, pero mantener el horario |
La cuarta fila es la que evita que un problema de red se convierta en una catástrofe: si el sensor falla pero la información horaria sigue siendo válida, puedes regar por horario y avisarte del fallo.
Programación horaria como red de seguridad
La combinación más robusta es tener las dos reglas activas y que la segunda solo actúe si la primera no ha regado:
- Riego por humedad, con histéresis y validación de lectura.
- Riego horario cada dos o tres días, que se salta si la humedad está por encima de un umbral o si ha llovido.
Así el sistema no depende de una sola variable y, además, el horario te sirve de referencia para comparar: si el riego por humedad dispara todos los días y el horario nunca, tu umbral está mal.
Alertas que merecen la pena
No todas las notificaciones son útiles. Las que de verdad avisan de un problema:
- Bomba activa más de N segundos. Error de configuración o fuga.
- Sensor sin lecturas. Cable, pila o sonda.
- Lectura que se mueve de golpe. Ruido o mal contacto.
- No ha regado en X días aunque la humedad sea baja. Bomba bloqueada o válvula cerrada.
- Consumo eléctrico anómalo de la bomba, si la mides.
Todo esto se ve mejor en un gráfico de historial que en un número. Por eso el historial es la ventaja real del panel frente al programador.
Empezar sin complicarse
- Instala un solo sensor de suelo y publica su lectura.
- Deja que registre una semana sin automatizar nada.
- Mira el gráfico y elige los umbrales con datos, no de memoria.
- Activa la automatización con histéresis y temporizador de seguridad.
- Añade el sensor de lluvia para saltarte los riegos cuando toca.
- Solo entonces, si el sistema es estable, tiene sentido plantear el riego solar o un proyecto completo como el huerto en balcón.
Fuentes y siguiente paso
La documentación de automatizaciones de Home Assistant cubre los disparadores de estado y numéricos, y la integración de ESPHome cómo se incorporan los sensores. Para el criterio de cuándo regar según la planta, la guía de demanda de agua.
Fuentes externas
- Home Assistant: documentación de automatizaciones — disparadores numéricos, condiciones y temporizadores.
- Home Assistant: integración ESPHome — cómo aparecen los sensores y las entidades en el panel.