KNX Climate, inverted Heat/Cool switching needed


as per the docs the climate control expects the a 0 value for cooling and a 1 for heating from the heat_cool_address and heat_cool_state_address.
Unfortunately my KNX room controller (Elsner AQS TH-B-UP) is expecting the exact opposite (0 for heating and 1 for cooling) and doesn’t have an option to invert it.

What is the correct way to deal with that in Home Assistant or is that even an option (similar to the on_off_invert one) missing in the KNX climate control of Home Assistant / xknx?

there is no “correct” way. You can invert it with any knx logic (many wall switches etc. provide such). Or do it with HA - use a binary_sensor and the expose function or knx_event with knx.send in an automation.

Thx, had the wrokaround with KNX logic in mind as well and ended up doing it that way now. Still think would be less hassle if HA would have a inverted option :slight_smile:

It didn’t come up until now. We didn’t add invert options to every single binary function so configuration isn’t further bloated (too late anyway imho 🥸📖)

Knx specifications actually define 0/1 for cool/heat and most manufacturers seem to respect that. It can really help to call the manufacturer and tell them - they can account for this in an application update eventually. I’ve had success with things like this multiple times now (but consider timeframes of months to years until fix :hourglass_flowing_sand:)

Thx, great callout and fully agree with not adding it as HA is following the standards here. Will contact the vendor, don’t think chances are good they fix it though given the devices is 8 years old now and EOL. Also a bit surprised that this was approved by the KNX Association as I was always under the impression they verify devices and the software is complying with their standards.


I got the same issue with elsner eTR 101 room temperature controler yesterday, but there is option in configuration to switch these values
cool heat must be like this:

onoff like this:

Both have to be changed comparing to default values.
Maybe your device also has that options.