# Using directly Arduino pins, can the Arduino deliver the current needed to trigger 4 or 5 optoisolators (moc3023) at the same time?

I'm using an ATmega328P to contol 4 optoisolators via 2n3904 transistors. It works perfectly.

I want to eliminate the transistors if the Arduino can deliver the needed current to control them.

**It is a simple card SSR relay (with 4 outputs ) controlled by atmega328p.
**VCC 5V
**MOC3023 minimum current s 5mA
****Sorry! LEDs are red 3mm

• So what did you find was a safe limit for the GPIO on the ATMega328P and what is your required current in the MOC3023. What is the ATMega328P operating voltage? Please capitalise properly for clarity. Welcome to EE.SE. – Transistor May 19 '20 at 18:15
• Please add a schematic of your system, and provide a link to the manufacturer's datasheet for the optoisolators. – Elliot Alderson May 19 '20 at 18:25
• 5 random phase opto-triacs... what are you building, a color organ? It may make sense to do that with directly DC supplied LEDs these days, not lightbulbs. – Chris Stratton May 19 '20 at 18:31
• Atmega 328p voltage is 5V...and required current in the MOC3023 is 5mA – artCoding May 19 '20 at 18:32
• electronics.stackexchange.com/questions/67092/… – Bruce Abbott May 19 '20 at 19:11

If you are using an Arduino pin to sink current by pulling low then we need to look at the $$\V_{OL}\$$ specification for the ATmega. If we check the specification for the part, with a 5V supply, we see that it will sink at least 10mA while pulling down the output pin to 0.9V or less. So, it looks like the Arduino can indeed drive the optoisolator and LED. Will the LED be bright enough for you? It's hard to say. The LED manufacturer recommends 16mA to 18mA.