What LifeSafetyOperation Is
LifeSafetyOperation is an alarm-and-event service in BACnet, defined in Clause 13.13 of ANSI/ASHRAE 135-2024. It is intended for fire, life-safety, and security systems, and it carries a specific instruction from a human operator to a device: silence audible or visual notification appliances, reset latched appliances, or unsilence appliances that were silenced earlier. It is a confirmed service: the device answers with a result, or with an error naming why the operation could not be carried out.
Ensuring the request actually came from a person with authority is a local matter for the receiving device. The service targets the life-safety objects, the Life Safety Point and Life Safety Zone objects, that model fire and security points.
How It Works
The client sends a requesting process identifier, a requesting source string identifying the operator, the requested operation, and optionally an object identifier. The operation is one of a fixed set: SILENCE, SILENCE_AUDIBLE, SILENCE_VISUAL, RESET, RESET_ALARM, RESET_FAULT, UNSILENCE, UNSILENCE_AUDIBLE, or UNSILENCE_VISUAL. When the object identifier is present, the device applies the operation to that object; when it is omitted, the device applies it to every applicable object it hosts. A positive result confirms the operation was carried out.
Where You’ll See It
- Silencing an alarm from the workstation. An operator acknowledging a fire condition can silence the audible appliances across a device with one request rather than object by object, by omitting the object identifier.
- Resetting a latched point. After a condition clears, a
RESEToperation returns a latched life-safety point to a state where it can signal the next event. - Targeted control. Naming a specific Life Safety Point in the request confines the silence or reset to that one point, leaving the rest of the device alone.
LifeSafetyOperation Error Codes
Clause 13.13 defines the error class and code a device returns for each failure. The general error model lives in Clause 18 of the standard.
| Situation | Error class | Error code |
|---|---|---|
| The specified object does not exist | OBJECT | UNKNOWN_OBJECT |
| The object does not support LifeSafetyOperation requests | OBJECT | OPTIONAL_FUNCTIONALITY_NOT_SUPPORTED |
| The object does not support the operation in the “Request” parameter | OBJECT | VALUE_OUT_OF_RANGE |
| The requesting device is not authorized for the requested operation | SERVICES | SERVICE_REQUEST_DENIED |
| The operation is invalid in the object’s current state | OBJECT | INVALID_OPERATION_IN_THIS_STATE |
Reading these in the field:
INVALID_OPERATION_IN_THIS_STATEmeans the request was valid but arrived at the wrong time, for example aRESETsent to a point that is not ready to be reset or is already reset.VALUE_OUT_OF_RANGEhere means the object exists but does not implement the specific operation asked for, not that a numeric value was too large.SERVICE_REQUEST_DENIEDis an authorization refusal; the device requires credentials this request did not carry.- No response at all is not a service error. A timeout means the request never reached the device or the reply never came back, which is a transport or addressing problem.
Profiles That Require It
LifeSafetyOperation splits by direction. Executing it (carrying out the silence or reset) comes from the AE-LS-B building block and is required of life-safety controllers. Initiating it comes from AE-LS-A and is a life-safety operator behavior.
| Direction | Required by BIBB | Profiles |
|---|---|---|
| Execute (carry out the operation) | AE-LS-B | Life-safety controllers: B-ALSC and B-LSC |
| Initiate (send the operation) | AE-LS-A | Life-safety operator workstations and displays |
What Chipkin Provides
The CAS BACnet Stack executes LifeSafetyOperation on the server side against Life Safety Point and Life Safety Zone objects, including the silence, reset, and unsilence operations; the operator initiate side is implemented in Chipkin’s BACnet test tooling. Talk to us about adding BACnet client or server support to your device.