33class SHT3x :
public ThermHygroMeter {
35 explicit SHT3x(int8_t address = 0x44) : address(address) {
38 double getTemp()
override {
39 readValuesFromDevice();
43 double getHumi()
override {
49 channel.setNewValue(getTemp(), getHumi());
53 void readValuesFromDevice() {
54 SHT31D result = sht.readTempAndHumidity(
55 SHT3XD_REPEATABILITY_LOW, SHT3XD_MODE_CLOCK_STRETCH, 50);
57 if (result.error != SHT3XD_NO_ERROR) {
58 Serial.print(F(
"SHT [ERROR] Code #"));
59 Serial.println(result.error);
63 temperature = TEMPERATURE_NOT_AVAILABLE;
64 humidity = HUMIDITY_NOT_AVAILABLE;
68 temperature = result.t;
75 double temperature = TEMPERATURE_NOT_AVAILABLE;
76 double humidity = HUMIDITY_NOT_AVAILABLE;
77 int8_t retryCount = 0;
78 ::ClosedCube_SHT31D sht;