# Ignition Alarm against tags array

**URL:** <https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [April 30, 2026, 5:29am UTC](https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318 "2026-04-30T05:29:27Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![stephen](https://avatars.discourse-cdn.com/v4/letter/s/96bed5/32.png) [@stephen](https://forum.inductiveautomation.com/u/stephen)\
**Post date:** [April 30, 2026, 5:29am UTC](https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318/1 "2026-04-30T05:29:27Z")

</div>

Hi All

I have an Array in my PLC which I want to use for alarms. In this case, I have "HMI\_Alarm\_0", whithin this I have "HMI\_Alarm\_0\_[0]", "HMI\_Alarm\_0\_[1]"... "HMI\_Alarm\_0\_[31]". The tag is an array of INT

Is it possible to have this alarm on each of those value bits as they go high/low? How do I go about this or do i need to have atag for each alarm item?

Stephen

---

<div class="post-metadata">

**Author:** ![danielps1818](https://avatars.discourse-cdn.com/v4/letter/d/ecae2f/32.png) [@danielps1818](https://forum.inductiveautomation.com/u/danielps1818)\
**Post date:** [April 30, 2026, 9:14am UTC](https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318/2 "2026-04-30T09:14:26Z")

</div>

I belive this post will help you.

> [@Best Practices for Configuring Alarm Integer Array in Ignition](https://forum.inductiveautomation.com/t/best-practices-for-configuring-alarm-integer-array-in-ignition/98344):
>
> Hi, I Emmanuel Katto from Dubai, United Arab Emirates (UAE) have an integer array with 300 elements, where each element is of type int16. Each bit in these elements represents an individual alarm, so in total, I have 4,800 alarms. Each alarm also has an associated display path and label. What’s the best approach to configure this setup in Ignition and add all the alarms, including their respective display paths and labels? I’m looking for the most efficient method to handle such a large numb…

Or this one:

> [@What's the best practices for Alarm integer Array?](https://forum.inductiveautomation.com/t/whats-the-best-practices-for-alarm-integer-array/96589):
>
> I have Alarm integer array with 300 array element , each array elements present int16 , each bit present one alarm mean i have 4800 Alarms with display path and label . What's the best approach to configure this case and add these alarms to ignition a long with display path and labels .

My recommendation is to use an UDT and create one of those for each value on the array.

> **[User Defined Types - UDTs | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/platform/tags/user-defined-types-udts)**
>
> UDTs (User Defined Types), also referred to as Complex Tags, offer the ability to leverage object-oriented data design principles in Ignition. UDTs are extremely important in Ignition. With UDTs, you can dramatically reduce the amount of work...

---

<div class="post-metadata">

**Author:** ![nminchin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/nminchin/32/6911_2.png) [@nminchin](https://forum.inductiveautomation.com/u/nminchin)\
**Post date:** [April 30, 2026, 1:30pm UTC](https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318/3 "2026-04-30T13:30:01Z")

</div>

Likewise with @danielps1818 my preference is to create individual tags for alarms as well. I feel you have more flexibility, you can bulld create them more easily, you can script against them more easily, you can see their values without having to expand lots of nested props. I'm sure there are others too

---

<div class="post-metadata">

**Author:** ![msteele](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/msteele/32/77889_2.png) [@msteele](https://forum.inductiveautomation.com/u/msteele)\
**Post date:** [April 30, 2026, 3:32pm UTC](https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318/4 "2026-04-30T15:32:19Z")

</div>

I'm also a fan of individual tags per alarm whether using bit-level addressing in Modbus or the getBit() expression. A bit more load on the system but definitely clearer design vs lots of alarming on a bitfield register.  
That said, also historize your bitfield registers on change - an easy second-level backup and ability to retroactively prove Ignition is alarming how you intend.

---

<div class="post-metadata">

**Author:** ![stephen](https://avatars.discourse-cdn.com/v4/letter/s/96bed5/32.png) [@stephen](https://forum.inductiveautomation.com/u/stephen)\
**Post date:** [May 2, 2026, 1:47am UTC](https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318/5 "2026-05-02T01:47:48Z")

</div>

Thanks All. I'm fairly new to ignition/HMI's in general. The guy doing the PLC has started with an array object, so am I better to bind an ignition tag to each array object and turn it into an alarm from there? Or should I ask him to give me something else?

---

<div class="post-metadata">

**Author:** ![msteele](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/msteele/32/77889_2.png) [@msteele](https://forum.inductiveautomation.com/u/msteele)\
**Post date:** [May 3, 2026, 1:56pm UTC](https://forum.inductiveautomation.com/t/ignition-alarm-against-tags-array/115318/6 "2026-05-03T13:56:49Z")

</div>

Your options depend on what protocol you're using to connect to the PLC. Is it Modbus? If so, you can create unique alarm tags of binary data types by appending `.n` to the end of your item paths where n is the bit. [Modbus Addressing | Ignition User Manual](https://docs.inductiveautomation.com/docs/8.3/ignition-modules/opc-ua/opc-ua-drivers/modbus/modbus-addressing#bit-level-addressing)

If you still want binary tags per alarm for other protocols, you may need to pull the full register in as a tag with integer data type, then create binary reference tags for each alarm using [getBit | Ignition User Manual](https://docs.inductiveautomation.com/docs/8.3/appendix/expression-functions/logic/getBit) .
