Zehnder ComfoAir CA350 integration via serial connection (RS232) and MQTT

You can use this custom card from here:

or if you want to create your own layout of buttons you can do a bit more additional config in HA. I’ve created 4 template binary sensors:

- platform: template
  sensors:
    vent_away:
      friendly_name: Ventilation Away
      value_template: "{{ is_state('climate.ca350_climate', 'off') }}"
- platform: template
  sensors:
    vent_low:
      friendly_name: Ventilation Low
      value_template: "{{ is_state_attr('climate.ca350_climate', 'fan_mode', 'low') }}"
- platform: template
  sensors:
    vent_medium:
      friendly_name: Ventilation Medium
      value_template: "{{ is_state_attr('climate.ca350_climate', 'fan_mode', 'medium') }}"
- platform: template
  sensors:
    vent_high:
      friendly_name: Ventilation High
      value_template: "{{ is_state_attr('climate.ca350_climate', 'fan_mode', 'high') }}"

which I can put on a dashborad as standard buttons and as a tap action I call respective service e.g.:

fan_low:
  sequence:
  - service: climate.set_fan_mode
    data:
      entity_id: climate.ca350_climate
      fan_mode: low

The end result is based just on standard lovelace cards:

Thanks to @Dapolux & @adorobis . Finaly it works…
I admire your work in this chat. I can imagine that an extremely large amount of time has been invested here, which many can now use to implement this project.

2 Likes

I kindly wanted to thank you for helping me out, with this problem. I finally got it working (through the front RS232-Port WITH connected front display) and it just works perfectly (in a VM with USB-passthrough).
Amazing work!

1 Like

Hi all, just wanted to note here, that I was able to use this code to visualize my Zehnder ComfoAir 180. Works great! The analog sensors 1 to 4 always show 0%, that’s maybe a difference in this model. But I can read all temps, Fan speed, and can change fan, all I need. Nice work!

1 Like

They will always show 0% if nothing is connected to those analog inputs.

For my ComfoAir SL 330 I have recently built an ESPHome module based on wichers/esphome-comfoair but I also wanted to be able to use my wall-mounted Zehnder ComfoSense control and since I also needed to recently replace the filters I wanted to be able to reset the filter warning from ESPHome so I made a few improvements to the firmware that I thought I’d share here if others also want to be able to use those. Also since I based my module on the ESP8266 Witty Cloud ESP-12F module which comes with a 3 color LED and a button. I added some status reporting through the led and setting the mode thought the button for more authonomy.

Happy to provide more details about putting the thing together if there are questions. I am also going to work on improving the documentation of the repo in the next days.

Thee github repo is here

1 Like

Thanks for sharing! If I understand correctly you have put the esp module as a middle man (proxy) between the comfosense controller and the unit, correct?

That’s correct.
I use a single MAX2323 chip with one of the serial trancievers for the ComfoAir and the other one for the ComfoSense. All commands from the ComfoSense are proxied unchanged. In some rare cases the commands might overlap and be ignored but it works quite reliably still. Eventually it is possible to respond to some/all commands from the ESP instead but for now this does the trick.

Hi there, here is what I did to connect my Zhender Comfoair Q350.
I used a board and case from olimex.

Here is the code (based on others work) and links to buy hardware & case.

1 Like

2 Likes

Took me a few days but got the ESP version running for my Q600, alot of learnt lessions and want to pay it forward. If anyone is trying to get that going let me know as the instructions 100% are not idiot friendly :slight_smile:

1 Like

Hi
This paragraph is in the instructions. But where do I need to run this or paste the code?

python3 -m venv /config/custom_components/ca350/python3venv
source /config/custom_components/ca350/python3venv/bin/activate
pip3 install paho-mqtt
pip3 install pyserial
deactivate

In which path can I find the log files

image
image

thank you for your help
Kobi

You need to run it in the HAOS command line. Here are some instructions on how to get it:

1 Like

Hi, a little question. I’m new for 3 months in HA. I’ll like to connect my ventilation via MQTT. Thanks for your knowledge.
In the picture you’ll find my problem. I can’t change the paramaters in the files on my Rasberry Pi. What’s wrong?
Thanks.

Not sure how you could fix this access denied problem but you might want to try the guide for running it on HAOS (which I assume you have):

It’s a clean raspberry pi installation. My HAOS runs on another raberry pi. I don’t understand it, but keep looking for solutions. :stuck_out_tongue_winking_eye:

Ah, ok so in this case go to command line and change this folder/file permissions.

I would like to connect a WHR930 to HA via a Nodemcu v3 for a family member. I thought to do that as explained on GitHub - LukasdeBoer/esp8266-whr930-mqtt: Control your StorkAir / Zehnder WHR930 using a ESP8266 via MQTT, but I don’t know what exactly to put where in HA. Would prefer to use esphome. Can someone point me in the right direction with a good manual?

I believe you should start with this repo:

I had already followed that, but when I throw the comfoair en simple_thermostat yaml files into yamllint.com I only get errors. I don’t know how to install it via HACS

Installation

  1. Install via HACS.
  2. Add to resources:
    url: /hacsfiles/simple-thermostat/simple-thermostat.js type: module