Sensor ping en Home Assistant para detectar un corte de Internet
Publicado el · Última revisión: 06/09/2026
Un corte de Internet no avisa. El router del operador se queda mirando un led naranja y tú te enteras cuando algo no carga. Con Home Assistant puedes saberlo en el momento en que ocurre, con un binary_sensor que hace ping a dos sitios: tu propio router y un host fuera de tu red. El primero te dice si tu red local sigue viva; el segundo, si existe salida al mundo. Con los dos, el aviso no dice solo "no hay Internet": dice dónde se ha roto.
El sensor básico
La integración Ping de Home Assistant lanza pings ICMP a un host y expone el resultado como un sensor binario: on si responde, off si no. Lleva años disponible y es de las cosas más baratas de mantener: no depende de ninguna nube, no necesita cuenta, y si el host que vigila es tu propio router, funciona aunque se haya caído todo lo demás.
La configuración mínima en configuration.yaml es esta:
binary_sensor:
- platform: ping
name: "Internet responde"
host: 1.1.1.1
Guarda, reinicia o recarga la configuración YAML, y tendrás una entidad binary_sensor.internet_responde que pasa a off cuando el host externo deja de responder. La ruta de instalación recomendada en versiones recientes de Home Assistant puede ser por interfaz añadiendo la integración Ping; no he podido confirmar los pasos exactos de esa interfaz a fecha de 06/09/2026, así que aquí te dejo la vía YAML, que es la que funciona si usas configuration.yaml.
Por qué un solo host no basta
Si solo vigilas un host externo y el ping falla, no sabes si se ha caído Internet, si se ha reiniciado tu router, o si Home Assistant se ha quedado sin red Wi-Fi. Son tres problemas distintos con el mismo síntoma.
La solución es añadir un segundo sensor hacia un host que siempre esté en tu red local: la IP de tu router. Con dos sensores tienes cuatro combinaciones posibles y cada una apunta a un problema distinto.
La tabla de los cuatro estados
| Router local responde | Host externo responde | Qué significa |
|---|---|---|
| on | on | Todo bien. Tu red local está viva y tienes salida a Internet. |
| on | off | Tu red local funciona, pero no hay salida. El problema está en tu ISP, en el módem u ONT, o en la configuración de tu router. Es la caída que te interesa detectar como "se ha ido Internet". |
| off | off | Home Assistant no llega ni a tu router. El problema es local: router apagado o reiniciándose, Wi-Fi caído, o el propio Home Assistant sin red. No puedes culpar al ISP todavía. |
| off | on | No debería pasar: si no hay router no hay salida al exterior. Si lo ves, el sensor del "router" apunta a un equipo que no es tu router, o la IP del router ha cambiado. |
El aviso que no depende de la nube
Hay una tentación evidente: cuando el sensor pase a off, mandar una notificación push al móvil. Si el aviso viaja por el mismo cable que se ha caído, no llega. Las notificaciones de Home Assistant dependen de su servicio en la nube o de tu servidor de push, y en una casa que presume de funcionar sin nube, el aviso de que no hay nube no puede usar la nube.
En su lugar, el aviso tiene que ser local. El ejemplo más simple: una bombilla Zigbee o Z-Wave que se enciende en rojo cuando el sensor de Internet cae y el router sigue respondiendo. No necesita Internet, no necesita el móvil, y si estás en casa lo ves.
Automatización: luz roja al caer, luz normal al volver
input_boolean:
corte_internet:
name: "Hubo un corte de Internet"
automation:
- alias: "Detectar caída de Internet"
triggers:
- trigger: state
entity_id: binary_sensor.internet_responde
to: "off"
conditions:
- condition: state
entity_id: binary_sensor.router_local_responde
state: "on"
actions:
- action: input_boolean.turn_on
target:
entity_id: input_boolean.corte_internet
- action: light.turn_on
target:
entity_id: light.mueble_estudio
data:
color_name: red
brightness_pct: 100
- alias: "Internet ha vuelto"
triggers:
- trigger: state
entity_id: binary_sensor.internet_responde
to: "on"
actions:
- action: light.turn_off
target:
entity_id: light.mueble_estudio
El input_boolean.corte_internet hace de memoria: si estabas fuera cuando ocurrió el corte y Internet ya ha vuelto, la luz se apaga pero el booleano sigue en on. Puedes usarlo para un histórico o simplemente para saber, al llegar a casa, que hubo un corte. Si lo quieres apagar a mano, una tercera automatización con un botón o desde el dashboard hace el input_boolean.turn_off.
YAML completo para copiar
Este es el bloque entero, con los sensores, el booleano y las dos automatizaciones. Cambia la IP 192.168.1.1 por la IP real de tu router y light.mueble_estudio por una luz que tengas en casa.
# configuration.yaml
binary_sensor:
- platform: ping
name: "Router local responde"
host: 192.168.1.1
- platform: ping
name: "Internet responde"
host: 1.1.1.1
input_boolean:
corte_internet:
name: "Hubo un corte de Internet"
automation:
- alias: "Detectar caída de Internet"
triggers:
- trigger: state
entity_id: binary_sensor.internet_responde
to: "off"
conditions:
- condition: state
entity_id: binary_sensor.router_local_responde
state: "on"
actions:
- action: input_boolean.turn_on
target:
entity_id: input_boolean.corte_internet
- action: light.turn_on
target:
entity_id: light.mueble_estudio
data:
color_name: red
brightness_pct: 100
- alias: "Internet ha vuelto"
triggers:
- trigger: state
entity_id: binary_sensor.internet_responde
to: "on"
actions:
- action: light.turn_off
target:
entity_id: light.mueble_estudio
Los entity_id salen solos de los nombres, en minúsculas y con guiones bajos: binary_sensor.router_local_responde, binary_sensor.internet_responde. Si cambias los nombres, cambian también los entity_id de la automatización.
Fallos que he visto en esta configuración
1. Home Assistant sin red no diagnostica nada
Si Home Assistant va por Wi-Fi y se cae el punto de acceso, no puede hacer ping a nada: ni al router ni al exterior. Los dos sensores caen a la vez y la tabla te dice "problema local", que es cierto, pero no te dice si el router se ha reiniciado solo o si el ISP ha hecho caer también la red local. Para diagnosticar un corte cuando el propio Home Assistant se queda sin red hace falta un avisador fuera de Home Assistant, por ejemplo un ESP32 con un zumbador que haga sus propios pings. Es otra pieza, y de hecho es el límite natural de esta solución: este artículo cubre el 90% de los cortes, no el corte que deja sin red a la propia casa.
2. El host externo no es una garantía
1.1.1.1 y 8.8.8.8 son los más usados, pero no son piedra. Hay usuarios que reportan que Google responde peor cuando recibe pings constantes desde una misma IP (hilo de la comunidad de Home Assistant, junio de 2026, discusión sobre sensor ping para probar la conexión), y un host de tu propia operadora se cae con la operadora. Usa uno que no dependa de tu ISP, y si puedes, que no sea el único punto de tu diagnóstico.
3. El ping no distingue causas, solo respuestas
Si el router responde y el host externo no, tienes un corte de salida: puede ser el ISP, puede ser el módem, puede ser una configuración rota del router. El sensor te dice el dónde aproximado, no el porqué. Para saber más necesitas mirar el estado del módem u ONT, y ahí el sensor ya no llega.
Qué he contrastado
- La existencia de la plataforma ping ICMP para Home Assistant y su formato YAML, contrastada con documentación de la plataforma y guías de terceros a fecha de 06/09/2026.
- La demanda real del caso de uso, en hilos de la comunidad de Home Assistant de 2023 y junio de 2026.
- Que una casa con Home Assistant puede seguir funcionando en local durante días sin Internet, según prueba de usuario publicada en octubre de 2024 y artículos de redes de octubre de 2025.
- No he podido medir el volumen de búsqueda de esta consulta: la herramienta de volumen estaba en su tope mensual compartido. Este artículo es una apuesta por señal cualitativa, no por dato de escala.