KNX using free group address system


I found many examples with the 3-tier style of knx group addresses like {knx=“6/1/1+<5/1/51”}

How do I have to configure the items to get it working with the free style group address system like {knx=“35+<36”}

Thank yout very much in advance.

afaik ETS does only provide 3-tier and 2-tier style. There are some free to use programs to calculate the one from the other, as this is only a display feature.

they already introduced the free-level style group addressing in ETS4 and is working at my home with the trial version of ETS5. So the following is valid:
3 tier: 1/1/1
2 tier 1/1
1 tier: 1

So either the binding does not accept 1-tier group addresses or there is a valid configuration for the binding in openhab

No, openHAB does only provide 3 tier, and this is only a display feature :slight_smile:

3 tier: 0-31/0-7/0-255 ( 5 / 3 / 8 Bits)
2 tier 0-31/0-2047 ( 5 / 11 Bits)
1 tier 0-65537 ( 16 Bits)

So in fact,

  • 1/1/1 -> 00001/001/0000 0001 is equal to
  • 1/257 -> 00001/001 0000 0001 and equal to
  • 02305 -> 0000 1001 0000 0001 (if I did the calculation correct :wink: )

ok, so it means I have to translate “36” into binary ind insert it into {knx=“x+<y”} ?

for address 36 and 37?

No, openHAB does only provide 3 tier, so the GA is

0/0/36 and 0/0/37

and with knx1(!) the item would be like

Switch myKNXswitch "Switch [%s]" {knx="0/0/36+<0/0/37"}

while with knx2 you would have to define a device channel and link this channel to the item.

thank you very much :slight_smile:

You’re welcome :slight_smile:

my little python helper to transform 1 tier group addresses to 3-tier:

print(‘From Free Address Style to 3-Tier Style - enter ’ + ‘q’ + ’ to quit’)
while True:
text = input("Free Address e.g. 4610: ")

if text =='q':
text =format(int(text),'016b')
output = [str(int(text[:5],2)), str(int(text[5:8],2)), str(int(text[8:],2)) ]

print(output[0] + "/" + output[1] + "/" + output[2])

OK, good to find this Information after almost one day of debugging my configuration.
KNX 1 Binding had support for this format. How can a user find out about a missing support in the successor version? Even a Trace of “calimero” and “org.openhab.binding.knx” does not give any indication on a missing support for 1 tier addressing. I just got:

20:43:01.741 [DEBUG] [x.internal.handler.DeviceThingHandler] - None of the configured GAs on channel 'knx:device:bridge:generic:Light' could handle the command 'ON' of type 'OnOffType'

Please add some warnings into the documentation or just add support for this stuff.
Now I know the Issue, but for others it might be as frustrating as it was for me.

Thanks a lot,

just for the new user to this road of wonders (and to make it crystal clear, because I did not understand Udo´s explanation to my problem immediately :wink:

1 tier address 1 must be entered as 0/0/1
1 tier address 2 must be entered as 0/0/2

1 tier address 255 must be entered as 0/0/255
1 tier address 256 as the next address in sequence must be entered as 0/1/10
and for the next, you can use my python program

now free style ga addresses are supported: