#include "DHTesp.h"
const int DHT_PIN = 15;
DHTesp dhtSensor;
int suhu; //variable suhu
int kelembapan; //variable kelembapan
#define BLYNK_TEMPLATE_ID "TMPLhMv6sOaR"
#define BLYNK_DEVICE_NAME "DHT22 3 LED"
#define BLYNK_AUTH_TOKEN "S9sSJxnoXrQKtjvosefwyRm0DzgCtttf"
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
void myTimerEvent()
{
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature, 2) + "°C");
suhu=data.temperature;
Serial.println("Humidity: " + String(data.humidity, 1) + "%");
kelembapan=data.humidity;
Blynk.virtualWrite(V0, suhu);
Blynk.virtualWrite(V4, kelembapan);
if(suhu<=20){
digitalWrite(25, LOW);
digitalWrite(33, LOW);
digitalWrite(32, LOW);
}
if(suhu>=21 && suhu<=40){
digitalWrite(25, HIGH);
digitalWrite(33, LOW);
digitalWrite(32, LOW);
}
if(suhu>=41 && suhu<=52){
digitalWrite(25, HIGH);
digitalWrite(33, HIGH);
digitalWrite(32, LOW);
}
if(suhu>=53 && suhu<=100){
digitalWrite(25, HIGH);
digitalWrite(33, HIGH);
digitalWrite(32, HIGH);
}
}
void setup()
{
Serial.begin(115200);
Blynk.begin(auth, ssid, pass);
timer.setInterval(1000L, myTimerEvent);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
pinMode(25, OUTPUT);
pinMode(33, OUTPUT);
pinMode(32, OUTPUT);
}
void loop()
{
Blynk.run();
timer.run(); // Initiates BlynkTimer
}