#define BLYNK_PRINT Serial
#include <BlynkSimpleEsp32.h>
#define BLYNK_AUTH_TOKEN "ft1qhm4EJy_jLS6l5X6Zw54Z1u1HmyiG" //Enter your blynk auth token
#include <DHT.h>
DHT dht(15, DHT22); //Pin, Jenis DHT
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";//Enter your WIFI name
char pass[] = "";//Enter your WIFI password
BlynkTimer timer; // Creating a timer object
int LED = 12;
//Get the button value
BLYNK_WRITE(V0) {
int pinValue = param.asInt();
Serial.print("Button V0 : ");
Serial.println(pinValue);
digitalWrite(LED_BUILTIN, pinValue ); // turn the LED on (HIGH is the voltage level)
}
BLYNK_WRITE(V1) {
int pinValue = param.asInt();
Serial.print("Button V1 : ");
Serial.println(pinValue);
digitalWrite(LED, pinValue ); // turn the LED on (HIGH is the voltage level)
}
void myTimerEvent()
{
Blynk.virtualWrite(V2, millis() / 1000);
float kelembaban = dht.readHumidity();
float suhu = dht.readTemperature();
Blynk.virtualWrite(V3, suhu);
Blynk.virtualWrite(V4, kelembaban);
if (kelembaban >= 70)
{
digitalWrite(LED, HIGH ); // turn the LED on (HIGH is the voltage level)
Blynk.virtualWrite(V5, "1");
}
else {
digitalWrite(LED, LOW ); // turn the LED on (HIGH is the voltage level)
Blynk.virtualWrite(V5, "0");
}
Serial.print("kelembaban: ");
Serial.print(kelembaban);
Serial.print(" ");
Serial.print("suhu: ");
Serial.println(suhu);
}
void setup() {
Serial.begin(9600);
pinMode(LED_BUILTIN, OUTPUT);
pinMode(LED, OUTPUT);
//Initialize the Blynk library
Blynk.begin(auth, ssid, pass, "blynk.cloud", 80);
dht.begin();
timer.setInterval(1000L, myTimerEvent);
}
void loop() {
//Run the Blynk library
Blynk.run();
timer.run();
}