Respuesta corta: Existen dos tipos de dimmers AC: TRIAC (leading edge — para bombillas incandescentes, halógenas, calentadores) y dimmer AC MOSFET (trailing edge — diseñado específicamente para bombillas LED). Si una bombilla LED parpadea o atenúa mal, el problema suele estar en el tipo de dimmer, no en la bombilla. Un dimmer AC MOSFET lo resuelve a nivel hardware. Si debe usar TRIAC, necesita una bombilla con la etiqueta «TRIAC dimmable» de Philips, Osram o Ikea.
El problema
Los usuarios conectan una bombilla LED a un dimmer AC en Arduino o ESP32 — y en lugar de un control de brillo suave obtienen problemas: la bombilla ignora las órdenes, se corta bruscamente por debajo del 50 %, parpadea o zumba.
El instinto es depurar el código o comprar una bombilla «mejor». Pero la causa raíz suele ser otra: un dimmer AC TRIAC físicamente no está diseñado para bombillas LED. Fue creado para cargas resistivas — filamentos incandescentes y elementos calefactores. Para LED existe un tipo fundamentalmente diferente: el dimmer AC MOSFET.
Síntomas típicos de los foros:
- «Las LED no se apagan del todo y no suben a máximo brillo» (Arduino Forum, 2024)
- «funciona hasta 70 %, luego baja la intensidad, empieza a zumbar, parpadea a plena potencia cada pocos segundos» (Arduino Forum, 2026)
- «La bombilla está apagada cuando la tensión está en la parte baja de la sinusoide y encendida cuando está en la parte alta. No hay brillos intermedios» (Arduino Forum, 2019)
- «Las placas TRIAC funcionan muy bien con lámparas incandescentes. Pero las LED no se comportan igual» (Arduino Forum, 2024)
Dos tipos de dimmers AC: TRIAC vs MOSFET
Ambos tipos usan control por corte de fase (control de ángulo de fase): cortan parte de la onda sinusoidal AC para reducir la tensión media. La diferencia está en qué parte cortan y cómo eso afecta a las bombillas LED.
| Parámetro | Dimmer AC TRIAC | Dimmer AC MOSFET |
|---|---|---|
| Método de control | Leading edge (corte de fase adelantado) | Trailing edge (corte de fase retrasado) |
| Diseñado para | Incandescencia, halógeno, calentadores | Bombillas LED, cargas electrónicas |
| Forma de onda de tensión | Pico brusco al inicio del semiciclo | Frente de subida suave desde cero |
| Con Philips/Osram LED «dimmable» | ✅ Funciona | ✅ Funciona muy bien |
| Con LED regulable barata | ⚠️ Parpadeo < 40 % | ✅ Estable |
| Con LED no regulable | ❌ No funciona | ❌ No funciona |
| Corriente de mantenimiento (problema carga ligera) | ✅ Sí — un problema | ❌ Ninguna |
| Rango de atenuación LED | 20–95 % | 5–95 % |
Por qué MOSFET es mejor para LED: el MOSFET se abre al comienzo mismo del semiciclo — la tensión sube suavemente por la sinusoide. El driver LED ve un frente de subida familiar sin pico brusco. Resultado: operación estable con cualquier bombilla LED regulable, significativamente menos parpadeo.
Causa raíz
Background theory: AC Dimmer: Zero-Cross and TRIAC — How It Works.
El problema TRIAC con LED: el TRIAC dispara después de un retardo tras el cruce por cero. En el momento del disparo, la tensión salta bruscamente de cero a decenas o cientos de voltios — un leading edge pronunciado. Muchos drivers LED interpretan este pico como interferencia o sobretensión, activan circuitos de protección y operan de forma errática.
Una bombilla LED no es una carga resistiva simple. Dentro de cada bombilla LED hay un driver (una fuente de alimentación conmutada) que rectifica el AC y lo convierte en una corriente continua estable para los LED. Cómo reacciona ese driver ante una sinusoide cortada por TRIAC:
- LED no regulables — interpretan la caída de tensión como «pérdida de alimentación» y activan la protección. La bombilla solo funciona a plena potencia o no arranca.
- LED regulables baratas — sí atenúan, pero sin filtrar la corriente pulsante. El parpadeo a 100/120 Hz es visible a simple vista.
- LED de calidad compatibles con TRIAC (Philips, Osram, Ikea TRÅDFRI) — diseñadas específicamente para corte de fase TRIAC. Funcionan, pero el rango es limitado: 20–95 %. Por debajo, la corriente de mantenimiento causa inestabilidad.
El problema de la corriente de mantenimiento: cada TRIAC requiere una corriente mínima para permanecer conductivo. Una sola bombilla LED de 5–9 W consume demasiado poco — el TRIAC se apaga aleatoriamente, perdiendo semiciclos. Resultado: destellos aleatorios y zumbido a baja luminosidad. Los dimmers MOSFET no tienen corriente de mantenimiento.
MOSFET resuelve ambos problemas en hardware: sin pico brusco, sin corriente de mantenimiento.
Soluciones
🟢 Solución hardware 1: dimmer AC MOSFET ✅ Mejor opción para LED
¿Quiere usar bombillas LED sin restricciones? El dimmer AC MOSFET está diseñado exactamente para eso.
El dimmer AC MOSFET usa control trailing edge: el transistor MOSFET se abre al inicio del semiciclo y se cierra en el momento calculado. La tensión sube suavemente — el driver LED opera correctamente, el parpadeo es mínimo incluso al 5–10 % de brillo.
Cuándo elegir el dimmer AC MOSFET:
Compatible con cualquier bombilla LED etiquetada «dimmable» — incluyendo genéricas baratas que se comportan mal con TRIAC.
El código es idéntico al de un dimmer TRIAC — mismo interrupt de cruce por cero, misma API de biblioteca. La diferencia está dentro del módulo hardware:
// Dimmer AC MOSFET — trailing edge
// Mismo código que para TRIAC; la diferencia hardware está dentro del módulo
// Biblioteca: rbdimmerESP32 (para ESP32)
#include "rbdimmerESP32.h"
#define ZC_PIN 18
#define DIM_PIN 19
rbdimmer dimmer;
void setup() {
dimmer.begin(ZC_PIN, DIM_PIN, 50); // red de 50 Hz
dimmer.setPower(50); // 50 % de brillo
}
void loop() {}Rango: 5–95 % de brillo con cualquier bombilla LED regulable.
🟢 Solución hardware 2: DimmerLink (sin ISR, cualquier plataforma)
¿No quiere trabajar con interrupciones? DimmerLink controla el dimmer por I2C o UART — funciona con módulos TRIAC y MOSFET.
Cualquier ESP32 handles zero-cross synchronization and phase control internally. You simply send a command «set brightness to 50%» — everything else happens inside.
Cuándo elegir DimmerLink:
Cableado (I2C):
DimmerLink VCC → 3.3V
DimmerLink GND → GND
DimmerLink SDA → SDA (ESP32: GPIO21, Arduino: A4)
DimmerLink SCL → SCL (ESP32: GPIO22, Arduino: A5)// DimmerLink vía I2C — sin ISR, sin cruce por cero en el código
// Documentación: https://www.rbdimmer.com/docs/dimmerlink-I2CCommunication
#include <Wire.h>
#define DIMMER_ADDR 0x50
#define REG_LEVEL 0x10
void setLevel(uint8_t level) {
Wire.beginTransmission(DIMMER_ADDR);
Wire.write(REG_LEVEL);
Wire.write(level);
Wire.endTransmission();
}
void setup() {
Wire.begin();
setLevel(50); // 50 % de brillo
}
void loop() {}🟡 Obligado a usar TRIAC: elegir la bombilla correcta
¿No puede reemplazar el dimmer? Elija una bombilla específicamente calificada para TRIAC.
No todas las bombillas LED reaccionan igual al corte de fase TRIAC. Algunas marcas diseñan específicamente ciertas líneas de productos para compatibilidad con corte de fase.
Busque en el embalaje:
- «TRIAC dimmable» o «phase-cut compatible»
- «leading edge compatible»
- Símbolo de dimmer con la letra «L» (leading edge)
Marcas probadas para TRIAC:
| Marca | Serie | Rango con TRIAC |
|---|---|---|
| Philips | SceneSwitch, WarmGlow, Master LED | 20–100 % |
| Osram | CLASSIC, SUPERSTAR | 20–100 % |
| Ikea TRÅDFRI | Gama regulable | 20–100 % |
| GE / Cree | LED+ Dimmable | 25–100 % |
Limitaciones TRIAC + LED: incluso con bombillas de calidad, el rango 0–20 % es inestable por la corriente de mantenimiento. Con cargas inferiores a 15 W pueden aparecer destellos aleatorios — añada una resistencia de lastre (100–150 Ω / 20 W) en paralelo o aumente el número de bombillas. Este problema no existe con un dimmer MOSFET.
🔵 Avanzado: solución software con TRIAC
¿Usa un dimmer TRIAC con bombillas LED de calidad?
Opción A: ESP32 con rbdimmerESP32 ✅ Recomendado
When: dual-core ESP32 + Philips/Osram/Ikea lamps Library: ESP32 doble núcleo
// Plataforma: ESP32 de doble núcleo
// Biblioteca: rbdimmerESP32
// Para LED: usar rango 20–95 % (por debajo del 20 % es inestable con TRIAC)
#include "rbdimmerESP32.h"
#define ZC_PIN 18
#define DIM_PIN 19
rbdimmer dimmer;
void setup() {
dimmer.begin(ZC_PIN, DIM_PIN, 50);
dimmer.setPower(30); // empezar al 30 %, no 0 %
}
void loop() {
// Subida suave del 20 % al 95 %
for (int i = 20; i <= 95; i++) {
dimmer.setPower(i);
delay(30);
}
for (int i = 95; i >= 20; i--) {
dimmer.setPower(i);
delay(30);
}
}Opción B: Arduino AVR (Uno, Mega, Nano)
For AVR boards only — do not use on ESP32! Library: Arduino Uno/Mega (legacy)
// Plataforma: Arduino Uno / Mega / Nano (solo AVR)
// ADVERTENCIA: para ESP32 use rbdimmerESP32 — no esta biblioteca
#include <RBDdimmer.h>
#define ZC_PIN 2 // cruce por cero — solo pines 2 o 3 en Uno/Nano
#define DIM_PIN 11
dimmerLamp dimmer(DIM_PIN, ZC_PIN);
void setup() {
dimmer.begin(NORMAL_MODE, ON);
dimmer.setPower(50);
}
void loop() {}⚠️ Errores comunes de los foros
Errores reales de 4 hilos de foros (2019–2026).
-
Intentar atenuar una LED no regulable con TRIAC: una bombilla sin etiqueta «dimmable» no está diseñada para ningún control de corte de fase. Ni TRIAC ni MOSFET pueden ayudar. Se necesita otra bombilla.
-
LED «regulable barata» + TRIAC = parpadeo bajo 40 %: la bombilla es técnicamente compatible, pero su driver barato no filtra las pulsaciones TRIAC. Solución: dimmer AC MOSFET (sin restricciones) o cambiar a Philips/Osram.
-
Carga demasiado ligera: TRIAC requiere una corriente de mantenimiento mínima. Una sola bombilla de 5–7 W causa destellos aleatorios. Con una carga total inferior a 15 W, añada una resistencia de lastre (100–150 Ω / 20 W) en paralelo. Con MOSFET no hay tal problema.
-
LED con driver PFC activo (bombillas domotica): incompatible con el corte de fase TRIAC. Riesgo de daño. El dimmer MOSFET tampoco garantiza compatibilidad con bombillas de PFC activo.
Checklist rápido
Antes de publicar en el foro, verifique:
Tabla de compatibilidad
| Tipo de carga | Dimmer AC TRIAC | Dimmer AC MOSFET | Notas |
|---|---|---|---|
| Bombilla incandescente 40–150 W | ✅ | ✅ | Ideal para TRIAC |
| Halógena 230 V | ✅ | ✅ | Ideal para TRIAC |
| Calentador / elemento resistivo | ✅ | ⚠️ | TRIAC preferible |
| Philips/Osram LED «TRIAC dimmable» | ✅ | ✅ | MOSFET da rango más amplio |
| LED «regulable» barata (no-name) | ⚠️ | ✅ | TRIAC: parpadeo < 40 % |
| LED «regulable», tipo no especificado | ⚠️ | ✅ | MOSFET más confiable |
| LED no regulable | ❌ | ❌ | Ningún tipo funciona |
| LED con driver PFC activo (domotica) | ❌ | ❌ | Incompatible |
| Halógena 12 V con transformador | ⚠️ | ⚠️ | Depende del transformador |
Temas relacionados
- LED Flickering with AC Dimmer: TRIAC or MOSFET — Causes and Fixes
- Trailing Edge vs Leading Edge: Which Dimmer Method to Choose
¿Todavía tiene preguntas?
Post on rbdimmer.com forum or open a GitHub Issue.