Easy BACnet · free BACnet tools Get the app

BACnet Object Identifier decoder

Free browser tool · nothing is uploaded · updated 10 November 2026

A BACnet Object Identifier packs an object type and an instance number into a single 32-bit value — the top 10 bits are the type, the bottom 22 bits are the instance. This tool goes both ways: pick a type and instance to get the encoded number, or paste a raw Object Identifier to see what it means. Background: what is a BACnet IP points list? and BACnet object types explained.

Encode — type + instance to number


Decode — number to type + instance

How the number is built

An Object Identifier is 4 bytes, 32 bits. The first 10 bits hold the object type (0–1023) and the last 22 bits hold the instance (0–4,194,303). Shifting the type left by 22 bits is the same as multiplying it by 4,194,304, so the whole thing is one line of math:

Object Identifier = object type × 4,194,304 + instance

To go the other way, divide by 4,194,304. The whole-number part is the type and the remainder is the instance.

ObjectMathDecimalHex
Analog Input 10 × 4,194,304 + 110x00000001
Analog Value 72 × 4,194,304 + 78,388,6150x00800007
Binary Output 34 × 4,194,304 + 316,777,2190x01000003
Device 12348 × 4,194,304 + 1,23433,555,6660x020004D2

In hex the split is easy to read by eye: the type sits in the top bits, so every Analog Value starts 0x008…, every Binary Output 0x010… and every Device 0x020….

Where you run into the raw number

Limits worth knowing

For the instance numbers a specific unit uses, look it up in the BACnet points list library or run a brand instance calculator. To look up any other BACnet enum value, such as a property ID or engineering unit, use the BACnet number lookup.