def

writable-point

Point with writable output using 16-level priority array. Writable points typically are a setpont or actuator command. Haystack writable points are modeled on the BACnet 16-level priority array with a relinquish default which effectively acts as level 17.

The following levels have special behavior:

  • Level 1: highest priority reserved for emergency overrides
  • Level 8: manual override with ability to set timer to expire back to auto
  • Default: implicitly acts as level 17 for relinquish default

The priority array provides for contention resolution when many different control applications may be vying for control of a given point. Low level applications like scheduling typically control levels 14, 15, or 16. Then users can override at level 8. But a higher levels like 2 to 7 can be used to trump a user override (for example a demand response energy routine that requires higher priority).

The actual value to write is resolved by starting at level 1 and working down to relinquish default to find the first non-null value. It is possible for all levels to be null, in which case the overall write output is null (which in turn may be auto/null to another system). Anytime a null value is written to a priority level, we say that level has been set to auto or released (this allows the next highest level to take command of the output).

conjunct

writable

Related to data which can written

point

Data point such as a sensor or actuator

meta

supertypes

marker

Marker labels a dict with typing information

tags

writeErr

Error description when writeStatus indicates error condition

writeLevel

Current priority level for writeVal as number between 1 and 17

writeStatus

Current status of a writable point output

writeVal

Current desired value to write to output