ControlLogix Array Mapping

I have a ControlLogix PLC with firmware version 27.
I am using Ignition version 7.7.5.
Logix Driver Module version 1.7.5
OPC-UA Module version 3.75

On the PLC we have a Program Level tag called HmiTags of type BOOL[256]

This tag works … [DA_11008A1]Program:MainProgram.HmiTags[0] as well as any tag >=0 and <=7
This does not …[DA_11008A1]Program:MainProgram.HmiTags[8] nor does any index >= 8

I tried a similar test with a Controller Tag. It only allows me to see index 0.

Tag Diagnostics returns a Quality = “Bad Quality”

Right now BOOL arrays get exposed as a DINT, so what you’re seeing is an array of 8 DINT tags. If you were to add a “.0” or “.1”, etc… to the end of the OPC item path you’d be able to get to the 32 bits within each DINT.

OK. That works.

Is this a change because of the v21+ driver, or something that we will continue to see going forward? Ignition was able to handle v20 and less controllers in a more straightforward approach.


It was an oversight in developing that v21 driver that hasn’t been fixed yet because at first we were having problems keeping the memory usage of the new driver down. Now that it’s under control I think we can probably find a way to expand bool arrays fully without breaking backwards compatibility.

OK, great. Thanks.