mirror of https://github.com/arendst/Tasmota.git
MS5837 pressure offset persistent between resets (#22476)
* Finalized gain/integration adjustment trees * Fixed the bugs * works but polishing code * need to debug pressure in bmp * updated temp to change via setoption8 command from tasmota * sensor table working, value reporting working, need to update dependency on sensor duality * working * updated file name for ms5837 xsns file * final working with renamed for current updates (128->116) * resolved PR comments for extra spaces, xi2c_96 * removed extra spaces, added unit for inches across languages * removed inches as a unit from language files * pressure offset retained between resets
This commit is contained in:
parent
50b6f74295
commit
551c919ae2
|
@ -52,6 +52,9 @@ void MS5837init(void) {
|
||||||
ms5837_sensor.setModel(ms5837_sensor.MS5837_02BA);
|
ms5837_sensor.setModel(ms5837_sensor.MS5837_02BA);
|
||||||
ms5837_sensor.setFluidDensity(997); // kg/m^3 (freshwater, 1029 for seawater)
|
ms5837_sensor.setFluidDensity(997); // kg/m^3 (freshwater, 1029 for seawater)
|
||||||
ms5837_start = true;
|
ms5837_start = true;
|
||||||
|
if(!isnan(Settings->ms5837_pressure_offset)) {
|
||||||
|
ms5837_pressure_offset = Settings->ms5837_pressure_offset;
|
||||||
|
}
|
||||||
I2cSetActiveFound(MS5837_ADDR, "MS5837");
|
I2cSetActiveFound(MS5837_ADDR, "MS5837");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -124,10 +127,12 @@ bool ms5837CommandSensor() {
|
||||||
#ifdef USE_BMP
|
#ifdef USE_BMP
|
||||||
ms5837_pressure_offset = bmp_sensors[0].bmp_pressure - ms5837_sensor.pressure();
|
ms5837_pressure_offset = bmp_sensors[0].bmp_pressure - ms5837_sensor.pressure();
|
||||||
#endif // USE_BMP
|
#endif // USE_BMP
|
||||||
|
Settings->ms5837_pressure_offset = ms5837_pressure_offset;
|
||||||
Response_P(PSTR("Set MS5837 pressure offset to %f"),ms5837_pressure_offset);
|
Response_P(PSTR("Set MS5837 pressure offset to %f"),ms5837_pressure_offset);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
ms5837_pressure_offset = value;
|
ms5837_pressure_offset = value;
|
||||||
|
Settings->ms5837_pressure_offset = ms5837_pressure_offset;
|
||||||
Response_P(PSTR("Set MS5837 pressure offset to %f"),ms5837_pressure_offset);
|
Response_P(PSTR("Set MS5837 pressure offset to %f"),ms5837_pressure_offset);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue