> For the complete documentation index, see [llms.txt](https://wiki.inels.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.inels.com/inels-bus/inels-design-manager-idm3/idm3-action-reference.md).

# Appendix A — Action reference

*Every trigger available in iDM3 3.5.3.*

***

An **action** is the event on an actor that fires a wire. Which actions are offered depends on the actor's type — a button offers `Short down`, a timer offers `Timer elapsed`.

**On buttons, "down" means press and "up" means release** — so `Short down` is a short press, `Short up` a short release, `Long down` a long press and `Long up` a long release.

All **81** actions defined in this version are listed below, grouped by what they belong to. The **On screen** column is what you will see in the **Action:** dropdown of the **Wire function** window.

For how actions fit into the programming model, see [Chapter 2](/inels-bus/inels-design-manager-idm3/how-programming-works-in-idm3.md).

> **A few actions have no on-screen label** and are marked *(no label)*. They exist in the software but are not intended for selection.

> **Actions you may find in older documentation but not here:** `SystemVoltage_CutOff`, `SystemVoltage_CutOffBack`, `SystemVoltage_LowAcu` and `SystemVoltage_LowAcuBack` appear in the translation files but are **disabled in 3.5.3** — they are commented out in the software and cannot be selected. Also note `Button_Click`, which is likewise disabled.

***

## Button actions in detail

| Action              | Fires when                                     | Typical use                              |
| ------------------- | ---------------------------------------------- | ---------------------------------------- |
| `Short down`        | **short press** — the button goes down         | the normal action                        |
| `Short up`          | **short release** — it comes back up           | when you want the action on release      |
| `Long down`         | **long press** — still held after \~1.5 s      | a second function on the same button     |
| `Long up`           | **long release** — released after a long press | ending a held action — stop dimming      |
| `Permanent actions` | repeatedly, driven by the central unit         | continuous behaviour while a state holds |

> **Older documentation calls these&#x20;*****Short press / Short release / Long press / Long release*****.** Same events; the labels changed.

## Buttons

| On screen    | Internal name          | Code   |
| ------------ | ---------------------- | ------ |
| `Short down` | `Digital_IN_ShortDown` | `0x10` |
| `Short up`   | `Digital_IN_ShortUp`   | `0x11` |
| `Long down`  | `Digital_IN_LongDown`  | `0x12` |
| `Long up`    | `Digital_IN_LongUp`    | `0x13` |

## Digital inputs

| On screen               | Internal name          | Code   |
| ----------------------- | ---------------------- | ------ |
| `Digital IN switch ON`  | `Digital_IN_SwitchOn`  | `0x14` |
| `Digital IN switch OFF` | `Digital_IN_SwitchOff` | `0x15` |

## Digital outputs

| On screen                | Internal name           | Code   |
| ------------------------ | ----------------------- | ------ |
| `Digital out switch ON`  | `Digital_OUT_SwitchOn`  | `0x16` |
| `Digital out switch OFF` | `Digital_OUT_SwitchOff` | `0x17` |

## Balanced (tamper) inputs

| On screen                          | Internal name                    | Code   |
| ---------------------------------- | -------------------------------- | ------ |
| `Digital IN balance switch OFF`    | `Digital_IN_BalanceSwitchOff`    | `0x19` |
| `Digital IN balance switch ON`     | `Digital_IN_BalanceSwitchOn`     | `0x1A` |
| `Digital IN balance switch ALARM`  | `Digital_IN_BalanceSwitchAlarm`  | `0x1B` |
| `Digital IN balance switch TAMPER` | `Digital_IN_BalanceSwitchTamper` | `0x1C` |

## Analog inputs

| On screen                | Internal name           | Code   |
| ------------------------ | ----------------------- | ------ |
| `Analog in value change` | `Analog_IN_ValueChange` | `0x20` |
| `Analog in error`        | `Analog_IN_Error`       | `0x21` |
| `Analog in error back`   | `Analog_IN_ErrorBack`   | `0x25` |

## Analog outputs

| On screen                 | Internal name             | Code   |
| ------------------------- | ------------------------- | ------ |
| `Analog out value change` | `Analog_OUT_ValueChanged` | `0x22` |
| `Analog out switch ON`    | `Analog_OUT_SwitchOn`     | `0x23` |
| `Analog out switch OFF`   | `Analog_OUT_SwitchOff`    | `0x24` |
| `Analog out error`        | `Analog_OUT_Error`        | `0x27` |
| `Analog out error back`   | `Analog_OUT_ErrorBack`    | `0x28` |

## Temperature and sensors

| On screen                   | Internal name             | Code   |
| --------------------------- | ------------------------- | ------ |
| `Sensor high overflow`      | `Sensor_HighOwerflow`     | `0x30` |
| `Sensor high overflow back` | `Sensor_HighOwerflowBack` | `0x31` |
| `Sensor low overflow`       | `Sensor_LowOwerflow`      | `0x32` |
| `Sensor low overflow back`  | `Sensor_LowOwerflowBack`  | `0x33` |
| `Sensor changed`            | `Sensor_Change`           | `0x38` |

## Unit trouble

| On screen                | Internal name               | Code   |
| ------------------------ | --------------------------- | ------ |
| `Trouble over load`      | `Trouble_OwerLoadError`     | `0x34` |
| `Trouble over load back` | `Trouble_OwerLoadErrorBack` | `0x35` |
| `Trouble over temp`      | `Trouble_OwerTempError`     | `0x36` |
| `Trouble over temp back` | `Trouble_OwerTempErrorBack` | `0x37` |

## Timers

| On screen       | Internal name   | Code   |
| --------------- | --------------- | ------ |
| `Timer tick`    | `Timer_Tick`    | `0x60` |
| `Timer elapsed` | `Timer_Elapsed` | `0x61` |

## Counters

| On screen               | Internal name          | Code   |
| ----------------------- | ---------------------- | ------ |
| `Counter changed value` | `Counter_Change`       | `0x70` |
| *(no label)*            | `_Reserve1Counter`     | `0x71` |
| `Counter reached value` | `Counter_ReachedValue` | `0x72` |

## Programs

| On screen                  | Internal name            | Code   |
| -------------------------- | ------------------------ | ------ |
| `Program Value Switch On`  | `Program_ValueSwitchOn`  | `0x91` |
| `Program Value Switch Off` | `Program_ValueSwitchOff` | `0x92` |
| `ProgramHC Value Change`   | `ProgramHC_ValueChange`  | `0x93` |

## System bits

| On screen          | Internal name     | Code   |
| ------------------ | ----------------- | ------ |
| `System bit true`  | `SystemBit_True`  | `0xF1` |
| `System bit false` | `SystemBit_False` | `0xF2` |

## System integers

| On screen           | Internal name       | Code   |
| ------------------- | ------------------- | ------ |
| `SysInt_Change`     | `SysInt_Change`     | `0xA0` |
| `SysInt_ChangeUp`   | `SysInt_ChangeUp`   | `0xA1` |
| `SysInt_ChangeDown` | `SysInt_ChangeDown` | `0xA2` |

## Heating/cooling status

| On screen                 | Internal name             | Code   |
| ------------------------- | ------------------------- | ------ |
| `Status ON`               | `Status_On`               | `0xB0` |
| `Status OFF`              | `Status_Off`              | `0xB1` |
| `Status ErrActul`         | `Status_ErrActul`         | `0xB2` |
| `Status EndErrActul`      | `Status_EndErrActul`      | `0xB3` |
| `Status ErrRequired1`     | `Status_ErrRequired1`     | `0xB4` |
| `Status EndErrRequired1`  | `Status_EndErrRequired1`  | `0xB5` |
| `Status ErrRequired2`     | `Status_ErrRequired2`     | `0xB6` |
| `Status EndErrRequired2`  | `Status_EndErrRequired2`  | `0xB7` |
| `Status Disable`          | `Status_Disable`          | `0xB8` |
| `Status EndDisable`       | `Status_EndDisable`       | `0xB9` |
| `Status ErrCritical`      | `Status_ErrCritical`      | `0xBA` |
| `Status EndErrCritical`   | `Status_EndErrCritical`   | `0xBB` |
| `Status ErrAntifreeze`    | `Status_ErrAntifreeze`    | `0xBC` |
| `Status EndErrAntifreeze` | `Status_EndErrAntifreeze` | `0xBD` |
| `Status ErrMaximal`       | `Status_ErrMaximal`       | `0xBE` |
| `Status EndErrMaximal`    | `Status_EndErrMaximal`    | `0xBF` |

## Alarms

| On screen           | Internal name       | Code   |
| ------------------- | ------------------- | ------ |
| `Alarm_Activated`   | `Alarm_Activated`   | `0x50` |
| `Alarm_Deactivated` | `Alarm_Deactivated` | `0x51` |
| `Alarm_Refeshed`    | `Alarm_Refeshed`    | `0x52` |
| `Alarm_Alert`       | `Alarm_Alert`       | `0x53` |
| `Alarm_Changed`     | `Alarm_Changed`     | `0x54` |

## Card readers

| On screen                      | Internal name              | Code   |
| ------------------------------ | -------------------------- | ------ |
| `Card reader load card succes` | `CardRader_LoadCardSucces` | `0x40` |
| `Card reader load card fail`   | `CardRader_LoadCardFail`   | `0x41` |
| `Card reader logout`           | `CardRader_Logout`         | `0x42` |
| *(no label)*                   | `CardIN_ChangeEnable`      | `0x43` |
| *(no label)*                   | `CardIN_Change`            | `0x44` |

## GSM

| On screen              | Internal name        | Code   |
| ---------------------- | -------------------- | ------ |
| `GSM income call`      | `GSM_IncomeCall`     | `0x80` |
| `GSM end income call`  | `GSM_EndIncomeCall`  | `0x81` |
| `GSM income SMS`       | `GSM_IncomeSMS`      | `0x82` |
| `GSM end income SMS`   | `GSM_EndIncomeSMS`   | `0x83` |
| `GSM outcome call`     | `GSM_OutcomeCall`    | `0x84` |
| `GSM end outcome call` | `GSM_EndOutcomeCall` | `0x85` |
| `GSM outcome SMS`      | `GSM_OutcomeSMS`     | `0x86` |
| `GSM end outcome SMS`  | `GSM_EndOutcomeSMS`  | `0x87` |

## Email

| On screen                 | Internal name           | Code   |
| ------------------------- | ----------------------- | ------ |
| `Email Outcome Email`     | `Email_OutcomeEmail`    | `0x88` |
| `Email End Outcome Email` | `Email_EndOutcomeEmail` | `0x89` |

## System

| On screen           | Internal name       | Code   |
| ------------------- | ------------------- | ------ |
| `Not specified`     | `NotSpecified`      | `0x00` |
| `System start`      | `System_Start`      | `0xF0` |
| `Permanent actions` | `Permanent_Actions` | `0xF7` |

***

## Notes on particular groups

**Balanced (tamper) inputs** are used for security wiring, where a single input distinguishes normal, alarm and tamper conditions by resistance.

**Unit trouble** actions come from units that can report overload or overheating — dimmers and blind actuators among them. Wiring `Trouble over load` to an alarm or an SMS gives you warning of a failing circuit before the client notices.

**Heating/cooling status** actions report a regulator's state — including `Status ErrAntifreeze` and `Status ErrMaximal`, which fire when a temperature limit is breached. Worth wiring to a notification on any real installation.

**`System start`** fires when the central unit boots. Use it to put the installation into a known state after a power cut.

***

**See also:** [Appendix B — Function reference](/inels-bus/inels-design-manager-idm3/idm3-function-reference.md) · [Chapter 18 — The wire editor](/inels-bus/inels-design-manager-idm3/idm3-wire-editor-reference.md)
