vekexasia / comfoair-esp32

Interact with Zehnder Comfoair with esp32
Other
117 stars 38 forks source link

commands not accepted by comfoair unit #21

Closed pyto00 closed 3 months ago

pyto00 commented 2 years ago

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

panosnl commented 1 year ago

I can send commands without errors to the Q600 with firmware 1.9.1

I only get this error when the esp restarts.

masafra86 commented 1 year ago

I have the same problem, I can't send commands. I receive all the correct data (even if 15/20 minutes after resetting the ESP, connection fails), but I am not able to send commands. Firmware version R1.9.0 The ESP receives the MQTT commands and correctly sends them -------new message from broker----- channel:comfoair/commands/ventilation_level data:1 Received: comfoair/commands/ventilation_level ventilation_level_1 1F034051 00 84 15 01 01 00 00 00 1F034051 81 00 01 00 00 00 01 1F054051 00 84 15 01 01 00 00 00 1F054051 81 00 01 00 00 00 01 1E8041 X 26F A

edit: I tried powering the esp32 with a usb and the connection is visibly more stable

masafra86 commented 1 year ago

Today I got again to work on my ESP32 to try to understand the problem, and monitoring the ESP while I was trying to send any command, I found that it never receives any command message. I got back to build the firmware and I found in the logs this:

mpiling .pio/build/az-delivery-devkit-v4/src/main.cpp.o Compiling .pio/build/az-delivery-devkit-v4/src/mqtt/mqtt.cpp.o src/comfoair/comfoair.cpp: In member function 'void comfoair::ComfoAir::setup()': src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:42:5: note: in expansion of macro 'subscribe' subscribe("ventilation_level_0"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:43:5: note: in expansion of macro 'subscribe' subscribe("ventilation_level_1"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:44:5: note: in expansion of macro 'subscribe' subscribe("ventilation_level_2"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:45:5: note: in expansion of macro 'subscribe' subscribe("ventilation_level_3"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:46:5: note: in expansion of macro 'subscribe' subscribe("boost_10_min"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:47:5: note: in expansion of macro 'subscribe' subscribe("boost_20_min"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:48:5: note: in expansion of macro 'subscribe' subscribe("boost_30_min"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:49:5: note: in expansion of macro 'subscribe' subscribe("boost_60_min"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:50:5: note: in expansion of macro 'subscribe' subscribe("boost_end"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:51:5: note: in expansion of macro 'subscribe' subscribe("auto"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:52:5: note: in expansion of macro 'subscribe' subscribe("manual"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:53:5: note: in expansion of macro 'subscribe' subscribe("bypass_activate_1h"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:54:5: note: in expansion of macro 'subscribe' subscribe("bypass_deactivate_1h"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:55:5: note: in expansion of macro 'subscribe' subscribe("bypass_auto"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:56:5: note: in expansion of macro 'subscribe' subscribe("ventilation_supply_only"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:57:5: note: in expansion of macro 'subscribe' subscribe("ventilation_supply_only_reset"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:58:5: note: in expansion of macro 'subscribe' subscribe("ventilation_extract_only"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:59:5: note: in expansion of macro 'subscribe' subscribe("ventilation_extract_only_reset"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:60:5: note: in expansion of macro 'subscribe' subscribe("temp_profile_normal"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:61:5: note: in expansion of macro 'subscribe' subscribe("temp_profile_cool"); ^ src/comfoair/comfoair.cpp:24:4: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:62:5: note: in expansion of macro 'subscribe' subscribe("temp_profile_warm"); ^ src/comfoair/comfoair.cpp:70:6: warning: ISO C++ forbids converting a string constant to 'char' [-Wwrite-strings] }); ^ src/comfoair/comfoair.cpp:80:6: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings] }); ^

I'm not able to understand what is he saying, but maybe someone has the solution