For the complete documentation index, see llms.txt. This page is also available as Markdown.

Tutorial 4 — groups and scenes

Part 2 — Tutorials. Continues the project from Tutorial 3.


What you will build

  • An All lights group, switched off by one long press from anywhere in the flat

  • An Evening scene that sets several lights to different levels at once


Why groups

You can already put several consumers on one wire — drag from a button to three lights and one press switches all three. For two or three devices that is fine.

It stops being fine quickly:

  • Add a fourth light and you must edit every wire that should include it

  • Ten "all off" buttons means ten wires to maintain, each able to drift out of step

  • Nothing in the project says "these lights belong together" — you have to remember

A group is a named thing you define once. Wires point at the group, not at the individual lights. Add a light to the group and every wire that uses it picks up the change — you edit one thing, not twenty.


The four group types

A group holds one kind of object, and the type decides which functions can act on it:

Type
Holds
Controlled by

Digital

digital outputs — relays

GroupDigital_… functions

Analog

analog outputs — dimmers

GroupAnalog_… functions

Alarm

digital inputs

alarm functions

Temperature

temperature objects

You cannot mix relays and dimmers in one group. They take different functions, so they need different groups. An "all lights off" that covers both is two groups and two functions on the same wire — which is exactly what you will build below.


Step 1 — Define the groups

  1. Managers ribbon tab → Group manager.

  2. The left side lists existing groups by name and type. Click Add.

  3. On the right, fill in:

    • Unicate name: ALL_LIGHTS_DIGITAL

    • Type Digital

  4. Click to confirm. It appears in the list on the left.

  5. Click Add again and make a second group:

    • Unicate name: ALL_LIGHTS_ANALOG

    • Type Analog

  6. , then close the Group manager.

"Unicate name" means unique name. It is iDM3's wording, and the name really must be unique — it is how wires refer to the group. Use capitals and underscores to make groups stand out from device names in long dropdown lists.

Groups exist now, but they are empty. Defining a group does not put anything in it.


Step 2 — Put the group on a plan

Groups are filled in visually, so the group needs an icon first.

  1. Switch to the Groups workspace tab.

  2. Go to the Controls ribbon tab and find the Groups category.

  3. Drag a group icon onto the floor plan.

  4. The Select group window opens. Choose ALL_LIGHTS_DIGITAL and click OK.

  5. Drag a second group icon out and assign it ALL_LIGHTS_ANALOG.

Each icon now represents a group. Clicking one shows a settings panel where you can change which group it points at, its layer, and its description.


Step 3 — Fill the groups

  1. Still on the Groups workspace tab, click the ALL_LIGHTS_DIGITAL icon. It turns blue, and every object that can join it becomes selectable.

  2. Click Hallway light. A line appears from the group to it — it is in.

  3. Click Stair light. Also in.

  4. Click the group icon again to finish.

Repeat for ALL_LIGHTS_ANALOG, adding Living room light.

Blue means "I am collecting members". If clicking a light does nothing, the group icon is not active — click it first. If a light refuses to join, it is the wrong type for the group: a dimmer will not go into a Digital group.

Save the project.


Step 4 — One long press, everything off

Now the payoff.

  1. Function workspace tab → Functions ribbon tab → Add connection.

  2. Drag from Hallway button to the ALL_LIGHTS_DIGITAL group icon.

  3. Drag from Hallway button to the ALL_LIGHTS_ANALOG group icon.

  4. Switch Add connection off.

  5. Wire manager → find the first new wire → name it All lights off — digital+:

    • Action: Long down

    • User function: DIGITAL_GROUP_OFF

  6. Select the second wire → name it All lights off — analog+:

    • Action: Long down

    • User function: ANALOG_GROUP_OFF

  7. Close, save, upload.

Hold the hallway button. Everything goes out.

If you already put DIGITAL_OFF on Long down back in Tutorial 2, remove it now — the group function covers that light too, and having both is confusing rather than harmful.

