#include <LCD_I2C.h>
LCD_I2C lcd(0x27, 16, 2);
#include "DHT.h"
#define DHTTYPE DHT22
#define DHTPIN 23
DHT dht (23, DHT22);
#include <Blynk.h>
#define BLYNK_PRINT Serial
#define BLYNK_TEMPLATE_ID "TMPL6mNb8FkCj"
#define BLYNK_TEMPLATE_NAME "DHT"
#define BLYNK_AUTH_TOKEN "hS1xpRH4d5umGG1PAD6Sfcy2MiJEP91h"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
#define buz 19
bool en;
BLYNK_WRITE(V4){
en = param.asInt();
}
bool led;
BLYNK_WRITE(V5){
led = param.asInt();
}
int sp;
BLYNK_WRITE(V3){
sp = param.asInt();
}
void setup() {
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
lcd.begin();
lcd.backlight();
dht.begin();
pinMode(buz, OUTPUT);
}
void loop() {
float h = dht.readHumidity();
float t = dht.readTemperature();
lcd.setCursor(0,0);
lcd.print("t:");
lcd.print(t);
lcd.setCursor(9,0);
lcd.print("h:");
lcd.print(h);
lcd.print(" ");
lcd.setCursor(0,1);
lcd.print("s:");
lcd.print(sp);
lcd.setCursor(5,1);
lcd.print("e:");
lcd.print(en);
lcd.setCursor(11,1);
lcd.print("b:");
lcd.print(" ");
if(en==0){
lcd.setCursor(12,1);
lcd.print("OFF");
digitalWrite(buz,LOW);
Blynk.virtualWrite(led,LOW);
}
if(en==1){
lcd.setCursor(7,1);
lcd.print("ON ");
if(t>=sp){
lcd.setCursor(13,1);
lcd.print("ON ");
digitalWrite(buz,HIGH);
Blynk.virtualWrite(led,HIGH);
}
if(t<sp){
lcd.setCursor(13,1);
lcd.print("OFF");
digitalWrite(buz,LOW);
Blynk.virtualWrite(led,LOW);
}
}
Blynk.run();
Blynk.virtualWrite(V0,h);
Blynk.virtualWrite(V1,t);
delay(2000);
}