Image by Gerd Altmann from Pixabay
Question from the Customer:I am using the Beagle USB 480 Protocol Analyzer and am troubleshooting a USB product, which is not detecting a High-speed USB device correctly. The problem is that the host device recognizes the front panel as a Full-speed USB device, even though it is High speed.
I expect the Beagle USB 480 analyzer to determine what is causing the error, as a USB device normally uses a termination code on the data line to indicate whether it is USB 2.0 capable. Can you tell me why this is happening and what I can do to analyze and debug this situation?
Here are excerpts from two data logs from two different devices. One operates correctly, detecting the front panel as High speed, whereas the other device does not.
Data log of a correct connection with the front panel:Jun 19 08:32:52 TRTWILD0021 kernel: [15199.796844] usb 1-1: new high speed USB device number 88 using xhci_hcd
Jun 19 08:32:53 TRTWILD0021 kernel: [15199.927500] usb 1-1: New USB device found, idVendor=2826, idProduct=2000
Jun 19 08:32:53 TRTWILD0021 kernel: [15199.927511] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jun 19 08:32:53 TRTWILD0021 kernel: [15199.927518] usb 1-1: Product: Etherned/NCM gadget
Jun 19 08:32:53 TRTWILD0021 kernel: [15199.927524] usb 1-1: Manufacturer: BSH Hausgeraete GmbH
Jun 19 08:32:53 TRTWILD0021 kernel: [15199.954403] cdc_ncm 1-1:1.0: MAC-Address: 6a:42:55:c2:ba:0d
Jun 19 08:32:53 TRTWILD0021 kernel: [15199.954846] cdc_ncm 1-1:1.0 usb0: register 'cdc_ncm' at usb-0000:00:14.0-1, CDC NCM, 6a:42:55:c2:ba:0d
Data log of a defective connection with the front panel:Jun 19 08:35:37 TRTWILD0021 kernel: [15364.980494] usb 1-1: new full speed USB device number 90 using xhci_hcd
Jun 19 08:35:38 TRTWILD0021 kernel: [15365.148638] usb 1-1: device descriptor read/64, error -71
Jun 19 08:35:38 TRTWILD0021 kernel: [15365.420923] usb 1-1: device descriptor read/64, error -71
Jun 19 08:35:38 TRTWILD0021 kernel: [15365.637079] usb 1-1: new full speed USB device number 91 using xhci_hcd
Jun 19 08:35:38 TRTWILD0021 kernel: [15365.805269] usb 1-1: device descriptor read/64, error -71
Jun 19 08:35:39 TRTWILD0021 kernel: [15366.021486] usb 1-1: device descriptor read/64, error -71
Jun 19 08:35:39 TRTWILD0021 kernel: [15366.125567] usb usb1-port1: attempt power cycle
Response from Technical Support:Thank you for your question! The issue may be that Full-speed mode is negotiated during attach/port reset event. We will provide an overview of USB negotiation and recommend a method to support analyzing and troubleshooting your product.
In your case, the issue is probably the suppressed signal quality of High-speed mode, which does not remove the chirping sequencing. Our recommendation is placing a High-speed hub between the DUT and Host, which could improve their interface and help you find where the communication is impaired. For more information, we recommend reading the High-speed Negotiation Issues section in An Introduction to the USB Protocol.
We hope this answers your question. Additional resources that you may find helpful include the following:
If you want more information, feel free to contact us with your questions, or request a demo that applies to your application.