# Alarm Falling Edge Detection for Setpoint

**URL:** <https://forum.inductiveautomation.com/t/alarm-falling-edge-detection-for-setpoint/114341>\
**Category:** Ignition\
**Created:** [March 5, 2026, 4:03pm UTC](https://forum.inductiveautomation.com/t/alarm-falling-edge-detection-for-setpoint/114341 "2026-03-05T16:03:30Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![AlbinoBigFoot](https://avatars.discourse-cdn.com/v4/letter/a/8baadc/32.png) [@AlbinoBigFoot](https://forum.inductiveautomation.com/u/AlbinoBigFoot)\
**Post date:** [March 5, 2026, 4:03pm UTC](https://forum.inductiveautomation.com/t/alarm-falling-edge-detection-for-setpoint/114341/1 "2026-03-05T16:03:30Z")

</div>

Hi, I have been trying to figure out a way to setup an alarm for an Amp Load that goes to 0 from not 0. I don’t want it to alarm if the value starts at 0. I would prefer using an expression for this but hasChanged only seems to work with expression tags or transaction groups. I know I can use a tagChange event using previous and current values but I prefer not to use scripting for this considering how many alarms I will have with this setup. Any tips would be greatly appreciated!

---

<div class="post-metadata">

**Author:** ![AlbinoBigFoot](https://avatars.discourse-cdn.com/v4/letter/a/8baadc/32.png) [@AlbinoBigFoot](https://forum.inductiveautomation.com/u/AlbinoBigFoot)\
**Post date:** [March 5, 2026, 4:55pm UTC](https://forum.inductiveautomation.com/t/alarm-falling-edge-detection-for-setpoint/114341/2 "2026-03-05T16:55:35Z")

</div>

So update, hasChanged does work despite the tag not being an expression tag as the IA Manual states for it. But with the value being a float using 0 or 0.0 does not seem to work in the expression I created so I have to using something like this hasChanged({Value}) && {Value} \< 0.001 but this does work for my use case.

using abs works hasChanged({Value}) && abs({Value}) == 0
