DSC-BRAIN USER GUIDE · SETTINGS REFERENCE

Settings › Automation

Writing rules: condition groups, operators, hold / release / hysteresis / max age, time windows, the six actions and the server allow-list; new-rule defaults.

●  verified for 9.0.0 · corrected for 9.8.0 on 2026-09-30

●  first mirrored 2026-09-15

On this page
  1. Anatomy of a rule
  2. Safety rules the engine enforces
  3. New-rule defaults
  4. Seeing rules work

Rules the brain runs without you. Compound conditions, windows, debounce and release — the Alerts desk shows what fired.

To create a rule (Settings › Automation, the Automations card):

  1. Choose Add rule, or pick one from Start from a template…. Templates only raise a banner and are saved disabled. A new rule is named Rule N, is off, has a blank condition and opens its editor.
  2. Click the name to rename it.
  3. When: choose all of or any of, then for each condition pick an entity (type it or choose from the suggestions), an operator and a value. Numeric conditions have a ± hysteresis field, and any condition can have a max age in seconds. Add condition adds more (up to 8 by default).
  4. Optional Only between: two clock times. Blank means always; an end before the start wraps midnight.
  5. Optional Hold for and Release after, in seconds.
  6. Then: choose an action and its target. Options are greyed out when nothing of that kind is bound.
  7. Tick arm. Every rule is off until armed.
  8. Choose Done, then Save rules. Save rules stays disabled while any rule is invalid.

Anatomy of a rule

  • Name and id.
  • Trigger group: all of, or any of, up to 8 conditions. Each condition reads one entity (raw fleet state; a computed value such as CFM, VPD or an alert count; a bound Zigbee or Tuya reading; a placed-sensor zone roll-up or a runoff tray) with an operator: gt, lt, gte, lte for numbers; eq, ne for text; is, is_not for on/off.
  • Per condition: ± hysteresis (a numeric compare latches until the value crosses back by the margin) and max age (a reading older than this is unusable).
  • Per rule: Hold for (the group must stay true this long before firing), Release after (must be clear this long before clearing), and an optional time window in local time that may wrap midnight.
  • Action, one of:
Action Effect
banner Raise an alert with a tone (critical, warn, info)
oos_seat Take a device out of service while the rule holds
zigbee_switch / tuya_switch Switch a bound plug
relay Hold an allowed hub switch, or an appliance relay as a cut-out only
setpoint Move an allowed hub target within its range

Safety rules the engine enforces

  • Every rule is disabled until you arm it.
  • Rules are edge-triggered: they act once when the group becomes true, and clear what they set once it becomes false. They do not fire continuously.
  • Rules fail closed: an offline hub, a missing entity, a non-numeric value or a stale reading makes the condition false. A value with no timestamp can never pass a max-age check.
  • Relay and setpoint actions capture the previous state at fire time and restore it on clear.
  • Relay and setpoint targets are limited to a server allow-list: operator-owned hub switches (manual takeover, 4×8 manual override, manual light hold…), appliance relays as cut-out only, and the 4×8 and 2×4 temperature, RH and VPD targets within fixed ranges. The 2×4 targets are refused while Follow plants owns them. The list is served by the brain; the editor only offers what it allows.
  • Actuator write failures are logged and never crash the evaluator.

New-rule defaults

Debounce, Release and Time window (blank means always) pre-fill the editor; Max conditions per rule is shown read-only (8). They do not change existing rules.

Seeing rules work

Alerts desk › Rules · what the hub does before it calls you lists firings in the last 6 hours; the grow log records each edge.

DSC-Brain user guide · Settings › Automation · this page is edited on the site; the Notion original was retired after the mirror