Our integration partners are some of the most innovative people in the industry. Many times, they are able to solve their own problems and issues. However, here is a case where this partner needed a bit of help. They were using a Boolean Value to trigger the Auto Zero function in a N2 VAV controller from the graphical interface of their BACnet client. Since value updates from a point on a N2 device do not have a priority associated with them the value change that happens when the Auto Zero algorithm kicks off was applied directly to the Present Value of the Auto Zero Command point. This is a different situation than we discussed in the previous article. In the previous case, we were making transactions coming from the Upstream N2 Interface act as peers to BACnet applications and clients. In this case, we are working with N2 responses coming from devices on our Downstream N2 interfaces.
Here is the problem. The BACnet client that they were using does not generate additional BACnet transactions if you write the same value into a priority array entry as it already holds. Net effect, The Auto Zero function could only be requested one time. In order to ask it to run again you first had to force a different value, or relinquish the priority array entry.
In order to solve this problem, and provide a far better user experience, we added a point level option to the BACnet-N2 Router "Disable Priority Array". When this option is selected for a point no priority array elements or relinquish default attributes are emulated for that point. All BACnet transactions operate directly against the Present Value attribute as do value updates coming from the N2 device. This puts the BACnet client (or applications) and the N2 device on an equal footing and both are capable of updating the Present Value of the point.
This option is now a standard feature of the BACnet-N2 Router and is included in the current production build.