Add the same pair of wires from any other button and that button becomes an "all off" too. The group is defined once; the buttons just point at it.


Step 5 — An evening scene

A scene is several consumers going to different levels at once. There is no "scene" object in iDM3 — a scene is just one actor with several functions on its wires.

Using the Evening button from Tutorial 3:

  1. Add connection → drag Evening buttonLiving room light.

  2. Wire manager → name it Evening — living room+:

    • Action: Short down

    • User function: ANALOG_SET_LEVEL_25

  3. Add connection → drag Evening buttonHallway light.

  4. Name it Evening — hallway+:

    • Action: Short down

    • User function: DIGITAL_ON

  5. Add connection → drag Evening buttonStair light.

  6. Name it Evening — stair+:

    • Action: Short down

    • User function: DIGITAL_OFF

  7. Close, save, upload.

One press: living room to 25 %, hallway on, stair light off.

Scenes use individual wires, not groups — precisely because each consumer needs a different level. Use a group when everything does the same thing; use separate wires when they do different things.


The group functions

Every ordinary function has a group counterpart. They behave identically, but act on all members.

Group function names look raw, and that is normal. The English translations for the group functions are missing in 3.5.3, so the dropdown shows internal names like GroupDigital_SwitchOn instead of "Group digital switch ON". Nothing is wrong — that is simply what is on screen.

Digital groups:

Function
Parameters

GroupDigital_SwitchOn / OFF

GroupDigital_SwitchValue

GroupDigital_DelaySwitchOn / _DelaySwitchOff / _DelaySwitchValue

delay

GroupDigital_Impulse / _Impulse_ON / _Impulse_OFF

delay, impulse time

GroupDigital_Copy

Analog groups:

Function
Parameters

GroupAnalog_SwitchOn / OFF / value

GroupAnalog_DelaySwitchOn / _DelaySwitchOff / _DelaySwitchValue

delay

GroupAnalog_SwitchOnWRamp / GroupAnalog_SwitchOffWRamp

delay, ramp length

GroupAnalog_SwitchOnWAutoOff

switch OFF over

GroupAnalog_SetLevel / GroupAnalog_SetLevelWRamp

value %, ramp length

GroupAnalog_StopChangingLevel

GroupAnalog_Copy

Ready-made in the default project:

DIGITAL_GROUP_ON · DIGITAL_GROUP_OFF · DIGITAL_GROUP_SWITCH · ANALOG_GROUP_ON · ANALOG_GROUP_OFF · ANALOG_GROUP_SWITCH · ANALOG_GROUP_BRIGHTEN · ANALOG_GROUP_DIM · ANALOG_GROUP_STOP_LEVEL_CHANGE

GroupDigital_SwitchValue toggles the whole group together, based on the group's state — not each light against its own state. Mixed states resolve to one outcome for everyone.


How many groups?

Groups are cheap and clarity is not. On a real house, most installers define:

Group
Type
Purpose

ALL_LIGHTS_DIGITAL / _ANALOG

Digital / Analog

the master off

One per room

as needed

"leave the room" buttons

One per floor

as needed

"going to bed"

OUTSIDE_LIGHTS

Digital

dusk and dawn control

Preferences ([☰]Prefernces) shows Groups count against the project maximum. Keep an eye on it in large projects — see Chapter 27.


What you learned

  • A group is defined once and referenced by many wires — change the group, not the wires

  • Group type must match what it holds; relays and dimmers need separate groups

  • Define in Group manager, fill on the Groups workspace tab by clicking the blue icon

  • Every function has a Group… counterpart

  • Groups = everything does the same thing · scenes = separate wires, different levels


Try this before moving on

  1. Make a LIVING_ROOM group and wire a room button to switch just that room off.

  2. Add a light to ALL_LIGHTS_DIGITAL and confirm the "all off" wire picks it up with no wire edits at all. That is the whole point of groups.

  3. Build a "welcome home" scene on a long press of the evening button.


Next: Chapter 9 — Tutorial 5: blinds and shutters.