Troubleshooting OPC UA documents not being translated from binary to structure

I have a project using TwinCat 3 to ignition. Ultimately we need to get some data from an array of structures to a dataset, which lead me to finding that in modern OPC should be able to read those custom datatypes and then ignition can use that to turn it from a binary stream into a structure.

After some trial and error with just basic structures, no arrays yet, I was able to get that to work...once. I now have two different structures, one of which is read as a structure, and the other as a blob

Both have datatypes defines and can be seen in UAExpert at Types>DataTypes>BaseDataType>Structure, which to my understanding is what should be required for Ignition to translate them, and see no notable differences between the structures except of course the members.


I also found entries in Types>DataTypes>OPC Binary > PLC1Dictionary and Types>ObjectTypes>BeckhoffCtrlTypes>PLC1
with no notable difference between them.

My first question would be if I'm even looking at the right stuff with UAexpert, or if there is something else I should be looking at to determine if the issue is on the PLC/OPC server side or Ignition side?

If it is on the ignition side, is there any way to see the datatypes the driver sees, logs, or other things to troubleshoot it?

Thanks

If this is Ignition 8.3, make sure the deprecated datatype dictionary advanced setting on your OPC UA connection to this server is set to false/disabled.

It was, but checking on this again did lead to the solution.
I saw the root object setting in the same area, and made a duplicate with that changed which worked as desired. Then I tried disabling and re-enabling the original, and it is now working, for both those tags and the larger structures I was originally targeting.

So the connection must not have been updating the datatypes, though refreshing would update the available tag list. Disabling seems to have forced this. Probably not intended to have to do that, but definitely viable solution for me.

Thank you!

Yeah, the connection reads the datatypes when it first connects. You have to edit/save it to force it to reconnect and re-read the datatype definitions.