New: the AI firewall watches every module and explains each incident in plain words. See how it works

Symbol rules

Make symbols and connections follow the data: targets, conditions, every effect, rule order, tokens and worked examples.

A rule changes how a symbol or a connection looks while a condition holds: turn a tank amber when it runs low, blink a pump in alarm, hide a standby unit, print “High: 92 %”. Rules live in the drawing, on the inspector’s Rules tab, so every device that uses the drawing gets them. A drawing holds up to 200 rules.

“A rule reads a value of a symbol. Which device sends that value is chosen on the device’s or the site’s Views once the drawing is saved, not here.”

Add a rule

  1. Open the drawing in the designer and select a symbol (or nothing, for a rule on every symbol).
  2. Open the Rules tab and select Add rule.
  3. Set Applies to, When and Then (below).
  4. Watch Matching now / Not matching: whether the rule holds for the live data right now. Use the What-if tab to try other values.
  5. Save the drawing.

Each rule reads back in words, for example “For pump1: When Reading of this symbol is above 80, set the state to warning, show ‘High: {value}’”.

Applies to

TargetMeans
A symbolThat symbol, by its id
A connectionA connection by its State from row id
A thing from dataA thing by its id
Every symbol and connection (*)All of them
things:*Every thing placed from data

When

A rule has up to two conditions, joined by And (all hold) or Or (one holds), or Always (no condition).

A condition Reads either:

  • A value of a symbol: This symbol or another one (Of symbol), and Which value: Reading, Second reading, Running, Status, Opening, Speed, Direction, Warning, Critical, Name, Capacity, Mode, Data quality, Alarm acknowledged, Command pending, Command failed, or Another value (advanced)… by its name in the data; or
  • A board parameter.

Comparisons (Is): equal to, not equal to, greater than, greater than or equal to, less than, less than or equal to, between (inclusive), one of (a list, separated by commas), set, not set, true / on, false / off.

Then

EffectValues
StateNo change, Idle, Running, Warning, Critical, Off (passive, nothing flowing)
ColourColours the symbol: its body takes a tint, its outline and lit parts the colour itself
Liquid colourThe fill of a tank or vessel
Passive lookDim it
BlinkNot when the viewer asks for reduced motion or the animation is off
HideConnections that touch a hidden symbol still draw
NameA label of up to 80 characters, with tokens (below)
MediumWhat flows: cold, hot, water or a colour of your own
MotionStop it or Leave it on
ModeAutomatic, Manual (M badge), Local (L badge), In maintenance (wrench), Locked out (padlock), Simulated (S badge)
Data qualityGood, Stale (clock, dimmed), Bad or uncertain (?, dimmed), Lost (cross, faded)
Speed (% of nominal)0 to 400. “0 stands still and keeps its colour; a negative number runs in reverse.”
DirectionForward or Reverse
Alarm acknowledgedNo (pulses until someone acknowledges) or Yes (steady)
Opening (%)A bar along the bottom of a valve, damper, door or blind
Command pending, Command failedA spinner, or a red mark, in the bottom right corner
Move right by, Move down byScene units, -4,000 to 4,000
Size (times its own)0.2 to 4
Turn toA quarter turn
Draw asAnother symbol in the same place. A symbol of a library you do not hold draws a placeholder.

Tokens in a name

TokenPrints
{value}, {value2}The reading and the second reading, with their unit
{condition}What the rule’s condition reads (an on/off reading prints On or Off)
{label}, {id}The symbol’s name and id
{param:name}A board parameter

Order

“Rules run top to bottom; every rule that matches applies, a later rule wins for the same change, and “Stop” ends the rules for that target.” Use Move up and Move down to order them. Stop here means “No later rule applies to this target once this one matched.”

The Problems tab warns about rules that can never show, for example “Rule 4 overrides the colour that rule 2 sets whenever both apply, so rule 2 never shows it”, “Rule 5 never applies: rule 3 always stops pump1 first” and “Rule 2 reads the column flow, which the table does not have, so that condition can never hold”.

Examples

Low level in a tank (target tank1):

WhenThen
Reading of this symbol is less than 20State Warning, Name Low: {value}
Reading of this symbol is less than 5State Critical, Blink Yes, Name Empty: {value}

The second rule comes later, so it wins when both match.

Show a pump in manual (target *): When Mode of this symbol is equal to manual, Mode Manual (M badge).

Hide the standby unit (target pump2): When the board parameter duty is equal to pump1, Hide Yes.

Closed valve (target valve3): When Running of this symbol is false / off, Opening (%) 0 and Colour grey. To show the real opening, connect the valve’s Opening field to the device value on the Views instead.

Old data everywhere (target *, first rule): When Data quality of this symbol is equal to stale, Data quality Stale (clock, dimmed), Stop here.

Rules on 3D views

3D views made from a drawing carry its rules over where they can. A Design, live (3D) card has its own rules too; a rule’s name shows only while Names in the scene is on (“A rule sets a label: turn Labels on in the card settings to show it.”).