GithubHelp home page GithubHelp logo

comfoair-esp32's Introduction

Hi there yo

Linkedin Badge Gmail Badge StackOverflow Badge

I'm Andrea, a backend developer with a solid foundation in TypeScript and Node.js, specializing in creating efficient, scalable solutions. My approach to problem-solving is extremely rational, allowing me to navigate complex challenges with clarity and precision. My technical expertise and methodical thinking enable me to deliver high-quality results in every project I undertake. Passionate about coding and continuous improvement, I thrive on turning intricate problems into seamlessly functioning backend systems.

comfoair-esp32's People

Contributors

gekkekoe avatar medlor avatar pyto00 avatar pyzimmer avatar sodre90 avatar svde avatar vekexasia avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

comfoair-esp32's Issues

Dashboard request

Hi,

Thanks for this great project.
I manged to flash my ESP32 yesterday.
Now connection to Q450 pending.

Question:
Can you please share the configuration file regarding your dashboard?

VMC Total Energy Saving

Hi,

I have a problem, all is functioning well, but it is not showing any data for the VMC Total Energy Saving.

Do you have any idea what would cause this problem.

Thanks for your work.

comfoair ESP32 - MQTT supported in ESPhome?

Sorry, searching did not supply an answer.
I see there is a discrepancy in commit dates between the mqtt tree and the normal tree.
Furthermore, normal tree is esphome enabled, cannot find if mqtt tree can be used the same?

Additionally, I was searching for mqtt config details in esphome, also no luck so far.

Would you mind clarifying these details (or point in the right direction)

bypass_state discussion

Not really an issue, but more something I'd like to discuss.

I noticed that bypass_state is treated like on/off. I reality the bypass valve can be opened partially. I'm also seeing that from candump:

can0 0038C041 [1] 64
can0 0038C041 [1] 5D
can0 0038C041 [1] 64
can0 0038C041 [1] 00
can0 0038C041 [1] 64
can0 0038C041 [1] 00
can0 0038C041 [1] 64
can0 0038C041 [1] 00

Would it be possible to implement it as a percentage instead?

-      LAZYSWITCH(227, "bypass_state", "%s", vals[0] == 64 ? "on" : "off")  // 1 = on, 0 = off   
+      LAZYSWITCH(227, "bypass_state", "%d", vals[0])  // %

Esp getting into hanging state after 1-3 days neither sending or receiving data.

First of all thanks for the great work on this, works flawlessly with a small but.
My ESP hangs every 1,2,3 days and I need o shut down the unit and enable it back again to restore readings and control. I got the power supplied from the recu, my friend has a separate power via phone charger and it works for him without any issues. Any ideas what may be causing the issues in my case?

Wrong variable type (uint16) for pre_heater_temp_before and post_heater_temp_after

Today the temps dropped below zero and I noticed that one temp started showing wrong values. Since it was OK for T >0 I checked the code where it was declared as uint16

message.cpp, line 186:
LAZYSWITCH(220, "pre_heater_temp_before", "%.1f", uint16/10.0) // C°
LAZYSWITCH(221, "post_heater_temp_after", "%.1f", uint16/10.0) // C°

Changing it to int16 should solve the problem (I have to wait for tonight to confirm..)

LAZYSWITCH(220, "pre_heater_temp_before", "%.1f", int16/10.0) // C°
LAZYSWITCH(221, "post_heater_temp_after", "%.1f", int16/10.0) // C°

esp wifi connection drops and CAN communication lost

I had this issue that the esp would keep losing wifi connection until it was restarted manually. Wifi connection only lasted 1-2 of hours before it dropped.
Despite the ::WiFi.setAutoReconnect(true); function in wifi.cpp, it would not reconnect.

So I found a workaround, adding this simple function inside the void WiFi::loop

if (::WiFi.status() != WL_CONNECTED) {
::WiFi.begin(WIFI_SSID, WIFI_PASS);
::WiFi.setAutoReconnect(true);
}

Since this update I have not had the problem anymore
Anybody had the same issue?

Idea of making a project on ESP32 + ETHERNET

Hello,
I make various pcb boards and I have a proposal to make a professional board for this project. I wanted to add MQTT broker control over ETHERNET, is it possible to rewrite the software under ETHERNET ?

