#define BLYNK_TEMPLATE_ID "TMPL6K5MmJDbo"
#define BLYNK_TEMPLATE_NAME "Try"
#define BLYNK_AUTH_TOKEN "CIbHU4mW78xVakCikO95STmcCjvjc4r4"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#include<DHTesp.h>
#define relay 18
char auth[] = BLYNK_AUTH_TOKEN ;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
DHTesp dht;
TempAndHumidity data;
void setup() {
Serial.begin(115200);
Blynk.begin(auth, ssid, pass);
Serial.println("Smart Irrigation System");
dht.setup(12,DHTesp::DHT22);
pinMode(relay, OUTPUT);
digitalWrite(relay, LOW);
timer.setInterval(5000L, DHT11sensor);
}
//Get the button value
BLYNK_WRITE(V0) {
bool Relay = param.asInt();
if (Relay == 1) {
digitalWrite(relay, HIGH);
Serial.print("Water Pump is ON");
} else {
digitalWrite(relay, LOW);
Serial.println("Water Pump is OFF");
}
}
void DHT11sensor() {
// DHT22 to display temperature and humidity
data = dht.getTempAndHumidity();
Serial.println("Humidity : " + String(data.humidity) + " %");
Blynk.virtualWrite(V4, data.humidity);
Serial.println("Temperature : " + String(data.temperature) + " °C" );
Blynk.virtualWrite(V5, data.temperature);
}
void loop() {
Blynk.run(); //Run the Blynk library
timer.run(); //Run the Blynk timer
}