Zehnder ComfoConnect component

how can you controll it?
In the documentation i only see sensors for HA?

You can make an automation like this:


The trigger and conditions should be blank (delete the default empty trigger).

You can make 3 automations like this. For the speed settings they differ as follows:
Speed 1 = low
Speed 2 = medium
Speed 3 = high

In the lovelace interface you can create a button, for example like this:


type: button
tap_action:
  action: call-service
  service: automation.trigger
  service_data: {}
  target:
    entity_id: automation.comfoairq_stand_1
name: Stand 1
show_state: false
icon: mdi:fan-speed-1
show_name: true

And the away setting is actually off:

.

As far as I understand on fora data it is not possible to trigger the boost.

2 Likes

I’m trying to visualise the current speed setting of the Q600 unit we have. Home assistant does know the setting because it is visible if I click the fan entity:Screenshot 2021-08-15 at 17.07.20
But how do I abstract the current speed setting to highlight current setting in a lovelace card?

edit:
Managed to make a template sensor:

- platform: template
  sensors:
    comfoairq_stand:
      friendly_name: "WTW instelling"
      value_template: "{{ state_attr('fan.comfoairq', 'speed') }}"

anybody who ceated a nice UI card for ventilation units?

is there a config parameter how for a refresh interval?
Seems like now it is updated like every second which is not needed for my use case and I would like to set another interval.

Cheers

I also have a Q350 + ComfoFond and have the same issue where home assistant only showing the out side air temperature as post ComfoFond. Looking through the information on github https://github.com/michaelarnauts/comfoconnect/blob/de1a118425724364919dd99c62d05a45fd11827b/PROTOCOL-PDO.md the sensors on the ComfoFond have been identified as No. 416, 417, 418 and 419. Does anybody know how to add these.

Hi’
Is there a way to link multiple Comfoconnect devices in HA ?
If I try this :

comfoconnect:
  - name: 'Ventilation salons'
    host: '10.2.100.8'
  - name: 'Ventilation bureau'
    host: '10.2.100.9'

I get a configuration error.

Hai Marius, old post but maybe still good to know:
Zehnder delivers multiple ways to steer the unit. You can manually control it or connect several other sensors such as CO2 and presence/humidity sensor. Thing is, these sensors from Zehnder are really expensive. I think with HA you can use also good but much cheaper ones to make the unit work really well. I have worked at Zehnder for 7 years and know the products rather good. Thing is, the software integration isn’t something they are leaders in. But on the other side, so aren’t other manufacturers of these kind of units…

1 Like

yeah, I was deciding between Zehnder and Brink. Of those, I believe the Zehnder was most advanced… On devices like that, I dont want to fiddle around too much with cheaper hand made things, because 1) I need warranty from the manufacturer and 2) need them to work stand alone too, without any HA interference.

Good to hear you have a long experience with them, maybe you can advice what unit to use and which connective device to choose, considering I want co2 and humidity sensors attached to trigger the unit?

Since the Zhender Q-series has a lot of information to share to Home Assistant I was missing overview:

So today I made a picture elements card to give me the important information in a glance:
Screenshot 2021-12-24 at 21.19.08

For anyone interested in doing the same:

type: picture-elements
image: local/images/wtw_icons2.png
elements:
  - type: state-label
    entity: sensor.comfoairq_supply_airflow
    style:
      top: 59%
      left: 73%
      color: black
  - type: state-label
    entity: sensor.comfoairq_exhaust_airflow
    style:
      top: 59%
      left: 27%
      color: black
  - type: state-label
    entity: sensor.comfoairq_inside_temperature
    style:
      top: 20%
      left: 90%
      color: darkred
  - type: state-label
    entity: sensor.comfoairq_inside_humidity
    style:
      top: 28%
      left: 90%
      color: '#4171b1'
  - type: state-label
    entity: sensor.comfoairq_supply_temperature
    style:
      top: 76%
      left: 90%
      color: darkred
  - type: state-label
    entity: sensor.comfoairq_supply_humidity
    style:
      top: 84.2%
      left: 90%
      color: '#4171b1'
  - type: state-label
    entity: sensor.comfoairq_outside_temperature
    style:
      top: 20%
      left: 12.5%
      color: '#4171b1'
  - type: state-label
    entity: sensor.comfoairq_outside_humidity
    style:
      top: 28%
      left: 12.5%
      color: '#4171b1'
  - type: state-label
    entity: sensor.comfoairq_exhaust_temperature
    style:
      top: 76%
      left: 13%
      color: '#4171b1'
  - type: state-label
    entity: sensor.comfoairq_exhaust_humidity
    style:
      top: 84.2%
      left: 13%
      color: '#4171b1'
  - type: state-label
    entity: sensor.comfoairq_bypass_state
    prefix: 'Bypass: '
    style:
      top: 26%
      left: 50%
      color: black
  - type: state-label
    entity: sensor.comfoairq_days_to_replace_filter
    prefix: 'Filterwissel in '
    suffix: agen
    style:
      top: 92%
      left: 50%
      color: black
  - type: state-label
    entity: sensor.comfoairq_current_rmot
    prefix: 'Rmot '
    style:
      top: 10%
      left: 13%
      color: grey

and the picture:
wtw_icons2

18 Likes

Works Great. Thank you!

1 Like

