Tuning Policy
Below are the tuning configurations we use but can be adjusted accordingly.
BACnet Tuning
If you want to assign the tuning policies we recommend for BACnet follow the below. Keep in mind, not all networks are the same and sometimes policies will have to be adjusted accordingly to not overload the network. Networks with MSTP devices will have to be slowed down, even more, depending on the baud rate being utilized. The majority of the time it is the MSTP networks that need tuning vs BACnet IP.
The tuning setup allows the connectors to be COV based if COV is available and enabled on the devices. If COVs fail, it would then switch to polling on the intervals specified below. If using COV, make sure the “cov_increment” property on the analog object is configured to a proper value in the device side.
1. Download bacnetTuning trio file unless you want to make you're own and assign them manually.
2. Upload the trio file to your database via the Folio app → Launch and then by selecting the Upload button.
3. When selected, a pop-up window will be displayed where the user can:
Upload File: Drag and Drop the file
Enter Text: Copy and Paste the contents of the file (Note: Make sure to toggle to trio for text format)
4. If the user already has tuning policies, they can remove those following the below steps if they want to replace those with tuning policies found on this trio file. The reason is the function that will be adding the tuning policies will not replace existing connTuningRefs already added to the points/connectors. If you don't currently have tuning policies, then you can skip this step.
Open the Folio app
Open the tools to → Advanced → Batch Tagging → Apply Batch Tags
Then for the filter to find records field, type in
connTuningRef
because want to find anything that already has a tuning policy on it.Then for the tag to remove, type in
-connTuningRef
. With the minus/hyphen in front of the tag means to remove said tag.Should look like below and apply once done.
5. When the trio file is uploaded, the user will run finAssignConnTuning()
in the query field.
6. It will return how many records have assigned tuning policies.
Note
To view existing tuning policies in folio, the user would run connTuning
. The user can also view them via the Tuning Policies tree in DB Builder.
7. The user would then disable and re-enable all of the connectors. If there are a lot of them, we recommend to enable certain amount at a time.
8. Then we recommend to adjust the APDU Timeout property found in the BACnet Global Config window to 6000 milliseconds from 3000 if MSTP devices are on the network. As well as adding the bacnetDisableCov marker tag on all the tuning policies to put them in Polling mode.
The stats for the tuning policies are as follows (recommend prime numbers so that they don’t overlap as often):
Conn Default Policy (connDefault) - 61 seconds
Sensors (fastSensor) - 13 seconds
Commands (mediumCmd) - 23 seconds
Setpoints (slowSp) - 47 seconds
Schedule (scheduleTuning) - 7 seconds (does not contain writeSchedule tag)
Schedule Objects (scheduleObjectTuning) - 7 seconds (contains writeSchedule tag)
writeSchedule
There are two different types of schedule points and you'll need to know which need the "writeSchedule" tag on the tuning policy.
Regular points should NOT have the writeSchedule tag on the tuning policy.
Schedule Object points should have the writeSchedule tag on the tuning policy.
The reason is if the tuning policy has writeSchedule tag, it sends the whole schedule data which schedule objects know how to handle it. Where as normal points don't so it will break and not update.
Haystack Tuning
When it comes to tuning Haystack connectors, it only requires a single tag that goes on the connector itself. Make sure to disable and re-enable the connector(s) afterwards.
haystackPollFreq (number tag with unit "s" for seconds) - 5-15 seconds recommended. Adjust as needed.