Calendario perpetuo con LEDs conectado a Google Calendar
| | |

Calendario perpetuo LED con Google Calendar: mi versión V2

Hay proyectos que juntan lo mejor de este pasatiempo: un microcontrolador barato, una tira de LEDs direccionables, un poco de red y algo útil para el escritorio. El calendario perpetuo LED con conexión a Google Calendar es exactamente eso. Se trata de un calendario físico con un ESP8266 y 75 LEDs que muestra el mes en curso y marca el día de hoy. Además, pinta de colores los días con festivos, aniversarios y tareas que tienes en Google Calendar.

La idea y el diseño original no son míos. Son de Andrei Erdei (ancalex), que lo publicó en enero de 2022 en Instructables. Lo que te presento aquí es mi versión V2 del proyecto de ancalex. Partí de su código y le agregué configuración por web, actualizaciones por WiFi y brillo automático. También sumé colores a tu gusto, un instalador desde el navegador y documentación en español e inglés.

En pocas palabras, lo conectas y toma la hora de internet. Luego consulta tus calendarios y enciende cada día según lo que tengas anotado. Si te gustan los proyectos con LEDs, también te puede interesar mi reloj de matriz LED con Clockwise.

El calendario perpetuo LED funcionando. Foto: Andrei Erdei (ancalex), CC BY-SA 4.0
El calendario perpetuo LED funcionando. Foto: Andrei Erdei (ancalex), CC BY-SA 4.0
Lo básico
PlacaESP8266 (Wemos D1 Mini recomendado, o NodeMCU)
LEDs75 LEDs WS2811/WS2812B, 60 LEDs/m, 5 V
Calendarios3 de Google Calendar: festivos, aniversarios y tareas
InstalaciónWeb Flasher desde el navegador, o PlatformIO
LicenciaCC BY-SA 4.0, la misma del original de ancalex

Cómo funciona el calendario perpetuo LED

El ESP8266 no habla directamente con la API de Google. En cambio, usa Google Apps Script como intermediario. El camino es ESP8266 → Google Apps Script (por HTTPS) → Google Calendar → tus calendarios.

Primero publicas tres scripts como «aplicación web», uno por calendario. Cada uno revisa los eventos del mes y devuelve solo los días que tienen algo, en texto plano, del estilo 5-12-25-. Después, el firmware convierte esa lista en un arreglo y el calendario perpetuo enciende cada LED que toca. Solo viajan los números de día, no los títulos ni los detalles de tus eventos. Por eso tu agenda no sale de Google.

Los tres calendarios se consultan una vez por hora. La recarga inmediata solo ocurre cuando guardas los colores o los ajustes de los LEDs desde la interfaz web. Por otro lado, Google redirige de script.google.com a script.googleusercontent.com. Para seguir esa redirección, el firmware usa la librería HTTPSRedirect.

Los colores siguen un orden de prioridad. Primero va el color base (entre semana o fin de semana). Luego vienen el día actual, los festivos y los aniversarios. Por último, y por encima de todo, las tareas.

Lo que agregué en la V2 del calendario

  • Interfaz web para configurar todo sin recompilar: WiFi, hora, zona horaria, los IDs de los scripts, colores y brillo.
  • Acceso por mDNS: con el nombre de fábrica entras a http://perpetualcalendar.local.
  • Actualizaciones OTA, por WiFi y sin cable USB.
  • Brillo automático por horario, con hora y minuto de inicio del modo nocturno. Además, si pones el brillo nocturno en 0, los LEDs se apagan por completo.
  • Colores personalizables, con corrección gamma y temperatura de color.
  • Dos redes WiFi (principal y de respaldo) con reconexión automática.
  • Página de información del sistema con RAM, CPU y tiempo encendido. También trae botones para reiniciar el ESP y para borrar la configuración WiFi.
  • Interfaz y documentación bilingües, en español e inglés.
  • Reloj con colores opcional: seis LEDs muestran HH:MM:SS y cada dígito tiene su color (1 rojo, 2 naranja, 3 amarillo, 4 verde y así hasta el 9).

Hardware para el calendario perpetuo LED

ComponenteCantidadNotas
ESP82661Wemos D1 Mini (recomendado) o NodeMCU
Tira LED WS2811/WS2812B75 LEDs60 LEDs/m, direccionable, 5 V
Fuente de 5 V1Mínimo 3 A
Conector DC hembra15.5 / 2.5 mm
Resistencia de 3 kΩ1Obligatoria, entre GPIO2 y VCC
Cables y soldaduraVariosDatos y alimentación

