# AB Compact Logix Boolean Array not showing full array size in UDT

**URL:** <https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544>\
**Category:** Ignition\
**Tags:** vision\
**Created:** [August 8, 2025, 5:30pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544 "2025-08-08T17:30:11Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![andy.hernandez](https://avatars.discourse-cdn.com/v4/letter/a/4491bb/32.png) [@andy.hernandez](https://forum.inductiveautomation.com/u/andy.hernandez)\
**Post date:** [August 8, 2025, 5:30pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/1 "2025-08-08T17:30:11Z")

</div>

Software: Ignition Version 8.1  
Module: Vision  
Project: CompactLogix PLC Arrays inside an Ignition UDT

I have the arrays shown below inside an Ignition UDT definition that looks something like this:

1. A1\_Rack.Part\_ID\_Array[224] type STRING
2. A1\_Rack.PickTime\_Array[224] type DINT
3. A1\_Rack.PlaceTime\_Array[224] type DINT
4. A1\_Rack.Pockets\_Disabled\_Array[224] type BOOL
5. A1\_Rack.Pockets\_Array[224] type BOOL

Can you please explain the issues I'm having when I instantiate these five arrays? When I browse to the tags Items 1,2,3 shows all 224 elements while 4 and 5 (of type Booleans) only shows 6 elements

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/b/1/b1d81c8b960913d599252ff4840a9d010f0df496.png)

---

<div class="post-metadata">

**Author:** ![ryan.white](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ryan.white/32/73193_2.png) [@ryan.white](https://forum.inductiveautomation.com/u/ryan.white)\
**Post date:** [August 8, 2025, 5:39pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/2 "2025-08-08T17:39:28Z")

</div>

Bool arrays in CLX are actually DINTS behind the scenes. 7 DINTS x 32bits = 224 bits.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [August 8, 2025, 5:39pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/3 "2025-08-08T17:39:50Z")

</div>

Logix BOOL arrays are actually packed into DWORD arrays with nothing visible to external connections to indicate they’re actually a BOOL array.

> [@Problem on Allen-Bradley Logix Driver array of bit](https://forum.inductiveautomation.com/t/problem-on-allen-bradley-logix-driver-array-of-bit/73587/2):
>
> Logix boolean arrays are really DWORD arrays, where each dword supplies 32 of the booleans. Drill in deeper. Your original boolean address of somebooltag[B] translates to an OPC Item Path of somebooltag[J].K where J=B/32 and K=B%32. And no, this is not a bug. The logix processor really does tell a connected system that these are DWORDs. The only booleans that are actually reported as true booleans are stand-alone boolean tags (non-array). Even booleans within UDTs aren't "real" booleans, a…

---

<div class="post-metadata">

**Author:** ![andy.hernandez](https://avatars.discourse-cdn.com/v4/letter/a/4491bb/32.png) [@andy.hernandez](https://forum.inductiveautomation.com/u/andy.hernandez)\
**Post date:** [August 8, 2025, 5:41pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/4 "2025-08-08T17:41:59Z")

</div>

How do I access Individual elements?

---

<div class="post-metadata">

**Author:** ![ryan.white](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ryan.white/32/73193_2.png) [@ryan.white](https://forum.inductiveautomation.com/u/ryan.white)\
**Post date:** [August 8, 2025, 5:43pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/5 "2025-08-08T17:43:21Z")

</div>

You can access bits by adding `.#` to the tag path where `#` is the index of the bit in that DWORD, so anything from 0-31.  
For example, item `A1_Rack.Pockets_Array[122]` in CLX would be `ns=1;s=[PLC]Program:Mazak_Racks.A1_Rack.Pockets_Array[3].26`

---

<div class="post-metadata">

**Author:** ![robertm](https://avatars.discourse-cdn.com/v4/letter/r/ea5d25/32.png) [@robertm](https://forum.inductiveautomation.com/u/robertm)\
**Post date:** [August 8, 2025, 5:58pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/6 "2025-08-08T17:58:27Z")

</div>

You can also create an Ignition UDT to individualize the bits into individual tags…that's what I do with 32 bit DiNTs for alarm bits. Just create a UDT type with a string root parameter, then individual bits that are {root}.0 to {root}.31. Makes it easier to define alarms, bindings, etc

---

<div class="post-metadata">

**Author:** ![andy.hernandez](https://avatars.discourse-cdn.com/v4/letter/a/4491bb/32.png) [@andy.hernandez](https://forum.inductiveautomation.com/u/andy.hernandez)\
**Post date:** [August 8, 2025, 6:01pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/7 "2025-08-08T18:01:53Z")

</div>

That sounds very interesting Robert. Are you able to show a screenshot showing the steps involved?

---

<div class="post-metadata">

**Author:** ![robertm](https://avatars.discourse-cdn.com/v4/letter/r/ea5d25/32.png) [@robertm](https://forum.inductiveautomation.com/u/robertm)\
**Post date:** [August 8, 2025, 6:05pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/8 "2025-08-08T18:05:29Z")

</div>

Unfortunately, traveling at the moment. There should be some examples if you search the forums. Otherwise, I can probably get you something tomorrow.

---

<div class="post-metadata">

**Author:** ![robertm](https://avatars.discourse-cdn.com/v4/letter/r/ea5d25/32.png) [@robertm](https://forum.inductiveautomation.com/u/robertm)\
**Post date:** [August 9, 2025, 3:44pm UTC](https://forum.inductiveautomation.com/t/ab-compact-logix-boolean-array-not-showing-full-array-size-in-udt/109544/9 "2025-08-09T15:44:26Z")

</div>

[tags.json](https://forum.inductiveautomation.com/uploads/short-url/kDCHR2TUbTec1tI5Us5GQeGzvBB.json) (2.2 KB)

[UDT tags.json](https://forum.inductiveautomation.com/uploads/short-url/sbkGN8VYQkEk5xLy67rC35EhgBq.json) (9.5 KB)

Attached is an UDT example and a tag example using that UDT.

For your case, if you want specific array.y tags, expand the UDT to add an INDEX parameter, and change the elements to include the [INDEX] to your CLX tag.
