Powering Arduino with ATX PSU...

I am currently in the process of finalizing a 10-probe temperature display for monitoring the temps of various components inside my computer. I have been using USB to power the Arduino so far, so I am looking for a way to provide power through the actual power input on the Arduino as opposed to the 5v USB power. Is there much of a difference?

I had read somewhere a while back that the Arduino responds differently to USB power than it does to the 9-12v power input, is that true?

Basically my thought was to power the Arduino directly from my ATX PSU, either to have the Arduino power on automatically when I power on the computer, or to use the 5v standby power from the PSU to have it powered on all the time (provided there is no difference between how the Arduino responds to the 5v)

I always see the power input specs as 9v-12v nominal input, so if I can not use the dedicated power input on the Arduino with the 5v SB from the PSU, can I safely use the 5v SB through the USB port on the Arduino?

I could continue using the USB from my computer to power it, but the issue with that is that when I power down my computer the USB ports will no longer provide power to the unit, so that will not work. There is a dedicated charging port on my motherboard, but the problem with that one is that it is not very consistent, and it appears to put out 2A sometimes, and I fear it would bork my Arduino...

Anyhow, the Arduino will be on my desk, just a short distance from my computer, perhaps a 6ft cord is necessary, so the unit will not be inside my computer at all.

Thank you in advance!


There are 2 ways you can power your Arduino from a ATX PSU:

1) directly from a 5V line. In this case, you have to connect the PSU directly to the Vcc (or +5V) line on the ARduino, thus bypassing its on-board voltage regulator

2) from a 12V line In this case, the power has to go through the Arduino's Voltage Regulator. In this case it will be connected to the Vin pin or the power connector on the Arduino, depending on the model (the Nano has a Vin pin, while larger boards have a both a Vin pin and a round power connector)

I'd prefer to use method number (2) above, because the Arduino's own voltage regulator adds additional protection against surges in the PSU. Using 12V on it might make it run a little hot, but it is still within spec. Besides, on an ATX PSU, the 12V lines can souce several AMPs, a lot more than the 5V lines.

The difference between doing this and powering from the USB really depends on what your ARduino will be connected to.

The USB port is usually limited to 500mA, while the 5V line on a PSU can souce a few Amps. This, however, is irrelevant, because the Arduino itself cannot sink more the 200mA (some say 400mA).

Unless you're running power-hungry shields/devices connected to the Arduino (like motors, steppers, pumps, fans, etc), the USB is more than enough.

Although I wrote I prefer option #2 above, USB is way better for me. Unless you have a very good reason no to keep using USB, then go for #2.

All I have connected are 10xDS18B20 temperature probes and a 3.2" 320x240 TFT Touchscreen shield w/SD card reader.

I am using all of the above-mentioned shield items... It is presently running fine off of USB, and nothing will be added or changed (some programming changes are coming, but that shouldn't change anything), I would like to use the power from my PSU, simply because then I can run it through a power switch and have it running whenever I want, and not just when the USB is powered...

This would require the 5v SB though, which is fine, but given that the Arduino (from what I have read) will only pull 250mA, the current capability of the rail is irrelevant...

I just wanted to be certain it would be safe to do and that powering it from the PSU through the power connector is safe...

Thank you!

I don't think I understand you.

Are you gonna use the PSU on a PC or are you going to turn an ATX PSU into a bench power supply?

If the former, the PC will be turned on, also powering the USB, so it is not that difficult to use USB to power your Arduino.

If the latter, and I've done that, it is quite feasible. You just have to make sure that the 5V output from the PSU is as stable as possible. You can also have other voltages from the same PSU:

-12V, -5V, 3.3V, 5V, 12V. Depending on where you take your GND from, you can also have: 24V, 17V, 15.3V, 8.3V, 7V, 1.7V

Or you can always add a LM338 adjustable voltage regulator to the PSU and you can have any voltage you want from 1.1V to 21V, up to 5A.

I will be using the power supply that is powering the computer I am monitoring the temperatures of. My issue is that USB does not provide power when the computer is off, so if I power the computer down, the Arduino will power down as well, though there is a USB charge port for mobile devices, I am reluctant to use it. The Arduino will also lose power with the 5V, 12V and 3.3V (Orange wire on SATA connector) as those are the only ones I would use, since the other voltages are meant for more critical components and I do not want to muck about with their power, since I can get the what I need from 8981 connectors (except for 5V SB)...

Regarding the comment, "Depending on where you take your GND from"... The ground is all the same, so no matter where I ground to it doesn't matter, what does matter is the colored wire you connect to, since those are the 5/3.3/12v (Talking peripheral connectors only, so 8981/SATA/PCIe/Berg). If you open up an ATX PSU, you will find that all of the ground wires terminate to a single ground point.

Anyhow, I just wanted to be sure the Arduino would manage the input from an ATX PSU.

Thank you very much for the response.


Your statement of "ground is ground" is not correct.

What I meant by the ground comment, is that ground is relative. If you power anything from -12V and +12V, the Electric Potential Difference on the powered device will be 24V, and the ground on that device will be connected -12V rail on the power supply. So, the grounds are different.

Ground is not an absolute definition. Like I stated, what is +5V on one device, can become ground on another. Suppose you want to power your ARduino with 7V: you would connect the ARduino's GND pin to +5V on the PSU and it's Vin pin to +12V. The voltage on the arduino is 7V, but what it calls ground is what the PSU calls +5V, and there will be a Electric Potential Difference of 5V between the Arduino's GND and the computer's GND. Of course, this would prevent them from talking to each other in many ways, but neverthless it is still a way of powering a device.

Keep this in mind: when you start considering voltage as an Electric Potential Difference, everything is relative, even ground.

I am no electrical engineer, and what I know is certainly not infinite...

That being said, I guess I am lacking in my understanding of what you are referring to...

What I think you are saying is that the 'effective difference' between the +12v and ground is 24v. What I am confused about is the phrasing you used (which could be standard EE parlance for all I know and I am simply applying non-EE logic to it...), I think what you mean is that the ground wire becomes a -12v once a +12v DC circuit is connected to it... In the same way as that same wire would become a -5v if +5v circuit were connected to it... However, they all terminate in the same location and trace to the same ground, so there is no -12v rail...

Is that roughly accurate?

I just want to be clear, I am in no way trying to be argumentative, I just really have athirst for knowledge, and anything I do not understand I have an unending NEED to fully understand... :-)