9
\$\begingroup\$

Galvanically isolated RS-485 surely needs a signal ground, which leaves me puzzled about the following circuit -- which apparently sends the RS-485 signal correctly without the isolated grounds being connected.

Photo shows a pair of Analog Devices ADM2582E drivers which are powered by completely separate batteries (and Recon R7850-05 DC convertors). When leftmost unit's TXD is connected to (its own) GND or 5V, rightmost unit responds.

The question is simple: how is this working?

The Digilent board has a place for a header marked ISOGND, but it's not on the screw terminals and there's no header on the PCB, so they obviously have lots of customers which don't use it.

enter image description here

This is the circuit above (with 1 kHz generator and switch on ISOGND link, added after photo taken.)

schematic

simulate this circuit – Schematic created using CircuitLab

Materials

The modules are Digilent PMOD RS485 isolated drivers based on the Analog Devices ADM2582E chip. enter image description here
From Digilent Documentation

Module circuit diagram: enter image description here
From Digilent

Additions after comments

Trace 1. Is the signal noisy? It was suggested in comments that the signal would look noisy: it does not. Following is from circuit above U2.RXD but with input at U1.TXD from 1kHz (microcontroller powered from left-hand power supply.) Rise/fall times measured at approx 7 ns. The signal at U2.A with scope ground on U2.B was equally clean.

enter image description here

Same if non-isolated? One answer says it would look the same if the transceivers were non-isolated: I repeated the experiment with two Texas Instruments 75176 transceivers (without connecting grounds), again over 10 cm cable without grounds. Results were indistinguishable, as predicted.

Further tests

Many thanks to @Fredled for suggesting looking at these traces.

Trace 2. Receiver against its Isolated Ground This is U2.A with scope ground on U2.ISOGND, which is not connected to U1.ISOGND. (However, with U1.ISOGND connected to U2.ISOGND it looks the same.)

enter image description here

Trace 3. Receiver ground isolation This is U2.ISOGND with scope ground on U2.GND, with what appears to be 50 Hz background mains (from scope probes) and effects from the Recon switched-mode DC-DC converter and/or the converters inside the ADM2582. enter image description here

Trace 4. Receiver input against local non-isolated ground Consequently U2.A against U2.GND should be messy: and here is U2.A with scope ground on U2.GND; As well as the decay slopes at 1 kHz, the 50 Hz pattern is very visible at slower traces.

enter image description here

Traces with long wire, U2.A with scope ground at U2.ISOGND

Finally, with these conditions we see noise removed by the joining of the signal grounds:

  • Transmitter powered by low quality USB charger
  • Receiver powered by 9V battery and Recon DCDC converter
  • Signal going through ~150 m reel of twisted 0.5 mm solid cable sitting on a power cube

It's worth noting that in both cases the output of the receiver U2.RXD looked the same.

Noise visible U1.ISOGND not connected to U2.ISOGND

enter image description here

Noise removed U1.ISOGND connected to U2.ISOGND enter image description here

\$\endgroup\$
13
  • 1
    \$\begingroup\$ Simply put, the complementary line is acting as the "ground" (return) path. You wouldn't be able to do this with single-ended signaling. \$\endgroup\$
    – MOSFET
    Commented Mar 5 at 19:57
  • 1
    \$\begingroup\$ @MOSFET So if you have a battery operated device generating e.g. 1 kHz square wave to send out Morse code, you are saying this cannot be observed by poking an oscilloscope probe tip to the signal, without connecting the ground probe? I bet this works just as well with single-ended signaling, as long as the signal has enough transitions, like is the 1 kHz tone on or off. \$\endgroup\$
    – Justme
    Commented Mar 5 at 20:16
  • \$\begingroup\$ @Justme Well when you mention that it will work with enough transitions, That implies that you have enough capacitive coupling to complete the circuit. Sure, you will see some fluctuation on the o-scope, especially at the transitions, but I bet the levels will be wrong. \$\endgroup\$
    – MOSFET
    Commented Mar 5 at 20:25
  • 3
    \$\begingroup\$ @MOSFET likewise this circuit works because the receiver data inputs have a few hundred kohms of DC input impedance which equalizes the common mode voltages between chips, so it works even without transitions. \$\endgroup\$
    – Justme
    Commented Mar 5 at 20:40
  • 1
    \$\begingroup\$ @jonathanjo The relatively good result may be thanks to the quality of the RS485 chip. And perhaps to the relatively slow frequency. Nice work! \$\endgroup\$
    – Fredled
    Commented Mar 7 at 20:53

