← Componente ESPHome | Contenido | Siguiente: Biblioteca Arduino IDE →
Guía de configuración del dimmer AC TRIAC para Tasmota
This guide explains how to configure and use a TRIAC-based AC dimmer with Tasmota firmware for controlling 230V AC loads such as incandescent lamps, halogen lights, heaters, and other resistive loads.

Descripción general
Un dimmer TRIAC (Triodo para Corriente Alterna) permite controlar la potencia entregada a las cargas AC recortando porciones de cada semiciclo AC. Esto se conoce como atenuación por corte de fase o atenuación de frente de subida.
Cómo funciona
El dimmer opera detectando cuando el voltaje AC cruza el cero (detección de cruce por cero) y luego retrasando el pulso de disparo del TRIAC. A mayor retardo, menor potencia entregada a la carga:
- 0% de atenuación: el TRIAC se dispara inmediatamente después del cruce por cero → potencia máxima
- 50% de atenuación: el TRIAC se dispara en el medio del semiciclo → media potencia
- 100% de atenuación: el TRIAC nunca se dispara → sin potencia
La implementación de Tasmota está calibrada en potencia, lo que significa que un ajuste del 10% del dimmer resulta en aproximadamente un 10% de consumo eléctrico. Esto la hace ideal para aplicaciones como derivar el exceso de energía solar hacia un calentador de agua o disipador térmico.
Aplicaciones típicas
- Atenuación de lámparas incandescentes y halógenas
- Control de calefactores resistivos
- Regulación de la velocidad de ventiladores (motores universales)
- Derivación de energía solar hacia acumuladores de calor
- Control general de cargas AC resistivas
Requisitos de hardware
Componentes necesarios
- Placa ESP8266 o ESP32 con firmware Tasmota instalado
- Módulo dimmer TRIAC con salida de detección de cruce por cero
Módulos listos para usar más comunes:
- Módulo dimmer AC RBdimmer (1 o 4 canales)
- Módulos similares basados en TRIAC BTA16/BT136 con optoacoplador MOC3021
Conexiones del módulo
Un módulo dimmer TRIAC típico tiene las siguientes conexiones:
| Pin del módulo | Descripción |
|---|---|
| VCC | Alimentación (3,3 V o 5 V según el módulo) |
| GND | Masa (común con ESP) |
| ZC | Pulso de salida de detección de cruce por cero |
| PWM | Entrada de control del dimmer |
| AC IN | Entrada de red (fase y neutro) |
| AC OUT | Salida a la carga (lámpara/calefactor) |
Esquema de principio
┌─────────────────────┐
│ TRIAC Dimmer │
│ Module │
┌───────────────┤ ├───────────────┐
│ │ ┌───┐ ┌───┐ │ │
AC Line ──────────►│ │ZC │ │PWM│ │◄────────── AC Load
(230V) │ │Det│ │In │ │ (Lamp)
│ │ └─┬─┘ └─┬─┘ │ │
Neutral ──────────►│ │ │ │◄──────────────┘
│ │ │ │
└────┼────────┼───────┘
│ │
│ │
┌────┴────────┴───────┐
│ ESP8266/ESP32 │
│ │
│ GPIO14 ◄───── ZC │
│ GPIO12 ─────► PWM │
│ │
│ VCC ◄───── 3.3V │
│ GND ◄───── GND │
└─────────────────────┘
Configuración de Tasmota

