publish any change in temperature, but display only if difference is more than 0.2
This commit is contained in:
parent
23de23a2e0
commit
bdefbf23bc
@ -29,12 +29,15 @@ Task tLed(TASK_IMMEDIATE, TASK_ONCE, []() {
|
|||||||
}, &ts);
|
}, &ts);
|
||||||
Task tReadBmp(TASK_MINUTE, TASK_FOREVER, []() {
|
Task tReadBmp(TASK_MINUTE, TASK_FOREVER, []() {
|
||||||
static float lastTemp = 0;
|
static float lastTemp = 0;
|
||||||
|
float temp = Bmp::data.temp;
|
||||||
Bmp::data.readAll();
|
Bmp::data.readAll();
|
||||||
if (abs(lastTemp - Bmp::data.temp) <= 0.2) return;
|
if (temp == Bmp::data.temp) return;
|
||||||
lastTemp = Bmp::data.temp;
|
|
||||||
Display::displayTemp(Bmp::data.temp);
|
|
||||||
Mqtt::publishBmp280();
|
Mqtt::publishBmp280();
|
||||||
}, &ts, true);
|
if (abs(lastTemp - Bmp::data.temp) > 0.2) {
|
||||||
|
lastTemp = Bmp::data.temp;
|
||||||
|
Display::displayTemp(Bmp::data.temp);
|
||||||
|
}
|
||||||
|
}, &ts);
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
|
|
||||||
@ -55,6 +58,8 @@ void setup() {
|
|||||||
pinMode(BUTTON, INPUT_PULLUP);
|
pinMode(BUTTON, INPUT_PULLUP);
|
||||||
attachInterrupt(digitalPinToInterrupt(BUTTON), onButtonPressed, FALLING);
|
attachInterrupt(digitalPinToInterrupt(BUTTON), onButtonPressed, FALLING);
|
||||||
attachInterrupt(digitalPinToInterrupt(LED_BUILTIN), onLed, CHANGE);
|
attachInterrupt(digitalPinToInterrupt(LED_BUILTIN), onLed, CHANGE);
|
||||||
|
|
||||||
|
tReadBmp.enable();
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user