Easy BACnet · BACnet IP Controls made Easy

What port does BACnet use?

Updated 16 September 2026

Short answer

BACnet/IP uses UDP port 47808 by default — that is 0xBAC0 in hex, which is where the number comes from. It is UDP, not TCP, and discovery relies on broadcasts to that port. Where a single IP subnet carries more than one BACnet network, the extra networks use 47809 and up.

Discovery broadcasts on UDP 47808
Discovery broadcasts on UDP 47808

47808, and why

The default port is 47808 decimal, chosen because in hexadecimal it reads 0xBAC0 — “BAC0”, for BACnet. It is a UDP port: BACnet/IP sends connectionless datagrams, and a Who-Is goes out as a broadcast to that port so every device on the subnet hears it.

When it is not 47808

One IP subnet can host several separate BACnet networks by giving each its own port, starting at 47808 and counting up: 47809, 47810, and so on (up to 47823 is common). If a building was set up that way, a tool must check each port, because devices on 47809 never answer a broadcast sent to 47808. Easy BACnet checks the common range for you.

Firewalls and MS/TP

If a software firewall or a locked-down switch is dropping UDP 47808, discovery fails even on the right subnet — worth ruling out with whoever runs the network. Note that MS/TP devices have no IP port at all; they live on a serial trunk and reach IP only through a BACnet router. And because the port carries broadcasts, it will not cross a router to another subnet without a BBMD.