7 Answers 7

11
\$\begingroup\$

It works due to RS-485 receiver having a high but yet finite input impedance which equalizes common mode potential between the two chips even without the common reference wire. And this is also the reason why people think RS-485 is a two wire bus which does not need a common reference wire, but it only works during small scale prototyping and not in production environment.

These may be isolating tranceivers but it really has nothing to do with them being isolated.

You would see the exact same phenomenon by connecting two standard transceivers together that are battery powered and have no common ground between them.

The transmitting chip has low impedance outputs that are referenced to transmitting chip ground, or 0V. We might assume the Y and Z outputs are for example 5V and 0V, referenced to the 0V transmitter reference.

The receiving chip has high impedance inputs, with 96kohms or more impedance and there could be also leakage currents through the input.

So the receiver happens to bias itself through the input impedance and leakage currents so that the common mode voltage stabilizes to a level that is within the operating area and the receiver can detect the differential 5V voltage correctly and provide an output logic level.

For a mental model, you can imagine the receiver has internal 500k resistors from A and B pins to both VCC and GND of the bus side, biasing the A and B pins to half-supply if not externally driven.

So as both the transmitter and receiver have biased their data pins to half-supply and both have approximately equal supplies of 5V, it basically means any difference in the transceiver grounds must be approximately 0V. But they are so weakly held at the same potential that it would not work if for example one of the boards were powered with a 2-prong mains adapter instead of battery.

So this is a bit like poking an oscilloscope probe tip without connecting the ground clip to some device - you might see tens of volts of voltage at first but it discharges to zero, because the 10x probe tip has 10 Mohm (or 1 Mohm for 1x probe) resistance to scope ground, so they are held at same potential through a high impedance when charges have equalized. If the probed point happens to be a 1 kHz square wave, it looks like the DC offsets cancel and you only see the AC. If the probed signal survived the initial voltage difference that was charged between devices.

\$\endgroup\$
8
  • 3
    \$\begingroup\$ "imagine the receiver has internal 500k resistors from A and B pins to both VCC and GND" More importantly, it probably has ESD protection diodes in those positions. \$\endgroup\$
    – Dave Tweed
    Commented Mar 5 at 22:55
  • 2
    \$\begingroup\$ @DaveTweed Likely yes, but this is not just leakage from clamping diodes like on a generic CMOS IC input, where you could back-feed power to it. The data pair absolute maximum is -9V/+14V as it must work with -7V/+12V CM voltage. \$\endgroup\$
    – Justme
    Commented Mar 6 at 5:21
  • 2
    \$\begingroup\$ You would see the exact same phenomenon by connecting two standard transceivers together that are battery powered and have no common ground between them. I tried it: you're right of course, I added a note to the question. \$\endgroup\$
    – jonathanjo
    Commented Mar 6 at 10:48
  • \$\begingroup\$ they are so weakly held at the same potential that it would not work if for example one of the boards were powered with a 2-prong mains adapter I did this experiment (transmitter powered by low-quality USB charger, receiver by battieres), signal worked fine. \$\endgroup\$
    – jonathanjo
    Commented Mar 7 at 14:09
  • \$\begingroup\$ Finally: I used a long cable with a noise source, transmitter with mains-powerd USB charger, receiver by battery: adding or removing the ISOGND link makes a big visible difference; scope traces added at bottom of question. Many thanks for your answer and comments: this was a practical experiment to determine whether my client should change from the current RS-485 modules it is using. Now I'm going to select ones with ISOGND on the screw terminals. \$\endgroup\$
    – jonathanjo
    Commented Mar 7 at 14:13
10
\$\begingroup\$

The RS485 standard says transceiver and receiver grounds should be connected. This gives much better noise immunity and is how it should be done, but... some equipment doesn't have the ground connection. So why does it still work without it?

