3
\$\begingroup\$

I want to design a circuit to power a Raspberry Pi Zero using a single-cell Li-po battery (3.7 V).

I'm working on a portable hobby project that's required to be battery powered and allows recharging the battery and run while the battery is charging. The main controller board is a Raspberry Pi Zero. The final "product" will be enclosed in a box and will have a single USB-C input that will charge the whole thing (and allow it to work while connected to power).

I have very little experience with electronics so any input would be welcome.

Taking directions from SparkFun's LiPo Fuel Gauge (MAX1704X) Hookup Guide, I currently have a circuit similar to this:

enter image description here

Instead of the Arduino / FTDI pair on the right, I have my RPi Zero.

I tried connecting the positive power output from the Li-po charger directly to either a 5 V or 3.3 V input on the RPi Zero. When I do this, the Rpi Zero green light blinks but never goes steady, and I can't seem to SSH into it.

If I understand correctly, the issue is that I'm supposed to feed it 5 V, and perhaps my ~3.8 V input is not enough to power the RPi enough to boot up, or perhaps it's booting up but can't power its WiFi capabilities.

Do I need to use a "step up" / "boost" circuit to up the voltage to 5 V? Do I need to purchase a separate dedicated board or is this something I can construct with common electronics parts (resistors / capacitors / diodes that I may already have)?

Also, am I overall in the right direction for powering the RPi Zero using a battery?

\$\endgroup\$

2 Answers 2

3
\$\begingroup\$

Looking at the RPi Zero schematics, shows a PAM2306AYPKE which takes 5 V from a USB connector and generates 3.3 V and 1.8 V supplies:

enter image description here

The PAM2306 datasheet shows:

  1. The Recommended Operating Conditions shows the Supply Voltage range is 2.5 to 5.5 V

  2. Is a dual step-down current-mode, DC-DC converter. I.e. requires an input voltage greater than the output voltage.

  3. The description shows the input is designed accept USB or a single single-cell LiPo battery:

    The PAM2306 supports a range of input voltages from 2.5V to 5.5V, allowing the use of a single Li+/Li-polymer cell, multiple Alkaline/NiMH cell, USB, and other standard power sources.

  4. The Efficiency VS Input Voltage graph shows that for a 3.3 V output, the input voltage can be as low as 3.5 V:

    enter image description here

So, in theory it should work with a single-cell LiPo battery (3.7V) connected to the input of the PAM2306.

I tried connecting the positive power output from the Li-po charger directly to either a 5 V or 3.3 V input on the RPi Zero.

Connecting the Li-po to a 5 V pin on the header of the RPi Zero should avoid damage, since that connects to the supply input on the PAM2306.

However, connecting the Li-po to the 3.3 V pin on the header of the RPi Zero possibly caused some damage since:

  1. Applied a higher than normal voltage VDDIO2 pins on the BCM2835 chip used on the RPi Zero, which expects nominally 3.3 V. The question text says the Li-po voltage is ~3.8 V, but a comment from @AndrewMorton said the fully-charged voltage of a Li-Po cell is typically 4.2 V. The only Broadcom document I can find for the BCM2835 chip is a description of the peripherals. Since can't find a full datasheet don't know what the absolute maximum supply voltage is before permanent damage occurs.
  2. Will only power the BCM2835 via the VDIO2 supply, and PLL_1V8 supply won't be powered.

It might be worth checking if the RPi Zero still works if you power it over the USB connector. However, if the RPi Zero has been damaged due to supplying an over-voltage due to connecting the Li-po directly to a 3.3 V pin, perhaps try powering with a USB charger rather than connecting the RPi Zero to a PC USB port, in case the RPi Zero damages the PC.


Update in response to a comment:

My RPi is luckily not damaged and works fine when connected to USB power. My battery currently outputs ~3.8V. I tried connecting it to either of the 5 V pins on my RPi Zero. It turns on the green power LED on the RPi, but it occasionally blinks and I can't seem to SSH to it at any point. AFAICT by using a multimeter, the voltage is pretty constant at 3.8V, so I'm not sure what's going wrong. Any ideas? – Amir Rachum

From a search have found other articles which suggest the RPi Zero can directly operate with a LiPo cell. The Running the Pi Zero directly off the battery voltage section of Running a Raspberry Pi off a LiPo battery contains:

With that proviso, I was surprised to read this treatise on Hackaday that says the PiZero will work fine straight off a LiPo cell, the onboard regulator will still work down to 3.3V. The one provison is DO NOT CONNECT A POWERED DEVICE TO USB. You will be stuffing 5V bus power straight into your LiIon battery, result likely misery.

As to why are unable to use SSH to connect to the RPi Zero powered by a Li Po, perhaps trying to use networking increases the power consumption which causes the power supply voltages to dip below the minimum. In which case using an oscilloscope to monitor the 1.8 V and 3.3 V rails on the RPi Zero would help to check if that is happening.

\$\endgroup\$
8
  • 1
    \$\begingroup\$ And the last section of your answer is perhaps being optimistic, as the fully-charged voltage of a Li-Po cell is typically 4.2 V. \$\endgroup\$ Commented Mar 2 at 18:01
  • \$\begingroup\$ @AndrewMorton Thanks for the feedback, have tried to edit the answer to address your comment. \$\endgroup\$ Commented Mar 2 at 18:47
  • 1
    \$\begingroup\$ @AndrewMorton I don't what process technology the BCM2835 uses, but looking an example of a TI TMS570LC4357 which is an ARM Cortex-R MCU, the VCCIO supply is (a) min 3 V, typical 3.3 V, 3.6 V in the Device Recommended Operating Conditions (b) –0.3 V min ,4.6 V max in the Absolute Maximum Ratings. I agree with your summary of Hope: yes; expect: no of if the BCM2835 is tolerant to 4.2 V on VDIO2 supply, in the absence of any published Broadcom documentation. \$\endgroup\$ Commented Mar 2 at 19:51
  • 1
    \$\begingroup\$ Just based on experience, over-voltaging a 3.3V processor with 4.2V may make it too unhappy to work, but usually won't damage it enough so that it won't work again when powered correctly. Note that I would not expect it to be undamaged -- I would just expect that it may work again, for anywhere between a lifetime and a minute. \$\endgroup\$
    – TimWescott
    Commented Mar 2 at 20:33
  • 1
    \$\begingroup\$ @AmirRachum I have updated the answer to attempt to address your comment. Can you edit the question to include links to the RPi Zero, the Li Po battery and the Li Po charger. \$\endgroup\$ Commented Mar 9 at 9:35
2
\$\begingroup\$

If connecting the LiPo directly to the +5V input to the Pi doesn't work, use a 5V output boost converter that's rated for the highest current you expect the Pi to pull.

\$\endgroup\$

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