Overview Project settings - Project generator

The project generator derives a room structure from the group addresses of a project on its own and creates function blocks, visualisation pages and the navigation from it. It works exclusively on the addresses already present - the generator never creates group addresses itself, and it never overwrites any.

The assistant guides you through five steps. What it derives from the addresses is deliberately only a proposal: it is reviewed and adjusted in the third step before anything is created.

Step 1 - Source

Shows how many KNX group addresses the project contains. Internal variables created by function blocks themselves are neither counted nor evaluated later on.

Step 2 - Rule set

The rule set determines how the names of the main, middle and sub groups turn into a structure. It belongs to the project and is stored with it. A set of default rules covering the common naming conventions is included.

Every rule consists of six entries:

The available targets under "Results in":

The priority controls the order: the smaller number is applied first. For each target the first match wins. More specific rules therefore need a smaller number than general ones - a rule for "setpoint" has to come before the rule for "value", otherwise the setpoint is recognised as a plain value.

Pattern and value must contain neither the character # nor a line break, because both serve as separators in the stored rule list. Such an entry is reported when you confirm the dialog.

Step 3 - Review and adjust the proposal

The addresses and the rule set produce a tree of floors, rooms, elements and addresses. The "Rule" column shows for every entry which rule created it - this makes it possible to retrace why an address was assigned to a particular room.

This step is mandatory. Nothing is created until the tree is correct.

Addresses for which no rule matched are not lost: they appear under "Not assigned" and can be dragged into the correct room from there, or deselected. Elements without an assigned block type are shown but cannot be selected.

With very many addresses, the elements of a room are loaded only when the room is expanded. This keeps the tree responsive even in large projects.

Step 4 - Preview

Summarises how many floors, rooms, function blocks and pages will be created, followed by a listing per room. If the project already contains pages with the same room names, this is reported here.

Step 5 - Create

For every room a page with the function blocks is created, plus one visualisation page per selected orientation holding the control elements, together with header and footer, the overview pages and the navigation. Every control element is linked to its function block, and the group addresses are assigned to the inputs and outputs.

Progress and all messages appear in the log. If a room does not fit on one page, a follow-up page is created automatically.

Every function block carries its address designation as its heading - the device identifier plus the plain text in brackets, for example "LDA.05.01.1 (Entree)". The block therefore shows the same identifier as the group addresses attached to it. Where the installation follows no naming scheme, the block carries the caption of the element instead ("Licht dimmen Küche").

The icon on the left of the header leads one level up: from the room page to the overview of its floor and from there to the start page. Only the topmost page carries no such icon.

If the same room name occurs on several floors - "bathroom" on the ground floor and on the upper floor, for instance - the floor name is put in front of the page name. Without that both would point to pages of the same name and the second room would be lost.

Recommended naming of the group addresses

The generator can only assign what the names contain. The naming below is fully recognised by the supplied default rules. It is not mandatory - every rule can be changed - but it is the shortest path to a proposal that needs no rework.

The scheme in one line

trade . floor . room . device _ function    ( plain-text name )

Examples:

The four parts before the underscore are the identifier of the device. All addresses sharing an identifier end up on one block: "_ea", "_dimm" and "_wert" of "LDA.05.03.1" belong to a single luminaire. The abbreviation counts as part of it - "M.05.04.1" (awning) and "JS.05.04.1" (vertical awning) are two different devices even though both carry the number 1. A device therefore has to carry the same abbreviation in all of its addresses; writing "LD" once and "LDA" another time produces two elements.

What belongs where

Abbreviations for the trade

The abbreviation comes first and ends with a dot.

Without an abbreviation, the name of the middle group is used instead (Dimm, Jalousie, Storen, Raffstore, Rollo, Markise, Beschattung, Heizung, Licht, Beleuchtung, Steckdose, Schalten).

Endings for the function

The ending follows an underscore at the end of the name, before the bracket text.

Feedback addresses

A feedback address is recognised in two ways: by the ending _status, _fb or _rm at the end of the name, or by the address living in a middle group whose name contains "Status" or "Rückmeldung". The generator then turns the function into the matching feedback:

The order within the name matters: the addition belongs after the base function. "_wert_status" is recognised as the feedback of the value, "_status_wert" is not.

Up/down, step/stop and the temperatures have no feedback. Such an address appears in the tree but is not assigned to any input.

Where the room name comes from

In the scheme the room is just a number at first. The generator takes its plain-text name from the round brackets - from all addresses of the room:

Several identical devices in one room

They are told apart by the device number in the scheme (01, 02, 03). The name of the device comes from the bracket text just like the room name, here from the brackets of this one device. If a point of the compass ends the room name - "Küche Süd", "Küche West" - this becomes one room "Küche" holding two devices that keep the direction in their names.

What does not work

Notes