Bacnet Write Level vs Write Level

Bacnet Write Level vs Write Level

There are two different write levels available in FIN: write level and connector write level (in our current example we are talking about a Bacnet connector, so Bacnet write level). The reason there are two different write levels is because FIN has its own priority array and is not synced with the Bacnet or any particular connector protocol priority array. This means if a user executes any action whether an "Override" or "Set" on a commandable point, it will write to the same priority level in Bacnet. The user can define the priority level that all commands write to in Bacnet.

The main differences between the two write levels are:

  • any writable point will have the write level, but only a point from a Bacnet connector will have the Bacnet write level
  • the write level will show the level where the point will be written inside the FIN database, while the Bacnet write level will point to the input level where the point will be written inside the target device

For every point in FIN that is made writable, in the properties sheet the user can find a Write Level. That is the level were the point gets written in the FIN database (by default that is set to 17). It changes depending on the action that is invoked.

The user can also see the FIN write array, by selecting the dropdown arrow next to the "writeArray" field. Every time the user invokes any of the actions on the point, the array will display the written value at the proper level (For instance, a manual action is set by default to level 8).

 

For points that are connected, that are basically coming from a connector like Bacnet, (or more specifically, a Bacnet device, in the example below), there is going to be an extra property called BacnetWriteLevel for any writable point. This level represents the level where the point is going to get written into the point on the Bacnet Device side. This property can be found in the Property Editor window of the point as well.

There is a Bacnet Priority Array tool that displays the Bacnet priority array (if available) of a Bacnet object. To get this array, the user will select a Bacnet writable point and go to Tools icon towards the top right in the point essentials view and select: Bacnet Priority Array. This will pop up a new window with the array showing what value has been written at what level and by whom has been written on the Bacnet device side not FIN.

 

For example, by default the Bacnet write level is 16. This means that if the value is changed in FIN, then we will get the value on input 16 in the corresponding Bacnet point. In this case, we invoked an override. In the FIN array, it shows up at write level 8, but on the Bacnet device array, it shows up at level 16 because of the Bacnet write level.

  

If the user wants to write to the point at a different level than 16, the Bacnet write level value needs to be changed to that value, either by typing in the desired value or by using the small arrows to select the value. Then the apply button at the bottom right corner needs to be selected. In this case, we changed it to level 8. We invoked a set command. In the FIN array, it shows up at write level 17 (default), but on the Bacnet device array, it shows up at level 8 because of the Bacnet write level.

  

Once the Bacnet write level has been changed, nothing is going to happen on the Bacnet side. Only after the user has changed the value of the point in FIN, that it will display the new value in the new specified input field.

Bacnet write level 1 for 1

If the user wants to match a write 1 for 1 from FIN to Bacnet priority array, they can but will have to set up the actions differently. Meaning if a user invokes a manual override action, it will write to level 8 on the bacnet device side and if invoking a set action, it will write it to level 16 etc. Examples are provided in the BACnet Actions doc.