Linterna Compacta con ESP32-C3 y LEDs RGB
Antonio Romero


Esta semana os traigo un mini proyecto que me encanta por su practicidad: una linterna compacta construida completamente dentro de una pequeña cajita. Es uno de esos proyectos que demuestran que no necesitas mucho espacio para crear algo súper útil.
La idea surgió porque quería tener una linterna pequeña pero potente que pudiera llevar siempre en la mochila o en el coche. Y pensé: ¿por qué no hacerla yo mismo con LEDs RGB programables? El resultado me tiene súper contento.
¿Por qué este proyecto mola tanto?
Este no es solo "otra linterna". Tiene varias características que la hacen especial:
✨ Compacta - Cabe en cualquier bolsillo o mochila
🌈 LEDs RGB - No es solo luz blanca, puedes programar colores
🔋 Recargable - Con puerto USB-C, olvídate de pilas
🧠 Programable - Usa un ESP32-C3, así que puedes personalizarla
💪 Duradera - Los LEDs WS2812 pueden durar décadas
🎮 Modos múltiples - Diferentes intensidades y efectos
Es perfecta para emergencias, camping, trabajos nocturnos, o simplemente como un gadget útil que siempre llevas contigo.
🤓 Dato Curioso
¿Sabías que los LEDs pueden durar hasta 50,000 horas? Eso significa que si usaras tu linterna 3 horas al día, ¡podría funcionar durante más de 45 años!
Materiales necesarios
He diseñado este proyecto para que sea económico y fácil de conseguir:
⚡ Componentes electrónicos:
Microcontrolador:
Iluminación:
Alimentación:
1x Batería recargable de litio (en este caso recuperada de otro dispositivo)
1x Módulo de carga SM5308 (gestiona la carga y protege la batería)
🔧 Otros materiales:
Pulsador momentáneo (para encender/apagar y cambiar modos)
Cable USB-C o Micro-USB (según tu módulo de carga)
Cables finos para las conexiones
Caja pequeña (puedes imprimirla en 3D o usar una comercial)
🛠️ Herramientas:
Soldador de estaño
Estaño
Pistola de pegamento caliente o cianocrilato
Alicates de corte
Multímetro
¿Cómo funciona?
Te explico el funcionamiento básico para que entiendas el proyecto:
Sistema de alimentación:
La batería de litio proporciona entre 3.7V y 4.2V
El módulo SM5308 tiene dos funciones:
Protege la batería de sobrecarga y descarga profunda
Permite cargarla mediante USB
Sistema de iluminación:
Los 4 LEDs WS2812 están conectados en serie (solo necesitas 1 pin de datos)
Cada LED puede mostrar 16.7 millones de colores diferentes
El ESP32-C3 controla los LEDs mediante la librería NeoPixel
Puedes programar diferentes modos de iluminación
Control:
Un pulsador conectado al ESP32-C3 detecta las pulsaciones
Cada pulsación cambia entre diferentes modos:
Modo 1: Luz blanca baja intensidad
Modo 2: Luz blanca alta intensidad
Modo 3: Luz roja
Modo 4: "Policía futurista" Parpadeos aleatorios en diferentes colores
Modo 5: "Policía alterno" Parpadeos rojo y azul a pares
Apagado.
Simulación y Esquema Completo en Wokwi
He preparado una simulación completa en Wokwi donde podéis ver todo el proyecto funcionando virtualmente antes de comprarlo o montarlo.
🔗 Ver el proyecto completo en Wokwi
En la simulación encontrarás:
✅ Esquema de conexiones completo
✅ Código fuente funcionando en tiempo real
✅ Todos los componentes conectados correctamente
✅ Posibilidad de modificar el código y probarlo
✅ Demostración de los diferentes modos
Cómo usar la simulación:
Haz clic en el enlace de arriba
Pulsa el botón verde "Start Simulation"
Haz clic en el pulsador virtual para cambiar entre modos
Observa cómo responden los LEDs WS2812
Puedes modificar el código y ver los cambios en tiempo real
Es perfecto para entender cómo funciona todo el sistema antes de soldar nada. Juega con el código, prueba diferentes configuraciones y cuando lo tengas claro, ¡monta tu versión física!
Esquema básico de conexiones:
Para los que prefieren tener una referencia rápida aquí:
ESP32-C3 → Componente
GPIO 8 → DIN del primer LED WS2812
GPIO 9 → Pulsador (con resistencia pull-up)
3.3V → VCC de los LEDs WS2812
GND → GND común
VIN (5V) → Salida del módulo SM5308
Módulo SM5308 → Conexión B+ / B- → Batería de litio OUT+ / OUT- → Alimentación del ESP32-C3
Montaje paso a paso
Paso 1: Preparar los componentes
Prueba todos los componentes antes de soldar
Verifica que el módulo SM5308 cargue correctamente la batería
Programa el ESP32-C3 antes de montarlo todo
Paso 2: Soldar los LEDs
Suelda VCC y GND de la tira de LEDs WS2812
Conecta DIN con un resistor en serie de 470 ohm al GPIO 8 del ESP32-C3
Paso 3: Conectar la alimentación
Suelda la batería al módulo SM5308 (¡respeta la polaridad!)
Conecta la salida del SM5308 al VCC y GND del ESP32-C3
Deja accesible el puerto USB para cargar
Paso 4: Añadir el pulsador
Suelda un extremo del pulsador al GPIO 9
El otro extremo a GND
El ESP32-C3 tiene pull-up interno, así que no necesitas resistencia
Paso 5: Ensamblar en la caja
Coloca todos los componentes dentro de la caja
Los LEDs deben quedar mirando hacia fuera (o hacia una zona translúcida)
Fija todo con pegamento caliente
Deja el puerto USB accesible
El pulsador debe quedar fácilmente accesible desde fuera
Paso 6: Pruebas finales
Carga completamente la batería
Prueba todos los modos de iluminación
Verifica la autonomía
Asegúrate de que el pulsador responde bien
Mejoras y personalizaciones
Como siempre, este es solo el punto de partida. Ideas para mejorarlo:
💡 Mejoras básicas:
Añade más LEDs para mayor potencia
Usa una batería más grande para más autonomía
Añade un difusor impreso en 3D para luz más uniforme
Instala un interruptor físico adicional
🚀 Mejoras avanzadas:
Añade un sensor de luz para ajuste automático de brillo
Integra WiFi para control desde el móvil
Añade un display OLED que muestre el nivel de batería
Crea una app móvil para controlarla
💬 Comunidad activa:
Únete a mi Telegram para:
Resolver dudas sobre el proyecto
Compartir tus modificaciones
Ver variaciones de otros makers
Contenido exclusivo no disponible en otros canales
Ayuda personalizada si tienes problemas
👉 Pulsa aquí para unirte al grupo
Conclusión
Esta linterna en una caja es uno de esos proyectos que me encantan: pequeño, útil y personalizable. No requiere mucho tiempo ni presupuesto, pero el resultado es un gadget que realmente usarás.
Lo mejor es que una vez que dominas este proyecto, puedes hacer infinitas variaciones: añadir más funciones, cambiar el tamaño, integrar sensores, etc.
¿Vas a construir tu propia linterna? Me encantaría ver vuestras versiones. Compartid fotos en redes etiquetándome o en el grupo de Telegram. Y si le hacéis alguna mejora chula, ¡contádmelo!
¡Nos vemos en el próximo proyecto! 💡
FAQ - Preguntas Frecuentes
¿Puedo usar otro microcontrolador en lugar del ESP32-C3? Sí, puedes usar cualquier ESP32, Arduino Nano, ATtiny85, etc. Solo adapta el código.
¿Es difícil de montar para un principiante? Es de dificultad media. Si ya has soldado antes, no tendrás problema.
¿Cuánto tiempo lleva construirla? Unas 2-3 horas incluyendo programación y montaje.
¿Puedo hacerla resistente al agua? Sí, usa una caja hermética y sella bien todas las aberturas con silicona.
¿Funciona mientras se carga? Depende del módulo SM5308. Algunos permiten pass-through, otros no.
¿Puedo usar LEDs normales en lugar de WS2812? Sí, pero perderás la capacidad RGB y el control individual. Tendrías luz blanca simple.
