AnyBus Modbus TCP Master/Modbus RTU slave

Looking for some assistance for our customer who has a AB9005 and is seeing values from the RTU slave but the mapping is not consistent(40001 ends up in 50xxx register on the master side) I spoke with some one yesterday by phone and he told me to check the function code settings in the web server they do have it set to “3” to read holding registers, any thoughts on where to look next? Customer has succesfully deployed E I/P to Modbus TCP X-gateway seems like ther is something simple missing

The registers from the RTU side can be completely different from the registers on the TCP side, depending on the configuration. For this device, the configuration is done through the web interface where you will set up the commands that the TCP master will send to the slaves. That data is mapped to registers in the Anybus that you can access from the RTU master.

Here are the functions you can use from the RTU master:

Go to the Mapping Overview to see where the data is mapped:

That should tell you what commands to use to access the data you are looking for.


Thanks for the response

I spoke with customer and went on a zoom meet to see his screens

First note

He has a Weg Hmi that is a Modbus TCP server

And a cellular/satellite modem that is connected to a Modbus RTU Master (he is currently using a Red Lion HMI to act as the Master RTU

He does see values in the Red Lion HMI

But if he says NO to I/O Mapping in the web server config (Function Code 3)

The 40001 register of the Weg gets mapped to 34448

If he says yes to the I/O mapping the 40001 register of the Weg gets mapped to 50064

They need 40001-40060 from the Weg to be mapped to 40001-40060 on the Modem side (Red Lion)

Is this possible?






No, For Read Holding Registers, the Input starts at 100h or 256 (40256).

He can’t change the Modbus command?

He can’t change the Modbus command?

Not sure what you’re asking
Change the function code?

Robert Talbot​

Application Engineering Group Manager

The modbus command… The function code, register addresses, no. of registers, etc.

The Red Lion HMI can’t be configured to change the command that it sends (i.e. use a different command, or read different registers, etc.)?


Would you have time to do a TEAMS meeting with myself and customer today so you can see what we’re seeing and perhaps you can point us in the right direction

The Redlion hmi like many takes care of the function codes in the background we can set the tag to the register as read only, write oly, or read/write

Yes, I was going to suggest the same. What time are you available, and what is the customer’s email, if you want me to invite them to the meeting as well?

Thank You Kyle

I’m checking his availability and will advise

Does 3:30 ET work?

Yes, 3:30 EST is fine. Just sent invite.