From 8fb62ce8ae79ffdc50eabe0f62a9730ca5cef1d7 Mon Sep 17 00:00:00 2001 From: Yurii Date: Fri, 23 Feb 2024 03:50:30 +0300 Subject: [PATCH] fix: set temperature for sensors in manual mode fixed --- src/SensorsTask.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/SensorsTask.h b/src/SensorsTask.h index f7823b6..6098e2b 100644 --- a/src/SensorsTask.h +++ b/src/SensorsTask.h @@ -60,26 +60,32 @@ protected: } void loop() { + bool needUpdateIndoorTemp = false; + bool needUpdateOutdoorTemp = false; + if (settings.sensors.outdoor.type == 2 && settings.sensors.outdoor.pin) { outdoorTemperatureSensor(); + needUpdateOutdoorTemp = true; } if (settings.sensors.indoor.type == 2 && settings.sensors.indoor.pin) { indoorTemperatureSensor(); + needUpdateIndoorTemp = true; } #if USE_BLE if (settings.sensors.indoor.type == 3) { bluetoothSensor(); + needUpdateIndoorTemp = true; } #endif - if (fabs(vars.temperatures.outdoor - this->filteredOutdoorTemp) > 0.099) { + if (needUpdateOutdoorTemp && fabs(vars.temperatures.outdoor - this->filteredOutdoorTemp) > 0.099) { vars.temperatures.outdoor = this->filteredOutdoorTemp + settings.sensors.outdoor.offset; Log.sinfoln(FPSTR(L_SENSORS_OUTDOOR), F("New temp: %f"), vars.temperatures.outdoor); } - if (fabs(vars.temperatures.indoor - this->filteredIndoorTemp) > 0.099) { + if (needUpdateIndoorTemp && fabs(vars.temperatures.indoor - this->filteredIndoorTemp) > 0.099) { vars.temperatures.indoor = this->filteredIndoorTemp + settings.sensors.indoor.offset; Log.sinfoln(FPSTR(L_SENSORS_INDOOR), F("New temp: %f"), vars.temperatures.indoor); }