When it comes to building management systems (BMS), not everyone defines “open systems” the same. When people talk about open systems, their discussion falls into three categories: open distribution, open protocols and open service.
In this blog, we will explore open protocols.
Open, Standard Protocols
A communication protocol is a set of rules used to share data. An open protocol means the communication rules are publicly available. Using an open protocol is a good first step but can become complicated if a single vendor owns the protocol. That vendor could keep some of the features for only their products, making it less open than would first appear. Or worse, the vendor may change the protocol leaving existing systems in a state where an upgrade may break existing interoperability.
An open, standard protocol is not only publicly available but was created and is maintained by an industry group. This industry group should be comprised of manufacturers, system integrators, and end users so everyone’s needs are considered.
In the BMS market, BACnet is the most commonly used open, standard protocol.
Why should I care about open, standard protocols?
Open, standards may be one of the most boring aspects of our industry (not to me though ) but they are critical to create an open system.
- Product Certification: An open, standard protocol will have an independent group perform product certification to ensure products adhere to the standard. This ensures a higher probability of interoperability.
- Troubleshooting Tools: Product certification helps minimize integration issues but doesn’t eliminate all issues. Open standards enable multiple vendors to create troubleshooting tools to help with integration issues, rather than having no option other than a vendor specific tool.
- Protocol Enhancements: An active standards group is a great sign the protocol is doing well in the industry and can adapt to add functionality that may not have been considered in the past. Since the standards groups have representation from different sources, these enhancements are widely shared and are backward compatible. For example, as cyber security has become more important in recent years, ASHRAE® SSPC 135 (BACnet) has added BACnet Secure Connect (BACnet/SC) as a new secure, encrypted data link to adapt to the industry need.
Application Programming Interface (API)
There has been a lot of discussion (and confusion) about using APIs for BMS integration. What is an API?
An Application Programming Interface (API) allows two software applications to share data. The first application sends a request to the other application and the second application returns a response. The API defines these requests and responses.
A protocol is the set of rules describing how the requests and responses get to the applications.
In the BMS world, BACnet is an open, standard protocol that defines both these concepts. However, many other systems will provide an API for integration.
Why use an API?
The BMS industry has been using BACnet for many years. Other industries have never heard of BACnet and prefer to use other protocols or APIs that better meet their needs. An API is a faster and easier way to share data for a software developer rather than developing an open, standard protocol. Typically, one vendor creates the API to suit their needs and provides the API documentation to the other vendor. The second vendor then needs to develop their application to use the API. This means each API is custom development for the other vendor. This is very similar to an open protocol (not an open standard protocol) in that the vendor that owns the API can keep some of the API functionality exclusive or make updates to the API that can impact existing installations.
APIs need to be well understood before implemented in a BMS. APIs are a quick way to provide a mechanism to integrate, but they come with a larger amount of upfront labor and need to be maintained, both of which represent costs to a solution. Some considerations when considering an API would be:
- What happens when communication is lost between the two systems?
- How do you troubleshoot the API or get support for the API?
- How will we maintain functionality when the API is changed to a new version?
Meeting Customer Needs
The goal of open systems is to meet customer needs. One of the most effective parts of an open system are open, standard protocols. Why?
- Flexibility to choose products: Choose the best-in-class products that can integrate to multiple vendors by specifying BACnet Testing Laboratories (BTL) listed BACnet products.
- Open data collection: Choose open, standard protocols so all data is available to multiple vendors at any level of the architecture.
- Open, flexible infrastructure: Choose open, standard protocols to ensure interoperability now and in the future.
- Open service, open tools: Choose open, standard protocols so multiple vendors can service the BMS and tools are readily available.