46

I've been searching around for more information on the /boot/config.txt configuration directive max_usb_current, trying to find out exactly what happens when that is set to 1, but it's hard to find any official documentation.

I know the following:

  • Setting max_usb_current=1 sets the available current over USB to 1.2A (default is 600mA)
  • This can help if you have a decent power supply (2A, at least) and need to power something like a small external HDD or something that needs 300+ mA.
  • This feature is only available on the B+ and Pi model 2 (at the time of this writing)

But some of the people mentioning the setting warn against setting this value unless you absolutely need to... my question is, why is that? Is something else disabled or changed about the Pi that would increase a risk of damaging the Pi or anything powered over USB, or is it more a general warning to scare off people who don't know what they're doing and might not have a decent power supply to the Pi?

4
  • 1
    I've seen similar warnings, without offering a reason. You'd probably need to post this question to the official forums. Perhaps pose it as a Pi 2 question in the Pi 2 Q&A thread while it is still active?
    – joan
    Commented Feb 15, 2015 at 9:18
  • 1
    @joan - Thanks, I posted over there, and already got a response: raspberrypi.org/forums/viewtopic.php?f=29&t=100244 Commented Feb 15, 2015 at 21:43
  • 1
    on pi3b the flag doesn't seem to have any effect; the output of sudo lsusb -v | grep MaxPower is unchanged and still shows MaxPower 500mA, on the other hand pi4b after the tweak shows MaxPower 896mA
    – ccpizza
    Commented Sep 12, 2023 at 12:10
  • @ccpizza: How does that (sudo lsusb -v | grep MaxPower) stack up against the published specifications?
    – Seamus
    Commented Nov 9, 2023 at 16:26

2 Answers 2

44

NOTE:

Please note that this Q&A pertains to the RPi Model 2. Therefore, this answer may or may not be accurate for later models of RPi

End of Note


It seems that the only concern is that your power supply, if it's not a decent, reliable supply capable of 2A+ of clean output power, might not be able to power the Pi sufficiently, resulting in crashes or frequent rainbows.

See, specifically:

All that max_usb_current=1 does is to set GPIO38 high, which in turn turns on a FET, which connects a second 39K resistor in parallel to an existing one, on pin 5 of U13, the AP2553W6 USB power manager, lifting the current limit from 0.6A to double that (1.2A), see no possible scenario there why the PI resets because of that, except in case the gate of the FET Q4 is somehow shorted to GND. Which could be caused by a production fault. Inspect Q4, as look if there is solder shorting pins together. Also R6 (resistor mounted between gate of Q4 and GND) should be 100K not 0 Ohm. U13, Q4 and R6 should be near the USB ports.

That was from the thread B+ and max_usb_current, which I found after posting the same question here to Any negative impact with setting max_usb_current=1?.

2
  • Is this answer applicable to Models after 2?
    – Seamus
    Commented Nov 9, 2023 at 13:22
  • It's 2024 and this still works on a Pi4 that needs to supply power to USB devices when using a hat to power the pi.
    – TechnoTim
    Commented May 18 at 17:12
1

There's more to it than that. I read that the in order to boot off the usb device it must be recognised by some code in /boot/bootcode.bin. For example I have an old 2.5inch hard drive from an old laptop. This can be recognised by Raspbian if the system is booted off the sd card yet the system will not boot off the hard drive if the sd card is removed. I wish to thank the developers for their hard work. Some usb sticks, which before would not boot, now will.

1
  • 3
    Hi and welcome! Could you please add a source to support your claim?
    – David
    Commented May 6, 2019 at 1:02

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.