You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm evaluating migrating my PLC access codebases from INGear ABLink Drivers to this library, since INGear is defunct, from what I can tell.
Does this library support the ability to read the entirety of a composite tag (meaning: reading the entire UDT from a single tag in one read)?
I saw there was array support, but didn't see specific information for how to read/write a composite tag (or if it's possible).
This is an existing feature in the INGear driver, and necessary feature for my use cases, where rapid data collection is necessary.
So, I'm wondering if it's possible with this library, and how what level of effort is required.
It certainly looks like there is more intuitive control in the client-side encoding/decoding functionality, than what INGear provides.
And, mapper derivatives appear to be composable for a particular UDT graph.
I'll work through a hello-world, this weekend, and get an idea of effort and usability.
I see there are mappers for some example types, already.
And, I see one for the string type.
Does the string mapper support nondefault string UDTs? Like a 20-character string type?
Or, do I have to derive a custom mapper, and byte-copy the length range?
G'day @LeeWhite187 - I'd recommend going through the libplctag Wiki which has some good information on this subject and its special support for strings.
But you can always just read the tag as a blob of bytes and parse/encode yourself.
Activity
timyhac commentedon Jul 22, 2026
G'day Lee - yes reading a UDT is possible. See the example here for one way of working with a UDT.
LeeWhite187 commentedon Jul 23, 2026
It certainly looks like there is more intuitive control in the client-side encoding/decoding functionality, than what INGear provides.
And, mapper derivatives appear to be composable for a particular UDT graph.
I'll work through a hello-world, this weekend, and get an idea of effort and usability.
I see there are mappers for some example types, already.
And, I see one for the string type.
Does the string mapper support nondefault string UDTs? Like a 20-character string type?
Or, do I have to derive a custom mapper, and byte-copy the length range?
Thanks for any insight.
timyhac commentedon Aug 3, 2026
G'day @LeeWhite187 - I'd recommend going through the libplctag Wiki which has some good information on this subject and its special support for strings.
But you can always just read the tag as a blob of bytes and parse/encode yourself.