Hay dos formas de hacer esto.
1 - Encienda el Arduino desde el control del interruptor de pared.
De esta manera, cuando apagas el interruptor, el Arduino se apaga y la lámpara también. Cuando vuelvas a encender el equipo, Arduino arrancará y la regulación funcionará como siempre.
Ventajas: no hay consumo de energía cuando está apagado, algo más fácil de cablear.
Contras: hay que esperar para iniciar cuando se enciende la luz, Arduino puede obtener apagones inesperados (por ejemplo, si está guardando o transmitiendo datos).
2 - Encienda el Arduino desde otra toma de corriente permanente y lea el Switch como entrada.
De esta manera, el Arduino siempre está encendido y atenuado, y cada vez que detecta un cambio de estado en el interruptor de pared, decide qué hacer (encender / apagar, regular, etc.)
Contras: es un poco más difícil de cablear (debe volver a cablear el conmutador para CC, eliminando así la funcionalidad original, u optar por acoplar su entrada para leer si AC está conectada)
Ventajas: Arduino siempre está encendido, por lo que no hay retrasos en el arranque, puedes agregar encendido y apagado, salidas, etc.