Your app sends a command, the USB device does something odd, and the driver gives you no clue why. Without seeing the actual packets, you're guessing. USB Monitor from HHD Software is a software-only USB sniffer and protocol analyzer that shows you what passes between Windows applications and USB devices.
Quick facts
- Current version: 10.15.00.2574
- Platform: Windows 7 and later, 32-bit, 64-bit and ARM64. Older product versions cover Windows XP and Vista.
- Price: from $64.99 USD, depending on edition
- License: shareware. The trial is free and needs no registration.
- Installer size: about 14.5 MB

How it captures data
USB Monitor installs a filter driver on top of the USB host controller driver. The driver intercepts traffic between the USB driver and the controller and passes it to your monitoring session. You don't need a hardware analyzer clipped onto the cable. The tool captures bulk, interrupt, isochronous and control transfers. It also handles URBs, IOCTLs, and PnP and Power IRPs. It supports speeds from Low Speed up to USB4.
Key features
See every connected device and its descriptors
The tool lists connected USB devices grouped by class, with extended information including descriptors. The list updates when you plug or unplug a device.
Read packets decoded instead of raw bytes
Built-in parsers cover USB Mass Storage, Still Image, MTP, HID, Video, Audio and CDC. Separate views show URBs, structured packet fields and raw data in hex, decimal, octal, binary or text. You can also write your own protocol definition files for custom protocols.
Filter down to the traffic you care about
Capture filters discard whole packets by criteria you set. You can also filter by endpoint from the URB View context menu, and open one view per endpoint.
Record a session and replay it later
You can log monitored data to a file, play it back, export it as raw binary or text, and share it with a colleague.
Monitor a USB device on a remote computer
Install the Device Monitoring Server on the remote PC and connect from your workstation. You then see the data flowing between applications there and the devices attached to it.
Send commands and automate with scripts
You can send control commands to USB devices and check the responses for failures. The program's components can be driven by TypeScript scripts.
Graph traffic statistics
Graphs cover packets per second, bytes per second, bytes read and written, and I/O packets per second. They work on live data and on recorded logs.
Who it's for
- Driver and firmware developers who need to see exactly what a device receives and returns.
- Engineers reverse-engineering an undocumented device protocol by watching a working application talk to it.
- Testers and IT support staff chasing intermittent errors in USB data transfers.
Pros and cons
Pros
- Software-only, with no capture hardware to buy.
- Decodes the common USB classes into readable form.
- Logging with playback, remote monitoring and scripting are included.
- Supports ARM64 and USB speeds up to USB4.
- Free trial with no registration.
Cons
- Windows only.
- Current versions need Windows 7 or later. Windows XP and Vista need an older product version.
- It's a driver-level software tool, so it isn't a substitute for a hardware analyzer when you need signal-level detail. The vendor itself says logic analyzers and oscilloscopes show too low a level for protocol work.
- Features vary by edition, so check which one includes what you need.
FAQs
Do I need extra hardware?
No. It's entirely software-based, so no hardware sniffer is needed.
Can I try it first?
Yes. The trial version is free and doesn't require registration.
Will it run on Windows 11?
Yes. Windows 11 and 10 are supported in 32-bit and 64-bit, along with ARM64.
Can I analyze a capture later or on another machine?
Yes. Save the session to a log file, then replay or export it.
Can it monitor a PC I'm not sitting at?
Yes, through the Device Monitoring Server installed on the remote computer.
System requirements
- OS: Windows 11, 10, 8.1, 8, 7, plus Windows Server 2025, 2022, 2019, 2012 R2 and 2012
- CPU: multi-core x86, x64 or ARM64 compatible
- Memory: 2 GB
- Storage: about 29 MB