0
\$\begingroup\$

I have a pre-built relay module and it apparently takes around 70 mA to activate the coil. However, the relay is a low-level-trigger which requires making a connection from "IN" to GND (or GPIO LOW) to activate the coil.

In my previous builds I have been using a ULN2003 Darlington array which worked perfectly as a buffer for normal relays to protect the GPIO pins on an Arduino(MEGA and Nano), but, as the relays are pre-built and require low level triggering, I wanted to know what current I could be draining from the relays' "IN" pin and whether it would be too much for an Arduino's GPIO pin directly? If this is even a concern in the first place? (They're meant to be safe, but I am having doubts).

Also, if the current drain is too high, what would be the best way to go about this? Could I just wing it and use VCC as the on/off mechanism instead (with the "IN" pin on the relay module permanently grounded)?

Additional info:

  • I've not had chance to test the mA being drained (the last relay I ordered was DOA).
  • There are four relays so far, and each could be on or off at any one time (0 mA - ~280 mA potential).
  • The Arduino GPIO pins can't sink much (~20 mA each I think, safely), and as the other pins are already being used at their recommended levels there's little room for much else without some kind of buffer.

Low-Level-Trigger Relay:

Low-Level-Trigger Relay

\$\endgroup\$
  • \$\begingroup\$ that has an opto onboard, so it shouldn't drain very much at all from the GPIO \$\endgroup\$ – dandavis Oct 15 '17 at 14:16
1
\$\begingroup\$

enter image description here

Figure 1. A similar board schematic. Source: ElecFreaks.

  • The relay is switche by a transistor.
  • The transistor is switched by an opto-coupler.
  • The opto-coupler is switched by your micro-controller.
  • There is a 1k resistor in series with the LED and opto-LED so current is limited to a few mA. (Your board doesn't seem to feature the LED.)

These are designed to be driven from micro-controller GPIO pins so you will be fine.

Note that you need to connect Vcc to your 5 V supply - not to the GPIO.

\$\endgroup\$
  • \$\begingroup\$ Thanks for the quick reply! After some more searching, in addition to your answer; the low-level-trigger relay "IN" pin apparently drains 2-5v @ 2mA; well below the GPIO rating on my Arduino's pins. This saves me using Darlington arrays! \$\endgroup\$ – Timeless Oct 15 '17 at 14:16
  • \$\begingroup\$ Note that the Darlington arrays wouldn't drive the input of that relay board. They are open-collector transistors and can only pull down or "sink" current. The opto-isolator on this board requires the GPIO to "source" current. Thanks for accepting my answer. \$\endgroup\$ – Transistor Oct 15 '17 at 14:37
  • \$\begingroup\$ Exactly, I couldn't use them to isolate the relays anymore, well, not in a non-hack way (that I could see). \$\endgroup\$ – Timeless Oct 16 '17 at 16:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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