get value function consume

This commit is contained in:
samuelbles07
2024-10-20 22:30:49 +07:00
parent 43ca0a2c2e
commit f478dd16c8
4 changed files with 50 additions and 54 deletions

View File

@ -1094,20 +1094,20 @@ static void updatePm(void) {
float temp, hum;
if (newPMS1Value && newPMS2Value) {
// Both PMS has new valid value
temp = (measurements.getFloat(Measurements::Temperature, false, 1) +
measurements.getFloat(Measurements::Temperature, false, 2)) /
temp = (measurements.getFloat(Measurements::Temperature, 1) +
measurements.getFloat(Measurements::Temperature, 2)) /
2.0f;
hum = (measurements.getFloat(Measurements::Humidity, false, 1) +
measurements.getFloat(Measurements::Humidity, false, 2)) /
hum = (measurements.getFloat(Measurements::Humidity, 1) +
measurements.getFloat(Measurements::Humidity, 2)) /
2.0f;
} else if (newPMS1Value) {
// Only PMS1 has new valid value
temp = measurements.getFloat(Measurements::Temperature, false, 1);
hum = measurements.getFloat(Measurements::Humidity, false, 1);
temp = measurements.getFloat(Measurements::Temperature, 1);
hum = measurements.getFloat(Measurements::Humidity, 1);
} else {
// Only PMS2 has new valid value
temp = measurements.getFloat(Measurements::Temperature, false, 2);
hum = measurements.getFloat(Measurements::Humidity, false, 2);
temp = measurements.getFloat(Measurements::Temperature, 2);
hum = measurements.getFloat(Measurements::Humidity, 2);
}
// Update compensation temperature and humidity for SGP41

View File

@ -74,50 +74,46 @@ String OpenMetrics::getPayload(void) {
int atmpCompensated = utils::getInvalidTemperature();
int ahumCompensated = utils::getInvalidHumidity();
if (config.hasSensorPMS1 && config.hasSensorPMS2) {
_temp = (measure.getFloat(Measurements::Temperature, false, 1) +
measure.getFloat(Measurements::Temperature, false, 2)) /
_temp = (measure.getFloat(Measurements::Temperature, 1) +
measure.getFloat(Measurements::Temperature, 2)) /
2.0f;
_hum = (measure.getFloat(Measurements::Humidity, false, 1) +
measure.getFloat(Measurements::Humidity, false, 2)) /
_hum = (measure.getFloat(Measurements::Humidity, 1) +
measure.getFloat(Measurements::Humidity, 2)) /
2.0f;
pm01 = (measure.get(Measurements::PM01, false, 1) + measure.get(Measurements::PM01, false, 2)) /
2.0f;
pm25 = (measure.get(Measurements::PM25, false, 1) + measure.get(Measurements::PM25, false, 2)) /
2.0f;
pm10 = (measure.get(Measurements::PM10, false, 1) + measure.get(Measurements::PM10, false, 2)) /
2.0f;
pm03PCount = (measure.get(Measurements::PM03_PC, false, 1) +
measure.get(Measurements::PM03_PC, false, 2)) /
2.0f;
pm01 = (measure.get(Measurements::PM01, 1) + measure.get(Measurements::PM01, 2)) / 2.0f;
pm25 = (measure.get(Measurements::PM25, 1) + measure.get(Measurements::PM25, 2)) / 2.0f;
pm10 = (measure.get(Measurements::PM10, 1) + measure.get(Measurements::PM10, 2)) / 2.0f;
pm03PCount =
(measure.get(Measurements::PM03_PC, 1) + measure.get(Measurements::PM03_PC, 2)) / 2.0f;
} else {
if (ag->isOne()) {
if (config.hasSensorSHT) {
_temp = measure.getFloat(Measurements::Temperature, false);
_hum = measure.getFloat(Measurements::Humidity, false);
_temp = measure.getFloat(Measurements::Temperature);
_hum = measure.getFloat(Measurements::Humidity);
}
if (config.hasSensorPMS1) {
pm01 = measure.get(Measurements::PM01, false);
pm25 = measure.get(Measurements::PM25, false);
pm10 = measure.get(Measurements::PM10, false);
pm03PCount = measure.get(Measurements::PM03_PC, false);
pm01 = measure.get(Measurements::PM01);
pm25 = measure.get(Measurements::PM25);
pm10 = measure.get(Measurements::PM10);
pm03PCount = measure.get(Measurements::PM03_PC);
}
} else {
if (config.hasSensorPMS1) {
_temp = measure.getFloat(Measurements::Temperature, false);
_hum = measure.getFloat(Measurements::Humidity, false);
pm01 = measure.get(Measurements::PM01, false);
pm25 = measure.get(Measurements::PM25, false);
pm10 = measure.get(Measurements::PM10, false);
pm03PCount = measure.get(Measurements::PM03_PC, false);
_temp = measure.getFloat(Measurements::Temperature, 1);
_hum = measure.getFloat(Measurements::Humidity, 1);
pm01 = measure.get(Measurements::PM01, 1);
pm25 = measure.get(Measurements::PM25, 1);
pm10 = measure.get(Measurements::PM10, 1);
pm03PCount = measure.get(Measurements::PM03_PC, 1);
}
if (config.hasSensorPMS2) {
_temp = measure.getFloat(Measurements::Temperature, false, 2);
_hum = measure.getFloat(Measurements::Humidity, false, 2);
pm01 = measure.get(Measurements::PM01, false, 2);
pm25 = measure.get(Measurements::PM25, false, 2);
pm10 = measure.get(Measurements::PM10, false, 2);
pm03PCount = measure.get(Measurements::PM03_PC, false, 2);
_temp = measure.getFloat(Measurements::Temperature, 2);
_hum = measure.getFloat(Measurements::Humidity, 2);
pm01 = measure.get(Measurements::PM01, 2);
pm25 = measure.get(Measurements::PM25, 2);
pm10 = measure.get(Measurements::PM10, 2);
pm03PCount = measure.get(Measurements::PM03_PC, 2);
}
}
}