From 44056318fdd051e4ba3010fd6ddccfc33e122598 Mon Sep 17 00:00:00 2001 From: MichaelDvP <59284019+MichaelDvP@users.noreply.github.com> Date: Sat, 4 Mar 2023 11:09:14 +0100 Subject: [PATCH] fix RC35Monitor active detection editied direct on github, delete branch after merge. --- src/devices/thermostat.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/devices/thermostat.cpp b/src/devices/thermostat.cpp index 866ddb7f6..19f44fc69 100644 --- a/src/devices/thermostat.cpp +++ b/src/devices/thermostat.cpp @@ -1191,12 +1191,9 @@ void Thermostat::process_RC30Temp(std::shared_ptr telegram) { // type 0x3E (HC1), 0x48 (HC2), 0x52 (HC3), 0x5C (HC4) - data from the RC35 thermostat (0x10) - 16 bytes void Thermostat::process_RC35Monitor(std::shared_ptr telegram) { // Check if heatingciruit is active, see https://github.com/emsesp/EMS-ESP32/issues/786 - // some RC30_N have only 13 byte, use byte 0 for active detection. - if (telegram->offset > 0 || telegram->message_data[0] == 0x00) { - return; - } - - if (telegram->message_data[14] == 0x00) { + // roomtemp is measured value or 7D00 on active hc's, zero on inactive + uint16_t active = 0; + if (!telegram->read_value(active, 3)) { return; } @@ -4288,4 +4285,4 @@ void Thermostat::register_device_values_hc(std::shared_ptr