Easy BACnet · BACnet IP Controls made Easy Points lists Get the app

What do the BACnet object types mean?

Updated 11 October 2026

Short answer

BACnet describes everything in a controller as an object, and the type tells you what kind of data it holds and how it behaves. The ones you'll see on every job are Analog (numbers), Binary (two states) and Multi-state (a short list of named states), each in Input, Output and Value form. Roughly, Input is a sensor, Output drives something, and Value is a software point inside the controller.

Object types shown for every point
Object types shown for every point

Every type number, including the rare ones, is in the BACnet object types list.

The common types

#TypeWhat it is
0Analog InputA measured value: a temperature, pressure, flow, or a reading passed through from a drive or meter.
1Analog OutputAn analog command: valve or damper position, fan speed reference.
2Analog ValueA number in the controller's logic: a setpoint, a calculated value, a tuning parameter.
3Binary InputA two-state input: fan status, flow switch, filter or freezestat contact.
4Binary OutputA two-state command: a relay starting a fan or pump, a two-position valve.
5Binary ValueA two-state software point: an enable, an occupancy flag, a software alarm.
6CalendarA list of dates (holidays) that schedules refer to.
8DeviceThe controller itself: name, vendor, model, firmware, and the Object_List of everything else.
10FileA file on the device, used by some vendors for programs, configuration or logs.
12LoopA PID loop: setpoint, controlled variable, output and tuning.
13Multi-State InputAn input with named states, such as a drive's Run / Stop / Fault status.
14Multi-State OutputA command with named states: Off / Low / High.
15Notification ClassWhere alarms are routed and who gets them.
16ProgramA control program running on the device.
17ScheduleA weekly schedule with exceptions that writes to other points.
19Multi-State ValueA software point with named states: Occupied / Unoccupied / Standby.
20Trend LogSamples of another point, logged inside the controller.
23AccumulatorA running total, typically pulses from a utility meter.

The numbers are the type codes sent on the wire. Type and instance are packed together into a 32-bit Object Identifier: 10 bits of type, 22 bits of instance. Our decoder tool splits one apart.

Object Identifier — 32 bitstype · 10 bitsinstance · 22 bits0 – 10230 – 4,194,303Analog Value 3type 2 × 4,194,304 + 30x00800003= 8388611Device 1001type 8 × 4,194,304 + 10010x020003E9= 335554334,194,303 (all 22 bits set) is reserved as the “any device” wildcard.
Type and instance packed into one 32-bit number. The decoder tool does this math for you.

Input, Output, Value: what it means for writing

The Input/Output/Value split is a convention, not a guarantee. A BACnet card on a VFD or a packaged unit controller may expose plenty of AIs and BIs that aren't wired sensors at all. See BACnet priority and stuck overrides for what commandable means in practice.

How tools write an object address

A point is type plus instance, so Analog Input 4 and Binary Input 4 are two different points on the same controller. Tools write it as AI:4, AI-4, AI 4 or analog-input,4; all the same thing.

Check it on your own network. Easy BACnet is a free Android app that finds BACnet IP devices and reads their points in a couple of taps.

Get it on Google Play