/**
ESP32 + DHT22 Example for Wokwi
https://wokwi.com/arduino/projects/322410731508073042
*/
#include "DHTesp.h"
const int DHT_PIN = 15;
DHTesp dhtSensor;
#define ledgreen 27
#define ledred 14
#define ledyellow 26
#define ledviolet 25
void setup() {
Serial.begin(115200);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
pinMode(ledgreen,OUTPUT);
pinMode(ledred, OUTPUT);
pinMode(ledyellow, OUTPUT);
pinMode(ledviolet, OUTPUT);
}
void loop() {
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature, 2) + "°C");
Serial.println("Humidity: " + String(data.humidity, 1) + "%");
Serial.println("---");
delay(2000); // Wait for a new reading from the sensor (DHT22 has ~0.5Hz sample rate)
if(data.temperature >= 75){
digitalWrite(ledred, HIGH);
digitalWrite(ledgreen, LOW);
digitalWrite(ledyellow, LOW);
}else if(data.temperature >= 35 & data.temperature <= 74){
digitalWrite(ledred, LOW);
digitalWrite(ledgreen, LOW);
digitalWrite(ledyellow, HIGH);
}
else{
digitalWrite(ledred, LOW);
digitalWrite(ledgreen, HIGH);
digitalWrite(ledyellow, LOW);
}
if (data.humidity >= 60){
digitalWrite(ledred, LOW);
digitalWrite(ledgreen, LOW);
digitalWrite(ledyellow, LOW);
digitalWrite(ledviolet, HIGH);
}
else if(data.humidity < 60){
digitalWrite(ledred, LOW);
digitalWrite(ledgreen, LOW);
digitalWrite(ledyellow, LOW);
digitalWrite(ledviolet, LOW);
}
}