Modbus 4XXXXX extended register in Siemens S7-1510, RTU via MOXA MB3180 gateway

Hello. I have a Siemens S7-1510SP PLC that I am trying to communicate with via Modbus RTU, through a Moxa MB3180 RTU to TCP gateway. The PLC currently communicates successfully with a Kepware server in this configuration.

The registers that I need to read are 401025, 401027, 401029 and 401031. The Modbus device ID is 22. I have Ignition Modbus TCP configured with the IP address of the Moxa.

In the tag config I have: [modbusDevice]22.HRXXXXXX, but I cannot figure out how to address the appropriate registers. All the examples I can find use the 5-digit registers, not the 6-digit extended range.

This is the only info I can find on in the Siemens literature. I do not have access to the PLC program.

How should I configure the OPC tags in Ignition to read the registers 401025, 401027, 401029 and 401031?

Thanks

These are probably [Device]22.HR1025, [Device]22.HR1027, etc...

(maybe plus or minus one, depending on zero-based addressing on either side)

FWIW, the protocol on the wire is always extended, and supports XXXXX covering 2^16 addresses. The early Modicon PLCs that first implemented the protocol could only handle/use addresses 1 ≤ x ≤ 9999, and displayed five digits including the prefix. Those old PLCs also established the one-based convention: register/coil/input/discrete X=1 is actually address zero on the wire.

Everybody and their brother has broken Modbus conventions since, including the successors of Gould Modicon (Schneider, now).

Thanks. I have got the communication working. However, I have some discrepancies between the values in Kepware vs Ignition.
For example, here is the Setpoint value (changes very infrequently) from register 401029:

image

Any idea what could be the cause of this?

Could be off by one address and/or need to use reverse word order option. Could be something else.

Get a Wireshark capture if you can, easy to see there.

Yep, combination of zero-based addressing and reversing word order fixed it. Thank you.