Commit 9a6fa9e7 authored by Eric Duminil's avatar Eric Duminil
Browse files

calibrate! was broken

parent a60fc29f
Pipeline #3591 passed with stage
in 1 minute and 44 seconds
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
namespace config { namespace config {
// UPPERCASE values should be defined in config.h // UPPERCASE values should be defined in config.h
uint16_t measurement_timestep = MEASUREMENT_TIMESTEP; // [s] Value between 2 and 1800 (range for SCD30 sensor). uint16_t measurement_timestep = MEASUREMENT_TIMESTEP; // [s] Value between 2 and 1800 (range for SCD30 sensor).
const uint16_t altitude_above_sea_level = ALTITUDE_ABOVE_SEA_LEVEL; // [m] const uint16_t altitude_above_sea_level = ALTITUDE_ABOVE_SEA_LEVEL; // [m]
uint16_t co2_calibration_level = ATMOSPHERIC_CO2_CONCENTRATION; // [ppm] uint16_t co2_calibration_level = ATMOSPHERIC_CO2_CONCENTRATION; // [ppm]
const uint16_t measurement_timestep_bootup = 5; // [s] Measurement timestep during acclimatization. const uint16_t measurement_timestep_bootup = 5; // [s] Measurement timestep during acclimatization.
...@@ -201,7 +201,7 @@ namespace sensor { ...@@ -201,7 +201,7 @@ namespace sensor {
Serial.print(F("Setting SCD30 timestep to ")); Serial.print(F("Setting SCD30 timestep to "));
Serial.print(config::measurement_timestep); Serial.print(config::measurement_timestep);
Serial.println(F(" s.")); Serial.println(F(" s."));
if (config::measurement_timestep < 10){ if (config::measurement_timestep < 10) {
Serial.println(F("WARNING: Timesteps shorter than 10s can lead to unreliable measurements!")); Serial.println(F("WARNING: Timesteps shorter than 10s can lead to unreliable measurements!"));
} }
scd30.setMeasurementInterval(config::measurement_timestep); // [s] scd30.setMeasurementInterval(config::measurement_timestep); // [s]
...@@ -322,7 +322,12 @@ namespace sensor { ...@@ -322,7 +322,12 @@ namespace sensor {
} }
void calibrateSensorRightNow(int32_t calibrationLevel) { void calibrateSensorRightNow(int32_t calibrationLevel) {
stable_measurements = config::stable_measurements_before_calibration; if (calibrationLevel >= 400 && calibrationLevel <= 2000) {
calibrateSensorToSpecificPPM(calibrationLevel); Serial.print(F("Force calibration, right now, at "));
config::co2_calibration_level = calibrationLevel;
Serial.print(config::co2_calibration_level);
Serial.println(F(" ppm."));
calibrateAndRestart();
}
} }
} }
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment