KNX Climate heating actuator MDT

Hello,

who knows how I have to configure my MDT heating actuator to use the KNX Climate module?

For me it is not possible, to change temperature.

Background: I found only the function to set a new temp. by 2bytes (e.g. send 23C) or to send 0 or 1 for up/down

1 Like

Hi,

I am too just trying to figure this out. So far the only thing I accomplished is changing the mode. I can change the target temperature, but only in the states developer tool using JSON with the new target temperature. Clicking up or down in the GUI does not work.

I’d like to migrate to home assistant from smarthome.py, but if I can’t figure out even these simple things, maybe I’ll put this on hold for a while. This was so easy in smartyhome.py. Too bad their GUI kind of sucks.

I hope we get a reply from someone who already figured this out.

Cheers!
Michael

To have a slider for “percent” and “temperature” - could be also a solution.

I fail to see how this would help, but I’m new to home assistant. How do you make a slider appear, set its range and send any changes to it to a group address?

It would probably be a better idea to either enhance the existing climate control to better suit to the MDT AKH or to make a new climate control for the MDT. I’m seriously thinking about doing the former.

I’ve solved this currently with manual controls, the result looks like this: image
I probably will create my own mdt knx climate control somewhen later.

@Roemer: How did you create the control? I am a complete beginner with HA. Can you please give me some tips - a few lines of code - to create this control?

tia

@fox: Here’s what I did:

I created some sensors like:

- platform: knx
  name: heating_valve_a
  address: '1/1/1'
  type: 'percent'
- platform: knx
  name: heating_setpoint_comfort_a
  address: '1/1/2'
  type: 'temperature'
- platform: knx
  name: heating_setpoint_a
  address: '1/1/3'
  type: 'temperature'
- platform: knx
  name: heating_mode_a
  address: '1/1/4'

Then input selects and input sliders like:

input_select:
  parent_heating_mode:
    name: Elternzimmer Heizmodus
    options:
     - Komfort
     - Nacht
     - Standby
     - Frostschutz
    initial: Komfort
    icon: mdi:radiator

input_number:
  parent_setpoint_shift:
    name: Elternzimmer Temp.Verschiebung
    initial: 0
    min: -3
    max: 3
    step: 0.5

and then some automations like:

  - alias: Parent Heating Mode
    trigger: 
      platform: state
      entity_id: input_select.parent_heating_mode
    action:
      service: knx.send
      data_template:
        address: 1/1/5
        payload: ['{% if is_state("input_select.parent_heating_mode", "Komfort") %} 1 {% elif is_state("input_select.parent_heating_mode", "Nacht") %} 3 {% elif is_state("input_select.parent_heating_mode", "Standby") %} 2 {% elif is_state("input_select.parent_heating_mode", "Frostschutz") %} 4 {% endif %}']
  - alias: Parent Heating Setpoint Shift
    trigger:
      platform: state
      entity_id: input_number.parent_setpoint_shift
    action:
      service: knx.send
      data_template:
        address: 1/1/6
        payload: [ '{{ ((states.input_number.parent_setpoint_shift.state | float) * 2) | int }}' ]

And then I added all together in a group like:

heating_parents:
  name: Heizung Elternzimmer
  entities:
  - sensor.heating_valve_a
  - sensor.parents_temperature
  - sensor.heating_setpoint_comfort_a
  - sensor.heating_setpoint_a
  - sensor.heating_mode_a
  - input_number.parent_setpoint_shift
  - input_select.parent_heating_mode

That’s basically it in HA, the groups must be created and configured in ETS (Inside) of course. Repeat that for each valve in the heating actuator that you use

2 Likes

@Roemer: Thank you very much, that helped me a lot.

hmmmm :slight_smile:

I would like to bump this thread. Althou my solution still works, it would be nice to have the “new” climate control integrated. Unfortunately I could not make it work with the MDT Heating Actuator. The Target Temperatur in Confort mode is displayed as 23° (but it should actually be 21°) and I cannot adjust the value, nothing happens and after a few seconds, it is set back to 23°. Anyone had more success?
I am currently using the following settings:

climate:
  - platform: knx
    name: office
    temperature_address: '1/4/6'
    target_temperature_state_address: '1/4/15'
    setpoint_shift_address: '1/4/18'
    operation_mode_address: '1/4/17'
    operation_mode_state_address: '1/4/16'
    min_temp: 18
    max_temp: 24