Esp32 set ventilation leve 3 after reconeection

I have problem with occasionally drop wifi or mqtt connection. After auto reconnect esp set ventilation level to 3.
Is it depends on some test commands or?
Is there option to force send ventilation level 1 after reconnect?

Is there any option to connect esp32 with ethernet to get more stable connection?

How to connect

Hi,

How can guide me to the best startup solution?
I am currently connecting to the Q450 using the RJ45 port.

  • If I connect the project to the powered off Q450 and then power on the Q450, the Q450 does not start
  • If I connect the project to a completely started Q450 there is an errormessage telling me there is something wrong with the cabling.
  • If I connect directly after powering on sometimes it all works.

What is the best methode?
Is there a difference between using the RJ450 port or the white connectore?

Wrong units of measure

Hello,
Some units of measure are wrong :

  • VMC Total Energy Saving is in KWh (not in Wh)
  • Fan Duty are in % (not in rpm)

Here is the right config :

mqtt:
  sensor:
    # Consumption
    - name: "VMC Power Current"
      state_topic: "comfoair/power_consumption_current"
      unit_of_measurement: W
    - name: "VMC Total Energy Saving"
      state_topic: "comfoair/ah_ytd"
      unit_of_measurement: KWh
    
    # FAns
    - name: "VMC Exhaust Fan Speed"
      state_topic: "comfoair/exhaust_fan_speed"
      unit_of_measurement: rpm
    - name: "VMC Supply Fan Speed"
      state_topic: "comfoair/supply_fan_speed"
      unit_of_measurement: rpm
    - name: "VMC Exhaust Fan Duty"
      state_topic: "comfoair/exhaust_fan_duty"
      unit_of_measurement: "%"
    - name: "VMC Supply Fan Duty"
      state_topic: "comfoair/supply_fan_duty"
      unit_of_measurement: "%"
    - name: "VMC Supply Fan User Speed"
      state_topic: "comfoair/fan_speed"
    
      # FLOW
    - name: "VMC Exhaust Fan Flow"
      state_topic: "comfoair/exhaust_fan_flow"
      unit_of_measurement: "m³/h"
    - name: "VMC Supply Fan Flow"
      state_topic: "comfoair/supply_fan_flow"
      unit_of_measurement: "m³/h"
    
    # TEMPS
    - name: "VMC Outdoor Air Temperature"
      state_topic: "comfoair/outdoor_air_temp"
      unit_of_measurement: "°C"
    - name: "VMC Exhaust Air Temperature"
      state_topic: "comfoair/exhaust_air_temp"
      unit_of_measurement: "°C"
    - name: "VMC Extract Air Temperature"
      state_topic: "comfoair/extract_air_temp"
      unit_of_measurement: "°C"
    - name: "VMC Post Heater Temp Before"
      state_topic: "comfoair/post_heater_temp_before"
      unit_of_measurement: "°C"
    - name: "VMC Post Heater Temp After"
      state_topic: "comfoair/post_heater_temp_after"
      unit_of_measurement: "°C"
    
    # Humidity
    - name: "VMC Outdoor Air Humidity"
      state_topic: "comfoair/outdoor_air_humidity"
      unit_of_measurement: "%"
    - name: "VMC Exhaust Air Humidity"
      state_topic: "comfoair/exhaust_air_humidity"
      unit_of_measurement: "%"
    - name: "VMC Extract Air Humidity"
      state_topic: "comfoair/extract_air_humidity"
      unit_of_measurement: "%"
    - name: "VMC Supply Air Humidity"
      state_topic: "comfoair/supply_air_humidity"
      unit_of_measurement: "%"

Compilation problem [debuggingMode]

Hello and please help.

I've been fighting with this for a long time. Unfortunately, it doesn't compile for me. I have no idea where it is.

image

days_to_replace_filter

Hi,
I just managed to connect to my Comfoair Q350 with this piece of software and it seems to work pretty well at the moment!
I think it would be very useful to display the numbers of days that left to replace the filters, in order to be able to display an alert as you can see on the unit itself.

Do you think it's possible ?

Thanks for this big work :)

Custom PCB - missing CPL file

