Skip to content
ArtMG edited this page Oct 1, 2019 · 11 revisions

Power requirements

Raspberry Pi 2

The recommended output specification for a power supply adapter for the Pi 2 is:

  • 5 volts
  • 1.8 Amps

However you may be able to supply less current depending what you connect to the Pi.

NB: the Pi 3 Model B+ (a.k.a. 'Pi 3+') comes with a recommendation to use a 2.5A supply. See 'Power Supplies' section below.

The main board

A detailed analysis of the current drawn under different processing loads varies between 230mA and 350mA*, depending on the processing, sometimes more during startup or when devices are first plugged in. Other devices adds: GPIO devices (50mA), HDMI output (50mA) and the Camera module (250mA). The ethernet connection draws around 50mA even when idle.

USB devices

In addition, by default there is up to 600mA available in total across the four USB ports. You can double this to 1.2A by changing a setting in the firmware.

When using pen drives (USB flash storage devices) you can expect between 50 and 100mA per device attached, increasing to just over 150mA per device during read and write operations.

Devices like keyboards and mice do not have their own power, so may draw more current from the USB ports. Other devices have their own independent power supply (such as printers or externally powered disk drives), and these should draw very little current from the USB ports. If, however, the data connection cable has any extra circuitry, e.g. converting USB to Serial Port, then this will draw current from your Pi.

turn USB off to save power

If you are very limited to the total power available (e.g. running on battery), BabaAwesam has suggestions for reducing the drain from the USB controller and the comments supply other suggestions for ways to shut down circuitry (like HDMI) to reduce consumption further. Some people recommend sticking to the older Model A if you want better longevity with a battery power supply.

hard disk power

See some utilities and configurations to spin down hard disks to conserve power.

total limit

The micro USB power socket limits the total draw into the Pi at 2A.

Portable power

Its very easy to use a 'portable power bank' to supply a 5v power input to a pi, if you want to untether it. If you go wire free frequently, you might want to make things a little slicker, like:

  • Use a LiPo or Lithium Ion battery without the bulky case
    • so that it might fit in a smaller space
  • include a hat that regulates to the power requirements of the Pi itself
    • no more SD crashing through dodgy supply
  • Allow for power management features
    • like auto-shutdown as the battery discharges

Here are a couple of solutions:

  • LiPo Shim
    • very compact, can be soldered directly, or using female header
    • good value for money at £11
    • you can order with a battery for between £7-14
    • they also do a USB charge adaptor for £6
    • You might be able to fit all this inside your current case
  • PiJuice HAT
    • they've done it all for you in a single board at £48
    • they also have cases to hold your pi plus the hat

CPU temperature

In the Raspberry Pi FAQs the working temperature range for the CPU is quoted as -40℃ to 85℃ although some sources suggest it may withstand higher for short periods. The FAQs say you should only need a heatsink to dissipate heat if you overclock the CPU, presumably because the circuitry automatically throttles the CPU when temperatures go over 80℃. So if you want to avoid throttling (or want to overclock) then you might like to add one anyway, just in case.

As well as internally mounted heat sinks, you can also get aluminium cases that dissipate the heat outside the case, as long as you don't mind the case getting warm. The Flirc Case has an extrusion that reaches down to the CPU to conduct heat out to the case, but it has a plastic bottom section that might allow wireless signals (Wifi and Bluetooth) to pass more easily. The BIQU and Wicked Aluminum cases also have an aluminium underside which touch the GPU too, to keep that cool, however they are more likely to interfere with radio signals. Don't forget that, as these cases need to match the exact position and profile of the chips on the Pi's circuit board, they may be limited to a specific model of Pi – so please check exact compatibility before you buy them.

CPU tests

At 8:42 in this video you can see how to stress-test your CPU cooling option. If also shows, between 9:19 and 10:20, comparative temperatures between the cooling options they tried. Check out more detail on the sysbench cpu test, but bear in mind that you take you own risk if you stress your device too far.

Monitoring CPU temperature

You can use cron and syslog to periodically record the CPU temperature as follows:

sudo tee /etc/cron.d/cpu-temp-log <<EOF!
*/10 * * * * pi logger CPU Monitor `vcgencmd measure_temp` `vcgencmd measure_clock arm`
EOF!

Troubleshooting

Undervoltage

NB: see also the section on Power Supplies