Además necesitas las piezas impresas en 3D: marco frontal, soporte de LEDs, rejilla separadora y pata trasera. Todas vienen en un solo STL que está en el repositorio. También hace falta un acrílico ahumado de 191 × 96 × 2 mm como difusor. Por último, imprime en papel A4 la plantilla de los números que va al frente del calendario perpetuo, encima de cada LED.

Montaje de la tira LED

Hay dos avisos que no hay que olvidar. En primer lugar, la resistencia de 3 kΩ es obligatoria. Sin ella, el ESP8266 puede no arrancar con la tira conectada al pin de datos GPIO2/D4. En segundo lugar, no alimentes los 75 LEDs desde el ESP. Usa la fuente externa de 5 V y 3 A, y une todas las tierras en un punto común.

Después, la tira se corta en seis tramos: cinco de 13 LEDs y uno de 10. Luego se monta en zigzag, respetando la dirección de las flechas. Así, el calendario perpetuo queda con cada LED detrás de su número.

Los tramos de tira LED montados en zigzag para el calendario perpetuo. Foto: Andrei Erdei (ancalex), CC BY-SA 4.0
Los tramos de tira LED montados en zigzag para el calendario perpetuo. Foto: Andrei Erdei (ancalex), CC BY-SA 4.0

Para el armado paso a paso escribí una guía de construcción completa con imágenes.

Cómo instalarlo

La forma más rápida es el Web Flasher. Desde Chrome, Edge u Opera conectas el ESP por USB y eliges la versión: estándar o con reloj con colores. En unos segundos queda instalado. En cambio, si prefieres compilarlo, el repositorio trae la configuración de PlatformIO para las dos versiones.

Al arrancar por primera vez, el calendario perpetuo LED crea la red WiFi Calendario con la contraseña 12345678. Esa contraseña viene fija en el firmware y solo se usa para esta configuración inicial. Te conectas y abres http://192.168.4.1. Ahí configuras tu WiFi, el servidor NTP, la zona horaria y los IDs de los tres Apps Script. Después ya entras por http://perpetualcalendar.local. Para publicar los scripts, la guía de configuración de Google Calendar explica cada paso.

Para probarlo, agrega un evento de hoy en tu calendario de tareas. Aparecerá en naranja en la siguiente recarga, que ocurre cada hora. Sin embargo, si no quieres esperar, guarda los ajustes de LEDs o de colores y se recarga en ese momento.

Lo bueno y lo que hay que saber

  • Lo bueno: el calendario perpetuo LED se arma con piezas baratas. Además, se configura todo desde el navegador y no muestra ni guarda el contenido de tus eventos.
  • El horario de verano viene pensado para Europa. El cálculo del firmware sigue las reglas de Europa Central. Sin embargo, México ya no tiene horario de verano desde 2022. Por eso deja desactivada la casilla «Horario de Verano» en los ajustes de hora y solo elige tu zona horaria.
  • No es inmediato. Un evento nuevo tarda hasta una hora en aparecer, salvo que fuerces la recarga como te conté arriba.
  • Necesita WiFi con salida a internet, ya que de ahí toma la hora y los calendarios.

Créditos y licencia

El proyecto original es de Andrei Erdei (ancalex). Lo publicó en Instructables bajo CC BY-SA 4.0. Las fotos de este artículo también son suyas. Mi versión V2 usa la misma licencia, como pide su condición de «compartir igual». Es decir, puedes usarla, modificarla y compartirla, incluso con fines comerciales, siempre que des crédito y publiques tus cambios con la misma licencia.

Todo el código, los STL y la documentación están en el repositorio: Perpetual-Calendar-with-Google-Calendar-Connection-V2.

Conclusión sobre el calendario perpetuo LED

Es de esos proyectos de fin de semana que quedan bonitos y se usan a diario. Con un puñado de componentes y un ESP8266 tienes un calendario perpetuo LED que se pone en hora solo. De hecho, cuida tu privacidad y se ajusta entero desde el navegador. Si te quedas con ganas de más LEDs, mira también el firmware SVITRIX para el Ulanzi TC001. Gracias a ancalex por la idea original; si armas el tuyo, me dará gusto saberlo.

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 *