Merge pull request #1097 from emsesp/fix_RC35Monitor

fix RC35Monitor active detection
This commit is contained in:
Proddy
2023-03-04 11:23:41 +01:00
committed by GitHub

View File

@@ -1191,12 +1191,9 @@ void Thermostat::process_RC30Temp(std::shared_ptr<const Telegram> telegram) {
// type 0x3E (HC1), 0x48 (HC2), 0x52 (HC3), 0x5C (HC4) - data from the RC35 thermostat (0x10) - 16 bytes // type 0x3E (HC1), 0x48 (HC2), 0x52 (HC3), 0x5C (HC4) - data from the RC35 thermostat (0x10) - 16 bytes
void Thermostat::process_RC35Monitor(std::shared_ptr<const Telegram> telegram) { void Thermostat::process_RC35Monitor(std::shared_ptr<const Telegram> telegram) {
// Check if heatingciruit is active, see https://github.com/emsesp/EMS-ESP32/issues/786 // 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. // roomtemp is measured value or 7D00 on active hc's, zero on inactive
if (telegram->offset > 0 || telegram->message_data[0] == 0x00) { uint16_t active = 0;
return; if (!telegram->read_value(active, 3)) {
}
if (telegram->message_data[14] == 0x00) {
return; return;
} }