RS-485 grounding is frequently missing from commercial automation installations. It’s especially egregious when you are using your shield as your signal reference, because that reference is now noisy as heck. The shield’s job to collect interference. It’s up to you to make sure that interference goes somewhere.

The Case Study

I was looking at the RS-485 (MS/TP BACnet) buses for variable frequency drives (VFDs) terminated on a BACnet/IP gateway today. Devices on this bus kept going offline and online periodically, so a bus issue was the first thing to look for. Below is what one conductor of the RS-485 bus looked like by itself on my oscilliscope:

VFDs are noisy. It doesn’t help that the bus cable goes through these before they terminate in the low-voltage side:

It’s going to pick up a lot of that interference from these high voltage things.

The cable is twisted pair and shielded, so interference on one conductor mostly cancels out the interference on the other one. Here’s what they look like together, and what a controller would see:

Much better, but that’s still very bad. This is because this cable is shielded, and the shield was terminated at the BACnet MS/TP to IP gateway in the VREF terminal. This is the reference “ground” that the A and B conductors are measured with respect to. The shield is going to pick up interference along the bus run, because that’s what it’s for. The interference is going to drain to this reference and throw off the voltage of the bus signal.

Here’s what the shield looks like by itself:

As you can see, I am measuring spikes greater than 1.7 V on the shield. This will throw off our measurement of A and B by the same amount, causing frame errors.

The Solution

Since this is a shield, I wired it like you’re supposed to. Let the interference drain to earth ground:

Now the combined signal looks like this:

Much better. Still, now I’m not using anything for a reference. Ideally the bus cable used would have a free conductor, but it doesn’t. I could earth-ground it too and do the same at all the VFDs in the field, but I don’t want a thunderstorm to blow up controllers. It works much better now, so I think I’ll just leave it as is. Not too happy about it, but not the worst outcome.