diff --git a/envisens/envisens_esp_fw/envisens_esp_fw.ino b/envisens/envisens_esp_fw/envisens_esp_fw.ino index 75311ae..a746692 100644 --- a/envisens/envisens_esp_fw/envisens_esp_fw.ino +++ b/envisens/envisens_esp_fw/envisens_esp_fw.ino @@ -105,7 +105,7 @@ bool checkVariation(float newValue, float prevValue, float maxDiff) { } bool checkPlausibility(float newValue, float prevValue, float maxDiff) { - return (newValue < prevValue + (maxDiff * 10) || newValue > prevValue - (maxDiff * 10) || lastVal == 0.0); + return (newValue < prevValue + (maxDiff * 10) || newValue > prevValue - (maxDiff * 10) || prevValue == 0.0); } long lastMsg = 0; @@ -119,9 +119,6 @@ bool publish (String desc, char *topic, float val, float &lastVal, float diff, b if (checkVariation(val, lastVal, diff) or force) { Serial.println("Sufficient variation on " + desc + ": " + String(val).c_str()); if (checkPlausibility(val, lastVal, diff) or force) { - if (lastVal != 0.0) { - val = (lastVal*2 + val) / 3; // slight averaging - } Serial.println("Value " + desc + " averaged and published : " + String(val).c_str()); client.publish(topic, String(val).c_str(), true); ret = true; @@ -186,7 +183,7 @@ void loop() { Serial.println("ERR: Sensor could not be identified"); } - if (!isnan(hmid) && !isnan(temp)){ + if (!isnan(hmid) && !isnan(temp) && hmid != 0.0 && temp != 0.0){ abhu = (6.112 * ( pow(2.71828, ((17.67 * temp) / (temp + 243.5))) * hmid * 2.1674)) / (273.15 + temp); }