8
\$\begingroup\$

Is it possible to passively listen on low speed USB communication?

Suppose I connect a logic analyzer to D+ or D- line, will I see a valid data?

\$\endgroup\$
4
\$\begingroup\$

I'm not certain about this, but I believe that if you look at the differential voltage between the two lines, you will see data, but it will be NRZI encoded. This means that the bits are encoded by whether the bus level changes or not. Change (in either direction) means 0 and no change (for one bit-time) means 1.

I believe there are also CRCs and other signaling bytes at the beginning and end of packets.

\$\endgroup\$
3
  • \$\begingroup\$ It's all in the USB spec. The normal bits are differential, but the "end of packet" signal is both lines pulled low, so you need to look at both, really. \$\endgroup\$
    – endolith
    May 3 '10 at 2:31
  • 1
    \$\begingroup\$ Here's a decent summary of the packets used: beyondlogic.org/usbnutshell/usb3.htm \$\endgroup\$
    – pingswept
    May 3 '10 at 2:38
  • \$\begingroup\$ Don't forget about bit stuffing! \$\endgroup\$
    – ajs410
    May 3 '10 at 18:29
4
\$\begingroup\$

This is what you need http://www.totalphase.com/products/beagle_usb480/, it is a USB 2.0 protocol analyzer, comes with software that will parse out USB traffic, and will be much easier to use than a logic analyzer. I have one of these for I2C/SPI and it works well, plus, Bunnie uses it http://andrew.huang.usesthis.com/

\$\endgroup\$
3
\$\begingroup\$

Yes, it should work. Ideally you'd use a logic analyzer that can capture & decode USB traffic, otherwise you will have trouble finding the data you are interested in.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.