BACnet to MQTT at the Edge: Topic Mapping, Buffering and Failure Recovery

The Robustel EG3120e Edge Computing Gateway is well suited to a building-edge role when several serial networks, local processing and managed cellular connectivity must share one platform. A BACnet-to-MQTT design still begins with the application: point identity, units, quality, timestamps and write permissions must retain their meaning after translation.
Preserve Meaning Before Mapping Topics
A BACnet object and an MQTT topic solve different problems. Implementation should preserve object identity, unit, quality and source time before deciding how the topic tree looks. Otherwise a syntactically clean message can still be operationally misleading, particularly when several buildings use different naming conventions for the same class of equipment.
BACnet objects carry semantics that a flat MQTT topic can easily lose. Define how device instance, object type and instance, object name, engineering unit, status flags and timestamp map to the MQTT schema. Keep a stable internal identity even if a building operator later renames a point.
| BACnet context | MQTT treatment | Failure if omitted |
|---|---|---|
| Device and object identity | Stable topic or payload identifiers | Renamed points become new assets |
| Present value and unit | Typed value plus engineering unit | Consumers misinterpret magnitude |
| Status/quality | Explicit quality field | Faulted values look valid |
| Timestamp | Source and gateway times where needed | Delayed data appears current |
| Priority/write policy | Separate controlled command path | Cloud writes can bypass ownership rules |
The Robustel’s Smart Buildings, Sensors and BMS Integration Application Example illustrates a wider field-to-BMS architecture. It helps identify integration ownership, but it does not prove BACnet-to-MQTT capability on an arbitrary gateway.
Polling Rate Belongs to the Building System
Inventory devices, network numbers, object counts and existing supervisory polling. Add the edge workload gradually and measure response time, errors and controller load. Brownfield buses may contain duplicate addresses, poor termination or devices that behave badly under aggressive polling.
Use change-of-value services only where supported and correctly configured; otherwise choose intervals from operational need. A temperature trend and a safety-related alarm do not deserve the same poll strategy, and the gateway should not assume control-system responsibility.
A Multi-Serial Building Edge with the Robustel EG3120e Edge Computing Gateway
Robustel EG3120e edge computing gateway provides four RS-485 ports, one RS-232 port, two 10/100 Ethernet ports, digital and analogue I/O, CAN, LTE connectivity, eSIM capability and RobustOS Pro on a quad-core ARM platform with 2 GB RAM and 8 GB eMMC. The open Debian-based environment supports local applications and standard development tooling.
The four RS-485 interfaces can keep separate physical buses distinct instead of combining them through an unmanaged serial hub. Protocol support and direction still need confirmation in the deployed application; an RS-485 connector alone does not establish BACnet MS/TP behaviour.
For a supported building-data project on Robustel EG3120e, E2C Factory can provide a matched data-operations layer for collection, local processing, continuity, visualisation, alarms, workflows and northbound integration. The gateway supplies the field interfaces and compute boundary, while E2C Factory can make point mapping and local status more transparent to operators. Verify the exact BACnet and MQTT roles required before commissioning.
| Release check | EG3120e/E2C Factory evidence | Project evidence |
|---|---|---|
| Southbound acquisition | Exact supported interface and protocol role | Point list and bus-load test |
| Local context | Mapping, units and quality retained | Approved semantic model |
| Northbound MQTT | Supported connection and security settings | Broker ACL, schema and certificate process |
| Continuity | Declared buffer/replay behaviour | Outage duration, capacity and duplicate test |
Buffering Must Preserve Point Semantics
During broker loss, retain source timestamps and quality. Define storage capacity, overflow behaviour and whether the newest or oldest data has priority. On reconnect, rate-limit replay so historical data does not starve current alarms or overload the broker.
Robustel’s Public Safety CCTV Application Example using the EG5100 uses another application domain but clearly separates local edge activity from remote connectivity. That same separation is important here: a WAN outage should create a known local state, not an ambiguous point stream.
The Robustel EG5000 Series quick-pitch video offers broader family context, while the EG3120e product page and current software documentation remain the exact-model authority.
Treat Every Write as a Different Risk Class
If MQTT messages can cause BACnet writes, use a distinct topic, identity, ACL and validation path. Confirm object writability, BACnet priority handling, safe ranges and operator ownership. A data-publishing integration should not quietly become an uncontrolled command channel.
Test invalid, stale and duplicate commands. Record how they are rejected and surfaced to operators before enabling any bidirectional workflow.
Foire aux questions
Q1. Can BACnet data be sent over MQTT?
Yes. An integration layer can read supported BACnet objects, preserve their context and publish a defined MQTT schema. Identity, units, quality and timestamp mapping must be explicit.
Q2. What is the difference between BACnet and MQTT?
BACnet is a building-automation protocol with object and service semantics. MQTT is a lightweight publish/subscribe transport; it does not define the building point model by itself.
Q3. Does MQTT store messages when the internet is down?
Not by itself at every edge. The client, broker session and local application must be designed for buffering, capacity, replay and duplicates. Test the complete path under the expected outage duration.
Q4. Can an edge gateway write to BACnet devices?
It can when the exact software supports the required BACnet role and the target objects allow writes. Use controlled identities, ranges, BACnet priority rules and operator approval for command paths.
Q5. When is the Robustel EG3120e Edge Computing Gateway suitable for BACnet-to-MQTT work?
It suits projects needing several separated RS-485 networks, local Linux applications and managed connectivity in one edge node. Confirm the exact protocol application and test bus load, semantics and recovery before rollout.
Conclusion
The Robustel EG3120e Edge Computing Gateway is suited to multi-serial building data projects that need a local integration boundary. The gateway selection is only one part of the design: point identity, units, quality, timing and write permissions still belong to the application contract.
A representative point should survive the complete BACnet-to-MQTT path and an outage without losing meaning. If the design permits writes, commission that direction under a separate control and ownership review.
Explore More Articles About Robustel Edge Computing Gateways
À propos de l'auteur
Robert Liao | Technical Support Engineer
Robert is an IoT Technical Support Engineer at Robustel, specializing in industrial networking and edge connectivity. A certified Networking Engineer, Robert focuses on the deployment and troubleshooting of large-scale IIoT infrastructures. His work centers on architecting reliable, scalable system performance for complex industrial applications, bridging the gap between field hardware and cloud-side data management.





