Saltar al contenido principal

Integración domótica Weather Underground, gratuita y de código abierto

Integración Weather Underground para Gladys Assistant

Estaciones meteorológicas personales de Weather Underground: temperatura, viento, lluvia, UV, sol.

Su estación meteorológica personal, tal como se publica en Weather Underground, en Gladys: temperatura, humedad, viento, lluvia, presión, UV y sol, leídos cada 5 minutos con la API oficial que The Weather Company da a los propietarios de estaciones. También puede seguir cualquier otra estación pública, por ejemplo la de un vecino.

Esta integración no está afiliada a Weather Underground, The Weather Company ni IBM, ni cuenta con su respaldo. Se ha desarrollado sin el hardware y sin clave de API: sus comentarios son bienvenidos.

Presentación​

  • Un dispositivo por estación, con sus sensores como funciones: temperatura, sensación térmica, punto de rocío, humedad, presión, velocidad, ráfagas y dirección del viento, intensidad de lluvia y lluvia de hoy, índice UV, luminosidad (a partir de la radiación solar) y antigüedad de la última observación.
  • Un widget para el panel que muestra la última observación de una estación y su antigüedad.
  • Una estación sin datos se señala: sus valores dejan de actualizarse, la antigüedad de su observación sigue creciendo y su indicador se vuelve naranja en la lista de dispositivos.
  • Solo lectura: no se controla nada, no se envía nada a Weather Underground.

Sirve cualquier estación, sea cual sea su marca (Ecowitt, Davis, Ambient Weather, Netatmo mediante un puente, WeeWX…), siempre que envíe sus datos a Weather Underground.

Requisitos​

  • Gladys 5.1 o posterior.
  • Una clave de API de Weather Underground. Es gratuita, pero solo para los miembros cuya estación meteorológica personal envía datos a Weather Underground: inicie sesión en wunderground.com, abra Member settings y luego API Keys, y genere una clave (32 caracteres).
  • El identificador de cada estación que quiera seguir: aparece en la página de la estación (por ejemplo IMADRID123 o KCASANFR1234). Es el ID, no el nombre de la estación.
  • Gladys necesita acceso a Internet (api.weather.com).

Configuración​

  1. En Integraciones, instale Weather Underground y abra su pestaña Configuración.
  2. Pegue la clave de API.
  3. Introduzca los identificadores de las estaciones, separados por comas (10 como máximo).
  4. Elija el intervalo de actualización (5 minutos por defecto) y el idioma de los nombres de las funciones.
  5. Guarde y haga clic en Probar la conexión: cada estación responde con su temperatura y la antigüedad de su observación.
  6. Abra la pestaña Descubrimiento y añada las estaciones.

Los nombres de las funciones se eligen al añadir una estación: cambie el idioma antes de añadirla.

Los dispositivos estación​

Cada estación es un dispositivo con el nombre de su barrio y su identificador («Centro (IMADRID123)»), con estas funciones, en unidades métricas:

FunciónUnidadNota
Temperatura°C
Sensación térmica°Cenfriamiento por viento con frío y viento, índice de calor con calor húmedo
Punto de rocío°C
Humedad%
Presión atmosféricahPapresión al nivel del mar
Velocidad del viento, ráfagaskm/hsolo para una estación con anemómetro
Dirección del viento°0 = norte, 90 = este
Intensidad de lluviamm/hsolo para una estación con pluviómetro
Lluvia de hoymm/ddesde la medianoche, hora local
Índice UVsolo para una estación con sensor UV
Luminosidad (radiación solar)luxW/m² × 126,7, vea las limitaciones
Antigüedad de la observaciónminminutos desde la última observación de la estación

No se crea ninguna función para un sensor que la estación no tiene. Solo se envían a Gladys los valores que cambian, y cada valor se reenvía al menos cada 6 horas para que nunca parezca antiguo.

Cuando una estación deja de enviar datos (corte de luz, wifi caído), Weather Underground conserva su última observación durante una hora. Tras 30 minutos sin nueva observación, la integración deja de actualizar los valores (una temperatura antigua parecería actual), sigue actualizando la antigüedad de la observación y señala la estación con un punto naranja en la lista de dispositivos. Todo vuelve con la siguiente observación.

Widget del panel​

Añada el widget Estación meteorológica a un panel y elija una estación (vacío: la primera). Muestra:

  • la temperatura, la humedad, el viento, la lluvia de hoy y la presión, en directo;
  • la curva de temperatura de las últimas 24 horas (una vez añadida la estación a Gladys);
  • la hora de la observación y su antigüedad (en naranja cuando la estación no envía datos), la sensación térmica, el punto de rocío, las ráfagas, la dirección del viento, la intensidad de lluvia, el índice UV y la radiación solar en W/m².

El widget nunca llama a la API: muestra la última observación leída.

Disparadores y acciones de escena​

La integración no declara disparadores ni acciones de escena propios: cada valor es una función del dispositivo estación, que las tarjetas de escena estándar ya saben tratar (Cambio de estado de un dispositivo, con umbral, y Obtener el valor de un dispositivo). Un disparador «empieza a llover» solo repetiría «intensidad de lluvia superior a 0».

