Cluster
A Cluster block shows a fixed list of Domoticz devices as individual rows in one block. It has three row types, chosen once when the cluster is created (a single cluster is never a mix of them):
Switch (the default): each row has its own on/off toggle. Unlike a Group, which shows one combined status and switches every member device to the same new state together, each row in a Cluster switches only its own device.
Temperature: each row instead shows that device’s own temperature reading, with no toggle.
Other: each row shows that device’s own value (for example a humidity, wind, lux or energy reading), with no toggle. This is for every device that is neither a switch nor a temperature reading.
Added via the Screen Editor’s “Add items” menu -> Cluster, by picking
devices from the same device list used to add a normal device. The row type
buttons filter that list to match: Switch to devices with a genuine on/off
state (Domoticz’s On/Off and Dimmer switch types - a cluster row is
only ever a simple toggle, so a Dimmer behaves exactly like a plain switch
here, with no brightness slider), Temperature to plain temperature-reporting
devices (Domoticz Type Temp, or one of the Temp+Humidity/Baro combo
types), Other to every remaining device: anything without a Domoticz switch
type that is not a temperature reading. Switching row type
clears any devices already picked, since the two device sets don’t overlap -
row type can only be set while creating a cluster; once it has been saved
with devices, the buttons are locked.
Each row’s name defaults to that device’s own Domoticz name, but can be overridden per row in either popup - the same as a normal device’s own Title field when adding a device.
Block parameters
Parameter |
Description |
|---|---|
width |
|
title |
|
icon |
Defines the icon for this block, choose from: https://fontawesome.com/icons?d=gallery&m=free
'fas fa-list-check' |
devices |
Domoticz device id’s shown as rows in this cluster (required, at least one)
[ 1, 3, 5]: Devices 1, 3 and 5 are each shown as their own row |
titles |
Optional: overrides a row’s displayed name (the device’s own
Domoticz name is used when absent).
{ 12: 'Ceiling light' }: Device 12’s row shows “Ceiling light” |
mode |
Optional:
'temperature' switches every row to a plain
temperature reading instead of a toggle, 'other' to the device’s
own value. Absent (the default) means Switch rows.'temperature' or 'other' |
usage |
Switch mode only. Optional: maps a device’s own idx to a companion
Domoticz device that reports its power consumption, shown next to
that row. Many switches (Shelly/Zigbee2MQTT/Sonoff plugs, etc.)
report their wattage through a separate Domoticz device (Type
Usage, or Type General with SubType kWh) rather than a
field on the switch itself - there is no reliable idx relationship
between the two, so this is picked per row in the Cluster popup
rather than auto-detected.{ 12: 13 }: Device 12’s row also shows device 13’s consumption |
icons |
Optional: shows an icon in front of a row’s name, like the rows of
the HP iLO widget. Maps a device’s own idx to
'auto' (an icon
derived from the device’s type) or to a Font Awesome class. Rows
without an entry show no icon.{ 12: 'auto', 13: 'fas fa-fan' } |
fontSize |
Optional: font size of the whole cluster in pixels (
8-60),
like the font size setting of the HP iLO widget. Absent (the
default) means the normal size.22: Rows and title render at 22px |
switchScale |
Switch mode only. Optional: a scale factor (
0.3-3) resizing
the on/off toggle. Absent (the default) means the normal size.1.5: Toggles render at 150% size |
template |
Optional: layout of the icon/title relative to the rows. Defaults to
1 (icon and title in their own header row, rows below spanning
the block’s full width). Set to 0 for the classic layout, with
the icon in a column beside the rows for the whole block height.0: Icon beside the rows instead of above them |
Example
A switch cluster:
blocks['mycluster'] = {
type: 'cluster',
title: 'Living room lights',
devices: [12, 14, 16],
titles: { 12: 'Ceiling light' },
usage: { 12: 13 },
switchScale: 1.5
}
A temperature cluster:
blocks['mytempcluster'] = {
type: 'cluster',
title: 'Room temperatures',
mode: 'temperature',
devices: [21, 22, 23]
}
A cluster with other values (humidity, wind, …):
blocks['myothercluster'] = {
type: 'cluster',
title: 'Sensors',
mode: 'other',
devices: [31, 32, 33]
}