Letrero matricial inteligente de 64x8 píxeles con ESP8266 (NodeMCU) y 8 módulos MAX7219. Muestra hora sincronizada vía NTP, clima en tiempo real sin API key y contadores de seguidores en redes sociales (TikTok, Instagram, Facebook) con animaciones fluidas.
El letrero utiliza una pantalla de matriz de puntos LED compuesta por 8 módulos MAX7219 en cascada (64 columnas por 8 filas de LEDs rojos). Al encenderse, el microcontrolador ESP8266 se conecta a la red WiFi y ejecuta un ciclo de visualización continuo con animaciones de desplazamiento suave (scroll) gestionadas por la librería MD_Parola:
1. Reloj NTP de alta precisión: Se sincroniza automáticamente con servidores de tiempo mundiales (pool.ntp.org) configurado para la zona horaria de México (Mérida, CST UTC-6) sin desfasarse jamás y sin necesidad de un módulo RTC externo.
2. Clima y temperatura en vivo: Consulta periódicamente el servicio libre wttr.in para obtener la temperatura y condiciones meteorológicas actuales de tu ciudad sin necesidad de registrarte ni pagar por API keys.
3. Contador de seguidores en redes sociales: Mediante un script proxy alojado gratuitamente en Google Apps Script (incluido en las descargas), consulta en segundo plano los seguidores en TikTok, Instagram y Facebook y los proyecta en pantalla con íconos dedicados.
| Cant. | Componente | Notas |
|---|---|---|
| 1 | ESP8266 (NodeMCU v2 o ESP-12E) | Controlador WiFi con cable micro USB |
| 8 | Módulos de matriz LED MAX7219 | Típicos módulos de 4 matrices integradas en serie (2 barras de 4 = 8 módulos) |
| 1 | Fuente de alimentación 5V (2A recomendado) | Para alimentar las 8 matrices sin sobrecargar el regulador del ESP |
| 5 | Cables de conexión Dupont Hembra-Hembra | Para conectar VCC, GND, DIN, CS y CLK |
| 1 | Carcasa / Montura impresa en 3D o acrílico | Soporte frontal para difuminar los LEDs |
Conexión del bus SPI de 3 hilos (CLK, CS, DIN) más alimentación de 5V y GND entre el ESP8266 NodeMCU y el primer módulo de la matriz LED MAX7219.
| Pin NodeMCU | Pin MAX7219 | Función SPI | Notas |
|---|---|---|---|
| D5 (GPIO14) | CLK | Señal de reloj (SPI Clock) | Sincroniza la transmisión de datos |
| D6 (GPIO12) | CS / LOAD | Chip Select (Carga de datos) | Habilita el registro de cada cuadro |
| D7 (GPIO13) | DIN | Entrada de datos (SPI MOSI) | Solo en el primer módulo de la tira |
| VIN / 5V | VCC | Alimentación positiva 5V | Preferentemente fuente externa de 5V 2A |
| GND | GND | Tierra común | Obligatorio compartir referencia GND |
Para compilar en el IDE de Arduino necesitas instalar el soporte de placas ESP8266 y las siguientes librerías desde el Gestor de Bibliotecas:
// --- Asignación de pines y hardware MAX7219 ---
#include <MD_Parola.h>
#include <MD_MAX72xx.h>
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 8 // 8 matrices de 8x8 en serie
#define CLK_PIN D5 // GPIO14 en NodeMCU
#define CS_PIN D6 // GPIO12 en NodeMCU
#define DATA_PIN D7 // GPIO13 en NodeMCU
// Zona horaria de México (Mérida, UTC-6 todo el año)
const char* NTP_SERVER1 = "pool.ntp.org";
const char* TZ_INFO = "CST6";
FC16_HW. Si las letras te salen invertidas o desordenadas, cambia esta constante a GENERIC_HW o ICSTATION_HW.Documentación técnica, librerías y guías para complementar el armado y configuración del proyecto:
¿Te gustó este letrero WiFi o lo estás utilizando para mostrar los números de tu comunidad? Si este proyecto y el script de redes sociales te ahorraron tiempo y te fueron de utilidad, ¡un café es una fantástica forma de apoyar el canal y motivar la publicación de nuevos proyectos!