From 239daba63ae2c65a444c6cb32118ecc6f4f4c7ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20K=C3=A4ppler?= <michael_kaeppler@web.de> Date: Fri, 30 Apr 2021 00:09:21 +0200 Subject: [PATCH] co2_sensor: Do not report new data in all cases Log every measurement to the serial console, but return only `true` in `processData()`(thus starting further processing like CSV, MQTT, LORAWAN) if the data is reliable (stable measurements, CO2 > 0) or the sensor measures too low CO2 values (< 250). The latter condition should be reported, because the user can then initiate a manual calibration procedure. --- ampel-firmware/co2_sensor.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ampel-firmware/co2_sensor.cpp b/ampel-firmware/co2_sensor.cpp index efeec4e..637ec0a 100644 --- a/ampel-firmware/co2_sensor.cpp +++ b/ampel-firmware/co2_sensor.cpp @@ -291,7 +291,9 @@ namespace sensor { showState(); - return freshData; + // Report data for further processing only if the data is reliable + // (state 'READY') or manual calibration is necessary (state 'NEEDS_CALIBRATION'). + return freshData && (current_state == READY || current_state == NEEDS_CALIBRATION); } /***************************************************************** -- GitLab