OPC Tags Case Sensitivity - AB ControlLogix

Both the new and legacy drivers for ControlLogix are case sensitive and I have no idea why or if you can turn it off. The PLC itself is not case sensitive, you cannot make tags of the same name with a different case, so why is the driver? I’ve never had a driver that was case sensitive before. It is causing problems because our programmers have been inconsistent with their naming cases so some PLCs need:
[{Node}]{ProgramName}{InstanceName}_Steps.{TagName}
while others will need:
[{Node}]{ProgramName}{InstanceName}_STEPS.{TagName}

Is there a way around this ‘feature’? If not, could this be added in future updates?

I agree, John.

I’ve always found this strange as well. It took me awhile to troubleshoot several bad quality tags in the past for this very same reason. I haven’t been able to find a workaround and would love to have something added in future updates as well.

Hmmm. Arguably this is a bug. The Ethernet/IP encoding of symbol names uses “ANSI Symbolic Path Segments”, type code 0x91, which are called out in the CIP Spec as case-insensitive.
Kevin?

EtherNet/IP symbolic segments and Logix tag names may be case insensitive, but OPC UA NodeIds and Browse Names certainly are not, and you’re interacting with the OPC UA server, not directly with the driver/controller.

It could probably be modified to work in a case-insensitive manner but the way it behaves now is intentional.

Understood, but violates the principle of least surprise. Conflicting specs sucks. /-:

Because all the Nodes that matter in this case are dynamically looked up based on the incoming NodeId, I think I could make this work, just need to consider how risky it would be to make this kind of change mid-cycle. In a more traditional situation where actual Node instances were created on startup, by a browse, or by some other static means, it wouldn’t be possible.

Whether this change happens or not, I maintain the position that case-insensitivity is for savages :laughing:

2 Likes

Indeed. Switching from Windows to Linux years ago was a great joy in that respect. Yes, Windows is for savages. (-:

Apologies for the necro, but this is a major headache for anyone doing a system upgrade where there has previously been no concern for case sensitivity. Is there any update on the possibility of making the AB driver case insensitive?

2 Likes

I made a ticket to look into this a bit more in an upcoming sprint. If we do end up tackling this it’s probably only going to be for the Logix v21+ driver, not the legacy ControlLogix/CompactLogix drivers.

2 Likes

Apologies for another necro. Is there any update on this? It still seems to be case sensitive for the highest version Logix driver in 8.1.21. We're trying to get away from Kepware AB drivers to use Ignition drivers and the PLC engineers are so inconsistent that it's causing issues.

My new alternate client driver is not case sensitive, fwiw:

You'll just have multiple nodes, different node IDs, pointing at the same PLC tag.