Diagnostic Object

From BACnet Wiki
Revision as of 11:46, 12 September 2023 by BACnetEd (talk | contribs)
Jump to navigation Jump to search

This is a proof-of-concept project in preparation for submitting a new "BACnet Diagnostic Object" proposal to the BACnet Steering Committee

There is a discussion group at the BACnet Forum

Initial Ideas


  • Duplicate Device ID detected
  • Looped Route (Jen’s words)


  • RAM %
  • Program memory %
  • CPU load %
  • Temperature
  • Certificate expiration dates
  • An array/list of strings (and values) to display error messages
  • - repetition count
  • - priority
  • - non-repeating
  • - suppressible
  • - ack required
  • - delete (once, forever)
  • - filters (same as suppressible?)
  • - features similar to existing alarms/event buffers/remote destinations (code-share)
  • ESE ?
  • flasherr ?
  • Enforced version numbering (including bug/feature/eng/market)


  • Debug / production mode at runtime
  • Debug verbosity levels
  • ‘C or ‘F system-wide
  • Developer mode flag (with password?)


  • High-water queue usage
  • Duplicate Network Numbers
  • Broadcast storm (loop) detected / suppressed (Circular Route Detection)
  • Monitoring remote connections (devices)
  • Attempts made
  • Passes / fails / MTTR etc.

General Datalink

  • Messages per second (minute/hour)
  • queue sizes, high-water, choked/ message rate

IP Datalinks

  • Duplicate IP address
  • Netmask Error

MS/TP Datalinks

  • Measure Tusage (token handling time)


  • Enhanced Monitoring and Troubleshooting: A standardized way to monitor the health and status of devices, systems, and networks. It allows for real-time visibility into potential issues, which can aid in troubleshooting and reducing downtime.
  • Proactive Maintenance: By collecting and analyzing diagnostic data, building managers can identify issues before they escalate into significant problems. This proactive approach to maintenance can minimize disruptions, extend the lifespan of equipment, and reduce repair costs.
  • Integration and Interoperability: BACnet is designed to facilitate interoperability between various building automation systems and devices. By defining a standardized diagnostic object, different devices and systems can share diagnostic information more effectively, regardless of the manufacturer.
  • Reduced Downtime: Swift identification and resolution of issues through diagnostic data can significantly reduce downtime of critical systems, leading to improved operational continuity and tenant satisfaction.