Paso 1: Asignación de GPIO
Configure the GPIO pins in Tasmota's web interface:
- Vaya a Configuración → Configurar módulo
- Establezca las siguientes asignaciones de GPIO:
| Función | Componente GPIO | Descripción |
|---|---|---|
| Cruce por cero | Counter4 |
Recibe los pulsos ZC del módulo dimmer |
| Control dimmer | PWM1 |
Controla el retardo de disparo del TRIAC |
Ejemplo de configuración (GPIO14 para ZC y GPIO12 para PWM):
| GPIO | Componente |
|---|---|
| GPIO12 | PWM1 |
| GPIO14 | Counter4 |
Tras establecer los GPIO, haga clic en Guardar y espere que el dispositivo se reinicie.
Paso 2: Comandos esenciales
Antes de conectar físicamente las señales de cruce por cero y PWM, ingrese los siguientes comandos en la consola de Tasmota:
SetOption99 1
SetOption99 1
Activa la detección del flanco ascendente de la señal de cruce por cero. Necesario para una sincronización correcta con la onda AC.
LedTable 0
LedTable 0
Desactiva la corrección gamma. Para lámparas y calefactores se requiere una respuesta de potencia lineal: 50% de dimmer = 50% de potencia. La corrección gamma está diseñada para la percepción LED y distorsionaría la curva de potencia.
SaveData 0
SaveData 0
Desactiva el guardado periódico del estado del dimmer en la memoria flash. Esto evita el parpadeo que puede ocurrir durante las operaciones de escritura. Especialmente recomendado para ESP32.
Paso 3: Opciones adicionales (configuración multicanal)
Si utiliza múltiples canales PWM (p. ej., un módulo dimmer de 4 canales), ejecute también:
SetOption68 1
Activa el control de canal independiente. Cada canal PWM funciona como una luz separada que puede controlarse individualmente con Channel1, Channel2, etc.
Resumen de configuración
Ejecute estos comandos en orden antes de conectar el hardware:
SetOption99 1
LedTable 0
SaveData 0
Para configuraciones multicanal, añada:
SetOption68 1
Operación del dimmer
Comandos básicos
| Comando | Rango | Descripción |
|---|---|---|
Power |
ON/OFF/TOGGLE | Encender o apagar la salida del dimmer |
Power 0 |
— | Apagar |
Power 1 |
— | Encender |
Power 2 |
— | Alternar |
Dimmer |
0-100 | Ajustar nivel de brillo/potencia en porcentaje |
Dimmer 50 |
— | Ajustar al 50% de potencia |
Dimmer +10 |
— | Aumentar un 10% |
Dimmer -10 |
— | Disminuir un 10% |
Control de canales (multicanal)
Cuando SetOption68 1 está activado:
| Comando | Descripción |
|---|---|
Channel1 0..100 |
Controlar el primer canal dimmer |
Channel2 0..100 |
Controlar el segundo canal dimmer |
Channel3 0..100 |
Controlar el tercer canal dimmer |
Channel4 0..100 |
Controlar el cuarto canal dimmer |
Efectos de fundido y velocidad
| Comando | Rango | Descripción |
|---|---|---|
Fade |
0/1 | Activar (1) o desactivar (0) las transiciones suaves |
Fade 1 |
— | Activar la atenuación gradual |
Speed |
1-40 | Velocidad de transición (1 = más rápida, 40 = más lenta) |
Speed 5 |
— | Transición a velocidad media-rápida |
Ejemplo de secuencia para atenuación suave:
Fade 1
Speed 10
Dimmer 75
Comando de calibración
ZCDimmerSet
Este comando se usa para calibrar el timing del dimmer de cruce por cero. Consulte la documentación de Tasmota para los procedimientos de calibración específicos si experimenta problemas de timing.
Solución de problemas
La luz parpadea o es inestable
Posibles causas y soluciones:
- SaveData activado: ejecute
SaveData 0para desactivar las escrituras periódicas en flash - Señal de cruce por cero deficiente: verifique el cableado, asegure conexiones sólidas
- SetOption99 incorrecto: verifique que
SetOption99 1esté activado - Interferencia Wi-Fi: pruebe
SetOption65 1para reducir las transiciones de reposo Wi-Fi
La luz no responde a los comandos del dimmer
- Verifique que la configuración GPIO coincida con su cableado
- Compruebe que
Counter4esté asignado al pin de cruce por cero - Asegúrese de que el módulo TRIAC reciba la alimentación AC correcta
- Pruebe primero con
Power 1para verificar la conectividad básica
Rango de atenuación demasiado estrecho
Algunas cargas pueden no atenuarse de forma uniforme en todo el rango 0-100%. Puede ajustar el rango de atenuación efectivo:
DimmerRange 10,100
Esto establece el mínimo en 10% y el máximo en 100%. Ajuste el valor mínimo hasta que la carga funcione de forma fiable en valores bajos.
La luz está muy oscura incluso a valores de dimmer altos
Si LedTable 1 está activado (corrección gamma habilitada), la curva de respuesta es no lineal. Para cargas resistivas:
LedTable 0
ESP32: parpadeo durante la actividad Wi-Fi
En ESP32, active lo siguiente para un funcionamiento más estable:
SaveData 0
SetOption65 1
Consideraciones de seguridad
Requisitos críticos de seguridad:
- Desconecte siempre la alimentación de red antes de realizar cualquier cambio de cableado
- Use carcasas apropiadas — nunca deje circuitos de alta tensión expuestos
- Verifique la compatibilidad de la carga — los dimmers TRIAC funcionan mejor con cargas resistivas
- No supere el calibre de corriente de su módulo TRIAC
- Asegure una puesta a tierra adecuada de todos los equipos
- Use secciones de cable apropiadas para la corriente conmutada
- Instale fusibles o interruptores automáticos adecuados aguas arriba del dimmer
Compatibilidad de cargas
| Tipo de carga | Compatibilidad | Notas |
|---|---|---|
| Lámparas incandescentes | ✓ Excelente | Tipo de carga ideal |
| Lámparas halógenas | ✓ Excelente | Tipo de carga ideal |
| Calefactores resistivos | ✓ Excelente | Ideal para derivación solar |
| Lámparas LED regulables | △ Verificar especificaciones | Must be "leading edge" compatible |
| LED no regulables | ✗ No | Parpadearán o se dañarán |
| Fluorescentes/LFC | ✗ No | No compatibles |
| Motores (inductivos) | △ Limitado | Solo motores universales, con precaución |
| Transformadores | ✗ No | Puede causar sobrecalentamiento |
Tarjeta de referencia rápida
Comandos de configuración inicial
SetOption99 1 ; Enable ZC rising edge detection
LedTable 0 ; Linear power response
SaveData 0 ; Prevent flicker from flash writes
SetOption68 1 ; Multi-channel independence (if needed)
Operación diaria
Power ON ; Turn on
Power OFF ; Turn off
Dimmer 50 ; Set to 50%
Dimmer +10 ; Increase 10%
Dimmer -10 ; Decrease 10%
Channel1 75 ; Set channel 1 to 75%
Transiciones suaves
Fade 1 ; Enable fading
Speed 10 ; Set transition speed
Dimmer 100 ; Fade to full brightness
Referencias
- Documentación de luces Tasmota
- Referencia de comandos Tasmota
- Documentación SetOption99
- Módulo dimmer AC en rbdimmer.com
← Componente ESPHome | Contenido | Siguiente: Biblioteca Arduino IDE →