14

I'm trying to examine the communication of a USB mouse with an oscilloscope (PicoScope 3204). When I connect the scope's ground to one of the two data signal lines (Data+ or Data-) the mouse shuts down. The mouse is the 1995 Microsoft Home device, so it must be using USB 1.1, not some fancy high-speed version. I also tried the same on a USB memory stick and experienced the same problem. Is there an simple circuit I can build to overcome this problem?

I'm aware there are sophisticated USB test fixtures for this purpose, but I'm trying this as a demonstration/experiment, so I'm looking for a minimal home-brew solution.

Diomidis Spinellis
  • 349
  • 1
  • 2
  • 8

5 Answers5

21

Don't ground the data lines. They are above ground. Beyond Logic says

USB uses a differential transmission pair for data. This is encoded using NRZI and is bit stuffed to ensure adequate transitions in the data stream. On low and full speed devices, a differential ‘1’ is transmitted by pulling D+ over 2.8V with a 15K ohm resistor pulled to ground and D- under 0.3V with a 1.5K ohm resistor pulled to 3.6V. A differential ‘0’ on the other hand is a D- greater than 2.8V and a D+ less than 0.3V with the same appropriate pull down/up resistors.

You need to connect scope ground to USB ground. Otherwise you're killing one of the signals and the differential receiver will not detect the required phase reversal.

With scope connected to ground a single channel scope can monitor either D+ or D-. A dual channel scope can monitor both and you should see the phase inversion when data is transmitted.

Transistor
  • 168,990
  • 12
  • 186
  • 385
16

Please see this very useful explanation why USB D- is not a GND. If you want to probe USB data pairs; you need to connect your scope between GND and USB D- and/or D+.

Also remember that in most PCs the "GND" is earthed; and so is your scope GND lead. This is likely the behaviour of shutting down because you are effectively connecting USB D- to GND (via earth) via your oscilloscope.

Hans
  • 7,238
  • 1
  • 25
  • 37
4

To add a little bit more of information and references, related to the safety operation of your equipment during testing.

You must be always very careful before connecting the ground or chassis of your test equipment to your DUT (Device Under Test).

Some very bad things can happen, including:

  • Putting you or other persons under risk of death.
  • Damaging permanently your test equipment.
  • Damaging permanently your tested circuit or DUT.

Some interesting references about floating vs. grounded test equipment and safety. I cannot summarize them here as the topic is hugely broad:

jose.angel.jimenez
  • 2,052
  • 1
  • 14
  • 23
1

scope ground goes to usb 0V [try the white wire. test with a DC multimeter to the computer chassis that it is 0V and low ohms which you connect to]

if your scope allows two channel difference A-B then use A for usb +data and B for usb -data.

Always test traffic between PC and an appliance such as a printer or webcam. You need the appliance because usb employs a handshake before it gets going. Scrape insulation off to expose wires and try a high impedance (10 Meg) scope probe. It might self-adjust in order to work with ugly exposed cables. Do not expect anything > 10MHz to work like this as scope probes are ugly and 240 ohm terminated probes would conflict with the handshake from the proper termination at the appliance.

USB-C is unknown to me; it might have a whole lot of extra switches in your way to decide the direction. I do not know what the 100 Watt power lines might do. Avoid USB-C

mephisto
  • 11
  • 1
1

You need a 2-channel oscilloscope. Then you connect one channel to D+ and the other one to D-. The ground clips of the two probes you connect to each other. Then you subtract the two channels: X-Y, because it is a differential signal.

PeterJ
  • 17,131
  • 37
  • 56
  • 91
Rainer
  • 11
  • 1