Ejemplos de escenas​

  • Alerta de lluvia: cuando la Intensidad de lluvia de su estación supere 0 mm/h, enviar «Está lloviendo, recoja la ropa» y cerrar la ventana del tejado.
  • Riesgo de helada: cuando la Temperatura baje de 1 °C por la noche, enviar un mensaje para cubrir las plantas.
  • Riego innecesario: antes de la escena de riego del jardín, leer la Lluvia de hoy y detenerse si supera 5 mm.
  • Estación averiada: cuando la Antigüedad de la observación supere 60 minutos, enviar un mensaje para comprobar la alimentación y el wifi de la estación.
  • Toldo: cuando las Ráfagas de viento superen 40 km/h, recoger el toldo.

Cuota de la API y actualización​

Una clave de Weather Underground permite 1.500 llamadas al día y 30 por minuto, para todas las herramientas que la usan. Cada estación cuesta una llamada por actualización: 288 llamadas al día cada 5 minutos. Con más de 4 estaciones, la integración ralentiza la actualización por sí sola (5 estaciones: cada 6 minutos; 10 estaciones: cada 11 minutos) y reserva alrededor del 10 % de la cuota para los reinicios y las pruebas. Si usa la misma clave en otro sitio (otro sistema domótico, un script), elija un intervalo más largo.

Si aun así se supera la cuota, las lecturas se detienen 15 minutos. Una clave rechazada se vuelve a probar cada hora, o en cuanto se guarda la configuración.

Las observaciones vienen de las propias estaciones, cada pocos minutos: actualizar más rápido que cada 5 minutos no aportaría nada nuevo.

Solución de problemas​

  • «Weather Underground rechaza la clave de API»: vuelva a copiar la clave desde Member settings → API Keys. Weather Underground puede desactivar la clave de una estación que hace tiempo que no envía datos.
  • «Ninguna observación en la última hora (estación desconectada o identificador desconocido)»: la API no distingue una estación desconectada de un identificador erróneo. Compruebe el identificador en la página de la estación (letras y cifras, como IMADRID123) y que la estación muestre datos recientes en wunderground.com.
  • «Identificador rechazado por la API»: el identificador contiene algo que la API rechaza: vuelva a escribirlo.
  • «Cuota de la API superada»: vea «Cuota de la API y actualización»; las lecturas se reanudan tras 15 minutos.
  • «La API de Weather Underground no responde»: Gladys no llega a api.weather.com: compruebe su conexión a Internet y su DNS.
  • Falta una función: la estación no enviaba ningún valor para ese sensor cuando se añadió. Si el sensor llegó después, lance una búsqueda en la pestaña Descubrimiento y actualice el dispositivo.
  • Detalles: configure LOG_LEVEL=debug en el contenedor para ver cada lectura en los registros de la integración. La clave de API nunca aparece en ellos.

Limitaciones​

  • Solo unidades métricas (°C, km/h, hPa, mm).
  • La luminosidad se calcula a partir de la radiación solar (W/m² × 126,7, el factor que usan las estaciones Ecowitt para enviar su medida en lux como W/m²): exacta para esas estaciones, una aproximación de la luz del día para un piranómetro (Davis). El widget también muestra el valor en W/m².
  • Sin previsiones: los servicios meteorológicos de Gladys (OpenWeather, Météo-France…) ya las ofrecen; esta integración aporta lo que ellos no pueden, las medidas de una estación muy cercana.
  • 10 estaciones como máximo por clave.
  • Los datos y su disponibilidad dependen de The Weather Company, que puede modificar o suspender esta API gratuita en cualquier momento.
  • Desarrollada sin el hardware y sin clave de API: las respuestas de la API proceden de su documentación, todavía no de una estación real. Sus comentarios son bienvenidos en el repositorio de GitHub.

Parámetros de configuración​

Estos son los parámetros que Weather Underground te pide en su pantalla de configuración en Gladys.

ParámetroTipoObligatorioDescripción
Su clave de APIsectionNoWeather Underground da una clave de API gratuita a quien le envía los datos de una estación meteorológica personal: inicie sesión en wunderground.com y abra Member settings, API Keys. La clave lee su estación y cualquier otra estación pública.
Clave de APIsecretSí32 caracteres. 1.500 llamadas al día por clave: el intervalo se alarga para no superarlas.
Identificadores de las estacionesstringSíSeparados por comas, 10 como máximo: la suya o vecinas (el ID de la página de la estación, no su nombre).
Intervalo de actualizaciónselectNoCon qué frecuencia se lee cada estación. Con más de 4 estaciones, 5 minutos superarían la cuota diaria: se ralentiza solo.
Idioma de los nombres de las funcionesselectNoNombres de las funciones al añadir una estación (Temperatura, Velocidad del viento…).

Cómo instalar Weather Underground en Gladys​

  1. En Gladys, abre Integraciones: Weather Underground aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
  2. Haz clic en Instalar. Gladys descarga la imagen Docker (ghcr.io/guim31/gladys-wunderground:1.0.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración).
  3. Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
  4. También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-wunderground.

Weather Underground requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.

¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.

Sobre las integraciones externas​

Weather Underground es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene guim31, no el equipo principal de Gladys.

Suscríbete a la newsletter de Gladys Assistant

Unos pocos correos al mes sobre nuevas versiones y novedades del proyecto. Enviados por Pierre-Gilles Leymarie, fundador del proyecto. Puedes darte de baja cuando quieras 🙂