Electronic – use devices with different unit loads on the same bus? If not, why

rs485

I've been having trouble getting a rs485 communications bus working with some external devices. I have an Arduino hooked up to a MAX487ECSA+ which goes through some cabling to my devices. Using an oscilloscope, I can see the signal (with sufficient amplitude) reaches my devices but I get no response. The baud rate used is 19200.

I bought this breakout board from sparkfun to see if I could get some communication working. I hooked it up to my arduino and I get a response from my device.

The MAX487ECSA+ is a quarter unit load and the IC used by sparkfun is a one unit load. I'm unsure of the unit load of my devices. Could a difference in unit loads between the 2 ICs be the reason one circuit works and the other doesn't? If this is a reason, could you please explain why I can't use devices with different unit loads on the same bus?

EDIT
-A and B are correct, I have tried both ways

Best Answer

EDIT - are you using A and B the right way round? Is it wired correctly on the sparkfun unit to how you've wired it on your own modules?

If you aren't using terminators then you should. I've attached a drawing to show what you should do - this makes it a little difficult to put as a comment.

enter image description here

Quite possibly, with the extra loading of the sparkfun breakout board you are just about able to reduce data reflections to an "OK" level.It could also be that the sparkfun output is slew rate limited and this would reduce the effect of reflections.

What type of cable are you using i.e. twisted pair with Zo = 120ohms, possibly screened/shielded etc..