Holding Register for Modbus TCP

I am trying to create some tags to get data from Zebra Fx9600 RFID reader. But the data I got from the tags are not what I expect. Can you help me to see what is the problem with my settings? Many thanks

tagsetting
returnValueOfTag



Welcome!

The most common thing is to change the reverse word order and one based addressing in advanced settings (might need both)

Thank you, I tried all possible ways and add 1 to holding registers to match “1”-base addressing, but still no luck

When in similar situations I use ModPoll etc as a sanity check, then go back to Ignition once verified

I wish I could do it. Because I am using company laptop, IT does not let me install any third party app

Try changing your data type to byte?

I did but still the same, feel like the they are not matching with modbus guide of the device

What value are you expecting? Does the register change when you preset different tags?

Your OPC Item Path is not correct for a string:
https://docs.inductiveautomation.com/display/DOC81/Modbus+Addressing

Your example should be something like [RFIDReader01]1.HRS220:12

Thank you for your advice, I tried it before and the result is partial of the device’s MAC address

not the EPC Id which I should get, example of EPC Id is like the picture below:

Then it isn’t really a string, but an array of bytes. You’ll need to convert the characters in that string to hex bytes. There’s no built-in tool for that.

Sorry I don’t get it, do you mean that I should convert string to hex like this website? Hex to String Converter | Convert Your Hexadecimal To Text

Yes, but text to hex.

I just noticed that the offsets in your structure screenshot are bytes. Modbus registers are 16-bit. So the address should be 1.HRS210:12. But you’ll still need to convert to hex.


I tried but it looks weird. When I converted it to hex (by both ways you said) the result is not what I expected

I don’t see where you are converting to hex. The raw bytes might also have been interpreted as UTF8 by Ignition, in which case the hex conversion won’t work. You may need to bring in each of the six words as unsigned integers and print them with a %04x format.


Thank you so much, it seems working now. I think I need more time to figure out how the device works

I read in the user manual that i need a license to be able to use modbus protocol. You did those steps?

It used to be that you had to purchase the modbus driver separately, but its now included in the base platform. That change was somewhat recent-ish.