#define BLYNK_TEMPLATE_ID "TMPL6Ye-VoLgA"
#define BLYNK_TEMPLATE_NAME "Project 1 Smart Farm"
#define BLYNK_AUTH_TOKEN "PNW8NeWj22Q1tPFsfgQlUnLB9jN6r4H5"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
DHT dht(15, DHT22);
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
int state = LOW;
int value;
int value1;
BLYNK_WRITE(V1)
{
value = param.asInt();
state = value;
Blynk.virtualWrite(V0, value);
}
BLYNK_WRITE(V6)
{
value1 = param.asInt();
digitalWrite(5,value1);
Blynk.virtualWrite(V5, value1);
}
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Connecting to WiFi");
WiFi.begin("Wokwi-GUEST", "");
while (WiFi.status() != WL_CONNECTED) {
delay(100);
lcd.setCursor(0, 1);
lcd.print(".");
}
lcd.setCursor(0, 1);
lcd.print("IP ADD: ");
// lcd.setCursor(0, 1);
lcd.print(WiFi.localIP());
pinMode(2, OUTPUT);
pinMode(19, INPUT_PULLUP);
pinMode(5, OUTPUT);
Serial.begin(115200);
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
dht.begin();
}
void loop()
{
Blynk.run();
int val = digitalRead(19);
delay(50);
if (val == 0) {
state = !state;
Blynk.virtualWrite(V0, state);
Blynk.virtualWrite(V1, state);
delay(1000);
}
digitalWrite(2, state);
int h = dht.readHumidity();
int t = dht.readTemperature();
lcd.setCursor(0, 3);
lcd.print("Hum : ");
lcd.print(h);
lcd.setCursor(0, 2);
lcd.print("Temp : ");
lcd.print(t);
Blynk.virtualWrite(V3,h);
Blynk.virtualWrite(V2,t);
}//end loop