Noise of Driving relay from avr

Thread Starter


Joined Mar 15, 2010
My avr drives relay to switch ac lamp ,i use ciruit like the attached. the same output is used for ac motor
There is external interrupt on int 0 ,When i connect the ac supply of loads the avr enters interrupt, and the lcd hangs and shows nothing.
I used capacitor 1uf on the +5 supply of the circuit. all the dc supply of control circuit and relay circuit is common. all the ground is common.
Isn't transistor enough?should it be optocoupler?



Joined Feb 8, 2018
I had a similar problem with a board I designed. It had 8 relays to control four motors. All was fine on 120 volts but when operated on 240 volts the register/driver for the relays would sometimes be cleared when the contacts opened or closed.

It seems that some relays exhibit either significant capacitive coupling from the contacts to the coil or there is some sort of "transformer" action going on.

I suggest adding a suitable transient suppression device across the relay contacts. A motor can store significant energy in its inductance and when the contacts open this can cause more arcing than would occur with a resistive load. There are many ways of suppressing the transient, including a series R-C network, a metal oxide varistor (MOV) or a bidirectional semiconductor suppressor (essentially two zeners connected in series, either cathode-to-cathode or anode-to-anode). Each has its advantages and disadvantages. You should be able to find some information on the net.

You might also improve things by connecting a [capacitor and resistor in series] across the transistor. I would try something like a 10 nF capacitor in series with a 100 ohm resistor. This would provide a local path to "short circuit" high frequency noise that might couple through the relay.

The 1 uF capacitor you mentioned: a ceramic capacitor on very short leads near the relay and its driver?