Problems reading Modbus input registers


Thread Starter



I am doing a masters project on WirelessHART control. The gateway that I am using has a modbus TCP, modbus RTU, and HART multidrop output.

When I try to poll input registers, through Modbus, all I get back are fixed values. The input registers are mapped to all the devices on the WirelessHART network, I have particular interest in the primary variable of a temperature sensor, which should be changing but appears fixed through modbus.

I have no experience with modbus outside this project so I am not sure if I am doing something wrong. I have used simplymodbus, modbus32 and a Modbus to profibus converter to interagate the data that I am getting.

I suspect there might be a problem with the modbus side of the gateway, as software has been provided for monitoring the process which works fine through HART multi-drop.

I have all the communications parameters( baud rates, stop bits, etc.) configured on both the pc and gatewat end; though if it weren't set up right I would imagine that I would be getting no response at all. I have tried this on Modbus RTU and TCP with the same result

Anyone have any idea what the problem might be?

The first thing that comes to mind when you write, "When I try to poll input registers" is whether you mean that you are polling 3xxxxx input registers with function code 04.

Does the Gateway support Modbus data on input registers? The Wireless HART gateway I saw put data into Holding registers at 4xxxxx addresses (03 function code).

Many times data is mirrored in both input and holding registers, but maybe not.
I am polling 3xxxxx input registers with function code 04.

The gateway I have does not use the holding registers at 4xxxxx. I have also checked the holding registers using simplymodbus and there was nothing there.