BACnet
/tools/bacnet has two tabs: Configured Clients (works against BACnet clients defined in the cloud configuration) and Poller (fully ad-hoc, like the Modbus tool).
Configured Clients
Per BACnet client, you see its transport (IP or MSTP), online status, and a Who-Is panel:
- Who-Is target — optional. Blank broadcasts; supply
host:portfor an IP unicast or a MAC0–127for MSTP. - Wait time — how long to wait for I-Am replies before refreshing the device list.
- Send Who-Is — fires the request.
- Export CSV — exports all discovered devices and their inspected properties.
Discovered devices show in a table with Device #, Address, Vendor, Max APDU, Segmentation, First Seen, and Last Seen. Expand a device to inspect it: the tool runs ReadPropertyMultiple across all objects and renders a collapsible property tree per object. Use this when bringing a new BACnet device online to verify the vendor, supported objects, and any non-default property values.
Poller
The Poller tab is the ad-hoc equivalent of the Modbus tool. Add either IP or MSTP clients with their respective parameters:
| IP field | Notes |
|---|---|
| Host | The BACnet/IP device. |
| Port | Default 47808. |
| Device Instance | Optional. |
| RP Property ID | Default 85 (PROP_ALL). |
| Read Mode | ReadPropertyMultiple (RPM) or ReadProperty (RP). |
| MSTP field | Notes |
|---|---|
| Serial Port | Local serial device path. |
| Baud Rate | Default 38400. |
| MAC | Our station's MAC (0–127). |
| Target MAC | Remote MAC (0–127). |
| Discover wait | Seconds after Who-Is before refresh. |
Click Discover to fire Who-Is, pull the device's Objects list, and auto-fill polling rows. Each polling row identifies an Object Type and Instance Number; on each poll tick the row's expandable property tree updates and changed values flash.