What a BACnet Service Is
A BACnet service is a defined request-and-response (or notification) exchange between devices: the verbs of the protocol. Reading a value, writing a setpoint, subscribing to a change, acknowledging an alarm, and discovering a device are all services. Services are either confirmed (the receiver returns an acknowledgment or an error) or unconfirmed (broadcast or sent with no reply). ASHRAE 135-2024 groups them by purpose, and this index follows that grouping.
Object Access Services
Reading, writing, and managing the properties and objects in a device (Clause 15).
| Service | Purpose |
|---|---|
| ReadProperty | Read one property of one object |
| ReadPropertyMultiple | Read many properties in one request |
| WriteProperty | Write one property of one object |
| WritePropertyMultiple | Write many properties in one request |
| ReadRange | Read a span of a list or log property, such as trend records |
| AddListElement | Add an item to a list-valued property |
| RemoveListElement | Remove an item from a list-valued property |
| CreateObject | Create an object in a device at runtime |
| DeleteObject | Delete an object created at runtime |
Alarm and Event Services
Notifying, subscribing, and acknowledging alarms and changes (Clause 13).
| Service | Purpose |
|---|---|
| SubscribeCOV | Ask to be notified when an object changes |
| SubscribeCOVProperty | Subscribe to change on a specific property |
| SubscribeCOVPropertyMultiple | Subscribe to change on several properties at once |
| ConfirmedCOVNotification | Acknowledged change-of-value notification |
| UnconfirmedCOVNotification | Fire-and-forget change-of-value notification |
| ConfirmedEventNotification | Acknowledged event or alarm notification |
| UnconfirmedEventNotification | Fire-and-forget event or alarm notification |
| AcknowledgeAlarm | Operator acknowledgment of an alarm |
| GetAlarmSummary | Query the current active alarms (legacy) |
| GetEnrollmentSummary | Query the objects enrolled for event reporting |
| GetEventInformation | Query active events, the modern paged replacement for GetAlarmSummary |
| LifeSafetyOperation | Silence, reset, or unsilence life-safety objects |
| AuditLogQuery | Retrieve filtered records from an Audit Log object |
File Access Services
Reading and writing File objects, used for backup, restore, and firmware (Clause 14).
| Service | Purpose |
|---|---|
| AtomicReadFile | Read a record or byte range of a File object |
| AtomicWriteFile | Write a record or byte range of a File object |
Remote Device Management Services
Discovering, controlling, and coordinating whole devices (Clause 16).
| Service | Purpose |
|---|---|
| Who-Is | Discover devices and their addresses |
| I-Am | Announce a device’s identity and address |
| Who-Has | Discover which device holds a named object |
| I-Have | Announce that a device holds an object |
| Who-Am-I | A device announces its model and serial for zero-touch commissioning |
| You-Are | A commissioning tool assigns a device its instance and address |
| DeviceCommunicationControl | Enable or disable a device’s communication for a period |
| ReinitializeDevice | Cold or warm start, and backup and restore coordination |
| TimeSynchronization | Broadcast the local time to devices |
| UTCTimeSynchronization | Broadcast UTC with offset and DST handling |
| ConfirmedTextMessage | Send an acknowledged text message to a device |
| UnconfirmedTextMessage | Send a fire-and-forget text message |
| ConfirmedPrivateTransfer | Vendor-defined acknowledged exchange |
| UnconfirmedPrivateTransfer | Vendor-defined fire-and-forget exchange |
Withdrawn Services
Some service choices from earlier editions are no longer part of BACnet and are not documented here: the Virtual Terminal services (VT-Open, VT-Close, VT-Data), ReadPropertyConditional, and the original Authenticate and RequestKey services. Clause 17 has since been reused for authentication and authorization.
What Chipkin Provides
The CAS BACnet Stack implements the object-access, alarm-and-event, file-access, and remote-device-management services in the shipping product, in both client and server directions where the service is bidirectional. Talk to us about the services your device needs.