- Home
- BACnet reference
- Reliability, event state and device status
BACnet reference
BACnet reliability, event state and device status
Updated 7 November 2026
Reliability says why a value may be wrong; Event_State says whether an object is in alarm; System_Status says what the device itself is doing. All are numbers on the wire. Examples: 0 = no-fault-detected, 1 = no-sensor, 2 = over-range.
Looking for a number but not sure which list it belongs to? Use the BACnet number lookup, which searches every table at once.
Reliability (25)
| Number | Reliability | Notes |
|---|---|---|
| 0 | no-fault-detected | The value can be trusted. |
| 1 | no-sensor | No sensor is connected. |
| 2 | over-range | The input reads above its range (often an open or failed sensor). |
| 3 | under-range | The input reads below its range (often a shorted or failed sensor). |
| 4 | open-loop | Open circuit on the input or output. |
| 5 | shorted-loop | Short circuit on the input or output. |
| 6 | no-output | |
| 7 | unreliable-other | The device knows the value is wrong but gives no specific reason. |
| 8 | process-error | |
| 9 | multi-state-fault | |
| 10 | configuration-error | |
| 12 | communication-failure | The device lost contact with whatever supplies the value (a sub-network, wireless sensor or gateway). |
| 13 | member-fault | |
| 14 | monitored-object-fault | |
| 15 | tripped | |
| 16 | lamp-failure | |
| 17 | activation-failure | |
| 18 | renew-dhcp-failure | |
| 19 | renew-fd-registration-failure | |
| 20 | restart-auto-negotiation-failure | |
| 21 | restart-failure | |
| 22 | proprietary-command-failure | |
| 23 | faults-listed | |
| 24 | referenced-object-fault | |
| 25 | multi-state-out-of-range |
Event state (6)
| Number | Event state | Notes |
|---|---|---|
| 0 | normal | |
| 1 | fault | |
| 2 | offnormal | |
| 3 | high-limit | |
| 4 | low-limit | |
| 5 | life-safety-alarm |
Event type (21)
| Number | Event type | Notes |
|---|---|---|
| 0 | change-of-bitstring | |
| 1 | change-of-state | |
| 2 | change-of-value | |
| 3 | command-failure | |
| 4 | floating-limit | |
| 5 | out-of-range | |
| 6 | complex-event-type | |
| 8 | change-of-life-safety | |
| 9 | extended | |
| 10 | buffer-ready | |
| 11 | unsigned-range | |
| 13 | access-event | |
| 14 | double-out-of-range | |
| 15 | signed-out-of-range | |
| 16 | unsigned-out-of-range | |
| 17 | change-of-characterstring | |
| 18 | change-of-status-flags | |
| 19 | change-of-reliability | |
| 20 | none | |
| 21 | change-of-discrete-value | |
| 22 | change-of-timer |
Device status (System_Status) (6)
| Number | Status | Notes |
|---|---|---|
| 0 | operational | |
| 1 | operational-read-only | |
| 2 | download-required | |
| 3 | download-in-progress | |
| 4 | non-operational | |
| 5 | backup-in-progress |
Values come from the open-source bacnet-stack 1.6.1 (bacenum.h), which follows ANSI/ASHRAE Standard 135, and were cross-checked one by one against two other independent BACnet stacks (bacpypes and @bacnet-js/client). Entries marked (newer) are in bacnet-stack only, because the other two stacks predate them. Numbers 0-255 (and the higher ASHRAE ranges) are standard; vendors may use proprietary numbers above them.
More BACnet reference
- BACnet engineering units list
- BACnet property identifiers
- BACnet object types
- BACnet error, reject and abort codes
- BACnet service choice numbers
- BACnet Object Identifier decoder
- BACnet Vendor ID lookup
- Compare a scan with a points list
Easy BACnet reads these values straight off the device from an Android phone and shows them as words, not numbers.