#include <DHT.h>
#define DHTPIN 4
#define DHTTYPE DHT22
#define LED_PIN 2
DHT dht(DHTPIN, DHTTYPE);
void setup() {
pinMode(LED_PIN, OUTPUT);
Serial.begin(115200);
dht.begin();
}
void loop() {
static unsigned long lastSendTime = 0;
unsigned long currentTime = millis();
if (currentTime - lastSendTime >= 2000) {
lastSendTime = currentTime;
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print(" %\t");
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" C");
}
if (Serial.available()) {
String command = Serial.readStringUntil('\n');
command.trim();
if (command.equalsIgnoreCase("ON")) {
digitalWrite(LED_PIN, HIGH);
} else if (command.equalsIgnoreCase("OFF")) {
digitalWrite(LED_PIN, LOW);
}
}
}