Introducción
El control de iluminación LED ha evolucionado considerablemente en los últimos años. Las tiras de LEDs direccionables —también conocidas como tiras “adressable” o “individually addressable”— permiten controlar cada LED de forma independiente, lo que abre posibilidades de efectos visuales mucho más complejos y satisfactorios que los sistemas de iluminación RGB tradicionales.
Este artículo explora cómo combinar una tira de LEDs direccionables (WS2812B o SK6812) con un ESP32, un microcontrolador barato con WiFi integrado, para crear un sistema de iluminación completamente local y programable. El firmware WLED, de código abierto, elimina la necesidad de escribir código mientras mantiene la posibilidad de personalización avanzada para quien desee profundizar.
¿Qué es una tira de LEDs direccionables?
A diferencia de una tira de LEDs RGB convencional, donde todo el segmento cambia de color de forma simultánea, las tiras direccionables permiten controlar cada LED individualmente. Esto significa que es posible crear efectos de movimiento, degradados dinámicos, patrones secuenciales y cualquier combinación de colores por LED.
Los modelos más comunes son WS2812B y SK6812. Ambos funcionan de manera similar —un pin de datos serially controla cada LED en la cadena— pero difieren en sus intensidades de color y consumo. Los LEDs se identifican por su posición en la cadena, y un microcontrolador envía la secuencia de colores deseada a todos ellos simultáneamente.
¿Por qué un ESP32?
El ESP32 es un microcontrolador de bajo costo con WiFi y Bluetooth integrados, que se ha convertido en una opción popular para proyectos de iluminación y automatización del hogar. Sus características relevantes para este tipo de proyecto incluyen:
- Capacidad de conectarse a la red local por WiFi, lo que permite controlar la tira desde cualquier dispositivo en la misma red sin necesidad de cables adicionales.
- Soporte de tasa de datos suficiente para controlar una cantidad moderada de LEDs a una frecuencia acceptables.
- Bajo costo —desde 3 a 8 dólares— lo que hace accesible el proyecto para cualquier persona interesada.
- Amplia comunidad de desarrolladores y documentación disponible en internet.
WLED: firmware open-source para el ESP32
WLED es un firmware de código abierto diseñado específicamente para controlar tiras de LEDs direccionables con ESP32 y otros microcontroladores compatibles. Se instaló mediante una herramienta de flashing web, sin necesidad de compilar código ni configurar un entorno de desarrollo. La instalación básica consta de estos pasos:
- Conectar el ESP32 a un equipo por USB.
- Acceder a la herramienta de instalación web (wled.me o la aplicación móvil) y seleccionar el puerto serie del ESP32.
- Ejecutar el flashing del firmware, que suele completarse en pocos segundos.
- Una vez instalado, el ESP32 se conecta a la red WiFi configurada y queda disponible en un puerto web, accesible desde cualquier dispositivo en la misma red.
La interfaz web ofrece control inmediato sobre los LEDs sin requerir configuración adicional.
Funcionalidades de la interfaz web
Una vez instalado WLED, la interfaz web proporciona control sobre:
- Color de toda la tira o de segmentos individuales.
- Una amplia variedad de efectos preconfigurados: rotación, ondas, lava, fuego, chispas, degradados animados y más.
- Ajuste de parámetros como velocidad, intensidad, color inicial, color final y paleta de colores personalizada.
- Creación de paletas de colores propias con hasta ocho colores configurables por paleta.
- Programación de horarios para apagado, encendido o cambio de efecto en momentos específicos.
- Integración con asistentes de voz como Alexa para control por voz.
- Integración con Home Assistant para automatización del hogar avanzada.
- Control desde la aplicación móvil oficial de WLED.
Los efectos más destacados incluyen Kaiten (rotación tipo disco con degradados), Lava (simulación de flujo de lava con colores cálidos), Onda y Palette Cycling (desplazamiento de degradados), y Chase/Kenzie (secuencia de encendido y apagado de LEDs).
Consideraciones de alimentación
Las tiras de LEDs direccionables consumen una cantidad considerable de corriente. A pleno brillo blanco, cada LED consume aproximadamente 60 mA. Con 60 LEDs a máximo brillo, esto representa 3,6 Amperios. Por lo tanto, es fundamental utilizar una fuente de alimentación de 5V separada, con capacidad suficiente para la cantidad de LEDs que se van a utilizar a máximo brillo.
No se debe alimentar la tira directamente desde el regulador de voltaje del ESP32 —el ESP32 no está diseñado para suministrar la corriente requerida—. Una fuente de alimentación dedicada evita problemas de inestabilidad del sistema y protege el microcontrolador.
Cableado básico
El cableado típico de una tira de LEDs direccionables requiere tres conexiones principales:
- Alimentación (5V): Conectada a la fuente de alimentación externa. No a la salida 5V del ESP32.
- Tierra (GND): Común entre el ESP32, la fuente de alimentación y la tira. Una tierra mal conectada es una causa frecuente de malfuncionamiento.
- Datos (DATA): Conectado al pin de datos del ESP32 que configuró WLED para la tira. El nivel de señal de datos es de 5V en la mayoría de tiras, aunque el ESP32 opera a 3,3V. En la práctica, la conexión directa suele funcionar en la mayoría de casos, pero puede ser necesario un nivel de conversor (level shifter) 3,3V a 5V para mayor estabilidad.
La longitud del cable de datos debe mantenerse corta para evitar degradación de la señal. Si la tira es larga o la tira está alejada del ESP32, puede ser necesario un driver de nivel de señal o repetidores de datos.
Escritura de firmware personalizado
WLED cubre la mayoría de los casos de uso sin necesidad de escribir código, pero quien desee personalizar el comportamiento más allá de lo que ofrece el firmware puede escribir su propio código para el ESP32. Las opciones incluyen Arduino IDE, PlatformIO o el framework ESP-IDF.
La librería FastLED es una opción popular para controlar LEDs direccionables con ESP32 en un entorno de desarrollo. Con ella, se puede escribir código que controle cada LED individualmente, leyendo sensores (temperatura, sonido, movimiento) o generando efectos propios.
A modo de ejemplo, un fragmento de código básico que genera un efecto de arcoíris móvil con FastLED:
#include <FastLED.h>
#define LED_PIN 16
#define NUM_LEDS 60
#define LED_TYPE WS2812B
#define COLOR_ORDER GRB
CRGB leds[NUM_LEDS];
void setup() {
delay(2000); // Pausa inicial para estabilizar alimentación
FastLED.addLeds<LED_TYPE, LED_PIN, COLOR_ORDER>(leds, NUM_LEDs);
FastLED.setBrightness(100);
}
void loop() {
for (int i = 0; i < NUM_LEDS; i++) {
leds[i] = CHSV((millis() / 10 + i * 8) % 255, 255, 255);
}
FastLED.show();
delay(20);
}
Este ejemplo ilustra el principio básico: un bucle que actualiza cada LED con un valor de color que cambia en el tiempo, generando un efecto visual animado. A partir de este punto, es posible expandir el código para incluir lectura de sensores, sincronización de efectos, o control remoto más allá del WiFi.
Inicio recomendado para quienes se inician
El proyecto es accesible para personas sin experiencia previa en electrónica. El punto de partida recomendado es:
- Una tira de LEDs de 1 metro con 60 LEDs por metro (WS2812B o SK6812).
- Un ESP32 genérico (board de desarrollo con pines accesibles).
- Una fuente de alimentación de 5V con capacidad para al menos 2-3 Amperios para empezar.
- Instalación de WLED mediante la herramienta web, sin necesidad de escribir código.
Después de probar WLED y ver los resultados visuales, si se desea profundizar, hay espacio para agregar sensores, control por voz, integración con el hogar, o escritura de firmware propio para efectos más complejos.
Extensiones y aplicaciones adicionales
Una vez que el ESP32 está funcionando con WLED, existen varias extensiones posibles:
- Sincronización con audio: Al agregar un micrófono al ESP32 (o un módulo como el INMP441), es posible hacer que los LEDs reaccionen al volumen o a las frecuencias de la música en tiempo real.
- Integración con Home Assistant: WLED se integra nativamente con Home Assistant, permitiendo automatizaciones como encendido al llegar a casa, cambio de color según eventos, o sincronización con otras ilusiones del hogar.
- Efectos ambientales: La combinación de efectos y paletas permite simular escenas atmosféricas como auroras, resplandores, o efectos de fuego, con la posibilidad de ajustar la velocidad y los colores a gusto.
- Efectos reactivos: Con lectura de sensores como temperatura, movimiento (PIR), o sonido, los LEDs pueden reaccionar a estímulos del entorno de forma automatizada.
Conclusión
El control de tiras de LEDs direccionables con ESP32 y WLED representa una intersección entre iluminación, electrónica de bajo costo y accesibilidad. El proyecto no requiere conocimientos avanzados de programación para comenzar — WLED proporciona una interfaz completa y funcional desde el primer momento — pero ofrece profundidad ilimitada para quien desee explorar el firmware personalizado, la integración con otros sistemas o la creación de efectos propios.
El punto de entrada es sencillo: un ESP32, una tira de LEDs, una fuente de alimentación adecuada, y unos minutos para instalar el firmware. Desde ahí, las posibilidades se expanden según el interés y la dedicación de cada quien.

Leave a Reply