7

Once upon a time there was only one way to charge a usb device and that was done at 5V and 500mA max, or so I've been told.

'Modern' USB Power Adapters like the Apple 1Amp, 2Amp and 2.4Amp and many Samsung chargers used for their tablets use a way of 'negotiating' higher power draws (anything above 500mA I presume) via Resistors or some other 'Smart' circuit on the D+ and D- (the data ports of the USB cable).

I have a couple of iPad chargers both the 10W (5V, 2Amp) and the 12W (5v, 2.4Amp) models and I tried to use them on the Raspberry Pi 2. I was surprised to notice that the Pi's red power LED was blinking all the time, plus the 'pulsing colored square in the top right of the screen' (apparently a newer firmware way to alert as to the insufficient current) was going on and off when I used the Pi 2 to compile something.

There is no question of faulty components, I have three Pi 2s exhibiting the same behavior on all my Apple chargers. My only conclusion it that the Pi can't use these 'smart' chargers and talk to them via the D+, D- data ports to 'negotiate' more power and is so kept on a short leash.

There is also this very good 3 USB port charger that IKEA has on sale (so new most websites don't have it) http://www.ikea.is/products/38976 that has a max of 2.4Amps on each port with a 3.4Amp total that also fails to work with the Pi 2 in exactly the same fashion.

  1. Is this the case? Does the Pi need 'classic' (non-smart) power supplies to give it 'all they've got' without asking questions?

  2. If so, is there a way to mod the Pi to tell these 'smart' chargers to give it more power? (heard something about shorting the D+, D- pin together on the Pi to achieve this or a 'smarter' solution of actually adding the right resistors to the ports to manually choose one of these 'smart'er modes.

PS. The internet is full of articles on how to mod a 'dumb' power supply for use in 'modern' devices, but none on how to use classic devices which need more power with 'modern' 'smart' chargers that behave in this way.

2
  • 1
    I'm sure the answer to #1 is yes -- that microUSB jack is just a more convenient choice than a barrel jack (especially since those are heterogeneous). It was not intended to allow the pi to function as an actual USB device -- the data pins aren't even connected. So, quotes smart unquotes charger...why don't they put a manual switch on the side? That would be smart -- maybe not so 'modern' though since it gasp requires a bit of responsibility and thought from the user.
    – goldilocks
    Commented Mar 20, 2015 at 17:15
  • @goldilocks Using a standard USB jack without implementing the standard, while ignoring its amperage limits thereby requiring unnecessary complexity in unrelated devices, also seems a very "smart" and "modern" move. But that would have required thought from the designer.
    – Andreas
    Commented Feb 22, 2021 at 15:06

3 Answers 3

3

A smart charger does not "listen to" the phone to determine how much current to provide. It is the other way around. The smart charger indicates to the phone how much current the phone is allowed to pull.

For example, Apple's iPod and iPhone chargers indicate the available current by voltages on the D− and D+ lines. When D+ = D− = 2.0 V, the device may pull up to 500 mA. When D+ = 2.0 V and D− = 2.8 V, the device may pull up to 1 A of current. -- Source

The RPi's power port with disconnected data lines would be considered "Non-standard devices" that do not negotiate power draw.

1
  • 1
    My question was in fact the other way around, presume you have an apple 2.1A or 2.4A charger and you connect it to the Pi 2. The Pi 2 draws less than 500mA with nothing connected but the red light "not enough" power will blink. Plugging a usb cable to an apple charger doesn't get you 2A of power. It seems the charger won't let go of that much power unless it feels something on the data port. So those lines aren't merely to notify the device of how powerful the charger is but it works the other way around too and the charger presumes the device is 500mA unless it uses the data ports correctly
    – unom
    Commented Sep 4, 2015 at 17:10
3

The Raspberry Pi's micro USB jack is for the supply voltage only. Its data pins are not connected to any circuitry on Pi let alone anything "smart" (just like @goldilocks comment suggests). Reference: schematics @ raspberrypi.org for A, B and B+. The schematics for the Pi 2 are not available there as of now but given the documented changes it seems very unlikely that the micro USB jack now serves any other purpose then power supply.

So when it comes to power supplies the Pi is quite dumb and prefers dumb chargers too.

1
  • 1
    I've checked my Pi 2 and it doesn't use the data ports either.
    – unom
    Commented Apr 24, 2015 at 16:06
1

My Raspberry Pi B+ had a blinking red LED whenever I connected it to the USB ports on the Asus RT-N66C router. Because I've read everywhere that it meant that it was experiencing a brownout, I installed a DROK USB tester inline (it shows voltage and current on the USB connection). It showed that voltage was a constant 5.01 V and current 0.23 A.

As this was not a condition for brownout, I gathered from this answer that the USB data leads had something to do.

I swapped the cable I was using, that only had charging leads active, with a full data+charge cable, and the LED stopped blinking. Current and voltage did not change, so I suspect that the B+ power supply somehow mistakes the lack of data cables as a low-voltage situation.

This also explains other answers that say that changing cables sometimes makes the blinking go away. It is because nowadays, some USB cables are used for charging only, and do not support data transfers. The B+ expects all leads to be supported. Hope this helps!

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.