alt text

USB Power Delivery (USB PD) is a standard for negotiating power delivery over USB-C connections. The Bus Pirate USB PD adapter is a breakout board for the AP33772S USB PD sink controller, which can be used to test and debug USB PD devices and connections using the usbpd command

The adapter includes TVS diodes for protection, level shifting for the CC lines, an output control FET, a fuse, a current sense resistor, a temperature sensor, and indicator LEDs for power and USB PD status.

Features

  • Works with the Bus Pirate I2C mode usbpd command
  • AP33772S USB PD 3.1 Sink Controller: Manages USB PD communication and power delivery, sink only.
  • Standard Power Range (SRP) and Programmable Power Supply (PPS) profiles up to 21 volts.
  • Adjustable Voltage Supply (AVS) and Extended Power Range profiles up to 28 volts.
  • Over/Under Voltage Protections (OVP/UVP), Over Current Protection (OCP), Over Temperature Protection (OTP)
  • Moisture Detection in the USB Connector
  • TVS diodes shield the USB-C port from voltage spikes and ESD events.
  • Output control FET enables/disables power output.
  • 30 volt/500 mA fuse to safeguard against high-ish voltage shorts.
  • Current sense resistor for real-time tracking of power draw.
  • Temperature sensor prevents overheating.
  • Level shifting on CC0/CC1 boosts 1.1 volt signals to 5 volts for easy analysis with budget logic analyzers.
  • Power and USB PD status LEDs.

Status LEDs

PWR indicates that a USB power source is connected and providing power.

StateLED IndicationVOUTComments
INITOffOFFVBUS/Rp attached and AP33772S initialization
CHARGING4-sec BreathingONSuccessful negotiation or enter Non-PD Mode
MISMATCHFull LightOFFVSELMIN mismatch (VREQ < VSELMIN)
MOISTURE2-sec FlickerOFFAbnormal impedance detected in the Type-C connector
FAULT0.6-sec FlickerOFFOVP, OCP, UVP or OTP occurs

STAT indicates the status of the USB PD connection, according to the table above. Source: AP33772S datasheet.

CC Line Level Shifter

alt text

USB PD communicates over the CC0 and CC1 lines. The signal levels on these lines are 1.1 volts for a high and 0 volts for a low, which is not a valid range for most cheap logic analyzers.

alt text

The Bus Pirate USB PD adapter includes level shifters that bring these signals up to 3.3/5 volts, making them easier to analyze with common tools.

The shifter is based on a simple comparator set to flip at a threshold of around 0.628 volts. Output level is determined by the Bus Pirate VOUT voltage.

Pin Breakouts

USB Pins

PinDescription
D+USB D+ data line
D-USB D- data line
SBU2Sideband use pin 2
SBU1Sideband use pin 1
CC2Configuration channel pin 2
CC1Configuration channel pin 1

Header J6 breaks out the raw USB-C signals.

Other Pins

PinDescription
CC1 ShiftLevel shifted CC1 signal
CC2 ShiftLevel shifted CC2 signal
FlipIndicates the orientation of the USB-C plug
VSELStartup voltage selection pin, set by a resistor value
OTPTemperature thermistor output pin
GNDGround

Header J8 breaks out signals from the AP33772S USB PD controller, and the level shifted CC1 and CC2 signals.

Resources

Get a Bus Pirate

🛒

Get Bus Pirate & Accessories

Community

Documentation

Here’s some other fun stuff you might enjoy.