Guide - control a BACnet output at a chosen priority

Goal: you control a BACnet output from Home Assistant at the priority you choose, and you know how to hand control back to the controller.

Before you start

Steps

  1. Go to Settings → Devices & Services → BACnet IP. Each BACnet device is its own entry, titled with the device name. Open the entry of your device.
  2. Under Configuration, the Write Priority entity is not listed yet, because it is disabled by default. On the device page, open the "+1 entity not shown" link, open the Write Priority entity and switch on Enabled. Home Assistant reloads the integration after a short delay.
  3. Use the dropdown to select a priority. The levels are 8 (Manual Operator), 9, 12, 13, 14, 15 and 16 (default, lowest). The selected priority is kept after a restart and applies to the writes of all entities of the device. Switching on, switching off and setting a number now write at that priority. The Write Priority select with its dropdown open
  4. To write once at another priority, without changing the Write Priority, use Developer tools → Actions and run bacnet.write_value on the entity. Binary objects take 0 (inactive) or 1 (active):
    action: bacnet.write_value
    target:
      entity_id: switch.ahu_1_supply_fan
    data:
      value: 1
      priority: 11
    

    The Developer tools Actions form for bacnet.write_value, filled in

  5. To release the command, run bacnet.relinquish at the same priority. After the release, lower priorities or the Relinquish Default of the object take over.
    action: bacnet.relinquish
    target:
      entity_id: switch.ahu_1_supply_fan
    data:
      priority: 11
    

Off is not released

Switching off writes inactive (0) at the same priority. That commands the output off; it does not release it. Only bacnet.relinquish hands control back.

If it doesn't work

More detail: How writes work, bacnet.write_value and bacnet.relinquish.