and in KNX, I have the following groups:

1/4/6 - Temparature of my Temperature Sensor in the room
1/4/14 - Status Stellwert (currently unused, shows how many percend open the ventile is)
1/4/15 - Status Sollwert (the current temperature that should be reached, including all shifts)
1/4/16 - Status Betriebsart (The current set operation mode)
1/4/17 - Betriebsart (Setter for the current operation mode)
1/4/18 - Sollwertverschiebung (-128 - 127, should be the setpoint shift)

Thanks for your help.

Are there any log entries form the knx integration?
What is your setpoint shift step in your ETS actuator configuration? In xknx it defaults to 0.5°. see https://www.home-assistant.io/components/climate.knx#setpoint_shift_step

Maybe try setting setpoint_shift_min and _max instead of min_temp and max_temp. Also you can try to set a setpoint_shift_state_address.

I am also trying to setup the climate control with a KNX heating actuator from MDT, and see a similar behavior as described by Roman. The target temperature is actually displayed correctly, but adjusting it does not have any effect, and the value would jump back when the device reports it’s current value next time. Like Roman, i have configured it with setpoint_shift_address. The range of available temperatures is also not limited correctly when i set setpoint_shift_min/max, it always shows the full default range.

It is not clear to me to which KNX objects setpoint_shift_address and setpoint_shift_state_address actually should be routed. The actuator provides 1 bit / step, 1 byte or 2 byte.

Will try to dive deeper into the topic and see what i can find. Roman, did you already get further in the mean time? Thanks for posting your custom solution!

setpoint_shift_address shall receive 1 byte telegrams - DPT 6
setpoint_shift_state_address can be set to the same GA as setpoint_shift_address if there is no dedicated communication object for status.

To my knowledge the min/max limit is a bug in HAs lovelace climate card. It is sent to the webui correctly via websocket but not applied there - on my machine a page reload sets it right.

Yes, i had a look into the xknx code and found that it is number of steps in terms of configured step size (1 byte). I also noticed that target temperature adjustment via setpoint-shift only becomes enabled after the current setpoint-shift value was read the first time, otherwise it would fall back to direct adjustment of target temperature (if the respective address is specified).

The problem in my case seems to be that my MDT actuator does not allow to read the setpoint-shift object, it only receives value changes and also does not transmit the setpoint-shift state on another object. In addition to that, i am running KNX inside and just learned that i can’t set flags on group addresses. So the setpoint-shift adjustment never gets enabled. But setting target temperature directly works.

Oh my, I did not know this limitation of ETS Inside. There are a lot of devices with poorly set factory default flags out there - I hope this will be added sometimes in the future.

I am not able to get things running.
My electrician wired the whole house with KNX and did the initial configuration.

I have two MDT heating actuators but I am not able to do anything regarding the temperature configuration from my home assistant. Everything else (like light and cover management) works like charm.

The KNX config looks like this:

But I am not able to figure out what of these adresses I had to use for target_temperature_state_address.

No matter what I configure nothing happens.
If I use the VISU that my electrician provides (some custom build stuff) I can see that if I change the temperature for example to 27°C an telegram with DPT 9.002 and value 6K is send to 7/0/7.

Any hints how I can integrate the usage of the climate into HA?

hi, i have the same problem the MDT SCN-RT6REG.01 has not DPT 6.010 support for the setpoint_shift_address only DPT 9.002 and via 1bit also the aktor doen’t allow to set the temprature via target_temperature_addres so i think there is no chance to get it running via the native climate integration

i would be very happy if someone is able to integrate the knx-aktor.

Someone already has. But it is still in draft. You would have to clone it and use the xknx custom component - or wait until it gets merged to xknx and integrated in HA. https://github.com/XKNX/xknx/pull/251

1 Like

@farmio Thanks for the link. I have merged the changes to my local installation, and it works fine with DTP9.001, but I think there is another problem, after each restart of the Home Assistant I have to manually change the mode to comfort, standby, night or frost, before I can change the target temperature. If I don’t change from one mode to another the target temperature disappears (see the picture below)
Bildschirmfoto 2020-06-03 um 18.17.08 .

any errors in the logs?