Logic Disconnects on Tracing RS485 Bus

Hello, I have been having issues with Logic 8 consistently disconnecting during a trace.

Setup:
I am using a Logic 8 analyzer with Logic 2.3.54 on an Ubuntu 18.04 machine. I am recording traces of a RS485 bus with one master device communicating with two servant devices (servos). Logic is tracing the digital and analog signals on two channels at 100 Ms/s and 2.5 Ms/s respectively. The protocol is asynchronous serial, with two inverted lines carrying the signal and a ground line. Logic is being used to trace the non-inverted line against the ground line.

Problem:
When I activate another part of the circuit controlling the servo’s clutches (with separate power and ground), there is an increase in the DC baseline of the analog bus signal (likely electrical noise from the clutch circuit). Then, Logic stops the trace with an error. I paraphrase: “Try lowering the sample rate.” Then, “Device has disconnected for an unknown reason. Please contact support.”


Figure: Analog trace of bus traffic. Towards the end of the trace, activation of another isolated circuit causes a DC shift, and the trace is terminated soon after.

I cannot provide a screenshot of the sample rate warning because it disappears too quickly.

Logic tries to reconnect to the analyzer several times, each time failing with the message: “Device has disconnected for an unknown reason. Please contact support.”

Debugging Efforts:
I have done the crosstalk test recommended by the saleae support page. The resulting trace shows minimal noise (~30 mV), which is why I believe the DC shift (~200 mV) is from the clutch circuit’s electrical noise.

I have followed the recommendation and lowered the sample rate to the minimum (10 Ms/s for digital and 2.5 Ms/s for analog). The same error happens when I repeat the trace.

I have also tried the other USB port on my Ubuntu machine, with the same results.

The voltages seem to be well within the ±25V safety margin, but I cannot rule out that the stop is caused by a surge from the clutch circuit.

I have also tried eliminating ground loops for Logic by running my machine off battery power for the whole trace. The same failure occurs.

The following is the log file from ~/.config/Logic/logs after one such failed trace.
logic_log.txt (33.9 KB)

Any support and advice would be appreciated.

I would try an optically isolated USB adapter.

Like Richard said, a USB isolator is a good solution. Alternatively, you could look for a RS485 isolator.

However, you might want to try introducing say 100 ohms of resistance between the ground pin of the Logic analyzer and the device under test first, to see if that improves the stability of the capture.

Another quick solution (at your own risk) would be to use the logic analyzer with a laptop, with no other connections. This should effectively isolate the Logic 8 from mains ground. Note - external monitors will often provide a mains ground, so be sure that nothing else is connected.
However, it’s worth noting that mains ground is there to protect humans from injury, and that you should make your own informed review of the risks before attempting this.

A quick word about USB Isolators. We resell a USB 3.0 isolator here:

Unfortunately, USB 2.0 high speed isolators aren’t much cheaper (although there might be more options now, I haven’t checked in a while)
Here is a USB 2.0 high speed isolator for example:

You will find a lot of low cost USB 2.0 isolators on the market, however on closer inspection, you will find that they only support USB 2.0 full-speed, which is 40x slower than high speed. Our devices don’t support USB full speed, and a high speed or faster isolator is required.

I think there are some lower cost, USB 2.0 high-speed isolators on the market now, likely due to the introduction of a few dedicated USB 2.0 high speed isolation ICs, but I haven’t checked, or validated them. Here is one example: https://www.amazon.com/Topping-Isolator-Compatible-PCM32bit-withstands/dp/B09MF9VTQG

Oh, one last thing. A lot of these isolators provide reduced supply current, e.g. 300mA. Logic 8 does draw a bit more current than this, so it might require an external isolated supply, either connected to the isolator or to a downstream powered hub.

Please let us know what ultimately works out for you!