BACnet is an open source BACnet protocol stack for embedded systems.
This BACnet protocol stack library provides a BACnet application layer, network layer and media access (MAC) layer communications services. It is an open source, royalty-free library for an embedded system, Windows, Linux, or other operating system. Example BACnet client and server applications are included.
BACnet - A Data Communication Protocol for Building Automation and Control Networks - see bacnet.org. BACnet is a standard data communication protocol for Building Automation and Control Networks. BACnet is an open protocol, which means anyone can contribute to the standard, and anyone may use it. The only caveat is that the BACnet standard document itself is copyrighted by ASHRAE, and they sell the document to help defray costs of developing and maintaining the standard (just like IEEE or ANSI or ISO).
For software developers, the BACnet protocol is a standard way to send and receive messages on the wire containing data that is understood by other BACnet compliant devices. The BACnet standard defines a standard way to communicate over a number of wires, known as Data Link/Physical Layers: Ethernet, EIA-485, EIA-232, ARCNET, and LonTalk. The BACnet standard also defines a standard way to communicate using UDP, IP and HTTP (Web Services).
What's New in This Release: [ read full changelog ]
· Analog Output and Binary Output objects were added to the simulated device example. The PIC port MS/TP was updated to not always Reply-Postponed frame when sent a Data-Expecting-Reply frame.
· CharacterString Value and Multi-state Value object examples and unit tests were added, and they were added to the demo/server example application.
· The Analog Input object, Analog Output object, Analog Value object, Device object, Multi-state Input object, and Multi-state Output object examples were fixed to return correct error codes for the WriteProperty service.
· There were extensive bugfixes and code cleanups.