La versión táctil de la estación meteorológica WeatherAPI, con datos de WeatherAPI.com
| | | |

Estación meteorológica WeatherAPI en tinta electrónica con la LilyGo T5 4.7″

Tengo en el escritorio una pantalla de tinta electrónica que me dice el clima sin encender nada: despierta, baja los datos, dibuja la pantalla y se vuelve a dormir. Es una estación meteorológica WeatherAPI construida sobre la placa LilyGo T5 4.7″ (ESP32-S3), con 960×540 píxeles en 16 tonos de gris. Además, se lee perfecto con luz de día y casi no gasta batería.

De todas las versiones que he hecho para esta placa, es la que hoy te recomiendo. Parte del trabajo clásico de David Bird (G6EJD) y del port de LilyGo. Sin embargo, cambié la fuente de datos a WeatherAPI.com y le agregué un Web Flasher para instalarla desde el navegador, más actualizaciones OTA. Incluso, desde la versión 2.10, mi estación meteorológica WeatherAPI puede leer los datos de tu propia estación en lugar de los de una API. Así la uso yo: con los datos reales de la Estación Clima XE1E.

Hay dos variantes de esta estación meteorológica WeatherAPI: una táctil, con muchas pantallas, y una sin táctil, de una sola pantalla, para colgarla en la pared y olvidarte de ella.

La versión táctil de la estación meteorológica WeatherAPI, con datos de WeatherAPI.com
La versión táctil de la estación meteorológica WeatherAPI, con datos de WeatherAPI.com
Lo básico
PlacaLilyGo T5 4.7″ ESP32-S3: táctil (H716, GT911) o sin táctil (V2.3)
PantallaTinta electrónica de 4.7″, 960×540, 16 tonos de gris
DatosWeatherAPI.com (plan gratuito) o tu propio servidor (solo la táctil)
InstalaciónWeb Flasher desde Chrome, Edge u Opera, sin instalar nada
ActualizacionesOTA desde el navegador o el Arduino IDE, y versiones publicadas en GitHub
IdiomasEspañol, inglés y francés

Cómo funciona la estación meteorológica WeatherAPI

El ciclo es sencillo. Primero, la placa despierta del deep sleep y se conecta a la red WiFi con mejor señal (puedes guardar hasta tres). Luego sincroniza la hora y pide el clima. Con WeatherAPI todo llega en una sola llamada HTTPS al endpoint forecast.json: condiciones actuales, calidad del aire, pronóstico de 3 días por hora, fase lunar, amanecer y atardecer.

Después dibuja la pantalla y se vuelve a dormir. La táctil te da unos 30 segundos para navegar antes de dormirse; en cambio, la sin táctil se duerme en cuanto termina.

El intervalo se configura de 5 a 120 minutos. También puedes fijar un horario en el que no actualice (por ejemplo, de madrugada) para ahorrar batería. En reposo profundo la placa consume unos 10 µA, y la imagen se queda en la pantalla sin gastar nada.

En cuanto a la cuenta, el plan gratuito da 100,000 llamadas al mes. Aun actualizando cada 5 minutos, tu estación meteorológica WeatherAPI gastaría menos de 9,000, así que sobra.

Lo que muestra la pantalla

En las dos variantes, la pantalla principal de la estación meteorológica WeatherAPI tiene:

  • Temperatura con máxima y mínima, humedad, presión con tendencia, visibilidad y nubosidad.
  • Viento en una rosa con dirección y velocidad.
  • Índice UV y calidad del aire.
  • Pronóstico de las siguientes horas con iconos.
  • Gráficas de 3 días de temperatura, presión, humedad y lluvia.
  • Fase lunar, amanecer y atardecer.

Por otro lado, la táctil suma pantallas que abres tocando zonas de la principal. Por ejemplo: condiciones actuales, pronóstico extendido, tendencias, historial (hasta un año de lecturas con tarjeta microSD) y calidad del aire. Además, trae calendario mensual y anual, un mapa de husos horarios, frase del día e información del sistema.

También tiene una narrativa del clima escrita por IA con Groq. Es opcional, usa su propia clave gratuita y ofrece estilos como «Radio», formal o poético.

Y para los colegas, hay un rincón de radioafición dentro de la pantalla de información. Incluye alfabeto fonético, códigos Q, Morse, prefijos DXCC con zonas ITU y CQ, y concursos principales. Incluso muestra la propagación en HF en tiempo real descargada de HamQSL.

Con los datos de tu propia estación

Esto es lo que más me gusta: la versión táctil de la estación meteorológica no depende solo de WeatherAPI. En la pestaña Clima del portal de configuración eliges la fuente: WeatherAPI.com (la que viene por omisión) o servidor propio. Después escribes su dirección.

El servidor tiene que responder /api/epaper/forecast.json con la misma forma que WeatherAPI. Además, el portal tiene un botón para probarlo antes de guardar. Es el mismo firmware para los dos casos, así que cambiar de fuente no requiere recompilar. De hecho, con servidor propio ni siquiera necesitas cuenta en WeatherAPI.

