Cannot get modbus float tag to display correctly

I am having on heck of a time trying to get my float tag in ignition to display the correct value from the PLC I’m using. I’m using a ClickPLC, which is modbus TCP. These are my tag properties:

Data Type: Float
Enabled: Yes
Access Rights: Read Only
OPC Server: Ignition OPC-UA Server
OPC Path: [MyDevicesName]HRF28673
Source Data Type: Automatic

I’m 95% sure I have my modbus address correct for the address I’m trying to read. My PLC tells me that the modbus address is 428673 with Function Code 03,06,16. From what I understand, I need to disregard the first 4 in the address, which I have.

With this current setup, I am seeing my tag value in ignition change in real time as I adjust my 0-10v signal to the plc. However, it is showing all sorts of funky values. It will jump from 0, to extremely large numbers in the billions, to negative billions numbers, etc. I have tried scaling with the highest and lowest integer values that my PLC will display, but still no luck. I don’t understand, especially since the values in my PLC are displaying just fine.

Any help on this would be great! Thanks

Have you tried toggling the one-based addressing setting yet? (or just addressing +/- 1 from 28673)

I have not, where is this setting located?

It’s a setting on the device you set up in the Ignition gateway.

Hmmm, I’ll check that out. Thanks

Wow, what the hell. That worked. Mind giving my a really brief explanation as to why that worked?

Some manufacturers specify Modbus addresses as if the base address is 0, some specify it as if it were 1.

The driver defaults to treating 1 as the base because that’s how the Modbus specification describes them… in the abstract.

The confusion arises because on the wire they are addressed starting at 0.