17 explicit BMP180(int8_t address = 0x77)
18 : address(address), sensorStatus(
false) {
22 float value = TEMPERATURE_NOT_AVAILABLE;
23 bool retryDone =
false;
25 if (!sensorStatus || isnan(value)) {
26 sensorStatus = bmp.begin(address);
29 value = TEMPERATURE_NOT_AVAILABLE;
31 value = bmp.readTemperature();
33 }
while (isnan(value) && !retryDone);
38 float value = PRESSURE_NOT_AVAILABLE;
39 bool retryDone =
false;
41 if (!sensorStatus || isnan(value)) {
42 sensorStatus = bmp.begin(address);
45 value = PRESSURE_NOT_AVAILABLE;
47 value = bmp.readPressure() / 100.0;
49 }
while (isnan(value) && !retryDone);
54 sensorStatus = bmp.begin(address);
56 channel.setNewValue(getTemp());
57 pressureChannel.setNewValue(getPressure());