Skip to main content

MQTT Reference

Base Topic

/devices/{client-name}/

Where {client-name} is the Client name field from MQTT settings (Network → MQTT), lowercased. For example, with device name Scalior-SLC-BAA5 the base topic is /devices/scalior-slc-baa5/.

The controller uses the Wirenboard convention: the base control topic is a read-only state, the /on suffix is the command topic.

/devices/{client-name}/controls/<Control><X> → state, published by the controller
/devices/{client-name}/controls/<Control><X>/on → command, the controller is subscribed to it

<X> is the flight: M (Master) or 14.


Which topics get published

Determined by the Expose topics setting (Network → MQTT): checked flights (and/or "M") get their topics, the rest don't.

<Control>DirectionValuesHas a Master (M) topic
Switchpub / sub0 / 1yes
Standbypub / sub0 / 1yes
Sensorspub / sub0 / 1yes
Brightnesspub / sub0100yes
UpperSenspub / sub0 / 1only with a single flight
BottomSenspub / sub0 / 1only with a single flight

With more than one flight, there is no separate UpperSensM/BottomSensM topic. The "M" checkbox in Expose topics then means "publish sensors for every flight" rather than a shared topic — sensor state always comes from a specific flight (UpperSens1, UpperSens2, ...).

In addition to the per-flight topics, the following are always published regardless of the Expose topics setting:

TopicValuesDescription
controls/VersionstringCurrent firmware version (from the OTA manifest)
controls/Uptimenumber, secondsUptime, updated every 60 seconds
controls/Illuminance0255Light sensor reading (if enabled)
controls/LightSensorState0 / 1 / 20=disabled, 1=bright, 2=dark

Command Examples

Turn on flight 1

Topic: /devices/scalior-slc-baa5/controls/Switch1/on
Payload: 1

Set Master brightness to 75%

(available only on single-flight setups, where everything uses M)

Topic: /devices/scalior-slc-baa5/controls/BrightnessM/on
Payload: 75

Enable standby mode for flight 2

Topic: /devices/scalior-slc-baa5/controls/Standby2/on
Payload: 1

Disable motion sensors for flight 1

Topic: /devices/scalior-slc-baa5/controls/Sensors1/on
Payload: 0

Commands must be published to the /on topic — the base topic (without /on) is read-only, the controller does not process writes to it.


Metadata (Wirenboard convention, retained)

/devices/{client-name}/meta → device description
/devices/{client-name}/meta/name → "Scalior SLC"
/devices/{client-name}/meta/driver → "scalior"
/devices/{client-name}/controls/<Control><X>/meta → description of a specific control

These topics are used, among others, by hubs like ioBroker — see Smart Home Integrations.


Home Assistant MQTT Discovery

With the Home Assistant Discovery toggle enabled, the controller publishes entity configuration to homeassistant/<type>/<uid>/config on every broker connection — nothing needs to be added to configuration.yaml manually. Step-by-step guide: Smart Home Integrations.


Quality of Service (QoS) and retain

QoSRetain
All topics except Uptime1yes
controls/Uptime0yes

Subscriptions to command (/on) topics also use QoS 1.