Fixing temp adj in F correcly

This commit is contained in:
Magnus Persson 2022-04-07 16:52:12 +02:00
parent 51daa23327
commit f5aae4f2ea
2 changed files with 8 additions and 6 deletions

View File

@ -322,12 +322,12 @@ class Config {
_tempSensorAdjC = f;
_saveNeeded = true;
}
void setTempSensorAdjC(String s) {
_tempSensorAdjC = s.toFloat();
void setTempSensorAdjC(String s, float adjustC = 0) {
_tempSensorAdjC = s.toFloat() + adjustC;
_saveNeeded = true;
}
void setTempSensorAdjF(String s) {
_tempSensorAdjC = convertFtoC(s.toFloat());
void setTempSensorAdjF(String s, float adjustF = 0) {
_tempSensorAdjC = convertFtoC(s.toFloat() + adjustF);
_saveNeeded = true;
}

View File

@ -61,8 +61,9 @@ void WebServerHandler::webHandleConfig() {
// Format the adjustment so we get rid of rounding errors
if (myConfig.isTempF())
// We want the delta value (32F = 0C).
doc[PARAM_TEMP_ADJ] =
reduceFloatPrecision(convertCtoF(myConfig.getTempSensorAdjC()), 1);
reduceFloatPrecision(convertCtoF(myConfig.getTempSensorAdjC())-32, 1);
else
doc[PARAM_TEMP_ADJ] = reduceFloatPrecision(myConfig.getTempSensorAdjC(), 1);
@ -605,7 +606,8 @@ void WebServerHandler::webHandleConfigHardware() {
if (myConfig.isTempC()) {
myConfig.setTempSensorAdjC(_server->arg(PARAM_TEMP_ADJ));
} else {
myConfig.setTempSensorAdjF(_server->arg(PARAM_TEMP_ADJ));
// Data is delta so we add 32 in order to conver to C.
myConfig.setTempSensorAdjF(_server->arg(PARAM_TEMP_ADJ), 32);
}
}
if (_server->hasArg(PARAM_BLE))