Support SHT3x

This commit is contained in:
Phat Nguyen
2024-02-06 09:38:37 +07:00
parent 8b73ac77f9
commit 4c180fedbd
31 changed files with 2198 additions and 29 deletions

View File

@ -471,7 +471,7 @@ void connectToWifi() {
static void boardInit(void) {
/** Init SHT sensor */
if (ag.sht.begin(Wire) == false) {
if (ag.sht4x.begin(Wire) == false) {
failedHandler("SHT init failed");
}
@ -545,8 +545,8 @@ void pmPoll() {
}
static void tempHumPoll() {
temp = ag.sht.getTemperature();
hum = ag.sht.getRelativeHumidity();
temp = ag.sht4x.getTemperature();
hum = ag.sht4x.getRelativeHumidity();
Serial.printf("Temperature: %0.2f\r\n", temp);
Serial.printf(" Humidity: %d\r\n", hum);

View File

@ -884,7 +884,7 @@ static void boardInit(void) {
}
/** INit SHT */
if (ag.sht.begin(Wire) == false) {
if (ag.sht4x.begin(Wire) == false) {
failedHandler("Init SHT failed");
}
@ -1329,8 +1329,8 @@ static void sendDataToServer(void) {
* @brief Update temperature and humidity value
*/
static void tempHumPoll(void) {
temp = ag.sht.getTemperature();
hum = ag.sht.getRelativeHumidity();
temp = ag.sht4x.getTemperature();
hum = ag.sht4x.getRelativeHumidity();
Serial.printf("Temperature: %0.2f\r\n", temp);
Serial.printf(" Humidity: %d\r\n", hum);

View File

@ -99,7 +99,7 @@ void setup() {
#if TEST_SENSOR_SHT4x
if (ag.sht.begin(Wire)) {
if (ag.sht4x.begin(Wire)) {
log_i("SHT init success");
} else {
log_i("SHT init failed");
@ -218,9 +218,9 @@ void loop() {
ms = (uint32_t)(millis() - shtTime);
if (ms >= 1000) {
shtTime = millis();
log_i("Get sht temperature: %0.2f (degree celsius)",
ag.sht.getTemperature());
log_i("Get sht temperature: %0.2f (%%)", ag.sht.getRelativeHumidity());
log_i("Get sht4x temperature: %0.2f (degree celsius)",
ag.sht4x.getTemperature());
log_i("Get sht4x temperature: %0.2f (%%)", ag.sht4x.getRelativeHumidity());
}
#endif

View File

@ -58,7 +58,7 @@ void setup() {
#endif
#if TEST_SENSOR_SHT4x
if (ag.sht.begin(Wire, Serial)) {
if (ag.sht4x.begin(Wire, Serial)) {
Serial.println("SHT init success");
} else {
Serial.println("SHT init failed");
@ -131,7 +131,7 @@ void loop() {
shtTime = millis();
float temperature, humidity;
Serial.printf("SHT Temperature: %f, Humidity: %f\r\n",
ag.sht.getTemperature(), ag.sht.getRelativeHumidity());
ag.sht4x.getTemperature(), ag.sht4x.getRelativeHumidity());
}
#endif

View File

@ -0,0 +1,39 @@
#include <AirGradient.h>
AirGradient ag(DIY_BASIC);
void failedHandler(String msg);
void setup() {
Serial.begin(115200);
Wire.begin(ag.getI2cSdaPin(), ag.getI2cSclPin());
if (ag.sht3x.begin(Wire, Serial) == false) {
failedHandler("SHT3x init failed");
}
}
void loop() {
float temp = ag.sht3x.getTemperature();
if (temp <= -256.0f) {
Serial.println("Get temperature failed");
} else {
Serial.printf("Get temperature: %f\r\n", temp);
}
float hum = ag.sht3x.getRelativeHumidity();
if (hum < 0) {
Serial.println("Get humidity failed");
} else {
Serial.printf("Get humidity: %f\r\n", hum);
}
delay(1000);
}
void failedHandler(String msg) {
while (true) {
Serial.println(msg);
delay(1000);
}
}