4
\$\begingroup\$

What is the recommended way for termination RS485? I read about couple of options to do this. If I don't want to do dissipate extra power, can I just put 120 Ohm resistor?

I saw the follow implementation:

schematic

simulate this circuit – Schematic created using CircuitLab

The termination resistor should locate in the end of the transmission line? I saw that it can be before the last slave of the line and sometimes after it.

\$\endgroup\$
1
  • \$\begingroup\$ As the main purpose of a termination is to prevent reflections at the ends of a line, it makes sense to terminate it on both ends of the line. \$\endgroup\$
    – wiebel
    Commented Dec 21, 2018 at 11:46

3 Answers 3

3
\$\begingroup\$

This Maxim Tutorial gives guidelines on wiring up RS485 networks

https://www.maximintegrated.com/en/app-notes/index.mvp/id/763

Abstract: The proper method of wiring an RS-485 network is described, with recommendations for twisted-pair cabling and correctly locating termination resistors. Received waveforms are shown for examples of proper and improper cable termination. Configurations are shown for a simple, single-transmitter/multiple receiver network through multiple transceiver to multibranched circuits.

This one discusses Fail Safe terminations, which could be handy in cases where different types of RS485 transceivers are used.

https://www.maximintegrated.com/en/app-notes/index.mvp/id/723

Fail-Safe

Deciding whether you need a termination resistor or not is only part of the problem in implementing an RS-485 system. Normally, an RS-485 receiver output is "1" if A > B by +200mV or more, and "0" if B > A by 200mV or more. In a half-duplex RS-485 network, the master transceiver tri-states the bus after transmitting a message to the slaves. Then, with no signal driving the bus, the receiver's output state is undefined, as the difference between A and B tends towards 0V. If the receiver output, RO, is "0," the slaves interpret it as a new start bit and attempt to read the following byte. The result is a framing error because the stop bit never occurs. The bus goes unclaimed, and the network stalls.

Unfortunately, different runs of chips can produce different output signals on RO for a 0V differential input. The prototype can work perfectly, however, certain nodes will fail in a later production run. To solve this problem, bias the bus as shown in Figure 7 under Multidrop/Fail-Safe Termination. Biasing the bus ensures that the receiver output remains "1" when the bus is tri-stated. Alternatively, you can use "true fail-safe" receivers like those of the MAX3080 (5V) and MAX3070 (3V) families. These devices ensure an RO output of "1" in response to a 0V differential input by changing the receiver's threshold to -50mV.

\$\endgroup\$
1
\$\begingroup\$

The RS-485 standard does not specify values for termination resistors. Both ends of the transmission line should be terminated with a resistor that is equal to the characteristic impedance of the transmission line. This is to prevent reflections of the signal. A lot of twisted pair cable has a characteristic impedance of 120 Ohms, so this value has become an unofficial standard. However, PCB tracks will almost certainly have a different characteristic impedance so the termination resistance will need to be adjusted accordingly.

You should also bias each part of the line to prevent unwanted noise on the transmission line. The exact values should be specified in the datasheet of the device you are using.

The link below gives a good overview with the references being more in depth. https://en.wikipedia.org/wiki/RS-485

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

There may be no termination at the receiver side if that part is designed by someone else and out of reach. Suppressing the reflected wave at the driver side might fix transmission errors. That reflection is due to the output impedance of the line driver being lower than the transmission-line impedance. A termination resistor parallel to the output would increase the mismatch. To increase an output impedance of, say, 40 ohm to 120 ohm, add a 40 R resistor to each pin (in series).

\$\endgroup\$
6
  • \$\begingroup\$ No. The driver impedance driving the cable does not lead to reflections. For the driver with any output impedance, it does not care if the load is the termination resistor directly or if there is a trasmission line with the same characteristic impedance. Also RS485 is a bus which allows for up to 32 transceivers anywere on bus. Cable ends must be terminated to eliminate reflections. \$\endgroup\$
    – Justme
    Commented Oct 8, 2023 at 16:26
  • \$\begingroup\$ It's not about what the driver sees of the line but what a wave traveling toward the (active) driver sees, i.e., the output impedance. It is likely lower than 120 R, 30 R in case of this device, mouser.de/datasheet/2/609/adm2461e_adm2463e-3121189.pdf \$\endgroup\$
    – Rainald62
    Commented Oct 9, 2023 at 22:35
  • \$\begingroup\$ Why would there be a wave traveling toward the active driver? The driver is active so it is sending out a wave and it travels away from the active driver, to the terminators, which are matched well enough that reflections traveling back are not a problem. \$\endgroup\$
    – Justme
    Commented Oct 10, 2023 at 5:27
  • \$\begingroup\$ I edited my answer to explain the situation I had in mind. \$\endgroup\$
    – Rainald62
    Commented Oct 10, 2023 at 16:27
  • \$\begingroup\$ Unfortunately, the question is not about the situation you describe. It simply asks what's the recommended way of terminating the bus and where the terminations should be. And in your case, if the last device does not terminate itself, then put a separate terminator there, if the last device terminates, then don't put a separate terminator. There should be no need to handle an unterminated bus as you can terminate it properly. \$\endgroup\$
    – Justme
    Commented Oct 10, 2023 at 17:40

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.