Universal Serial Bus (USB) has become the most widely used standard interface for connecting peripheral devices to a host computer. A key advantage and differentiator of USB is the fact that any standard external USB device will instantly connect once plugged into a host computer by way of USB classes.
USB classes can be defined as groups of similar devices, such as Audio, Human Interface Devices (HID), and Mass Storage, that use a standard set of commands which allow them to share a common USB class driver.
USB then defines class code information that is used to identify a device’s functionality and to load a device driver based on that specific functionality. This class-level decoding becomes an integral part of interfacing and debugging over USB.
Class-level decoding translates low-level USB protocol level data to USB class-level commands and instructions that are more easily understood by the end user.
The ability to understand class-level data helps the engineer more easily isolate potential errors and bugs within the USB 2.0 and 3.0 protocols. Raw packets can also be parsed into human readable format in real time when using certain tools and applications.
USB protocol analyzers with interactive GUIs such as those from Total Phase can make USB debugging faster and more efficient through class-level decoding.
The powerful USB class-level decoding feature is part of Total Phase’s Data Center Software, which allows users to streamline and expedite the analysis process in-real time. To use this feature, simply start a capture, plug in a USB device to the Beagle USB 480 Protocol Analyzer or Beagle USB 5000 v2 SuperSpeed Protocol Analyzer, and the software will automatically decode protocol level packets into class-level decoded data.
Here is a comparison between the protocol-level view and the class-level view.
The USB data from a Mass Storage device has been organized into packet groups. The data is in its raw format which is difficult to understand.
The USB traffic has been organized into hierarchical Mass Storage specific data groups. Now that the class-level data is decoded, it is easier to understand.
The Data Center Software supports the following classes and more:
The image below shows USB 2.0 traffic from an HID Device. The class-level data has been decoded and the Info Pane at the far right displays the parsed class-level fields for easy viewing.
When a field is highlighted in the Info Pane, the relevant portion of the data payload is highlighted in the Data Pane on the bottom.
Benefits from Info and Data Pane View:
Which Total Phase tools support class-level decoding capabilities?
For further information on our USB products, please visit our USB Product Comparison chart or email us at sales@totalphase.com.