I have a question about relays used by an arduino. I know how to wire them and they work fine for the most of the time.

But sometimes the relays doesn't correctly switch on or off. I can clearly see that the LED on the relay is in the correct state. I can also hear a faint "click" sound. But the relay is not really switching.

Even funnier, then I physically hit/punch the relay with i.e. screwdriver it starts to switch to the desired state...

Usually the problems start when the arduino is running for a few days.

I have also tried completely different relays and have the same issue with them.

Does anybody know what can cause such issues?


  • I am using an SRD-05VDC-SL-C relay with an Arduino Nano.
  • I have also tried different arduino compatible relays. Same issue.
  • I use it to power a light which uses ~250W.
  • Usually powering off works fine. But powering on needs a "physical hit" on the box of the relay.

I will try to measure the output tomorrow 7 o'clock when the relay is supposed to switch on again (just before I hit the relay box to force it to switch on)

enter image description here


  • 3
    \$\begingroup\$ Can you tell us about the load you are switching, and the specifications of the relay? It is possible for relays to undergo mechanical degradation if they are operated inappropriately, which can manifest in ways such as contacts that fail to connect or disconnect. \$\endgroup\$
    – nanofarad
    Mar 11, 2019 at 2:16
  • \$\begingroup\$ Relays need at least 2/3 of their rated voltage to switch and their rated voltage to switch fast. Can you measure anything? \$\endgroup\$ Mar 11, 2019 at 3:08
  • \$\begingroup\$ Are you controlling the relays directly with the output pins of the arduino? They can only handle up to 20mA. Your relay may need more current than that to safely switch. Check the datasheet and maybe use a transitor in between to supply your relay with enough power. \$\endgroup\$
    – jusaca
    Mar 11, 2019 at 7:32
  • 1
    \$\begingroup\$ This question is missing crucial information to be answerable. The LED is likely not related to the actual relay state, so it doesn't prove or disprove anything. Measure the voltage across the coil and compare it to what the spec says. \$\endgroup\$ Mar 11, 2019 at 8:30
  • \$\begingroup\$ I have edited the question to answer your questions guys. I make a little schematic today of my circuit. \$\endgroup\$
    – gentooboy
    Mar 11, 2019 at 13:50

3 Answers 3


I think the problem is with the way the relay is being powered. The voltage regulator on Arduino is not sufficient enough to provide the needed amperage for switching the relay properly and thus even if the led lights up the relay contacts are not touching with enough force.

I would recommend you to use an external 5V source for powering the relay. Or if you are supplying your Arduino Nano with 5V then connect the relay's VCC to VIN of Arduino.

Also, do keep in mind that if the relay is not supplied with proper power, it can lead to internal sparking of switching contacts which can damage the relay.

  • \$\begingroup\$ Thank you a lot for your insight. I will try to power the relay externally and see if this fixes the issue! \$\endgroup\$
    – gentooboy
    Mar 11, 2019 at 14:49
  • \$\begingroup\$ After using an external 5V power supply for the relay it seems to work. I will test it for a few weeks, but for now I think this is the correct answer. Thank you! \$\endgroup\$
    – gentooboy
    Mar 12, 2019 at 14:08

I would check that you are supplying enough voltage to the relay. If you're using one of those boards with a built in driver, you'll want to measure right across the coil terminals.

If the relay is getting enough voltage, then the contacts are probably the issue, and you should get a new relay.

  • \$\begingroup\$ I have tried completely different relays. But for some reason I have the same issue. I will try to measure the voltage tomorrow when the relay is supposed to switch on again. \$\endgroup\$
    – gentooboy
    Mar 11, 2019 at 13:52

Had exactly the same issue with a RPi powering the same relay. I was using the 3.3V output to power the relay, same as the detection - this is the default with the jumper is in place. Changed it to use the 5V output and it now switches fine.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.