Configuring modem settings for modbus data transfer


Thread Starter



I'm having problems establishing a proper connection to my modems in order to access data from a device using the modbus protocol. I'm able to get data via direct connection so I believe the problem is my modem settings. Please let me know the necessary configurations to enable the transfer of data. Thanks!

Karl Hunsley


What form of Modbus are you using, RTU or ASCII. RTU is difficult to get working over a Modem, use Westermo or Sixnet modems if RTU mode is your only option, but it may still be unreliable.

If at all possible use the ASCII variant of Modbus, its technically slower at the same baud rate, but lots of devices now support 19200 baud and faster, so this gets rid of any speed penalty. You will find the ASCII setup 100% more reliable in operation than RTU.

RTU is not good with modems because the data stream is split into packets via small gaps in the data stream, modems quite often add extra gaps into the data stream that fool the slave device into thinking the packet has ended when it has not. The is effectively corrupts the packet of data.

To RTU mode to work, make sure that you turn of all of the fancy modem features such as error correction etc on both modems. If you can see something in the manual about "Direct Mode" use that setting. Make sure that both modems are set to use the baud rate that the Modbus device is using, so that no speed buffering is required at either end.

Best advise is use ASCII mode comms for modems or if you have an Ethernet connection to the PLC put a router on the ethernet and dial into that. Sometimes you can use a Windows box for that function if you have a SCADA talking to the PLC via Ethernet.

Good Luck

Karl Hunsley
Mission Critical Software Ltd.