Thanks for making this project available, I ordered the KNX Interface and discovered that a lot of information that is available on the LAN Interface is missing. So this would be a perfect addition to my current system

I like the custom pub design and think this could also be used for other can based integrations.

Went to https://jlcpcb.com to order a set of fully assembled boards.

To order the fully assembled board I first uploaded the Gerber ZIP file and after activating and confirming PCB Assembly
a popup opens which requires to file to be uploaded

  • BOM File
  • CPL File

The BOM file is currently present in the repo but the CPL file is missing, is this also available or is there another way to get a fully assembled board?

commands not accepted by comfoair unit

When the ESP32 is connected to the canbus I get an error on de display of the unit itself
Comfonet error Please check cables

I can only reset this error when I disconnect the ESP32.
While connected I am able to read out the sensor data but the unit doesn't react on commands.

Comfoair Firmware 1.9.0

Can this be a canbus ID error ? Maybe due to the recent firmare on the comfoair unit ?
PXL_20220513_143513371

ComfoAir 70

Does this project also work with a ComfoAir70.

It doesn't support the LAN C Adapter but works with a RF + Connect box.

Connection via Bus is available (A,B, + and -).

image

image

How to install haconfig files?

Hi,

I have the comfoair to mqtt running but now I have problems getting the haconfig file properly integrated in HA.

I tried !include index.yaml in the configuration.yaml but that seemed not to work: vmc_comfoair: is not an integration . Also it does not seem like a custom component either or is it?

index.yaml

vmc_comfoair:
sensor: !include ./.sensors.yaml
input_select:
vmc_user_fan_speed:
name: "VMC User Fan Speed"
options:
- "0"
- "1"
- "2"
- "3"
vmc_operating_mode:
name: "VMC User Mode"
options:
- auto
- manual
automation: !include ./.automations.yaml
switch: !include ./.switch.yaml

ESPHome 2023.10.5 & comfoair-eps32 error in compile

While digging into the esphome component I tried to compile. Whenever I add the connection pins the compilation will stop running with the following error:

Compiling .pioenvs\esp32-mqtt-zehnder-kd\libd8f\noise-c\protocol\symmetricstate.c.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\libd8f\noise-c\protocol\util.c.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\lib760\SPI\SPI.cpp.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\lib117\can_common\can_common.cpp.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\lib58d\esp32_can\esp32_can.cpp.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\lib58d\esp32_can\esp32_can_builtin.cpp.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\lib58d\esp32_can\esp32_can_builtin_lowlevel.cpp.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\lib58d\esp32_can\mcp2515.cpp.o
Compiling .pioenvs\esp32-mqtt-zehnder-kd\lib58d\esp32_can\mcp2517fd.cpp.o
Archiving .pioenvs\esp32-mqtt-zehnder-kd\libd8f\libnoise-c.a
Archiving .pioenvs\esp32-mqtt-zehnder-kd\lib760\libSPI.a
In file included from .piolibdeps/esp32-mqtt-zehnder-kd/esp32_can/src/esp32_can_builtin_lowlevel.cpp:32:
C:/Users/folderXXX/.platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/esp_intr.h:8:2: warning: #warning esp_intr.h is deprecated, please include esp_intr_alloc.h instead [-Wcpp]
 #warning esp_intr.h is deprecated, please include esp_intr_alloc.h instead
  ^~~~~~~
.piolibdeps/esp32-mqtt-zehnder-kd/esp32_can/src/esp32_can_builtin_lowlevel.cpp:33:10: fatal error: soc/dport_reg.h: No such file or directory
 #include "soc/dport_reg.h"
          ^~~~~~~~~~~~~~~~~
compilation terminated.
Compiling .pioenvs\esp32-mqtt-zehnder-kd\FrameworkArduino\Esp.cpp.o
*** [.pioenvs\esp32-mqtt-zehnder-kd\lib58d\esp32_can\esp32_can_builtin_lowlevel.cpp.o] Error 1
========================= [FAILED] Took 49.27 seconds =========================

The config used:

esphome:
  name: esp32-mqtt-zehnder-kd
  friendly_name: ESP32 MQTT Zehnder ComfoAir Q600 Kelder

