Do prorietary extensions to BACnet make devices incompatible?
Not necessarily. There are essentially three areas where BACnet can be extended: Object Properties, Services and certain Enumerated Values. If a device implements any of these extensions, it is still interoperable with other BACnet devices that share the standard objects, properties and services that it implements. If a device implements non-standard objects, or non-standard properties of standard objects, it may still be possible to interoperate effectively with those objects and properties. BACnet object properties have values that are said to be of a particular “datatype.” BACnet defines 12 so-called “primitive” or “application” datatypes including real (floating point) numbers, signed and unsigned integers, character strings, bit strings and so forth. BACnet also allows “constructed” datatypes that are collections of primitive and other constructed types. If an object property uses on primitive datatypes, then it is possible to interoperate with the device without special understan