Q: I am troubleshooting a microcontroller USB host device, which is supposed to check two endpoints one at a time, one after the other. I am analyzing the data with the BeagleTM USB 12 Protocol Analyzer.
The IN-NAK records shown by the Data CenterTM Software are collapsed as follows:
- 100 IN-NAK for the first endpoint
- 176000 IN-NAK for the second endpoint
- 2000 SOF
This collapsed data is not sufficient – I need to analyze raw data packets. How can I expand each token? I need to see if the data is evenly distributed and timed between each NAK.
Thanks for your question! To acquire and analyze the detailed information that you need, we recommend using the Beagle Software API. Many API software examples are available, which can be modified for your use. Following is an overview of the free software that is available for Beagle USB protocol analyzers.
Data Center Software supports many features, including capture views: Packet, Transaction and Class. All three views are supported for the Beagle 5000 and Beagle 480 protocol analyzers; Transaction and Class views are supported for the Beagle 12 protocol analyzer.
- Packet – Protocol-level decoding is performed, and records are in time-order. Collapsed groups, such as SOFs and IN-NAKs are broken up as necessary to ensure records are in timestamp order. Only captures run in Sequential Mode can be viewed in Packet View. For more information, please refer to section 6.2 of the Data Center Software User Manual.
- Transaction – Protocol-level decoding is performed. Records may not be in time-order. Collapsed groups are not broken up for time-order preservation. Since there is no time-order restriction, captures generally appear more compact in this view than in Packet View.
- Class – Class-level parsing is performed. Records may not be in time-order. Captures generally appear high-level and compact in this view. For more information regarding class-level parsing, see Section 6.9.
For additional information, please refer to section 6.7 of the Data Center Software User Manual.
Note - Packet View is not supported for the Beagle USB 12 Protocol Analyzer, which is why we recommend using the API software when using the Beagle USB 12 Protocol Analyzer.
Beagle Software API can be used to control the Beagle 12 analyzer, and to write a custom program for your specifications. The API comes with support for multiple OS (Windows, Linux, and Mac), multiple languages (C, Python, Visual Basic, and C#), and includes examples. We recommend using the Python bindings - a simple language and a good option for scripting. For additional information, please refer to section 6 of the Beagle Protocol Analyzer Data Manual.
For more information, please refer to the following:
We hope this answers your question. If you have other questions about our Host Adapters or other Total Phase products, feel free to email us at email@example.com or submit a request for technical support.