[abcip] AbCip — Native STRING / STRINGnn variant decoding #226
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Auto-managed PR — Mode B (autonomous)
Driver:
abcipPhase:1Plan PR:1.2Plan:
docs/plans/abcip-plan.mdEffort:
MCross-driver:FalseSummary
Today AbCipDataType.String flattens any Logix STRING UDT into a .NET string via libplctag GetString(0). Logix programs commonly define STRING_20/40/80 variants. Add StringLength field to AbCipStructureMember and AbCipTagDefinition, thread into the libplctag string-cap hint. Investigate libplctag's str_max_capacity / str_count_word_bytes attributes; extend LibplctagTagRuntime if needed.
Source files
src/ZB.MOM.WW.OtOpcUa.Driver.AbCip/AbCipDataType.cssrc/ZB.MOM.WW.OtOpcUa.Driver.AbCip/AbCipDriverOptions.cssrc/ZB.MOM.WW.OtOpcUa.Driver.AbCip/LibplctagTagRuntime.cssrc/ZB.MOM.WW.OtOpcUa.Driver.AbCip/AbCipDriver.csDocs
docs/Driver.AbCip.Cli.mddocs/drivers/AbServer-Test-Fixture.mdFixture
tests/ZB.MOM.WW.OtOpcUa.Driver.AbCip.IntegrationTests/Docker/docker-compose.ymlE2E
scripts/e2e/test-abcip.ps1scripts/smoke/seed-abcip-smoke.sqlBranch:
auto/abcip/1.2. Target:auto/driver-gaps.🤖 Auto-loop picked this up. Branch:
auto/abcip/1.2. Status: in-progress.✅ Auto-loop completed. Merged via PR #318.