A simple Pi might be able to use 'any old' 5v USB power adaptor, sometimes even with only 500mA on older models. However, as you start adding more devices and connections into the Pi main board or USBs, you will begin to see some USB power supplies just can't keep up with it.

The quickest and easiest way to diagnose these issues is by plugging a monitor into the HDMI. If there is a lightning bolt in the top right corner, you know that your Pi is not getting enough power.

Some power supplies might not actually supply a powerful enough voltage, especially when you have more devices attached that want to draw more current. Try other more powerful or better quality adaptors. Also be aware that some lower quality cables may not transmit all the power efficiently from the supply to the Pi, so also try other cables.

If better power supply does not resolve the issue, your device may simply not be able to drive all the devices you are trying to use. If the other suggestions on this page do not help, then consider using fewer (or more efficient) devices on any given Pi board.

specific issues

dmesg shows the (repeated) error during startup:

device descriptor read/64, error -71

and the USB device fails to read. However, when the device is replugged it works just fine

This occurred after numerous startup issues, which perhaps were related to the power supply being insufficient (only 500mA with Ethernet and 3 USB Flash drives) and so tried running with a 2000mA supply. This allowed the Pi to start up properly but still gave the above error.

Tried adding to boot config ('firmware')

sudo editor /boot/config.txt 

# allow USBs to consume up to 1200mA instead of just 600mA
max_usb_current=1
# credit https://raspberrypi.stackexchange.com/q/27708

Did not help

Article [https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=42568] suggests Error -71 is apparently power related, and options include: adding ONE (or more) of the following to cmdline.txt usbcore.old_scheme_first=Y usbcore.use_both_schemes=Y dwc_otg.speed=1

Power supplies

Many people have spare mobile phone chargers, which are 1 to 2A 5v switching power supply units (PSU), and seem ideal for running Pis. With older Pi 2 models and firmware this did not seem to cause issues, even if SD cards could often seem flaky.

Newer Pi 3 Model B+ (Pi 3+) recommendations state a minimum of 2.5A 5v supply, partly as the processors are slightly more powerful. Also newer firmware is more verbose about any shortcomings in the power being supplied, and you may notice undervoltage errors in the system log.

Single board computers are pretty exacting about the voltage they require, whereas mobile device battery charging circuits are far more forgiving. This is why so many '5V' supplies cannot manage to keep supplying that amount exactly - they just drop the voltage when more current is drawn. Unfortunately, if the Pi happens to be writing to the microSD card at the point when the power stutters, you can easily get corruption that could even prevent you booting in future, so it's quite a risk.

You might prefer to consider a supply like the official Raspberry Pi PSU, which aims to deliver just over 5v instead of just under 5v, allowing the on-board regulator to strip off the extra. It's hard to know just how suitable any other PSUs might be, as most vendors just say 5V instead of 4.8V or 5.2V. Fortunately the 'official' PSU is not overpriced, but it is a very limited configuration.

As long as the voltage is regulated high enough, you will normally be best off with a switching power supply, as the switching regulator is an efficient design, taking less space and giving off less heat. There are however some applications that might find an 'old fashioned' linear regulator more suitable, as it provides a nice steady signal with less noise. Audio applications, especially using refined hardware, tend to make any noise in the power input show more clearly in the output. Inline adaptors can filter some of the noise out, but you might find a linear PSU goes a step further. Note that audiophile hardware configurations may have multiple power supplies, say a linear PSU for the audio and a switching PSU for the comupute. For more see Audio Hub power supplies.

Powering off

The Pi is designed to be left in continually powered operation, and it varies it's power draw as required according to what it is doing at the time. In certain cases you may be able to soft disable specific features, to reduce power draw even further, but if you are running from mains with an efficient power supply, a typical 'at rest' draw of 30-40mA at 5v is 2 Watts (2W) or under.

Typical Desktop PCs might run between 50W and 200W in normal use, and even low power 'Nettops' or 'NUC' devices can draw 10-30W. They often have a Wake on LAN (WoL) or Wake on USB feature upon power-off, where the motherboard draws just enough power to listen out for demands, before powering on automatically. Considering the Pi's power draw in use is probably no more that these PCs' off-but-listening mode, you can see why the Pi's designers didn't bother with Wake on Anything.

Still, there may be reasons for you to find ways to reduce or remove that power draw, so your options include: