USBTrace : Features
Ease of use
USBTrace is an easy-to-use USB protocol analyzer. To start analyzing a USB device, just select the device to be analyzed and click the 'capture' button.
Ease of viewing captured data
USBTrace decodes each and every captured USB protocol request, and displays it in an easily readable format. Data buffer, if any, associated with the request is also displayed.
Monitors USB requests at all levels
With USBTrace you can analyze USB requests at USB Host Controllers, USB Hubs or USB devices.
USBTrace does not use any filter drivers
Unlike other software-based USB analyzers, USBTrace does not use any filter driver to capture the USB protocol. So USBTrace will not disturb the PnP system due to its presence.
Captures all USB protocol data during device enumeration
USBTrace is capable of capturing all USB requests exchanged between the host controller/hub and the device during device enumeration. See USB Enumeration Explained to know how USBTrace is different from other USB analyzer software.
Displays valuable information for device driver developers
The IRP, URB and IO_STACK_LOCATION structures associated with each captured request is decoded and displayed by USBTrace. Also, in addition to capturing URBs, USBTrace captures Internal USB IOCTLs, User mode USB IOCTLs, PnP and Power IRPs.
See Complete list of USB requests captured, decoded and displayed by USBTrace USB Analyzer.
USBTrace also allows device driver developers to capture USB requests made/received by any device object in the USB device stack.
USBTrace can be setup to automatically capture hot plugged devices
With this option enabled, USBTrace will capture USB requests from all newly plugged devices. This option can be used to monitor USB requests during device enumeration. Read about capturing hot plugged devices.
Search and Filter captured requests
Advanced search feature allows you to search the capture log for request types and/or buffer contents of requests.
The filtering feature allows you to exclude requests which you are not interested in while capturing. You can also apply filters based on endpoint addresses.
Comments and Bookmarks
Comment and Bookmark features help you to document the captured USB protocol data by adding notes and highlights.
View & export detailed device information
View USB Device, Hub, Configuration, Interface, Endpoint descriptors & Windows specific USB enumeration information. Device information can be exported as an HTML or text file.
Supports device class decoding
USBTrace can decode class specific usb descriptors/requests and display detailed information regarding them. Read more about USB device class decoding
Fully compatible with ACPI features
You can shutdown, hibernate or standby your system while running USBTrace.
Saving captured data
The captured USB protocol data can be saved for storage and for viewing later.
Export log as HTML, XML, Text or CSV reports
The Export Utility allows you to export the captured USB transactions as an HTML, XML, text or CSV file, in addition to the native USBTrace binary file format.
Background capturing for improved performance
Background capturing facilitates high performance capture sessions. The GUI is not updated while capturing. The logged transactions are displayed only when capture operation is stopped.
Continuous capturing for non stop analysis.
For a normal capture session, USBTrace will stop capture operation when the internal log data buffer is full. With continuous capturing, this will not happen. When the buffer is full, instead of stopping capture, USBTrace will wrap around the buffer and start writing data again from the beginning.Continuous capturing simulates an infinite buffer.
Read more about Background and Continuous Capture.
Capture device traffic directly to file.
Using this feature you can route the data captured from devices directly to a file on your hard disk (or any other storage device). The user interface will not be updated during capture operation. This results in high performance capture sessions which can capture large amount of data. This feature also helps to debug unstable or faulty systems by ensuring that the captured data is not lost even if the system crashes/restarts during capturing. Read more about capturing data direclty to file.
Trigger facility allows you to define a condition and capture operation will stop automatically when that condition is satisfied.
Performance Statistics feature allows you to extract a lot of valuable performance related information from the captured data. The values of various performance counters and Read/Write data transfer rate graph are displayed. Performance statistics can be exported as an HTML or text file.
Set any captured request as 'time 0' request
Any request in capture log view can be set as the timing reference request using this feature. The timestamp of the selected request will be set to zero and those of others will be marked relative to this reference request. This feature is helpful to find the timing of various USB transactions in reference to a selected transaction.
Send support requests and check for updates directly from the application
In case you need support you can contact USBTrace Support Team directly from the application (See the program's help menu). Your support request along with the internal error log file will be emailed to us. Once we receive your error report, our support engineer will contact you at the earliest. You can also check for availability of new updates from the application help menu.
Decode captured data using user defined structure templates
You may define your own structure templates using which the captured data can be decoded. Structure definitions are specified via a template XML file which can be edited from within USBTrace.