Skip to content

Instantly share code, notes, and snippets.

@andersevenrud
Last active June 21, 2023 09:12
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save andersevenrud/18183761acb00031a7c8fccdc0c4b4d7 to your computer and use it in GitHub Desktop.
Save andersevenrud/18183761acb00031a7c8fccdc0c4b4d7 to your computer and use it in GitHub Desktop.
Raspberry Pi Low Voltage Warning

Raspberry Pi Low Voltage Warning

Resolving the Low Voltage warning (aka the "lightning bolt" ⚡) on a Raspberry Pi.

Please note that this research was done on Pi 3 and lower. I don't own a Pi 4 which uses another USB spesification and different power requirements.

Introduction

This is a document that was produced from a mess of personal notes in order to try to create a resource that might be useful for someone that runs into the same issues as me when it comes to powering a Pi in different scenarios.

The Low Voltage detection warning that a Pi emits surely is annoying, but should not be dismissed or disabled. It's crucial that the Pi gets the juice it needs to operate normally. Not supplying enough power impacts the performance heavily (because the CPU will run at a lower speed), and in the worst case lead to instabilities (which in turn can corrupt your storage).

Accessories

Official Touch Screen

From my testing the 0.7" touch screen seems to be drawing ~0.5A in normal operation.

🚀 If possible power the LCD from a dedicated custom plug that goes to a 5V source (instead of via GPIO) to avoid drawing the power from your Pi directly.

⚠️ Powering the Pi via the USB port on the Touch Screen module should be avoided. Use the Pi USB port instead.

USB Devices

Avoid connecting anything that sucks a lot of juice directly to the Pi, like a hard-drive.

🚀 Go for a powered USB hub instead.

⚠️ If you're booting from external devices, note that some of the cheaper powered USB hubs might actualy "back power" the Pi (meaning the power from the HUB is sent back into the Pi. Ideally this should be isolated.) that might cause a crash on boot.

Power Source

This is the most important part of your chain. A high quality power supply is crucial.

🚀 Unless you're deploying this into a place where you don't have access to AC wall power or a high-current rated device/battery USB port, get the official power supply

⚠️ One would think that using any old phone charger that is capable of 1.5A-2A or even more on the label would be enough to drive your Pi. But that's not entirely true. Those things are not designed to handle power spikes and maintain a fully stable voltage of >=5V under full load. These are designed for charging, not powering a computer.

Power draw

From my testing the following ("fully expanded") setup seems to draw around 2A on maximum load (not synthetic).

  • Pi 3B+
  • 7" Touch Screen
  • Serial USB Dongle
  • USB SSD Storage
  • Connection to USB Hub
  • Ethernet connection

On idle it sips ~1A, and when power save kicks in ~0.5A.

Voltage requirements

Supplying 5.0V always seemed to trip the low voltage detection. Bumping it up to 5.10V-5.20V seems to put everything into equilibrium (this depends on your cables).

I don't have an official power supply so I don't really know the operational specs here with that sort of equipment.

⚠️ Do NOT exceed 5.25V here as this will potentially damage the power supply on the Pi itself.

Custom Power Supply

In my case I wanted to have a Pi deployable in an automotive setting without using a cheap cigarette adapter that could introduce all kinds of noise and other horrible stuff, so I bought the Mean Well SD-15A-05 and a USB type A female connector (soldered onto a thich gauge power wire) and Type A automotive connectors for making adapters (USB, Battery claws/clamps, cigarette plug, or even a permanent setup). [1]

USB Cable

Now this is a wild one.

Finding good quality cables with high enough gauge to handle these kinds of loads without dropping the voltage too much over medium distances (1-2m / 3-7ft) is not easy, so I just made my own to eliminate this variable [2].

Even some of my short (10-20cm / 4-8in) cables weren't able to handle this because I got them from some random online marketplace, while some of the stuff I had from more reliable sources (like mobile phone and battery bank manufacturers) worked just fine.

I highly recommend reading this article on this subject:

https://goughlui.com/2014/10/01/usb-cable-resistance-why-your-phonetablet-might-be-charging-slow/

Testing

Sadly there's no way to get the value from the Pi power supply as there's no circuitry available for the SoC to read any such metric.

Monitoring on the cheap

Getting something like a "Keweisi KWS-V20" inline USB voltage/current/energy tester is a nice way to monitor the power over your USB connection [3]. This won't give you the measurements at the end of the chain, but give a good idea about what's going on.

⚠️ If you're using these to tune your voltage, note that these cheap devices might introduce a bottleneck in your chain depending on the specs, so try a staged tuning approach with small (up to 50mV) increments with the Pi detached to read the supply voltage with no load. Don't use this as a part of a permanent setup. And always try to test without this device entirely after tuning to eliminate any introduced variables.

Powering without USB

With a little bit of hacking, it's possible to bypass the USB to power your board while still going through the fuse.

Solder wires to PP1 (5V) and PP5 (GND) on the bottom side of the PCB and run to your supply.

Notes

  1. https://user-images.githubusercontent.com/161548/176806076-e103686b-0d3f-460a-a40e-9e645751129b.jpg
  2. https://user-images.githubusercontent.com/161548/176806223-3d763376-df79-4b52-98de-0bcb39132970.jpg
  3. https://user-images.githubusercontent.com/161548/176806354-d58e619d-a8b7-4d60-918d-bb70dd032bc9.jpg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment