KNX climate: target temperature state address ruins my climate sensors

Hi all,

I’ve been running my HA + KNX installation up until recently on some version of 2023. Upgrading to the current HA version (2024.5.5) and my climate sensors are no longer working, hence I cannot read the current temperatures from my sensors.

As I have read the KNX integration changed somewhere around 2024.2 so that the attribute climate target_temperature_state_address is no longer optional in the configuration.

As of now I was only collecting the temperatures via KNX from my room-sensors / button switch (GIRA Tastsensor 3 komfort 2fach 1+1) and sending an on / off command to my valve to open / close depending on a logic I build within HA.
This logic is very basic as it basically opens the valve when the target temparature (which is a simple numeric helper with HA) below the measured current temperature (provided by KNX). This logic was working fine all along up until now.

In general (but also in KNX) i have the following setup:

  1. A button switch (GIRA Tastsensor 3 komfort 2fach 1+1 ; middle part of screenshot) which turns the light on / off with the upper rocker switch and controls the cover with the lower switch. This can be seen in the attached screenshot. As you can see there is a “Raumtemperatur-Messung” on channel 64 which is the current temperature from that sensor sending to GA 4/2/2. This GA is what I’ve been reading all along!

  2. There are several group addresses defined around temperatures (see lower part of screen) but only “Ist-Temperatur” (GA 4/2/2) is mapped to the above mentioned switch.

  3. “Stellgröße” (GA 4/2/1) is the actual switch to open / close the valve. This one is mapped to my heating actuator (see upper part of the screen) as all the other rooms / valves are.

my current configuration.yaml looks like this and has been working up until 2024.2

knx:
  climate:
  - name: 'Temperatur Arbeitszimmer'
	temperature_address: "4/2/2"

As described only GAs 4/2/1 and 4/2/2 have been relevant for me up until now. I have predefined GAs which are not mapped to any device which should serve as target temperature (GAs 4/2/3 and 4/2/4). I was trying to map those to either the heating actuator or the switch itself but there is no attribute I could map it to. I checked the available properties of both devices and there is nothing which might help. I can only activate / deactivate the measurement of the temperature on my switch, but that activates / deactivates channel 64. No new channels (like “target temperature”) appear, hence I cannot map the GAs 4/2/3 and 4/2/4 to anything.

I tried providing different constellation of GAs to the attribute target_temperature_state_address but the climate sensor returns no values, hence is not available, hence I cannot run my heating properly.
Here’s two examples which didn’t work:

knx:
  climate:
	- name: 'Temperatur Arbeitszimmer'
      temperature_address: "4/2/2"
#  target_temperature_address: "4/2/2"
	  target_temperature_state_address: "4/2/3"
knx:
  climate:
	- name: 'Temperatur Arbeitszimmer'
      temperature_address: "4/2/2"
      target_temperature_address: "4/2/3"
	  target_temperature_state_address: "4/2/4"

So now the following questions arise:

  1. Is there an easy fix to provide the attribute target_temperature_state_address and just send it somewhere? I don’t need that for my logic of heating. I tried some GAs which are not used (4/7/7) but that didn’t work.
  2. If not: where can I map the GAs 4/2/3 and 4/2/4 so they become “real” and send values to them. I cannot map them to the heating actuator itself nor the switch. Where can I define / map those GAs? To which device?
  3. would it be possible to simple knx.read the value of GA 4/2/2 (hence my switch collecting the current temperatures) and paste it into a helper which then shows the current value?

I happy to hear from you guys! Thanks!

Hi :wave:!
This should be a sensor with type: temperature.

Hey there,

thanks for your support, but are you sure?

There is no type of temperature sensor within KNX (see: KNX - Home Assistant).

I receive the error-message:
Invalid config for ‘knx’ at configuration.yaml, line 44: ‘temperature’ is an invalid option for ‘knx’, check: knx->temperature

This is my exact code:

knx:
#  tunneling:
#    host: 192.168.178.9
#    port: 3671
#    local_ip: 192.168.178.11
  light: !include knx_light.yaml
  cover: !include knx_cover.yaml
#  climate: !include knx_climate.yaml
  switch: !include knx_switch.yaml
  temperature:
  - name: 'Temperatur Arbeitszimmer'
    temperature_address: "4/2/2"

This is what I meant

knx:
  sensor:
    - name: 'Temperatur Arbeitszimmer'
      state_address: "4/2/2"
      type: temperature
      state_class: measurement
1 Like

This is the way I could retrieve the data as a sensor:

knx:
  sensor:
    - name: 'Temperatur Arbeitszimmer'
      state_address: "4/2/2"
      sync_state: every 60
      type: temperature
      state_class: measurement

This solved the issue for me! Thanks buddy!