PocketPD is a portable USB-C bench power supply that can fit in your pocket. Combine with a USB-C PD 3.0/3.1 power source and you can ultilize the PPS profile to create a portable power supply with voltage and current adjustment.
As the DIY community has grown, there are multiple ways to implement control features like adjusting parameters via Wifi, Bluetooth, or touch screen. We want to keep the design language simple, just physical knobs and buttons to control. This will give the system higher reliability when you need it to work.
flowchart LR
A[Boot up] --> |0.5s|B[Obtain charger capability]
B --> |1.5s|C[Display capabilities]
C --> |3s|D[Normal operation]
D --> |Long Press V/I|E[Menu]
B --> |Short Press any button|D
C --> |Short Press any button|D
E --> |Long Press V/I|D
E --> |Long Press Encoder|D
If your charger support PPS (Programable Power Supply) mode, the charger will first enter BOOT screen.
The system will then display the available profile from the charger.
After 3 seconds, the system will enter operating mode. If PPS mode exist, the system will request 5V @ 1AIn NORMAL state:
- Turning the encoder to increase/decrease voltage/current
- Short press encoder to change increment from fine to coarse
- Short press Volt/Amp button to switch between adjusting Voltage or Current
- Short press On/Off button to enable output
- Long press Volt/Amp button to enter MENU
In MENU state:
- Turning the encoder to select profile
- Long press encoder to activate profile
- Long press Volt/Amp button to return to normal operation and cancel profile change
Example when select 5V @ 3A profile
Note: If your charger doesn't support PPS profile, PocketPD will directly boot into the first 5V PDO profile. Your menu will looks like this:
-
You will need VSCode with Platform IO extension.
-
Before letting Platform IO pulling the pico-sdk files. Follow Important steps for Windows users, before installing Else you will encounter:
VCSBaseException: VCS: Could not process command ['git', 'clone', '--recursive', 'https://github.com/earlephilhower/arduino-pico.git', 'C:\\Users\\keylo\\.platformio\\.cache\\tmp\\pkg-installing-iypaogfn']
-
Go to PlatformIO extension -> Pico -> General -> Build
-
Output of the build process will be in .pio/build/pico/
Note: Firmware at and before 0.9.5
is only for PocketPD HW1.0
Step 1: Select the correct hardware version from PocketPD's Firmware Releases
- HW1.0: Also known as "Limited edition". Download
firmware_xx_HW1.0.uf2
- HW1.1: Our standard production version. Download
firmware_xx_HW1.1.uf2
Step 2: Mount PocketPD as a drive in your computer
For MacBook user:
- Method 1: (Easy)
- Short the BOOT pads at the back of the device with a tweezer in
HW1.0
or hold the BOOT button inHW1.1
. - Use a USB-A -> USB-C adapter, then use a USB-A -> USB-C cable to connect PocketPD to computer. PocketPD should pop up as
RPI_RP2
drive.
- Short the BOOT pads at the back of the device with a tweezer in
- Method 2: (Intermediate)
- Use a USB-A -> USB-C adapter, then use a USB-A -> USB-C cable to connect PocketPD to computer. No drive will popup.
- Use any serial monitor, and start a Serial port with 1200 Baudrate. PocketPD should pop up as
RPI_RP2
drive.
For Windows user:
- Method 1: (Easy)
- Short the BOOT pads at the back of the device with a tweezer in
HW1.0
or hold the BOOT button inHW1.1
. - Use any USB cable to connect PocketPD to computer. PocketPD should pop up as
RPI_RP2
drive.
- Short the BOOT pads at the back of the device with a tweezer in
- Method 2: (Intermediate)
- Use any USB cable to connect PocketPD to computer. No drive will pop-up.
- Open Putty and open a Serial port with 1200 Baudrate. PocketPD should pop up as
RPI_RP2
drive.
Step 3: Drag and drop the .uf2
file into the drive
If you build the firmware directly from VSCode, the .uf2
file will be in .pio/build/pico/
Detail guide How to upload new firmware to PocketPD