esp32:
  board: esp32-c3-devkitm-1
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "XXXXXYYYYYZZZZZ"

ota:
  password: "XXXXXYYYYYZZZZZ"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  power_save_mode: none

#captive_portal:

time:
  - platform: sntp
    id: sntp_time
    timezone: Europe/Amsterdam
    servers: 192.168.0.1

external_components:
  - source: github://vekexasia/comfoair-esp32
    components: [ comfoair ]

comfoair:
  id: comfo
  rx_pin: GPIO5
  tx_pin: GPIO2

Pins are correct as I use the same device also for other applications (same RX and TX pins)
And lastly, posting it here as the error emerges only after enabling the comfoair module.
(Therefore might still be an issue with the esphome software, in that case please inform me so I will redirect the answer)

Project compilation problems

Dear All,
I have a problem compiling a project. After many hours I have reached the stage that I am getting an error related to the missing secrets.h file. But when I add it in the src folder, I get a double variable declaration error. What am I doing wrong? What should it look like? Please help :)
Zrzut ekranu 2022-10-3 o 00 02 30

Project direction and new features

After this project has been released it entered a sleep state. Project seemed mature enough to not get new updates.

Due to the currently opened number of issues which include #43 #45 #25 #26 as well as #32 and others. It looks to me that it was about time to invest some free time to get this project a little love.

Of course if you want to donate me some beer which is the fuel of developers I will always appreciate that.