Yo lo uso con el servidor de mi estación Ecowitt, del que te cuento en este artículo. Con él, la pantalla deja de mostrar el modelo de una API para toda la ciudad. En cambio, muestra lo que de verdad mide mi estación, más datos que WeatherAPI no tiene:

  • IMECA en lugar del índice genérico de calidad del aire, con su número real, la categoría oficial y el contaminante dominante.
  • Radiación solar en W/m².
  • Lluvia del episodio: intensidad y acumulado de la lluvia en curso.
  • Tendencia barométrica real de las últimas 3 horas, medida y no calculada del pronóstico.
  • Ráfaga máxima del día.
Pantalla principal con los datos de la Estación Clima XE1E en lugar de WeatherAPI: IMECA en vez del índice genérico
Pantalla principal con los datos de la Estación Clima XE1E en lugar de WeatherAPI: IMECA en vez del índice genérico
Condiciones actuales: lluvia del episodio, radiación solar, UV e IMECA
Condiciones actuales: lluvia del episodio, radiación solar, UV e IMECA

Cómo instalar la estación meteorológica

La forma fácil es el Web Flasher. Conectas la placa por USB-C, abres la página en Chrome, Edge u Opera y presionas «Instalar». En un minuto está lista.

En el primer arranque la placa crea la red WeatherStation-Setup (contraseña weather123, fija en el código: solo cambia si recompilas el firmware). Te conectas desde el celular o la computadora y abres http://192.168.4.1. Luego llenas los datos: redes WiFi, clave de WeatherAPI (gratis al registrarte), ciudad, coordenadas, idioma, unidades (métricas o imperiales) e intervalo. Hay botones para probar el WiFi y la clave antes de guardar.

Para la zona horaria de la Ciudad de México usa CST6. Aquí ya no hay horario de verano, por lo tanto CST6CDT te adelantaría una hora de abril a octubre.

Actualizaciones y configuración por Bluetooth

Las siguientes versiones ya no requieren cable, ya que se suben por OTA desde http://<ip-de-la-placa>/ota o desde el Arduino IDE. Cada versión de la estación meteorológica WeatherAPI se publica en la sección Releases de GitHub con sus binarios. Además, el CHANGELOG cuenta qué cambió. Si prefieres compilar, el repositorio trae la configuración del Arduino IDE (núcleo ESP32 2.0.17, PSRAM OPI, 16 MB de flash).

La táctil también se puede configurar por Bluetooth. En la pantalla de información activas el modo BLE y la placa aparece como WeatherStation-BLE. Sin embargo, la app de Android viene como código fuente en la carpeta android-app/ del repositorio (no hay un .apk listo). Por eso hay que compilarla con Android Studio, y pide Android 8.0 o superior.

Lo bueno y lo que hay que saber

  • Lo bueno: una sola llamada a la API, Web Flasher, OTA, versiones con historial de cambios y, en la táctil, datos de estación propia.
  • Correcciones recientes: las versiones 2.10 a 2.12 de la táctil corrigieron el modo imperial, que mezclaba unidades, y la etiqueta m/s que aparecía sobre valores en km/h. También arreglaron el amanecer y el atardecer, que salían una hora antes entre abril y octubre por un ajuste viejo de horario de verano.
  • Solo WiFi de 2.4 GHz: el ESP32-S3 no ve redes de 5 GHz.
  • Sin alertas: la estación meteorológica no muestra las alertas de WeatherAPI. Están desactivadas a propósito para no agotar la memoria al procesar la respuesta.
  • La fuente propia y el IMECA son de la táctil: en cambio, la variante sin táctil solo lee WeatherAPI.
  • Carcasa: para la táctil está la carcasa H716 de n602 en Thingiverse (licencia CC BY-NC-SA), que se arma con cuatro tornillos M3 de 15 mm. Para la sin táctil (V2.3) está la de 3DMath, también CC BY-NC-SA.

Créditos y licencia

El código se basa en el ESP32 e-Paper Weather Display de David Bird (G6EJD). Luego lo adaptaron a esta placa markbirss y Xinyuan-LilyGO, y Stefan Maetschke lo retomó en un tutorial de 2025. Sobre eso están mis cambios.

Ojo con la licencia, porque no es de código abierto. El archivo Licence.txt es el de David Bird, con todos los derechos reservados. Permite el uso personal y no comercial, citándolo como autor; sin embargo, prohíbe el uso comercial y monetizarlo.

Conclusión

Si quieres una pantalla de clima que se instale en un minuto, se actualice sola y casi no gaste batería, esta estación meteorológica con WeatherAPI es la que te recomiendo. Además, si tienes tu propia estación, la versión táctil te deja ver tus datos reales, con IMECA y lluvia del episodio incluidos, en un objeto que no necesita navegador. Por último, si te interesa la versión original, la que usa OpenWeatherMap, está en este otro artículo.

73 y DX de XE1E
Enrique

Recibe los artículos nuevos por correo

Te aviso cada vez que publique un artículo en el XE1E Radio Blog. Puedes darte de baja cuando quieras.

Loading

Entradas similares

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *