1. The AC Dimmer is designed to control the alternating current voltage, which can transfer current up to 600V/16А. In most cases, Dimmer is used to turn power ON/OFF for lamps or heating elements, it can also be used in fans, pumps, air cleaners, e.t.c.
2. Lately, Dimmer has become an often used decision for the smart home systems. For example, when you need to smoothly change the light brightness. The lamp is slowly turning ON or OFF, creating a comfortable atmosphere. Dimmer works most effective with filament lamps. It’s less stable with low brightness dimmable LED lamps, but with moderate and high brightness it will perform a solid job. Note that luminescent lamps (gas discharge lamps) do not support dimming.
3. Power part of dimmer is isolated from the control part, to exclude the possibility of high current disruption to a microcontroller.
4. The logical level is tolerant to 5V and 3.3V, therefore it can be connected to the microcontroller with 5V and 3.3V level logic.
5. In Arduino, dimmer is controlled with RBDdimmer.h library, which uses external interrupts and process time interrupts. It simplifies the code writing and gives more processing time for main code. Which is why you can control multiple Dimmers from one microcontroller.
6. Dimmer is connected to Arduino controllers via two digital pins. First (Zero) to control the passing of Phase Null of AC, which is used to initiate the interrupt signal. Second (DIM/PSM) to control (dim) current.
7. Note that Zero requires connection to designated microcontroller pins (which are different depending on the model of Uno, Nano, Leonardo, Mega), since it tied to microcontroller interrupts.