I'm interested in how to properly realize Grounding in a CAN / RS 485 bus setup.

From my understanding, when non-isolated transceivers are used, in addition to the differential signal lines, a third ground wire should be used in order to eliminate potential differences between the nodes, that is, in order to avoid excess common-mode voltage at the transceivers' inputs.

In contrast, when isolated transceivers are used, no problems caused by different ground potentials will occur as the isolated nodes are floating.

My questions are:

1) Is the above assumption valid?

2) Assuming a CAN bus setup with only two transceivers: It is sufficient to just use one isolated transceiver while the other transceiver does not need to be isolated? From my understanding, this should be the case since no harmful potential differences may occur. Do I need the ground wire in such a setup?

3) If my CAN bus has only isolated transceivers connected, is there any need to provide e.g. a high impedance ground connection at one transceiver in order to deal with static charging (or some other unexpected problem I am not think about)?

Many thanks in advance!


1 Answer 1

  1. No, assumption is not valid. RS-485 and CAN buses need a common reference, so that the voltages are within a certain operating range. If they don't have a common reference, the voltages may go beyond operating range, and the logic level cannot be determined properly. They also tolerate a certain maximum range after which there might be damage. For RS-485, the common mode voltage, or grounds between tranceivers, must be within 7V and for CAN bus within 2V.

In fact, it is the opposite, if you have two RS485 devices, and they both already share a common reference, like both tranceivers have their grounds already connected to same potential via mains plug earth for example, then they already share a reference, and a separate ground wire between devices should not be connected to prevent ground loops.

  1. See 1, yes, tranceivers need common ground reference. For example, isolated RS-485/CAN tranceivers have the isolated RS-485/CAN side which contains the differential data wires and the ground reference for them, and the grounds must be within the common mode voltage range.

  2. See 1, yes, even if there are two isolated tranceivers, both isolated, they still need the ground reference for the bus to keep the bus common mode voltage range within limits. Since the bus ground reference is floating, i.e. not connected to anything, it usually is tied to some potential like earth/0V/ground/chassis etc at some point, sometimes not directly for setting the DC level, but via capacitor to have a low impedance for high frequencies to suppress electromagnetic interference.

Basically, if a single isolated RS-485 tranceiver allows for 1kV of isolation between MCU side and RS-485 side, you can have MCU ground to be 0V, bus ground to be 1kV, and the other MCU ground at 2kV potential.

  • \$\begingroup\$ Could you please elaborate while a common reference is needed in a differential system? From my assumption, the only reason for a ground wire is to mitigate potential differences (as explained above). Also see this question: electronics.stackexchange.com/questions/198864/… \$\endgroup\$
    – EMC
    Oct 26, 2020 at 18:25
  • 1
    \$\begingroup\$ @EMC - RS485 is not a current loop. Current flow from the driver driving a line high does not return on the other line - it returns on the ground line. The termination on the end of the lines is not there to link the 2 together to provide a return current path - it's there to absorb the energy of the transmission line to prevent reflections (in fact RS485 works just fine without termination if your data rate is low enough such that the reflections 'settle' before the line is sampled by the receiver). \$\endgroup\$
    – brhans
    Oct 26, 2020 at 18:57
  • \$\begingroup\$ @EMC OK I will give an example. RS485 transmitter sends A1=5V, B1=0V, GND1=0V to wires, so A1-B1=5V differential voltage. Someone accidentally connects a 15V power supply between transmitter and receiver, which creates a 15V offset in their grounds. So receiver sees its own ground GND2=0V reference for itself, it will see data wires A2=20V,B2=15V, still a 5V differential, but with the added offset of 15V between ground references. Well, since both A and B went over the limit of 7V between grounds, the receiver cannot determine if A2 or B2 has greater voltage and output is indeterminate. \$\endgroup\$
    – Justme
    Oct 26, 2020 at 21:11
  • \$\begingroup\$ @EMC CAN bus has no negative voltages. Sure, it is differential, meaning difference of signals is what matters, even if common mode voltage is 2.5V in a 5V system. And no the tranceiver would NOT see a voltage difference, because both voltage A and voltage B are too high to do comparison between A and B. OK, so about the isolated tranceiver system. Imagine you have two battery powered devices with no other wiring between them, except the two RS485 data wires. Can you say what is the potential between the tranceiver grounds? \$\endgroup\$
    – Justme
    Oct 26, 2020 at 22:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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