What Who-Am-I Is
Who-Am-I is a remote-device-management service in BACnet, defined in Clause 16.11 of ANSI/ASHRAE 135-2024 and added at Protocol_Revision 24. A device sends Who-Am-I to announce that it needs its identity configured, presenting the three things that unambiguously identify it: its vendor identifier, model name, and serial number. It is an unconfirmed service. Who-Am-I is the device’s half of the zero-touch commissioning pair; the tool answers with You-Are.
This is how a factory-fresh device with no assigned instance number gets one over the network, without a technician setting it by hand. A device that supports Who-Am-I can also answer a Who-Is that targets the unconfigured-device instance number 4194303.
How It Works
An unconfigured device broadcasts or unicasts Who-Am-I carrying its vendor identifier, model name, and serial number. A commissioning tool listening for these builds a picture of which devices on the network still need identities and which physical unit each one is. The tool then sends a You-Are back, matched to that same vendor, model, and serial number, telling the device which Device instance number, MAC address, or both to take. Because the service is unconfirmed, the device expects no reply to the Who-Am-I itself; the You-Are is a separate service, not an acknowledgment. A device may repeat Who-Am-I, but no more often than every 5 minutes unless it is answering a Who-Is or a technician triggers it.
Where You’ll See It
- Zero-touch commissioning. A new device is powered up on the network and announces itself with Who-Am-I so a commissioning tool can assign its identity without a laptop on the device.
- Fleet provisioning. A room full of identical controllers, each distinguished only by serial number, each announcing with Who-Am-I for the tool to number in order.
- Replacement. A swapped-in device announces with Who-Am-I so the tool can hand it the identity of the unit it replaced.
Who-Am-I Error Codes
Who-Am-I is an unconfirmed service, so it has no acknowledgment and returns no application-layer error. A Who-Am-I that never results in the device being configured is not a service error; it is a discovery or commissioning-path problem. The usual causes:
- No commissioning tool is listening for Who-Am-I on that network, so nothing sends the You-Are back.
- The device is on another IP subnet with no BACnet BBMD path, so the broadcast never reaches the tool.
- The tool received the Who-Am-I but its You-Are did not reach the device, leaving the device still unconfigured and repeating on its 5-minute limit.
Profiles That Require It
Who-Am-I is a Protocol_Revision 24 zero-touch commissioning feature, not part of the required BIBB set for the established device profiles. It rides on the device-address BIBB family (DM-DDA); the workstation side that answers with You-Are appears in advanced operator-workstation profiles such as B-AWS. A device supports Who-Am-I when it is built for zero-touch commissioning and declares it in its PICS (Protocol Implementation Conformance Statement); check Protocol_Revision in the Device object to know whether a device is new enough to use it.
What Chipkin Provides
The CAS BACnet Stack supports Who-Am-I in both directions, as a device announcing that it needs an identity and as a tool receiving that announcement. Talk to us about adding BACnet client or server support to your device.