Anyways. I'm working on getting this on a properly designed lowcost PCB, as soon as I get the PCB delivered and get to test it out i'll also migrate the project to ESPHOME (which someone mentioned on issue #31).

I ordered 15 pcbs, assuming the pcb design works I can ship others to anyone interested in getting it.

This is a preview of the PCB
image

It does measure 45x23mm which is pretty small. The only missing part is an M5Stack Atom Lite ESP32 board. I decided to design it that way cause I did want to keep cost low, and leverage modularity. If ESP32 dies you can always replace it with another M5Stack.

Since the board is very simple and modular it could be designed so that it scales vertically. so, If someone wants some extra functionality such as an ethernet HAT, a design could be made to meet it that needs.

Cheers

How to install in the Raspberry Home assistant?

Hi, i'm a newbie of HA and Raspberry and i hope to help other users newbie like me with this question.

I downloaded comfoair-esp32-master.zip, unpacked and copied and pasted all files in custom_components/comfoair-esp32-master folder inside my Home Assistant Raspberry.

Is that the correct way? Should i have to add something in my configuration.yaml?

Thanks

Missing Controls entities in ESPHome integration

I have followed instructions from README and after fixing problem with boot loop I was I able to read sensor entities, thank @vekexasia so much for that.

But I am missing controls entities to e.g. change temperature or fan speed.

I guest this is because of missing ClimateTraits clime controller, so it should be added into C code, or I am not understanding something?

HA installation

How do you get this to work in home assistant?
where should you place the YAML files?

ventilation_extract_only for more than 1 h

Hi
I need to have ventilation_extract_only for 12 hours instead of 1 hour active. I am not a programmer but after some research it seems like this part of code needs to be modified in commands.h:

#define CMD_ventilation_extract_only { 0x84, 0x15, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0x00, 0x00 }

new value:
#define CMD_ventilation_extract_only { 0x84, 0x15, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xa8, 0x00, 0x00, 0x00 }

Is it correct? New value is correct?

Thank You

Error uploading to ESP

When I try to upload the project to my ESP I get an error in the remoteesp32 part.
I get the following:

Configuring upload protocol...
AVAILABLE: esp-prog, espota, esptool, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa
CURRENT: upload_protocol = espota
Uploading .pio\build\remoteesp32\firmware.bin
13:30:08 [DEBUG]: Options: {'esp_ip': '192.168.1.126', 'host_ip': '0.0.0.0', 'esp_port': 3232, 'host_port': 46476, 'auth': '', 'image': '.pio\\build\\remoteesp32\\firmware.bin', 'spiffs': False, 'debug': True, 'progress': True, 'timeout': 10}
13:30:08 [INFO]: Starting on 0.0.0.0:46476
13:30:08 [INFO]: Upload size: 826672
Sending invitation to 192.168.1.126 ..........
13:31:48 [ERROR]: No response from the ESP
*** [upload] Error 1
======================================== [FAILED] Took 102.68 seconds ========================================
Environment      Status    Duration
---------------  --------  ------------
wemos_d1_mini32  SUCCESS   00:00:22.718
remoteesp32      FAILED    00:01:42.678

When I check the serial monitor, MQTT is able to subscribe to all topics and I get an IP address, so wifi and MQTT seem to be working.

assert failed: xTaskRemoveFromEventList tasks.c

I am struggeling with this assert fail error. I found that this is a part of FreeRTOS which I have no knowledge about.
It reboots a few times and then gets stuck.

From the monitor terminal

Connecting to INET
.......
WiFi Connected. IP:
192.168.0.45
ESP_SMT init
ESPVMC init
Attempting MQTT connection...connected
Subscribing to: comfoair/commands/auto
Subscribing to: comfoair/commands/boost_10_min

assert failed: xTaskRemoveFromEventList tasks.c:3657 (pxUnblockedTCB)


Backtrace:0x40083835:0x3ffb23400x4008b7e9:0x3ffb2360 0x40090ca9:0x3ffb2380 0x4008d586:0x3ffb24b0 0x4008c8b8:0x3ffb24d0 0x40100c32:0x3ffb2510 0x40100f61:0x3ffb2530 0x400efb26:0x3ffb2550 0x400f14b8:0x3ffb2580 0x400ead15:0x3ffb2620 0x400d8522:0x3ffb2690 0x400d7ab0:0x3ffb26f0 0x400d7e1d:0x3ffb2710 0x400d7e35:0x3ffb2730 0x400d4adb:0x3ffb2750 0x400d4ba3:0x3ffb2790 0x400d4c1e:0x3ffb27e0 0x400d49bc:0x3ffb2800 0x400e0b51:0x3ffb2820 

Does someone has any pointers for me ?

Unknown entity state after restart.

Hello, I have a question about the entity state after ESP reset. All entities are in an unknown state until they are replaced or updated. Is there any way to make entities show their current state after a reset/update?
2023-09-06_13h47_31

Option Box Connection Error

Hi, everything is working good. But I get error "option box connection error". I have to reconnect everything and error disappears but after few hours I get it again.
All commands from mqtt work good, even error appears.

sendCommand

Hello,
My question is about your sendCommand routine, which seems to send the same message twice with a 1 sec delay inbetween.
I found that sending only once is sufficient, but you have to make sure that you are sending right after a message has been received from the unit. This ensures that the unit is listening for incoming messages and there will be no collision on the bus when the unit is preparing or trying to send the next message. Do you mean is this right?

Best regards,
Tamas

RX/TX pinout for node mcu ESP32s wroom

Hi,

I have an ESP32 from node mcu (see the figure below for the pinout and the board specifics.

I think the pinout is not exactly the same as what's mentioned in the readme. Is my understanding that the pin 21/25 mentioned in the readme are the TX0 and RX0 pins in the figure below?

image

In other words, would this be the correct connection:

---------------+        +---------------+                 +-------------+
(oran/red)12V  o--------o IN+      OUT+ o-----------------o VIN         |
               |        |   [LM2596S]   |                 |             |
(brown)   GND  o--------o IN-      OUT- o-----------------o GND         |
               |        +---------------+                 |             |
    [RJ45]     |                                          |   [ESP32]   |
  [ComfoAir]   |                                          |             |
               |        +-------------------------+       |             |
(w/blue) CAN_L o--------o CAN_L               3v3 o-------o 3v3         |
(blue)   CAN_H o--------o CAN_H               GND o-------o GND         |
---------------+        |                         |       |             |
                        |   [SN65HVD230]   CAN TX o-------o TX0         |
                        |                  CAN RX o-------o RX0         |
                        +-------------------------+       +-------------+

No MQTT

Hi,

There is no MQTT traffic coming from the esp32.
Is there a way to check logging on the ESP32?

When connecting to the IP of the ESP32 directly I only see possibility to upload files.

Sending commands not working with the esphome version

Trying to send any command (fan speed, temp. profile etc.) reports following errors in the log:

[W][component:204]: Component api took a long time for an operation (1.00 s).
[W][component:205]: Components should block for at most 20-30ms.

Boost issue

Hi,

Thank you for this great project.
I can now control my Q450!.

I only have one issue, I hope anyone can support me.

I have a manual controller (RF) for the Q450 in my bathroom.
When I use the boost button on this controller (boost 10 minutes), the project is switching the Q450 to manual level 3.
And this does not stop after 10 minutes.

Does anyone have a solution for this?

Connection schema for the ESP32 and CAN

I hope I'm not asking too much! Could you please upload a connection scheme or image of the end result (not inside the box) between VMC and ESP32/CAN? The steps provided are enough for a skilled person, but for a newbie might be cumbersome to setup. Thanks!

_builtin.h:36:10: fatal error: freertos/FreeRTOS.h:

INFO ESPHome 2023.10.6
INFO Reading configuration /config/esphome/comfoair.yaml...
INFO Detected timezone 'Europe/Berlin'
INFO Generating C++ source...
INFO Compiling app...
Processing comfoair (board: esp01_1m; framework: arduino; platform: platformio/[email protected])

HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
Library Manager: Installing SPI @ 2.0.0
Warning! Could not find the package with 'SPI @ 2.0.0' requirements for your system 'linux_x86_64'
Dependency Graph
|-- ESPAsyncTCP-esphome @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 1.1.1
|-- ESP8266WiFi @ 1.0
|-- ESP8266mDNS @ 1.2
|-- noise-c @ 0.1.4
|-- ArduinoJson @ 6.18.5
|-- can_common @ 0.3.0+sha.07605a2
|-- ESP32_CAN @ 0.2.5+sha.0fb9878
Compiling .pioenvs/comfoair/src/esphome/components/comfoair/comfoair.cpp.o
Compiling .pioenvs/comfoair/src/esphome/components/esp8266/gpio.cpp.o
Compiling .pioenvs/comfoair/src/esphome/components/esp8266/preferences.cpp.o
Compiling .pioenvs/comfoair/src/esphome/components/homeassistant/time/homeassistant_time.cpp.o
In file included from .piolibdeps/comfoair/esp32_can/src/esp32_can.h:1,
from src/esphome/components/comfoair/comfoair.h:2,
from src/esphome/components/comfoair/comfoair.cpp:1:
.piolibdeps/comfoair/esp32_can/src/esp32_can_builtin.h:36:10: fatal error: freertos/FreeRTOS.h: No such file or directory
36 | #include "freertos/FreeRTOS.h"
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
*** [.pioenvs/comfoair/src/esphome/components/comfoair/comfoair.cpp.o] Error 1
========================== [FAILED] Took 1.87 seconds ==========================

Missing send services

I got it working on my Q350 with ESPHome in Home Assistant, but I'm missing the send services.
xxx_send_command
xxx_send_hex

Is there a prerequisite? What kind of service is it or how to enable / install?

Project finished

I have finished my project. All does work as expected.
I am very happy with the result. Many thanks to @vekexasia and all who answered my many questions.

open
closed
UI

auto mode not available

Hi I just upgraded to the ESPHOME version.
When I send the command 'auto' the unit doesn't seem to respond.
I am able to set other settings like e.g. : 'ventilation_level_3'.
I have used the old version with mqtt communication and there the auto command was working.

Bootloop after flashing the ESPHome version

I am trying to flash the ESPHome version, but then the ESP enters a boot loop. I've tried different configurations, but it's still stuck in the bootloop.
The error i get after flashing:

01:49:05]E (10278) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
[01:49:05]E (10278) task_wdt:  - loopTask (CPU 1)
[01:49:05]E (10278) task_wdt: Tasks currently running:
[01:49:05]E (10278) task_wdt: CPU 0: IDLE
[01:49:05]E (10278) task_wdt: CPU 1: CAN_LORX
[01:49:05]E (10278) task_wdt: Aborting.
[01:49:05]
[01:49:05]abort() was called at PC 0x400ef275 on core 0
[01:49:05]
[01:49:05]
[01:49:05]Backtrace:0x400836b5:0x3ffbea2c |<-CORRUPTED
WARNING Found stack trace! Trying to decode it
WARNING Decoded 0x400836b5: panic_abort at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/esp_system/panic.c:402

Current yaml:

esphome:
  name: air-11

esp32:
  board: nodemcu-32s
  framework:
    type: arduino
    
# Enable logging
logger:

# Enable Home Assistant API
api:
  password: "gfhgfhgshbhbdbvfdg3354dsgf"
  
wifi:
  ssid: "*****"
  password: "******"

external_components:
  - source: github://vekexasia/comfoair-esp32
    components: [ comfoair ]

comfoair:

Am I doing something wrong or am I missing another configuration line?

Integration with existing UI for CA350

Hello,

I was tinkering over weekend to make working this firmware with existing Lovelace controls (eg. https://github.com/mweimerskirch/lovelace-hacomfoairmqtt). Result:

lovelace-control

I can see temperatures, fan duty and can control fan level.

I made some changes, some of them makes sens (like last will) other probably could be handled by HA itself by smart configuration. Eg.:

fan_mode_command_topic: "comfoair/climate/fan/set"
fan_mode_state_topic: "comfoair/climate/fan"
fan_modes:
  - off
  - low
  - medium
  - high

Instead changing firmware these topics could be done using templates, but I was unable to write template that is working and produces results I want.

You can see changes I made and pieces of configuration here: https://github.com/mat3u/comfoair-esp32/tree/hacomfoairmqtt-compatibility. If any of this features is interesting then, let me know.

Guidance needed, integration into HA

Apologies for asking basic questions.
I've been googling and trying for the last 2 days, but how do I now get the HA dashboard integrated? Where and how do I need to reference the index.yaml provided?
The ESP32 is connected up and communicating with MQTT. How can I now setup this up as device in HA? Sorry, I'm lost and are going in circles with my google searches.
Help would be very much appreciated.

Button for mqtt commands

Here is part of configuration.yaml to get command buttons in HA :

mqtt:
  button:
    - name: "VMC Boost 1h"
      command_topic: "comfoair/commands/boost_60_min"
    - name: "VMC Boost Stop"
      command_topic: "comfoair/commands/boost_end"     
    - name: "VMC Bypass ON 1h"
      command_topic: "comfoair/commands/bypass_activate_1h"     
    - name: "VMC Bypass OFF 1h"
      command_topic: "comfoair/commands/bypass_deactivate_1h"     
    - name: "VMC Bypass AUTO"
      command_topic: "comfoair/commands/bypass_auto"     
    - name: "VMC Profile Normal"
      command_topic: "comfoair/commands/temp_profile_normal"     
    - name: "VMC Profile Cool"
      command_topic: "comfoair/commands/temp_profile_cool"     
    - name: "VMC Profile Warm"
      command_topic: "comfoair/commands/temp_profile_warm"     

the result :
image

set_mode not working

Hi I am trying to get the mode back to auto after turning ventilation level to 1,2 or three.

When I use
comfoair/commands/ventilation_level_set_mode
with payload auto

nothing happens, and also
comfoair/commands/set_mode
with payload auto
Does not do the trick.

What is my mistake?

image

Installation Instructions for ESPHOME

Dear creators of this cool project, I have been following it since December 2022 and understand now how to integrate my ESP32 board with HA via MQTT. That was great. However, now it is available also via ESPHOME project. Although I am new to ESPHOME I kinda understand that this the comfoair is a kind of plugin/custom device to the ESPHOME, similar as this is done also with EspEasy which I know very well. Nevertheless, no save me and others a little time, would it be possible to provide a brief list of instructions how to make the comfoair part of the ESPHOME to integrate with the HA? Thanks a lot in advance!

Help to install on ESP32

Can anyone provide a short description on how to install this on an ESP32?
Or refer to a proper documentation?

I managed to install the included libraries wifi, comfoair, mqtt and ota by adding them to the libraries folder of the IDE.
But it is missing the esp32_can.h
Where do I find the correct library for the CAN controller?

5 Temperatures show incorrect values

All values seem to come correctly from my Q600 into MQTT.

However 5 temp values show strange behavour: They cycle simultanuously the same (incorect) values: 0, 128, ~600) the latter value changes over time.

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.