View as Markdown

Variables

A Variable is a typed, named data point. It either comes from a Device (a Device Variable) or is calculated from other Variables (a Virtual Variable). Variables back every Dashboard widget, every Alarm condition, and every historical query.

Overview

A Variable has a data type (Number, String, or Boolean), an optional unit, and a Store Data setting that decides whether history is retained. When storage is on, every value the Variable reports is kept as a timestamped point in the time-series store; when it is off, live values still flow through the platform but nothing is saved for later.

You read Variables through Dashboards, Platform Explorer, the API, and CSV/JSON export. You write them either by publishing from a Device or by defining a Virtual Variable expression. Variables are also the layer that Assets are built from: the Platform Overview walks through an example where five variables from one controller combine into a boiler and a pump asset.

Device Variables

Device Variables belong to a Device and receive the values it publishes on a topic property. They typically hold sensor readings (temperature, voltage, pressure), device state (running or stopped, mode), diagnostic values (signal strength, error counts), or current configuration values.

They live on the Variables tab of the device. The table shows each variable's name, current value, topic property and flags. From here, the row menu edits a variable, toggles logging, opens it in Platform Explorer, sends a test value, or deletes it, and variables can be grouped into folders and exported.

The Variables tab of a device in ControlCom Connect listing named data points with their values and topic properties
The Variables tab of a device: every data point the device publishes, with its current value

Creating a Variable

On the device's Variables tab, click New Variable. The dialog asks for the Variable Name, an optional Description, the Topic Property path the Device publishes on, and the Type (Number, String, or Boolean). Enable the Store Data toggle if you want historical values available in the Visualize stage; without it, live data still arrives but is not saved. Click Add Variable to finish.

The New Variable dialog in ControlCom Connect with name, description, topic property path and the Store Data toggle filled in
The New Variable dialog: name, topic property path, type, and the Store Data toggle

To register many data points at once, use Import on the same tab instead of creating them one by one. It opens an import page where you upload a CSV file; the guidelines on the page link a sample file showing the required format, the list of accepted units, and the folder ids for placing imported variables into folders.

The variables import page in ControlCom Connect with a CSV upload dropzone and import guidelines
Importing variables from a CSV file

The Creating a Variable guide walks through this flow in the context of an Edge Server setup, where the variable's topic property becomes the target a Modbus, BACnet or OPC UA tag writes into.

Virtual Variables

A Virtual Variable is computed from one or more source Variables using an expression, and behaves like any other Variable afterwards: it can be stored, charted, and alarmed on. Virtual Variables have their own list in the sidebar, separate from any single Device, because their sources can span Devices.

To create one, give it a name, a data type and an optional unit, then write the expression and pick the source Variables it references. The expression language supports:

CategoryOperators / functions
Arithmetic+, -, *, /
Mathmin, max, avg, sum
Conditionalif / then / else
Time-seriestimeShift, movingAverage
Stringconcat, substring
Booleanand, or, not

Common patterns are aggregating across Devices, converting units, deriving thresholds (a Boolean indicator from a numeric reading), and filtering out invalid values. The Expression Editor reference covers the language in detail.

Configuration

FieldApplies toNotes
NamebothHuman-readable identifier.
DescriptionbothOptional.
Data TypebothNumber, String, Boolean.
UnitnumericOptional.
Topic PropertyDevice VariablesTopic path the Device publishes on.
Short IDbothOptional abbreviated identifier.
Store DatabothIf on, history is retained.
ScalingnumericMultiplier and offset applied to incoming values.
ValidationnumericAccepted range.
FilteringnumericOutlier rejection.
DeadbandnumericOnly log changes exceeding the threshold.

Data type and unit are set at configuration time. Changing them later is allowed, but downstream Dashboards and Alarms may need to be re-checked.

Historical Data

When Store Data is on, the platform stores time-series points keyed by timestamp; retention depends on the subscription plan. You can query at two resolutions: raw, every individual value as received, or aggregated, bucketed by an interval (1 minute, 1 hour, 1 day, and so on) with an aggregation function (avg, min, max, sum, count, first, last).

The stored history feeds Dashboards for visual trends, Platform Explorer for interactive analysis, Reports for scheduled or on-demand summaries, and the API and CSV/JSON export for downstream tools.

Guides

Sending Data

Learn how to send data to ControlCom Connect using MQTT or HTTP.

Read more

MQTT Integration

Send data to ControlCom Connect using the MQTT protocol.

Read more

HTTP Integration

Send data to ControlCom Connect using the HTTP API.

Read more

Node-RED Integration

Connect your devices to ControlCom Connect using Node-RED.

Read more

Was this page helpful?