Power Your Raspberry Pi Zero with a Battery Using the JuiceBox Zero

John John (304)
30 minutes

The Raspberry Pi Zero is an incredible tool for building a wide variety of IoT devices. And until lately, many projects I've worked on have been limited due to power supply constraints. Then I stumbled across the JuiceBox Zero, a battery management board for the Raspberry Pi Zero. This board provides portable power for your Pi Zero with a Li-Ion single cell battery, as well as charge the battery. In this guide, I'm going to show you how to assemble and use the JuiceBox Zero.

Watch the video:

JuiceBox ZeroJuiceBox Zero ×1
Raspberry Pi ZeroRaspberry Pi Zero ×1
Li-Ion Single Cell Battery ×1
Soldering IronSoldering Iron ×1
Solder ×1 tube
2x20-pin Extra Tall Female Stacking Header ×1
M2.5 Assorted Standoff Kit ×1

Howchoo is reader-supported. As an Amazon Associate, we may earn a small affiliate commission at no cost to you when you buy through our links.

Solder a 2x20 male GPIO header to the Raspberry Pi Zero. There will be more soldering in this guide, so if you don't have much experience with soldering, watch this video first:

Watch the video:

You can find the full article on raspberrypi.org.

Start by placing the stacking header onto the Pi Zero, then place four standoffs. Make sure the standoffs you use are the same size as the stacking header.

Place the JuiceBox Zero onto the header and secure with screws

Put the JuiceBox Zero in place, and fasten to the standoffs down with screws.

Solder the header to the JuiceBox Zero

Again, refer to the raspberrypi.org video from Step 1 to learn how to solder.

Make sure you use a JST‑compatible, single‑cell lithium‑ion battery.

When you're using a JuiceBox Zero with your Pi, you need to stop using the micro usb port on the Pi. Trying to power the Pi Zero directly could damage the Pi Zero or the JuiceBox Zero. So place a USB cover (or kapton) tape over the USB charging port on the Pi.

Turn the power switch on

Now you're ready to test it out! The JuiceBox Zero comes with a slide switch to power the Pi on or off. Simply slide the switch into the ON position.

Connecting the JuiceBox Zero to a power supply will both power the Pi and charge the battery. This allows your project to run continuously.

The low battery LED will light up when the battery voltage reaches 3.2V. At this time, the GPIO16 pin will go HIGH. So in order to safely shutdown the Pi when the battery is low, we'll run a script in the background that listens for a rising edge on pin 16, then shuts down the Pi.

So first, use your editor to create a new file called safeshutdown.py in the /home/pi directory. Add the following:

import os
import RPi.GPIO as GPIO


shutdown_pin = 16 
GPIO.setup(shutdown_pin, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)

def shutdown_callback_function( shutdown_pin ):
    os.system("shutdown -h now")


Refer to the JuiceBox Zero Github Repository for more details.

Now, edit the crontab by typing the following in a shell:

sudo crontab -e

And add the following to the end of the file:

@reboot python /home/pi/safeshutdown.py &

This will cause the safeshutdown.py script to run in the background when the system boots. It will listen for a rising edge on pin 16, and then shutdown the Pi safely!

A new flavor of Pi gets added to the menu.
Ash Ash (362)

The Raspberry Pi Foundation has officially unveiled its latest board, the $15 Raspberry Pi Zero 2 W.