Page 1 of 1

RS485

Posted: 23 Aug 2019, 18:43
by aharrah
Hi,

We have two sensors which work well with the RevPi’s RS485 interface, but a new sensor which is not able to communicate. We have contacted the vendor but they have run out of ideas and while it seems clear that the sensor is at fault, I wanted to see if there were any tricks to try, or any diagnostics that could be run from the RevPi.

On the RevPi we can use an external USB to RS485 adapter to communicate with the new sensor, but when we switch back to the RS485 interface on the connect we cannot see the device.

Here are some things we have tried:
• Removed all other sensors
• Baud rates from 4800 to 38400
• Swapping the RS485 communications lines

All of the sensors we use (both the well behaved sensors and the problem sensor) use modbus RTU.

More details:
• We are using a RevPi Connect+ (8GB)
• uname -a: Linux shiny-violet 4.9.76-rt60-v7+ #1 SMP PREEMPT RT Tue, 12 Mar 2019 15:19:36 +0100 armv7l GNU/Linux
• We are using python (3.7.3) and pymodbus to communicate with the library
• No information is written to kern.log and messages when we try to communicate

Thank you,
Andy

Re: RS485

Posted: 23 Sep 2019, 14:16
by dirk
Hi, are you using your own image or the latest Stretch image from the shop?

Re: RS485

Posted: 26 Nov 2019, 14:29
by Eduard
Hi Andy,

please note:
RS485 is a fully differential line and does not normally require a third GND line. However, due to the limits of the input receivers (“maximum common mode voltage”), signal quality problems may occur if no potential reference is used between transmitter and receiver. However, connecting the internal GND to a line that is loaded by EMC can cause EMC problems within the RevPi Connect.

Therefore, we recommend that you use a common functional earth between all RS485 network participants. This gives you a good, common reference potential for the differential bus signal.