# Alarm Synchronization Between Two Gateways

**URL:** <https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353>\
**Category:** Ignition\
**Created:** [August 23, 2022, 8:56pm UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353 "2022-08-23T20:56:02Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Joe\_Chlimoun](https://avatars.discourse-cdn.com/v4/letter/j/54ee81/32.png) [@Joe\_Chlimoun](https://forum.inductiveautomation.com/u/Joe_Chlimoun)\
**Post date:** [August 23, 2022, 8:56pm UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353/1 "2022-08-23T20:56:02Z")

</div>

Let’s say I have two gateways with identical tag providers, getting their data from the same source. Each are looking at the same tags with the same alarm configuration.

If I ack an alarm on Gateway 1… what’s the best way to ack it on Gateway 2?

Also, if I ack’d an alarm on Gateway 1 while Gateway 2 was offline, how can I tell Gateway 2 about it when Gateway 2 comes online? (Assuming the alarm condition is still active)

I could…

1. within alarm ack script, search through the other gateway as a remote tag provider for a tag in alarm with the same tag path and remotely ack it. and in the startup scenario i’d hold off on all alarm presentation until I go through the remote provider one by one to match my local acks (though this could be problematic with alarms that have long delays)

2. maintain a separate centralized alarm database that both gateways check every 1 second

3. ???

Open to suggestions.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [August 23, 2022, 9:07pm UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353/2 "2022-08-23T21:07:34Z")

</div>

> [@Joe\_Chlimoun](#):
>
> Let’s say I have two gateways with identical tag providers, getting their data from the same source. Each are looking at the same tags with the same alarm configuration.

I would say you're going to have a much better time if you have a _single_ tag provider, and 'share' it via remote tags to the other gateway. Is that not an option for some reason?

---

<div class="post-metadata">

**Author:** ![Joe\_Chlimoun](https://avatars.discourse-cdn.com/v4/letter/j/54ee81/32.png) [@Joe\_Chlimoun](https://forum.inductiveautomation.com/u/Joe_Chlimoun)\
**Post date:** [August 23, 2022, 9:23pm UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353/3 "2022-08-23T21:23:32Z")

</div>

Not allowed to have any dependencies between stations. They must operate standalone (but of course they’ll need to communicate for this kind of synchronization for seamless operation).

So 1 client = 1 gateway = 1 machine.

---

<div class="post-metadata">

**Author:** ![jlandwerlen](https://avatars.discourse-cdn.com/v4/letter/j/bc8723/32.png) [@jlandwerlen](https://forum.inductiveautomation.com/u/jlandwerlen)\
**Post date:** [August 23, 2022, 9:44pm UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353/4 "2022-08-23T21:44:31Z")

</div>

> [@Joe\_Chlimoun](#):
>
> getting their data from the same source.

Just curious, but how do you handle writing from multiple gateways at the same time to the same source?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 24, 2022, 12:22am UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353/5 "2022-08-24T00:22:06Z")

</div>

Seems to me that the common point is the PLC. Add logic for it to manage acks itself, and disable acks in Ignition. Provide one-shot triggers that Ignition can set to acknowledge alarms.

---

<div class="post-metadata">

**Author:** ![Joe\_Chlimoun](https://avatars.discourse-cdn.com/v4/letter/j/54ee81/32.png) [@Joe\_Chlimoun](https://forum.inductiveautomation.com/u/Joe_Chlimoun)\
**Post date:** [August 26, 2022, 3:43pm UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353/6 "2022-08-26T15:43:20Z")

</div>

Well, that’s another issue… as far as I can tell, Ignition doesn’t have a good way to handle a remote ack (either accepting a remote ack, or issuing one), at least not without scripting.

I’m not sure what you mean by disable acks in Ignition… I would still need alarming in the HMI since the alarm display controls are dependent on built-in alarming logic/functionality. I guess I could build my own controls that operate from PLC tags instead…?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 26, 2022, 3:46pm UTC](https://forum.inductiveautomation.com/t/alarm-synchronization-between-two-gateways/63353/7 "2022-08-26T15:46:46Z")

</div>

> [@pturmel](#):
>
> and **disable acks** in Ignition

Don't use Ignition's acknowledgements at all. Make the PLC track acknowledgement itself. It is the only common point, so that's the only way to not loose acks.
