Power-Pico

A Product-Grade Portable USB Ammeter and Low-Power Measurement Analyzer

Version License MCU UI OS
Stars

📖 Project Introduction

Power-Pico is more than just a USB ammeter. It is a high-precision, low-power analysis tool designed specifically for embedded developers. To overcome the physical limitations of traditional ammeters in the μA-level measurement, Power-Pico adopts an innovative multi-range auto-switching sampling design, achieving full-range coverage from 1μA to 5A.

my bilibili | demo video | hardware open source
Main Device

✨ Core Features

  • μA-Level High Precision: Utilizes the INA190 zero-drift amplifier with three-resistor segmented sampling.
  • Protocol Trigger: Supports PD2.0 PPS protocol triggering, with up to 20V/5A output.
  • High-Performance UI: Based on STM32F411 + LVGL v9.2, providing a smooth real-time waveform display.
  • Elegant PC Client: Comes with the Power-Pico Client developed with PySide6, supporting data export and real-time power analysis.
  • Universal Type-C: All interfaces are Type-C, allowing for easy connection to accessories like Type-C to alligator clips.
  • 3D Printed Enclosure: Provides a complete design for a user-friendly 3D printed enclosure and acrylic panel.

🛠️ Hardware Parameter

Module Model Advantage
MCU STM32F411CEU6 100MHz high frequency, supports DSP instructions to accelerate waveform processing
Current Sensing INA190 0.5nA input bias current, the core guarantee for μA-level measurement
ADC 12-bit (STM32 Internal) Achieves high-speed stable sampling above 10kHz with DMA
Screen 1.54" TFT (ST7789) 240x240 resolution, high-contrast display

🚀 Quick Replication

1. Hardware

Solder the hardware yourself, or purchase a pre-soldered and assembled kit from Taobao.
LCSC Open Source Hub page: https://oshwhub.com/no_chicken/powerpico

2. Firmware Compilation and Flashing

The project is developed based on Keil MDK:

  1. Clone the repository: git clone https://github.com/kingham/Power-Pico.git
  2. Flash the BootLoader via the SWD port.
  3. Compile PowerPico yourself. The generated .bin file can then be flashed using the PowerPico Client.

3. Assembly

The physical assembly is shown in the figure below:

PCBA   3D Assembly

The exploded 3D view is as follows:

Exploded View   Exploded View GIF

4. Running the PC Client

Install and use the PowerPico Client. Currently, it only supports Windows operation system.


🛠️ User Guide

1. Hardware Operation

The button operations and various interface displays of Power-Pico are shown below. The top button is the Page Switch/Boot button. Press and hold the top button before powering on to enter Boot mode for a forced firmware upgrade.

The Power-Pico hardware currently supports 2 languages: Simplified Chinese/English.

Key Function   Startup Page
Main Page   Settings Page
PPS Page 1   PPS Page 2

2. PPS Spoofing Instructions

First, enter the Settings interface, go to the Spoof/Trigger option, click confirm to enter, and then you can adjust the voltage. Note: Currently, only PPS triggering is supported! Make sure to check if your charger block supports the corresponding protocols during testing.

PPS Test GIF

3. Client Operation

The PowerPico Client for PC can be used for waveform viewing, recording, exporting, and upgrading the firmware of the hardware. The client currently supports 4 languages: Simplified Chinese/Traditional Chinese/English/Japanese.

For detailed instructions on using the PowerPico Client, please refer to: Client Operation Manual

Wave Client 1   Firmware Upgrade
Wave Client 2   Client Settings

🔍️ Accuracy Measurement

Note: There is usually a resistor (MΩ level) between the VBUS and GND inside a Type-C cable, which will slightly affect the measurement.

Comparison using an SDM3055 6.5-digit multimeter is shown below:

50uA Test   500uA Test
500mA Test   1.8A Test
SDM3055 Reading Power-Pico Reading Absolute Error Relative Error
52.03 uA52.05 uA0.02uA...
Read more »