I/O Sink or Drive?

Is there any advantage/disadvantage for the 2560 r3 to SINK 5ma rather than DRIVE 5ma?

I did find a similar post from 11 years ago which said no. Is that answer still valid?

example attached

It is just not the usual logic that people expect. If you never let someone else work with your project, no one cares. But if you give the completed project to someone else that expect normal logic, you are creating problems.

Yes. Why do you think that might change?

Just checking, I know chip technology has changed some in the last 11 years.

AVR chips, like the 2560 R3 you mention, where developed in the 1990s and have not changed significantly.

Look at serial lines. They run inverted to keep the lines HIGH most of the time, it reduces/eliminates transient effects.

Why I use LOW or HIGH may depend on specific conditions that I can’t foresee now.

The terms normally used are SINK and SOURCE.

DRIVE is normally a more generic term. You could say the Arduino pin is DRIVING the led by either SINKING or SOURCING current.

No, not for any of the AVRs.
Several processor families can sink more current than they can drive. (although I can't offhand think of one commonly used in Arduino.)

Probably wrong

Is your question specific to the R3 or the ATmega2560 in general?
Is your question specific to the example you gave or about Sink/Source in general?
Is your question for specific I/O pins or any I/O pin?

For your specific example you gave there would indeed be a diference.

Uno R3 maximum total current through the pins is 200 mA —> Source + Sink. They don’t “balance”, they count the same.

Esp8266 can sink more than source, Esp32 can source more than sink..

Specific to Arduino Mega 2560 REV3.

LED 's on pins 4, 5, 6,& 7 ( different colors & series resistors)

Both really.

Thanks for your time

Each output can source or sink 20mA (absolute max 40mA), but there is a maximum per group (and a max 200mA for VCC and GND):

@barryfields Best to go to the source for the full story:

Look for IOH, IOL, specifications. THEN, look at, for example, VOH at a specific IOH (find the chart). Note how the output voltage sags as the output current increases.

Depends on the application but generally no.

Let me see if I can summarize here.

There is no significant difference to the life of the Arduino 2560 chips whether SOURCING or SINKING.

SOURCING puts additional load on the 1117 5v regulator. (800ma max minus ≈ 30ma for the MEGA16U2 & ATMEGA328)

SINKING also loads the 1117 regulator if one uses the onboard 5v supply for the load.

SINKING does not load the 1117 regulator if an off board 5v supply is used for the load.

The SINKING current is limited by the Arduino PCB trace sizes?

Total SINKING current is limited by traces within the chip (see post #13).
Total SOURCING current as well.

With higher VIN max load of the regulator decreases because of thermal dissipation.

Where did you get that?

Data sheets for