whenever I am figuring out the settings for a modbus device I always set up 3 consecutive addresses.
So for a bit I would set up 00000, 00001, 00002 (or for unity type processors %M0, %M1, and %M2).
Set up ignition to look at these three tags (I.e. [DeviceName_in_Gateway]C1 for 00001). In your PLC set all the coils to 0 and then toggle just 00001, observe which tag in ignition goes high. If C0 or C2 is toggled then you need to enable or disable zero based addressing.
Next repeat this for an integer set up three addresses again, 40000, 40001, 40002 and create three tags in ignition (i.e. [DeviceName_in_Gateway]HR1 for 40001). Modify the value in the PLC and make sure it shows up correctly in ignition.
Repeat this one more time for a real (it will also use a 4x register, but reals, DINTS, and UDINTs all use 2 consecutive registers so make sure you space your addressing appropriately). Reals use the prefix HF instead of HR. For more info on the modbus datatype prefixes check out this page, it’s pretty straight forward after you try it out a couple times. If these show up as crazy values instead of what you enter into the PLC try toggling the value of the “Reverse Word Order” in the device’s advanced settings in the gateway (It’s right above the option to enable/disable zero-based addressing).
After you’ve confirmed that each data type is being displayed correctly at the right address you’re set!
Sorry I can’t be more specific with “check this uncheck that”, but modbus standards are more like… guidelines, they can vary widely between brands.