Climate HVAC Modes with KNX Integration

Yes this is exactly a DPT 20.102 in my KNX Thermostat, but its’ not clear to me what is the best way to manage it in HA and if there is any possibility to map/remap the HA preset to my wording in a HA climate card.

Use its GA in operation_mode_address or operation_mode_state_address.

See https://www.home-assistant.io/integrations/knx/#climate all available options, their DPTs and their mappings are documented.

I find the mapping that has been used from DPT 20.102 to Home Assistant climate presets not correct.
DPT 20.102 has:
0 - Auto
1 - Comfort
2 - Standby
3 - Economy
4 - Building protection
And the current used mapping is:
0 → None
1 → Comfort
2 → Away (whatever that means in a climate context - being away from the climate area?)
3 → Sleep
4 → Eco
Comfort and Sleep are correct. But mode 2 is a mode where it is a bit less comfort and less energy used. So it is usally called “Economy” or “PreComfort” on several KNX thermostats. Setting to Away is at least misleading to me.
Mode 4 is also something which is considered as “Off” in most KNX thermostats. Build protection sets very low/high limits (7C for heating, 35C for cooling for example) so it is almost “Off” state. Setting it to “eco” makes no sense at all.
Where can I correctly report this so devs can see it?

1 Like

What is your proposal to map these differently?
And does it really justify introducing a breaking change to all users?

1 Like

I understand that changing the mapping will change the behavior of current installations (even mine) so it is not a good idea. However, displaying “eco” for an option that is similar to Off (Building protection) is not nice. So my proposal is to be able to change those strings and their display order to whatever you like. Under the hood (for automations) the names can stay what they are, but we need a way to change the display of those values to strings that are appropriate for this type of installation.

1 Like

That is not possible, unfortunately. It’s part of HAs climate entity model.

I know this is a reply to an old theme, but I have exactly the same behaviour with my KNX Merten Multi-Touch Pro.

Whenever I set HA to “2 - Away”, the Merten KNX Controller goes to “2 - Standby”.
When setting HA to “4 - Eco”, then the Merten KNX Controller goes to “4 - Building Protection”

Very confusing for Users in our Building…

I was wondering if you ever found a workaround for this issue in your environment?

Cheers
markus

Hi,

I (almost) have the climate control working.

I am using this Zennio KLIC-DI v2 Daikin KNX air conditioner controller module.

The following is my HA KNX integration code:

climate:
      - name: "G080 Master Bedroom"

        #switching aircon on and off is working
        on_off_address: "2/0/0"
        on_off_state_address: "2/0/4"

        #current internal temperature is working
        temperature_address: "2/0/8"

        #set target temperature is working
        target_temperature_address: "2/0/1"
        target_temperature_state_address: "2/0/5" #

        #cannot sync the havoc mode between KNX and HA? also no fans shown up
        #the mode from the KLIC-DI module I am getting is 0=Auto, 1=Heating, 3=Cooling, 9=Fan, 14=Dry Heating
        #and for fan 1 byte 0-33%min, 34-67%Mid, >68% Max
        #operation_mode_address: "2/0/2"
        #operation_mode_state_address: "2/0/6"
        controller_mode_address: "2/0/2"
        controller_mode_state_address: "2/0/6"

        #min and max temperature is working with step 0.5
        min_temp: 17.0
        max_temp: 27.0
        temperature_step: 0.5

I can switch the aircon unit on and off, and change the target temperature, and read the current temperature from the aircon machine.

When changing between the havac modes the controller on HA side does the job, however, I cannot change from cooling to heating on the controller side within KNX and get the states in HA and vice versa.

Also I struggle to implement the three modes for fan speed.

I have commented in the code above what settings the controller requires.

Can someone please help with advise?

Thanks
Martin

I have added the following:

controller_modes:
   - "Auto"           # KNX 0 KNX which appears in the KNXGroup Monitor as 0x00
   - "Heat"           # KNX 1 KNX which appears in the KNXGroup Monitor as 0x03
   - "Cool"           # KNX 3 KNX which appears in the KNXGroup Monitor as 0x08
   - "Fan only"     # KNX 9 KNX which appears in the KNXGroup Monitor as 0x17

but it seems the values that the controller wants/sets are not the same that the climate control on HA wants/sets.

When I go to developer tools/states I am getting the following:

hvac_modes:
  - fan_only
  - auto
  - "off"
  - heat
  - cool
min_temp: 17
max_temp: 27
target_temp_step: 0.5
current_temperature: 20.2
temperature: 23
hvac_action: cooling
friendly_name: G080 Master Bedroom
supported_features: 385

So basically what I think I need is to tell the KNX climate integration that the following HAVAC modes need to be used:

  • “Auto” # KNX 0 KNX which appears in the KNXGroup Monitor as 0x00
  • “Heat” # KNX 1 KNX which appears in the KNXGroup Monitor as 0x03
  • “Cool” # KNX 3 KNX which appears in the KNXGroup Monitor as 0x08
  • “Fan only” # KNX 9 KNX which appears in the KNXGroup Monitor as 0x17

I don’t understand how that can be done?

And lastly, I have group address 2/0/3 (Data Type 5.001 percentage) as set fan speed and GA 2/0/7 as fan status and the controller uses 0-33%min, 34-67%Mid, >68% Max so how do I translate this into HA fan speed language?
Thanks
Martin

1 Like

I found a post saying there is a workaroud with nodered programming, but i do not have any idea on how.

I actually found the mistake after all - sorry for not posting it earlier.

In KNX, on the one AC actuator, the HAVAC mode was not correctly set (ie the correct data type in KNX) to 20.105.

With regards to the fan, that is not part of the integration yet.

Options around is a seperate fan control, and then use custom button to implement.

Alternatively, doing a FR on the KNX integration.

I have knx system set up by the service provider, and do not have the access to the knx project file. It sounds to me that the only possible way I can try is having the service provider to set the data type to 20.105.

If you pay the service provider it should provide the KNX project file to be used with ETS.

Am I right in KNX for HA there is no swing control for the air conditioner and no silent mode either ?
So they have to be added as separate switches ?

I also have Daikin but via Zennio KLIC-DD v3

I have this configuration

  - name: "Кондиционер кабинет"
    temperature_address: "2/1/45"
    target_temperature_address: "2/1/35"
    target_temperature_state_address: "2/1/36"
    on_off_address: "2/1/33"
    on_off_state_address: "2/1/34"
    fan_speed_address: 2/1/39
    fan_speed_state_address: 2/1/40
    controller_mode_address: 2/1/37
    controller_mode_state_address: 2/1/38
    fan_max_step: 5   
    operation_mode_comfort_address: 2/1/50
    min_temp: 18
    max_temp: 33
    temperature_step: 0.5

and I can not understand why the maximum temperature is sometimes not allowed, for example I set in the application temperature 33 when the cooling mode is enabled it is displayed in HA
And if I change the temperature in HA to say 32, it becomes 30 and above 30 it cannot be set in HA.
It is clear that no one sets the temperature to 33 for cooling, but why do daikin apps on smartphone and HA work differently ?