I've noticed my experiments in the lab with RS-485 work fine with fairly short cables, but termination resistors are needed for true installations. Is their presence or absence a function of the cable length, or other factors?
4 Answers
All RS-485 cables require termination. Some may just happen to work without them, but all should have them.
-
6\$\begingroup\$ In point of fact, you'll probably find that they get left out just as often as they get put in. RS-485 is one of those standards that's often implemented by people who have no idea what they are doing, and is used frequently in a 'well it works, don't it?' kind of way. \$\endgroup\$ Commented May 17, 2012 at 23:04
-
3\$\begingroup\$ There's actually a nice guide to this - ti.com/lit/an/snla034b/snla034b.pdf . If the length is short enough, or the bit rate is low enough, even TI states that "the option of not terminating the signal is clearly the most cost effective solution". \$\endgroup\$ Commented Aug 1, 2017 at 20:36
-
2\$\begingroup\$ If "some may just happen to work without" termination then, ipso facto, termination is not required. \$\endgroup\$– m_a_sCommented Nov 4, 2018 at 5:22
In general, for short cables (< 20-30m) and low baudrates (< 115200) you can leave them out without much trouble. But:
It is useful to put some kind of load on the signal lines to improve noise immunity (the RS485 driver will supply enough current to switch the voltage on the differential line, many noise sources will not). But you do not need this load to be equal to any "characteristic impedances", \$200-500\,\Omega\$ will be ok.
When you go for high speed or long cabling you will need proper termination that depends on the cable you use. So this should be \$100\,\Omega\$ for Cat 5 cables (not \$120\,\Omega\$).
Don't forget about the pull-up and pull-down resistors. They are required unless all receivers used in the system give a well defined (high-level) output for \$0\,\mathrm{V}\$ input. Their values should be chosen so that (when connected together with the "terminating" resistors) the un-driven line is properly polarized (\$> 0.3\,\mathrm{V}\$ for most receivers)
Since terminating resistors load down the network, they should not be used unless they are required. Since reflected waves will dampen in 3-4 cycles, if the time for this to occur is less than one data bit width (or one half the bit width if sampling in the middle), the reflected waves will not interfere and terminating resistors are not required.
It is a simple enough calculation, figuring on the propagation velocity averaging around 65% of the speed of light: For a 9600 bps communication rate, on a 1000 foot cable, you have a round trip time of 3 usec, a dampening time between 9-12 usec, and a bit width of 10 msec. Therefore, each reflected wave will dampen out prior to you sampling each bit, so termination resistors are not required.
-
3\$\begingroup\$ RS-485 is designed to support terminating resistors so loading the network down is not an issue. Leaving off terminating resistors could cause increased EMI and other issues and if the signal quality is bad enough it could cause errors even when the baud rate is slow. Note: I did not give this answer a -1, even though it probably deserves one. \$\endgroup\$– user3624Commented Aug 22, 2012 at 19:39
-
\$\begingroup\$ The general idea of this answer is not entirely a bad idea, and some equipment manufacturers actually recommend leaving off the termination. In general it's a bad idea though because the problems it causes can be sneaky. Also, at 9600 baud a bit width is a little over 100 microseconds, not in any way ten milliseconds. UARTs usually do sample in the middle(or sometimes they take three samples and do best 2 out of 3), so you definitely want reflections to go away before about a third of a bit. Termination is very important but in reality if your cable is only 15 feet it's probably ok \$\endgroup\$ Commented Aug 1, 2014 at 1:21
Just finishing off a project with an RS232 to RS485 converter. Tried several 4 wire devices were tried without success. Then terminated with 120 ohm resistors and a bit of solder on a db-9 on one end and they worked straight away. 9600 baud, one parity bit, 21 foot cable. The scope showed minimal noise with and without the resistor that did the trick.