USB-C PD Sniffer for Logic Analyzer
mschwingen·hardware·USB-PD-Sniffer/USB-PD-Sniffer_V1.kicad_pcb
About the USB-C PD Sniffer for Logic Analyzer PCB
USB-C PD Sniffer for Logic Analyzer is an open source AVR/Arduino PCB design by mschwingen, published on GitHub. It is a 2-layer board measuring 23 × 26 mm, with 17 components from 14 distinct parts.
Its main chip is the ATMEGA32U4-MU, from the AVR/Arduino family. By type, the board carries 8 resistors, 4 connectors, 2 diodes, 2 capacitors and 1 IC.
It belongs with the power & battery and test & measurement designs in this gallery.
From the project
Hardware designs by Michael Schwingen, michael at schwingen dot org
When debugging USB power delivery problems, a deep look into what is happening on the CC signals on the wire is helpful. Fortunately, the sigrok/pulseview software that works with many cheap USB logic analyzers has decoders for the USB PD protocol.
However, the logic "1" voltage on the CC lines during the PD handshake is only in the order of 1V - too low for most logic analyzers.

Main components on the USB-C PD Sniffer for Logic Analyzer
USB-C PD Sniffer for Logic Analyzer bill of materials (BOM)
17 components, 14 distinct parts — part numbers from the project's BOM.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | ATMEGA32U4-MU LM393 | SOIC-8_3.9x4.9mm_P1.27mm | U1 |
| 1 | CONN_01X16 Conn_01x02_Pin | PinHeader_1x02_P2.54mm_Horizontal | J1 |
| 1 | CONN_01X12 Conn_01x04_Pin | PinHeader_1x04_P2.54mm_Horizontal | J2 |
| 1 | CONN_01X05_MALE USB_C_Receptacle_USB2.0_16P | USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_Horizontal | J3 |
| 1 | USB_C_Receptacle_USB2.0_16P | USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_Horizontal | J4 |
| 1 | SM6T6V8A | D_SMB | D1 |
| 1 | LED | LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D2 |
| 2 | 22PF 100nF | C_0603_1608Metric | C1, C2 |
| 1 | 82k | R_0603_1608Metric | R1 |
| 2 | 470 | R_0603_1608Metric | R2, R4 |
| 1 | 18k | R_0603_1608Metric | R3 |
| 1 | 1k | R_0603_1608Metric | R5 |
| 2 | 10k | R_0603_1608Metric | R6, R7 |
| 1 | 47K 10k | R_0603_1608Metric | R8 |
USB-C PD Sniffer for Logic Analyzer design files
The KiCad project lives in the mschwingen/hardware repository on GitHub; these links point at the commit this page was built from.
USB-C PD Sniffer for Logic Analyzer: common questions
What microcontroller does the USB-C PD Sniffer for Logic Analyzer use?
The USB-C PD Sniffer for Logic Analyzer is built around the ATMEGA32U4-MU, from the AVR/Arduino family.
How big is the USB-C PD Sniffer for Logic Analyzer PCB?
The USB-C PD Sniffer for Logic Analyzer measures 23 × 26 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the USB-C PD Sniffer for Logic Analyzer?
17 components, from 14 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.
Where can I download the USB-C PD Sniffer for Logic Analyzer design files?
From the mschwingen/hardware repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.
Can I use the USB-C PD Sniffer for Logic Analyzer design in my own project?
The repository has no license, so all rights stay with mschwingen. Use it as a reference, and ask the author before reusing the design.
Can I test firmware for the USB-C PD Sniffer for Logic Analyzer without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug AVR/Arduino firmware against it before you order a PCB.
More boards in hardware
Raspberry Pi
YOGA - Yet anOther GPIB Adapter
mschwingen
85 × 56 mm80 parts2LNo license10AVR/Arduino
Model-M-USB-v4
mschwingen
150 × 37 mm58 parts2LNo license10R/C Compensation Tool
mschwingen
37 × 75 mm31 parts2LNo license10AVR/Arduino
I2C slave with error injection
mschwingen
32 × 32 mm23 parts2LNo license10Esp prog
mschwingen
30 × 19 mm8 parts2LNo license10
Similar boards
AVR/Arduino
Redox keyboard
mattdibi
162.2 × 126.5 mm77 parts2LMIT2.0kAVR/Arduino
ModuleV450
stuartpittaway
30 × 61.4 mm39 parts2LCC-BY-NC-4.01.1kAVR/Arduino
V4
stuartpittaway
30 × 50 mm38 parts2LCC-BY-NC-4.01.1kAVR/Arduino
Discipline
coseyfannitutti
304.9 × 122.8 mm170 parts2LCC-BY-NC-4.01.0kAVR/Arduino
Megadesk
gcormier
41.7 × 32.2 mm23 parts2LGPL-3.0818AVR/Arduino
Easyduino Atmega Nano
Hanqaqa
43.4 × 18 mm30 parts4LCERN-OHL-P-2.0746