Great entity; thank you! Can you also provide the code for the buttons underneath?

2 Likes

It’s a horizontal stack with custom:button cards. Works as follows.

scripts.yaml:

wtw_preset_0:
  alias: Comfoairq stand 0
  icon: mdi:fan-auto
  sequence:
    - service: fan.turn_off
      target:
        entity_id: fan.comfoairq

wtw_preset_1:
  alias: Comfoairq stand 1
  icon: mdi:fan-speed-1
  sequence:
    - service: fan.set_percentage
      target:
        entity_id: fan.comfoairq
      data:
        percentage: 33

wtw_preset_2:
  alias: Comfoairq stand 2
  icon: mdi:fan-speed-2
  sequence:
    - service: fan.set_percentage
      target:
        entity_id: fan.comfoairq
      data:
        percentage: 66

wtw_preset_3:
  alias: Comfoairq stand 3
  icon: mdi:fan-speed-3
  sequence:
    - service: fan.set_percentage
      target:
        entity_id: fan.comfoairq
      data:
        percentage: 100

template.yaml:

- sensor:
  - name: "Comfoairq stand"
    state: "{{ state_attr('fan.comfoairq', 'percentage') | default(33)}}"

The lovelace card:

type: horizontal-stack
cards:
  - type: custom:button-card
    entity: sensor.comfoairq_stand
    icon: mdi:fan-auto
    size: 50%
    color_type: card
    state:
      - value: 33
        color: var(--secondary-background-color)
      - value: 66
        color: var(--secondary-background-color)
      - value: 100
        color: var(--secondary-background-color)
      - value: 0
        color: var(--paper-item-icon-color)
    name: Away
    show_state: false
    tap_action:
      action: call-service
      service: script.turn_on
      service_data:
        entity_id: script.wtw_preset_0
    hold_action:
      action: call-service
      service: script.turn_on
      service_data:
        entity_id: script.wtw_preset_0_timer30
  - type: custom:button-card
    entity: sensor.comfoairq_stand
    icon: mdi:fan-speed-1
    size: 50%
    color_type: card
    state:
      - value: 33
        color: var(--paper-item-icon-color)
      - value: 66
        color: var(--secondary-background-color)
      - value: 100
        color: var(--secondary-background-color)
      - value: 0
        color: var(--secondary-background-color)
    name: Stand 1
    show_state: false
    tap_action:
      action: call-service
      service: script.turn_on
      service_data:
        entity_id: script.wtw_preset_1
  - type: custom:button-card
    entity: sensor.comfoairq_stand
    icon: mdi:fan-speed-2
    size: 50%
    color_type: card
    state:
      - value: 33
        color: var(--secondary-background-color)
      - value: 66
        color: var(--paper-item-icon-color)
      - value: 100
        color: var(--secondary-background-color)
      - value: 0
        color: var(--secondary-background-color)
    name: Stand 2
    show_state: false
    tap_action:
      action: call-service
      service: script.turn_on
      service_data:
        entity_id: script.wtw_preset_2
    hold_action:
      action: call-service
      service: script.turn_on
      service_data:
        entity_id: script.wtw_preset_2_timer30
  - type: custom:button-card
    entity: sensor.comfoairq_stand
    icon: mdi:fan-speed-3
    size: 50%
    color_type: card
    state:
      - value: 33
        color: var(--secondary-background-color)
      - value: 66
        color: var(--secondary-background-color)
      - value: 100
        color: var(--paper-item-icon-color)
      - value: 0
        color: var(--secondary-background-color)
    name: Stand 3
    show_state: false
    tap_action:
      action: call-service
      service: script.turn_on
      service_data:
        entity_id: script.wtw_preset_3
    hold_action:
      action: call-service
      service: script.turn_on
      service_data:
        entity_id: script.wtw_preset_3_timer30

I have some other scripts under the long-press to run the fans for 30 minutes on a certain level and cancel other settings (fans spin up automatically here on some input from a shelly temperature measurement on the warm water pipe) but for the basic functionality you can just ignore this :wink:

edit 16-04-2022: as the low/medium/high settings for fans are no longer available rebuild the buttons to work with percentages.

9 Likes

Very Nice!

Hi,

The iOS has been updated at some point and now allows you to set ‘Away’ as a status for the Q350. It would be great if the integration supported this, if at all possible?

Presently my automations set my MVHR entity to ‘Off’ when we leave the house but the damn thing turns itself back on again when it needs to. This is annoying in the winter especially because the preheater kicks in and uses a tonne of energy when the house is empty! I’m looking for a way to prevent this short of adding a smart plug and just killing the power when away.

Does anyone have any other thoughts?

TIA

hey @breinonline
very cool card.
could you tell me where the “d” is coming from?

Edit: never mind its coming from the sensor value … well does not my language :smiley:

Depending on the language the sensor displaying the number of days remaining until replacement of the filters is needed might be another character I guess :slight_smile:

This is mine:
Screenshot 2022-06-10 at 17.33.44

I have a couple of RF sensor attached to my comfoair. Do you know if it possible to read the value (eg co2 and humidity)? Keen to track and use these for further automations. Thanks!

I was also wondering today if Tado sensor with humidity recording could be sent to Zehnder units to initiate a speed change, or if this is best left as an automation?

That’s exactly something for an automation.

1 Like