RS485 Line termination - Page 1
Forum section: electronics / projects

author: jwhitmore
author_rank: Regular Contributor
timestamp: February 23, 2016, 11:50:51 am
content: I've had another thread on here which had a misleading subject as I'm new to RS485, and it shows ;-)So I've been trying to talk to an RS485 (MODBUS) sensor with no joy at all. I was working with a Texas Instruments part number and then when off and replaced that with a MAXIM MAX3483E which had the same foot print. Unfortunately that didn't change a thing.At present I'm using what I assume to be the correct termination which is a simple 120R resistor between the RS485-A and RS485-B. That however is getting me no response from the sensor, and the idle RX voltage is very low, almost 0 Volts. I'm lucky enough to have a working system that I've been able to plug into the scope and it's idle voltage is up about 1v. That's made me think that my termination is wrong and instead of 120R between A and B I should have 2 60R resistors in series between A and B and connect the midpoint between the two 60R resistors to Vcc.Are there any RS485 experts out there who could comment on this? I'll attach a good and bad trace to this in the hopes that it clarifies what I'm typing about.

author: Codemonkey
author_rank: Regular Contributor
timestamp: February 23, 2016, 01:18:40 pm
content: many years ago when I did it, I did something like this:+ ---|resistor|----A--|120R|--B--|resistor|---- -where the 2 resistors where a fairly high value (1K or more I think)So, basically you have a pullup between A and VCC, and a pull down between B and GNDIts a while ago though so can't remember exactly.

author: jwhitmore
author_rank: Regular Contributor
timestamp: February 23, 2016, 02:30:44 pm
content: I did try that arrangement having seen it on wikipedia (https://en.wikipedia.org/wiki/RS-485) but they showed it with 680R resistors. Maybe when I tried that I had the +ve and -ve connected to the wrong ends. Might be worth trying it again with the resistors reversed. All this A and B and +ve and -ve are still a bit fluid in my head.

author: TassiloH
author_rank: Regular Contributor
timestamp: February 23, 2016, 06:27:44 pm
content: Use 680R if the pullups/-downs are only at one point of the RS485 line (e.g., your device). Use 1.2k if two identical terminators with pullups/-downs are used at both ends of the RS485 line (so that the total pullup/down R is around 600 Ohms again).

author: Alex Trofimov
author_rank: Contributor
timestamp: February 24, 2016, 05:44:01 pm
content: I think, it's always better to do the math than to use some predominate values. You should have 200 mV or slightly more between A and B in idle state, so calculate your pull-up and pull-down resistors' values.Also MAX3483 has limited slew-rate, so it doesn't need any termination resistor on line of about less than 25 meters long. If you don't have termination resistor, values of pull-up and pull-down are not matter because there is no current flowing through termination resistor, so 1k or so will do the job.If you still have it, I think it worth considering that termination resistor have not always to be 120 Ohm. It must equal to charachteristic impedance of the cable that you use.

author: dwpatter53
author_rank: Contributor
timestamp: March 01, 2016, 11:02:37 pm
content: The correct termination resistor for RS-485 is 120 ohms, at each end.Do you have 2 wires plus a ground?You may need pullup/down resistors to eliminate imposed noise on the network when it is idle.References;http://www.windmill.co.uk/rs485.htmlhttp://www.rs485.com/pfaq.htmlhttp://cds.linear.com/docs/en/product-selector-card/2PB_RS485fd.pdf