18. BACnet Change of Value (COV) 18.1. Introduction Most field devices are passive servers. They wait passively for a system to poll them for data and only then do the devices respond. A consequence of this is that the data client only knows the value of an object property when it polls for the value. If the duration of an event (change of value) is shorter than the interval between polls then the data client will not know the event occurred. BACnet provides a solution for this by defining services to report events. These services allow a device to be transformed from a passive server to an active server since it is now capable of sending messages reporting the value of an object property based on some event rules. BACnet COV is a sub-set of the 'Alarm and Event Services'. This article discusses how the technology operates and then provides a discussion on some weaknesses in the COV system. 18.2. A simplified definition of BACnet COV Data clients subscribe to an object for COV reporting. The device monitors the value of the object property, monitors the subscription list and the change criteria. When the change criteria are met the devices sends notifications of the new value to the subscribers. 18.3. Not all devices / objects support COV The BACnet COV system is not a mandatory part of the protocol. Each vendor decides if they want to support it. In addition, each vendor gets to decide which properties of which objects support COV. The device object of a COV server indicates whether there is support for COV. Beyond that you have to look for the presence of certain properties such a "COV Increment' to tell if an object supports COV or you have to refer to the vendor documentation. 18.4. How COV Works Subscribe Data Client sends messages to the devi