RS485 uses differential signaling: bit value is encoded as voltage between the two wires in the differential pair (let's call them A and B), and the receiver does its best to only consider this differential voltage while ignoring any common mode voltage.

Transmitter's point of view:

enter image description here

To transmit a HIGH, it connects wire A to its own VCC and wire B to its GND ; to transmit a LOW, it does the opposite. So if it is powered with 5V, the differential voltage at the output of the transmitter, which is VA-VB, is either +VCC or -VCC depending on bit value.

The common mode, which is (VA+VB)/2 is VCC/2 relative to transmitter ground.

Receiver's point of view:

  • Differential voltage is simple: it's the voltage between the two wires. The receiver checks which wire has the highest voltage, and outputs the bit value. It's a simple comparator.

  • Common mode voltage is not that simple...

From the receiver's point of view, common mode is (VA+VB)/2 with all voltages relative to the receiver's ground.

If the grounds of the transmitter and receiver were connected, then we'd have the same 0V reference for both, and common mode would be the same.

However, if grounds are not connected, then common mode at the receiver is: Voltage between receiver ground and transmitter ground, plus the transmitter common mode (VCC/2).

Which begs the question: what is the voltage between receiver ground and transmitter ground? What sets it? I guess that's the origin of your question. Sure, the receiver is a voltage comparator, but usual comparators like LM339 require both inputs to be between their positive and negative power supplies, otherwise it won't work or the IC will be damaged.

If transmitter and receiver's supplies are isolated, and they are only connected together by the two signal lines, voltage between their grounds will be set by leakage currents through the isolated power supplies and the receiver's input impedance.

Which begs the question, what is the receiver's input impedance?

enter image description here

These come from "Technical White Paper, RS-485 Basics Series" from TI. Quote:

The resistor-divider network on the A and B inputs serves two functions. The first function is to attenuate large signals that are beyond the range of the supply voltage of the receiver. [...] The second important function is to bias the bus voltages toward VCC/2. This is necessary because simply attenuating a negative signal will not bring the voltage between the local ground of the receiver and VCC. Attenuating the signal and biasing it toward VCC/2 prevents the inputs of the comparator from getting saturated; thus enabling the comparator to properly evaluate the differential voltage between the A and B terminals. This ability to bias the voltages also allows the system to perform without a common ground connection between the remote ground of the RS-485 driver and the ground of the local RS-485 receiver.

Thus, if the supplies are isolated at each end, the receiver's input impedance sets the common mode (as seen by the receiver). All voltages are relative, but if we hypothetically used Earth as "Ground aka zero volts" we could imagine three cases:

  • Transmitter earthed, receiver floating: the receiver is not really floating since it is connected to the transmitter via its input resistances, and the transmitter is earthed. So the receiver's "GND" potential is close enough to the transmitter's for it to work.

  • Transmitter floating, receiver earthed: same thing, except the "floating" transmitter is not really floating since...

  • Both floating: they are connected via the receiver's input resistance, thus even if their potential is unknown and floating, both have their "GND" at close potentials.

In case of emergency, the TVS protection diodes inside the receivers will also ensure common mode limits are not exceeded.

\$\endgroup\$
6
  • \$\begingroup\$ Your quote from TI appears to say that an isolated receiver with the bias resistor network will hold receiver-isolated-ground to (A+B)/2 and thus doesn't need the signal ground joined. But if it doesn't have the resistors (the Digilent modules do not) then we must have the signal ground joining TX-gnd and RX-isol-gnd. (Because the input impedance will adequately hold RX-isol-gnd at (A+B)/2on the bench but not real life.) Have I understood correctly? \$\endgroup\$
    – jonathanjo
    Commented Mar 6 at 13:41
  • \$\begingroup\$ Correct, but the resistors are inside the receiver chip, so you didn't know but you have them ;) \$\endgroup\$
    – bobflux
    Commented Mar 6 at 13:59
  • \$\begingroup\$ I'm sorry, I'm not clear which part you're saying is correct. To be unambiguous: does the ADM2582 circuit shown require the connection between TX.isognd and TX.isognd? \$\endgroup\$
    – jonathanjo
    Commented Mar 6 at 14:13
  • \$\begingroup\$ It does not require connection between grounds \$\endgroup\$
    – bobflux
    Commented Mar 6 at 14:23
  • 1
    \$\begingroup\$ @jonathanjo RS-485 standard requires the GND pins of transceivers to be wired together, in this case, the two ISOGND nodes between the boards. It will work without GND connection in your non-real-world-best-case scenario with batteries due to leakage currents, but it will not work without GND connection in any real-life scenario where you will actually need RS-485 for what it is made for, robust and reliable communication. \$\endgroup\$
    – Justme
    Commented Mar 6 at 17:23
5
\$\begingroup\$

RS-485 uses differential signaling so as long as your common-mode voltages are within the system's capability, then the difference between the data lines is enough to determine the signal.

\$\endgroup\$
1
  • 3
    \$\begingroup\$ I think the question is more about what is the mechanism how do the common mode voltages end up being within the system's capability, because they clearly are since it works. \$\endgroup\$
    – Justme
    Commented Mar 5 at 20:20
0
\$\begingroup\$

It's not surprising at all that this works. RS485 is a differential signal, and differential signals can be much more tolerant to noise and common mode voltages between devices.

With non-isolated RS485 you can have several volts -7 to 12V on the grounds.

With the above circuit there is not really anything to drive common mode voltages beyond something the transceiver/receiver can tolerate. The ground is floating, but you can imagine floating as a very large resistor attached to ground on the order of 10^9 Ω or more. One problem you could encounter with not grounding this circuit in a 'real world' environment with noise or long cables is the floating section could pick up noise.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ True, there is nothing to drive the common mode beyond point of operating. But there is a far more effective path equalizing the common mode, than the suggested gigaohm to earth. \$\endgroup\$
    – Justme
    Commented Mar 5 at 20:22
0
\$\begingroup\$

The question is simple: how is this working?

I think if you tried this over several tens of metres of cable and, in an electrically noisy environment, you'd see problems big time. In your picture the two devices are very close and, the wires are twisted so, it has a decent chance of success.

In addition, both ends are battery powered thus, earth spikes and glitches that can flow across isolation barriers between one device and the other are negligible. Always use the isolated ground connection any any real-life installation.

\$\endgroup\$
-2
\$\begingroup\$

Really easy stuff. Someone said it cannot work over distance, which is nonsense. Every plain ole telephone circuit is a differential circuit and works over miles of cables. If the signal were referenced to earth or a ground, would be extremely noisy (common mode) nand unusable. All you would hear is 60 Hz hum. RS485 is a balanced signal, and one step up from that was opto to completely isolated the two system eliminating common mode noise.

\$\endgroup\$
1
  • 3
    \$\begingroup\$ This is incorrect. The difference is that RS-485 is not a two-wire connection like a telephone is. RS-485 is a three-wire connection with two data wires and a ground reference ŕeceivers, as there is a needs the data wires to have a common mode DC bias range within the -7 to +12V compared to chip ground. If the data wires are out of this range, the receiver cannot determine the differential voltage. So if both chips were connected to ground, even to a noisy ground like in a noisy industrial setting, it would work, but without ground reference between chips it would not. \$\endgroup\$
    – Justme
    Commented Mar 6 at 5:45
-2
\$\begingroup\$

Some RS-485 transceivers are fully isolated, they contain e.g. transformers or capacitor coupled power supplies within the device package. Look at e.g. https://www.ti.com/product/ISOW1432 - it can cope with 5000 volts.

These work by having "floating" islands of circuitry operating off isolated power supplies. So the RS485 transciever doing the work is still some low voltage circuit, just it does not need a ground connection- the transmitter and receiver circuits are referenced to each others outputs - one transmit side signal is a few volts more negative, the other one a few volt more positive at all times.

These devices can happily work with very large common mode voltages : their floating circuits are happily transferring differential data with only a few volts difference between the two data wires, so the actual transceiver hardware is operating about the same voltage to anything you call ground at both ends.

Signalling to/from the electrical interface on the user side can be via transformers, capacitors or opto isolators. If you use transformers or capacitors, then the digital data would be modulated onto some kind of AC carrier to pass through the transformer or capacitor. Even at 12 megabits/sec this can be made to work.

\$\endgroup\$
3
  • 2
    \$\begingroup\$ This is incorrect. It does not matter if the transceiver is isolated or not. Yes, this transmitter is isolated and can have 5000Vrms betweem bus side and MCU side, but that is irrelevant here, this is not about that at all. The RS-485 receiver itself still requires the bus data wires to have common mode within -7 and +12 in respect to the bus side ground GISOIN/GND2. The RS-485 bus receiver still has internal bias resistors to the isolated supply and ground, biasing both inputs to VCC/2. This device still packs a standard 1/8th unit load RS-485 receiver and data+supply isolators. \$\endgroup\$
    – Justme
    Commented Mar 6 at 19:33
  • \$\begingroup\$ " just it does not need a ground connection" It does. You need not and should not connect the ground of the primary with the ground of the secondary. But all nodes sitting on the secondary side need to share a common ground. \$\endgroup\$
    – Lundin
    Commented Mar 8 at 9:31
  • \$\begingroup\$ Though of course if you have no signal ground but leave the devices connected, the potentials will even out over time. Relying on that is not professional however. \$\endgroup\$
    – Lundin
    Commented Mar 8 at 9:33

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.