Is it safe to use 5V and 12V with common ground? (very beginner)

Hi all, this is my first post here, and my second day with Arduino and with electronics, so I’m really a beginner, also not a native english speaker (let me know if something doesn’t make any sense).

I tried to do my best to share my thoughts and ask the correct questions, but I’m sure I made some huge mistakes, please excuse me.

This is my “Hello World” project, I have:

  • An Arduino Due
  • A biploar stepper motor from a DVD driver
  • An Easy Driver stepper motor driver (v4.2)
  • A TowerPro 9g micro servo (SG90)
  • An old ATX PSU (Enermax Liberty ELT500AWT 500W)
  • A chunk of jumper cable, a breadboard, lots of free time and big plans

I’d like to control the stepper motor and the servo via USB. The program is working (basic SerialPort buffer writing with C#), everything looks good, but I’m afraid I’ll fry something because of the different voltages.

I read that I should not use the 5V pin on Arduino because the Due based on 3.3V. Since I didn’t want to use batteries or multiple DC adapters for different voltages, I transformed my old ATX PSU to a DIY lab power supply unit. It has all the required voltages (3.3V, 5V, 12V). With this solution I don’t need to use any power pin or VIN on Arduino, only the digital ports and the GND (magic smoke stays inside the chip hopefully).

The micro servo uses 5V, and the EasyDriver uses 12V. I simply wired all the different voltages and the ground to a breadboard and I try to use the optimal one for each component. This is how it looks like currently:

As you can see the Arduino, the Easy Driver and the micro servo all wired to this breadboard, one-by-one. It is working, however for some reason if i don’t plug in the 12V power input into the breadboard (so the only available voltage is the 5V for the servo) the power LEDs are still turned-on on the Arduino and on the Easy Driver. It looks like the Arduino tries to do it’s job with the only 5V which comes from the servo (this is just an uneducated guess). The stepper motor is struggling to rotate, the power LEDs are very pale, so it doesn’t look good. Also if I plug-in the 12V and 5V together (as you can see on the image), the Easy Driver’s chip getting hotter with time (I can touch it for about 20 sec but I can’t measure it). Is it somehow adds together, and makes 5V+12V?!

I’m not sure what’s the problem here. Can I use different voltages with common ground like I do it on that image? is there a chance that my solution fries something? Am I using the common ground correctly? I’m lost here.

Also, I’m not even sure which GND (on the Arduino) should/must be plugged in to the common ground. All of them? Some of them? Is it depending on the power load?

One last thing, I’m not sure if my approach with the ATX PSU is a good idea. What do you think?

Cheers!

Yes, you must connect the grounds. All the grounds on the Arduino board are connected, you can use whichever one you want.

You say you had the 12v line disconnected from the driver, yet you still had the IO pins connected to it. You'd need to check the specs on that board, but in many cases, you need to avoid applying an external voltage to logic pins when the board is not powered, otherwise it will be "back-powered" through the protection diodes, which are not designed to carry that much current - this is a good way to burn out hardware. Did you set the 3/5v jumper?

ATX supplies look like a great source of a supply on paper - but they're not always stable at very low loads. Some are, but some aren't.

Hi Dandie,

there seems to be some disparity between what you are describing happens and what you have shown in your connection diagram.

what you have shown should work just fine, but that being said i am guessing that you are missing a connection or two on your diagram.

let's clarify a couple of things: 1) you show 3.3V from your supply to your breadboard, but that goes nowhere. this is not acutally a problem, but is it correct? 2) 5V from your power supply goes to your servo and nowhere else. again, this is not a problem but is this how it really is?

could you maybe supply a photo of your actual set up to verify the above.

Some general points - yes it is ok to connect the 3.3, 5 and 12V supplies via a common ground in this case. You only have one ground wire from your power supply anyway so all the voltages will have common ground.

it is not necessary to connect all the GND pins on the Arduino to your supply. you do need to make sure that you have sufficient wires to carry your current - but because you are supplying your motors by separate supplies you will be fine with only the one ground wire that you have going to your input jack.

Note that 12V into the input jack will supply the following to Arduino: 12V at Vin 5V at 5V 3.3V at 3.3V. in other words, with just the 12V supply the Arduino will generate the other supply lines from that.

What you have configured with your power supply is fine and keeps the 'heavy current' away from the Arduino. this should be fine except for what you describe about the easy-driver chip. i have no experience with this device so i am assuming that 2 grey wires you have connected to pins 2 and 3 are 5V logic?

all for now, good luck Pete

That servo has a stall current with 5V supply (horn locked) of 650 ±80mA. So that is way too much to run from the Arduino's 5V regulator.

The 5V line supplies power to your servo only.

So if there is no 12V it is no wonder that your Arduino does not work properly. You supply power to the Arduino only via the 12V line.

Yes you can use common ground when using different supply voltages.

Please tell me why you connceted your Arduino to ground three times?

Please make a hand-drawn circuit diagram.

Fritzing diagrams are nice when they are tested and run perfectly.

For troubleshooting Fritzing diagrams are hard to analyze.

He explained why he grounded it in all three places - he's new to electronics. He even asked if he needed to do that!

First of all, thank for you answers! It helped a lot, and generated new questions. Let me answer to them one by one.

@DrAzzy: "You say you had the 12v line disconnected from the driver, yet you still had the IO pins connected to it. You'd need to check the specs on that board, but in many cases, you need to avoid applying an external voltage to logic pins when the board is not powered, otherwise it will be "back-powered" through the protection diodes"

Yes, when I remove the 12v line I don't touch the IO pins. What do you mean by "external voltage"? Isn't the external voltage the 12v line itself, and since I removed it, there's no external voltage in the board. Or the problem is that I let the 5v plugged in but removed the 12v?

And no, I haven't heard about this 3v/5v jumper. I found an image with details here: link Can you please clarify me which one is interesting for me (yes, I guess all of them).

@Pdeeming: Actually the image is accurate, so yes, I'm not using the 3.3v right now, and only use the 5v for the servo. I don't have many components yet, just this servo and motor, but in the future there's a chance that I'll need the 3.3v so I added it to the breadboard as well.

I'll do an image about my setup within an hour.

"[...] you will be fine with only the one ground wire that you have going to your input jack." Okay, not sure if I'm right, so I don't need to use any GND pin from the Arduino (in the current setup) because the 12V power jack's GND will be the common ground?

"[...] in other words, with just the 12V supply the Arduino will generate the other supply lines from that." Okay, this is the big one. When I use the 12V power jack with a powerfull external power supply, I can simply just use the 5V and 3.3V pins without any possible issues? I don't need this complicated setup with the different voltages from the ATX PSU because a decent 12V line and the Arduino will generated safe 5V and 3.3v? As you said, I did this becaise I wanted to keep the "heavy current" away from the Arduino. Is this overkill?

And yes, the gray cables are all 5V logic wires.

@Grumpy_Mike: Probably your comment answer by question above, it is not safe to use the 5V for that servo, and I should stick with ATX PSU solution?

@arduinoaleman: So if there is no 12V it is no wonder that your Arduino does not work properly. The surprise for me was that it was sort of working. I expected it to simply shut down without the 12V but instead it was struggling to do it's job with 5V, it was like the 5V servo simply let the voltage go through itself and let it go the Arduino directly. This is what happaned here?

Please tell me why you connceted your Arduino to ground three times? I'm afraid because of I'm dumb. You guys pointed out that I can use only the power jack's GND and that's all, I can let the other GND pins empty.

Please make a hand-drawn circuit diagram. Okay, I'll try to do it. It's like the the good old "proper music sheet vs guitar tab" scenario :) Tab is easy to use and understand for newbies, but deficient. Of course it's an even bigger problem here.

it is not safe to use the 5V for that servo, and I should stick with ATX PSU solution?

Yes.

Read this on why you need to connect the grounds together:- http://www.thebox.myzen.co.uk/Tutorial/Power_Supplies.html