#include "DHTesp.h"
const int DHT_PIN = 15;
const int humi_high = 23;
const int humi_mod = 22;
const int humi_low = 21;
const int temp_high = 19;
const int temp_mod = 18;
const int temp_low = 5;
DHTesp dhtSensor;
TempAndHumidity data;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
pinMode(humi_high, OUTPUT);
pinMode(humi_mod, OUTPUT);
pinMode(humi_low, OUTPUT);
pinMode(temp_high, OUTPUT);
pinMode(temp_mod, OUTPUT);
pinMode(temp_low, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
data = dhtSensor.getTempAndHumidity();
Serial.println("Humi: " + String(data.humidity, 1));
Serial.println("Temp: " + String(data.temperature, 2));
Serial.println("------------------------");
// Humidity
if (data.humidity > 50){
digitalWrite(humi_high, HIGH);
digitalWrite(humi_mod, LOW);
digitalWrite(humi_low, LOW);
}else if (data.humidity > 30){
digitalWrite(humi_high, LOW);
digitalWrite(humi_mod, HIGH);
digitalWrite(humi_low, LOW);
}else{
digitalWrite(humi_high, LOW);
digitalWrite(humi_mod, LOW);
digitalWrite(humi_low, HIGH);
}
// Temperature
if (data.temperature > 40){
digitalWrite(temp_high, HIGH);
digitalWrite(temp_mod, LOW);
digitalWrite(temp_low, LOW);
}else if (data.temperature > 30){
digitalWrite(temp_high, LOW);
digitalWrite(temp_mod, HIGH);
digitalWrite(temp_low, LOW);
}else{
digitalWrite(temp_high, LOW);
digitalWrite(temp_mod, LOW);
digitalWrite(temp_low, HIGH);
}
delay(1000);
}