The developer's resource for computer interfacing, especially USB, serial (COM) ports, mass storage, and embedded networking. (Formerly Lvr.com)

Home > USB Central > USB Development Tools

USB Development Tools

Tools and techniques for debugging and other development tasks.

USB-IF tools | Protocol analyzers | Viewing attached devices
Other tools | Obtaining a Vendor ID

Also see

USB Chips | Device Code | Device Hardware | Host Software

USB-IF tools

The USB Implementer's Forum offers free diagnostic tools including the compliance test tool USB Command Verifier (USBCV). USBCV is for use only under Windows 2000 and XP with a USB 2.0 host and hubs. There's no need to run the tests under Windows 98 or Windows Me or USB 1.x.

If for some reason you want to run USB-IF's previous testing tool, USBCheck, with USB 1.x and Windows 98, IVOVI has it. IVOVI also has the preliminary point-of-sale driver that Microsoft provided at one time but has abandoned.

Protocol analyzers

A protocol analyzer decodes, filters, and displays USB data. Some analyzers can also generate data on the bus. Some are software only, while others use hardware that connects to a USB or Ethernet port or a general-purpose logic analyzer.

Software-only analyzers

A software-only analyzer resides on a PC and displays USB traffic sent and received by that PC. A software-only analyzer can display host driver information but can't display low-level bus information.

USB Sniffer is a free tool for monitoring USB traffic. It's based on an earlier project called USB Snoopy.

USBPcap is an open-source USB analyzer for Windows.

AGG Software has the Advanced USB Port Monitor.

busTRACE bus and device analysis tool from busTRACE Technologies.

HHD Software has the USB Monitor.

Perisoft's BusHound is an analyzer for USB and other buses. Free version available.

USBTrace from SysNucleus.

USB Analyzer from Eltima.

USBlyzer from usblyzer.com.

Hardware/Software analyzers

A hardware/software analyzer uses a hardware module to monitor traffic on a bus segment. The analyzer can display traffic on the segment, including NAKS, CRC errors, bit-stuff errors, and data0/1 toggles.

Crescent Heart Software. For use with a logic analyzer.

FTS4USB. From Frontline.

Ellisys.

Teledyne/LeCroy (CATC)

MQP Electronics

Prodigy Technovations. USB 2.0 Protocol Decode Software for use with Tektronix Windows-based oscilloscopes.

Rabbit House (Japan)

Total Phase

Traffic generators

A traffic generator emulates a host and generates USB traffic.

Protocol analyzer companies with traffic generators are Ellisys, Teledyne LeCroy, and MQP Electronics.

PMTC has the TrafficLab traffic generator.

RPM Systems' Root 2 Test Host.

Viewing attached devices

USBView in the WDK shows the tree of all USB hubs and connected devices and each device's descriptors, with additional support for video devices. From Microsoft. No source code. UVCView is a diagnostic tool for USB video-class and other hardware and is based on USBView.

A C# version of the DDK's USBView utility. Also demonstrates how to get the serial number and other attributes from a USB flash disk. Source code only. From Emmet Gray.

USBDeview. View all installed/connected USB devices on your system. Freeware from Nir Sofer.

SIV (System Information Viewer). From Ray Hinchliffe.

Other tools

HCList is a utility that finds all of the host controllers in a system and displays a description, the host-controller type (OHCI, UHCI, EHCI), the hardware ID, and compatible ID for each. With Visual C++ source code. From tomb.

MCCI's USB 3.0 Connection Exerciser simulates cable removal and attachment

Obtaining a Vendor ID

Every USB device product must have a unique Vendor ID (VID) and Product ID (PID) pair that helps to identify the device to the host computer. Each value is 32 bits.

USB Vendor IDs and their owners. Unofficial and may be incomplete. Maintained by Stephen J. Gowdy.

There are several ways to obtain a VID and PID to use in a device.

Devices that display the USB logo

If your device will undergo compliance testing and display the USB-IF logo, your company must own the Vendor ID. (An exception is companies that are second-sourcing a product developed by another company.) You can obtain a Vendor ID by joining USB-IF or by paying a licensing fee.

Devices that don't require the USB logo

If your device will not display the USB-IF logo, you have other options.

You can buy a Vendor ID from USB-IF for a 1-time administrative fee.

Some chip manufacturers, including FTDI Chip and Microchip Technology, will assign a range of PIDs that customers can use in products with the company's VID, typically at no charge.

Chips that perform all of their USB communications in hardware can use a VID and PID embedded in the hardware. An example is FTDI's USB device controllers.

For lab use only

If your device won't be distributed to unknown host systems, the only requirement is that the VID/PID pair doesn't match any VID/PID pair in the host's INF files (or equivalent database in non-Windows hosts).

You can use Lakeview Research's VID (0925h) with PIDs from 9000h to 9100h at no charge under these conditions:

1. You use the devices only in your own lab or office.

2. You don't sell, give away, post online, or otherwise distribute source code or executable code containing Lakeview Research's Vendor ID.

3. You don't complain to me if another device uses the same VID/PID pair that your device uses.