PORTS Forum

Ports and Interfaces => USB => Topic started by: galapogos on June 28, 2010, 11:48:47 pm

Title: Software USB analyzer/sniffer vs hardware USB analyzer
Post by: galapogos on June 28, 2010, 11:48:47 pm
Hi,

I'm debugging a USB device and I'm trying to figure out if there's a software or firmware problem. What are the differences between a software USB analyzer such as USBTrace/USBlyzer and a hardware one like the LeCroy USB Advisor or Ellisys USB Explorer?
Title: Re: Software USB analyzer/sniffer vs hardware USB analyzer
Post by: Ron Hemphill on June 29, 2010, 10:31:27 am
In a nutshell, software analyzers use data captured at the host driver level.  In most cases, they can use their entire feature set only after the device is already installed on the system.  Thus they have limited use in some cases, especially as far as debugging enumeration and startup.

Hardware analyzers capture data directly off of the USB bus.  The benefits to that should be fairly obvious.  I myself have used several hardware analyzers over the years, but have used primarily the Ellisys Explorer 200 in the past 4 or 5 years - it's been a great tool.

Jan has a good page on USB development tools:
http://www.lvr.com/development_tools.htm (http://www.lvr.com/development_tools.htm)
Title: Re: Software USB analyzer/sniffer vs hardware USB analyzer
Post by: galapogos on June 30, 2010, 12:20:19 am
If I'm interested in finding out if particular transaction consisting of the SCSI command and all relevant data & commands signals has made it to where they're supposed to go, would a software analyzer do or would I need a hardware analyzer?
Title: Re: Software USB analyzer/sniffer vs hardware USB analyzer
Post by: Jan Axelson on June 30, 2010, 05:55:41 pm
Either type can tell you if the data made it. When the data doesn't make it, the bus-level details of a hardware analyzer are often helpful for showing why. For easiest debugging, use an analyzer that decodes the mass-storage commands.

Jan