Introduction
Building management systems (BMS) have long relied on BACnet — the de facto standard for communication between HVAC controllers, lighting panels, access control, and fire safety systems. While BACnet enables interoperability, managing a complex BMS still requires dedicated software, manual scripting, and constant monitoring. What if you could simply tell an AI agent what you want — "raise the cooling setpoint on floor 3" or "turn off all lights after 7 PM" — and have it executed instantly?
That's exactly what ASI Biont brings to the table. By connecting BACnet devices through a secure, cloud-based AI agent, facility managers and engineers can control their building infrastructure using natural language, automate repetitive tasks, and respond to anomalies in real time — all without writing a single line of code.
What is BACnet and Why Connect It to an AI Agent?
BACnet (Building Automation and Control Networks) is an ASHRAE/ANSI standard (ISO 16484-5) that allows different building subsystems to communicate over IP, MS/TP, or other media. A typical BMS might have hundreds of BACnet devices — VAV boxes, chillers, boilers, lighting controllers, meters — each with dozens of data points (temperature, pressure, setpoints, status).
Integrating BACnet with an AI agent like ASI Biont offers several advantages:
- Centralized control via chat: Use any messaging interface (Telegram, Slack, or directly on the platform) to query and command devices.
- Automated optimization: Let the AI run periodic comparisons, detect drift, and adjust setpoints for energy efficiency.
- No vendor lock-in: ASI Biont works with any BACnet/IP device, regardless of manufacturer.
- Zero coding for standard operations: The AI handles the BACnet protocol internally — you just describe what you need.
How ASI Biont Connects to BACnet Devices
ASI Biont connects to BACnet networks using the BACnet/IP protocol via the bac0 Python library. This is done through the industrial_command tool, which is a native feature of the AI agent. No additional bridge or middleware is required if your BACnet device is reachable over IP from the ASI Biont cloud server. (For devices behind NAT or on an isolated network, a lightweight Hardware Bridge can be used — but BACnet/IP devices on a routable network work directly.)
The supported commands include:
| Command | Purpose |
|---|---|
discover_devices |
Scan the BACnet network for available devices and list their IDs, names, and object counts. |
read_property |
Read any BACnet object property (e.g., present value of an analog input). |
write_property |
Write a new value to a writable property (e.g., setpoint, command). |
All communication happens over UDP port 47808 (default BACnet port) and uses the standard BACnet services (Who-Is, ReadProperty, WriteProperty).
Concrete Use Case: HVAC Monitoring & Control via Chat
Scenario
A 10-story office building uses BACnet-enabled VAV boxes and a central chiller. The facility manager wants to:
- Monitor zone temperatures in real time.
- Adjust cooling setpoints during off-hours to save energy.
- Receive an alert if any zone exceeds 26°C.
Step-by-Step in ASI Biont
1. Discover devices
User: "Discover all BACnet devices on my network 192.168.1.0/24."
AI executes:
industrial_command(
protocol="bacnet",
command="discover_devices",
parameters={"network": "192.168.1.0/24"}
)
The AI returns a list of devices, e.g.,:
- Device 12345: "VAV-3F-01" (analogInput: 5, analogOutput: 2, binaryOutput: 1)
- Device 12346: "Chiller-Plant" (analogInput: 12, analogOutput: 4)
- ...
2. Read temperature
User: "Read the room temperature from VAV-3F-01."
AI sends:
industrial_command(
protocol="bacnet",
command="read_property",
parameters={
"device_id": 12345,
"object_type": "analogInput",
"instance": 1,
"property": "presentValue"
}
)
AI replies: "Current temperature on VAV-3F-01 is 23.4°C."
3. Adjust setpoint
User: "Set cooling setpoint on VAV-3F-01 to 22°C."
AI writes:
industrial_command(
protocol="bacnet",
command="write_property",
parameters={
"device_id": 12345,
"object_type": "analogOutput",
"instance": 1,
"property": "presentValue",
"value": 22.0
}
)
AI confirms: "Cooling setpoint updated to 22.0°C."
Automating with execute_python
For advanced scenarios (e.g., periodic polling and alerts), the user can ask the AI to write a Python script using the bac0 library directly via the execute_python feature. The AI will generate a script that runs in a secure sandbox and performs tasks like:
import bac0
# (pseudo – actual code would include error handling and async)
bacnet = bac0.connect(ip='192.168.1.100')
temp = bacnet.read('analogInput:1 presentValue')
if temp > 26:
# send notification via Telegram (using aiohttp)
...
The user then just says: "Create a script that checks VAV-3F-01 temperature every 15 minutes and sends me a Telegram message if it exceeds 26°C." The AI writes, tests, and schedules the script automatically.
Real-World Benefits
- Energy savings: By automatically adjusting setpoints based on occupancy schedules — without manual intervention — facility managers report 10–20% HVAC energy reduction (based on industry benchmarks from DOE).
- Faster response: When a tenant complains about temperature, the AI can read the sensor, check the setpoint, and adjust in seconds, all from a mobile chat.
- Simplified compliance: Logging temperature and setpoint changes for LEED or ISO 50001 becomes effortless — just ask the AI for a report.
How to Get Started
- Create an account at asibiont.com and generate an API key (Devices → Create API Key).
- Ensure your BACnet device is reachable over IP (UDP port 47808 open).
- Open the chat with the ASI Biont AI agent and describe what you want to do. For example:
"Connect to BACnet devices on my network 10.0.0.0/24 and list all VAV boxes."
- The AI will automatically execute
discover_devicesand return results. From there, you can read, write, and automate using plain English.
No need to install any software on your local machine unless your BACnet network is completely isolated. In that case, download the bridge.py from your dashboard and run it on a PC inside that network — the AI will communicate through the bridge via WebSocket.
Conclusion
Connecting BACnet (BMS) to an AI agent isn't a futuristic concept — it's possible today with ASI Biont. By abstracting away the BACnet protocol, the AI enables facility teams to manage HVAC, lighting, and security through simple chat commands, while also running complex automation scripts in the background. The result: lower operational costs, improved energy efficiency, and happier occupants.
Ready to take control of your building with AI? Start your free trial at asibiont.com and connect your BACnet devices in minutes.
Note: All BACnet commands rely on the bac0 library (BSD-licensed) and standard BACnet/IP services. ASI Biont does not store any sensitive BACnet credentials — device access is configured per session.
Comments