Add temperature hysteresis

Do not refresh display if value not changed
This commit is contained in:
cryptogopher
2022-10-09 22:18:59 +02:00
parent 814a99f733
commit 8594905748
3 changed files with 29 additions and 9 deletions

View File

@@ -1,12 +1,23 @@
#include "Seeed_BME280.h"
BME280 sensor;
float highTemp = 0.0, lowTemp = 0.0;
const float blindZone = 0.03;
void initBME280() {
sensor.init();
}
void readTemperature() {
// TODO: add hysteresis
temperature = sensor.getTemperature();
float newTemperature = sensor.getTemperature();
if (newTemperature > highTemp) {
temperature = newTemperature;
highTemp = newTemperature;
lowTemp = highTemp - blindZone;
} else if (newTemperature < lowTemp) {
temperature = newTemperature;
lowTemp = newTemperature;
highTemp = lowTemp + blindZone;
};
}