5

I was surprised that this question had no answer on Stack Exchange and I can't find much about it elsewhere so, in the hopes that it will be useful to people other than myself, I'd like to ask:

How can one power two arduinos using the same power source? Such that the first is connected by barrel jack to a 12v transformer.

I saw this youtube video which very briefly mentions doing this by make the connections:

Ardu1 --> Ardu2

5V --> 5V

GND --> GND

This surprised me as I was not aware the 5V could operate as a power input. I was expecting the use of the VIN pin somewhere along the line.

Am I correct in thinking that the second arduino would take power on it's VIN pin from 5V on arduino one?

If so, where should the second arduino ground to?

5

4 Answers 4

1

I have powered numerous arduino's via the 5V pin. I would however call this an advanced usage because there are some limitation/dangers.

First of all: Power your arduino via 5V and plugin a powered USB cable or a powered plug and it may (probably will) damage your USB or arduino or both.

Secondly; it is best to assume that all arduino's are different on behalf of the behaviour of the +5V pin. I know for a fact there is a difference with uno,yun,due.

thirdly: The way it is used on the video -you linked to- (power jack 5V arduino 1 to 5V arduino 2 and ground arduino 1 to ground arduino 2) makes that all power goes through the voltage converter on the Arduino 1. These voltage converters can not handle much current. This is only sufficient in very low power drawing applications.

It s not a good idea to connect the 5V pin of arduino 1 to Vin of the arduino 2. This because the voltage converter on arduino 2 will not be able to provide 5V to The 5V cirquitry.

It is mutch smarter to connect the Vin from arduino 1 to Vin of Arduino2.

When I power arduino's from "standard batteries" I use a switching power supply that powers the arduino over a cut in halve USB cable. This way it is lots safer as I can add power over the jack and I can not plugin a second USB cable.

1
  • Thanks, I don't have a high load but I have gone with VIN to VIN. There seems to be no advantage in using 5V over VIN. And more current and protection with VIN to VIN.
    – xeuari
    Feb 25, 2016 at 13:37
3

You could put the 12v from the barrel jack on both Arduninos Vin pins by jumpering the Vin pins together instead of the Vin->+5 or +5->+5. Then they'd have independent protection and regulation of 1A, 5V through their NCP1117ST50T3G chips.

2

Connecting the +5V pins together is acceptable providing you don't exceed the total load that the source of the +5V can provide. This would be either:

  • The maximum the USB interface can provide:

    Bus 003 Device 013: ID 2341:0043 Arduino SA Uno R3 (CDC ACM)
    Device Descriptor:
    ...
      bDeviceClass            2 Communications
    ...
      idVendor           0x2341 Arduino SA
      idProduct          0x0043 Uno R3 (CDC ACM)
    ...
      Configuration Descriptor:
    ...
        MaxPower              100mA
    

    That would seem to be 100 mA from doing lsusb -v on my Ubuntu system.

  • The maximum that the voltage regulator can provide (if you are using the power jack, or Vin). This would depend on the model of Arduino, plus what your input voltage is (the higher the input voltage, the hotter the voltage regulator will get).


When I am testing things like sending I2C from one Arduino to another, I will often connect the USB to one of them, and just connect together the +5V pins (and ground of course) so that the second Arduino gets powered.


Caveat : my page about power indicates that without using sleep modes and other techniques, a Uno may consume 50 mA on its own. Thus connecting two Unos is likely to be reaching the limit that the USB interface can provide. Connecting three or more is likely to be problematic.


Regarding the USB power issue, see How to get more than 100mA from a USB port. On that page it says:

USB-100mA

USB by default will deliver 100mA of current (it is 500mW power because we know it is 5v, right?) to a device. This is the most you can pull from a USB hub that does not have its own power supply, as they never offer more than 4 ports and keep a greedy 100mA for themselves.

...

Near the end of enumeration you setup device parameters. Very specifically the configuration descriptors. If you look on this website they will show you all of the different pieces that can be set. It shows that you can get right up to 500mA of power requested.

As the negotiation in this case appears to be requesting 100 mA (and not 500 mA) the port on the PC may well limit you to that.

4
  • Good answer (+1), but as per USB specification, maximum current a USB 1.1/2.0 port can provide is 500 mA. Feb 25, 2016 at 4:50
  • See expanded answer.
    – Nick Gammon
    Feb 25, 2016 at 5:07
  • nice extension :-) Feb 25, 2016 at 5:14
  • Yeah, thanks. Loads of information. And your page on power and sleep modes is excellent reading. Bookmarked!
    – xeuari
    Feb 25, 2016 at 13:58
0

This surprised me as I was not aware the 5V could operate as a power input. I was expecting the use of the VIN pin somewhere along the line.

Power is just power. It doesn't have a "direction" like an IO pin. It just flows from a point of higher potential to a point of lower potential. If you put a load onto the 5V pin then the power will flow out of the 5V pin, through the load, to the lower GROUND potential. And that is all the other Arduino is - a load. The power flows out of the 5V, into the other Arduino, through it, and down to the lower GROUND potential.

It's just like a rechargeable battery. Put a light on the battery and the electricity flows out of the battery to light the lamp. Apply a higher voltage to the battery from another supply and the power flows out of the supply into the battery, recharging it (or making it explode if the voltage is too high).

2
  • Thank you, this is a very clear explaination. So polarity is not an issue when powering the arduino?
    – xeuari
    Feb 25, 2016 at 13:32
  • Polarity is a different thing altogether. Reversing the polarity would involve connecting 5v of one to gnd of the other and vice versa. That would result in the death of one arduino.
    – Majenko
    Feb 25, 2016 at 13:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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