//* Make by BLK Surabaya *//
//Ganti Sesuai Template Pada Blynk
#define BLYNK_TEMPLATE_ID "TMPL6R-zIdoOC"
#define BLYNK_TEMPLATE_NAME "Suhu"
#define BLYNK_AUTH_TOKEN "REp-sRrhQ7-EgPdCMR9JSeh_CKkxmkDm"
#include <WiFi.h> //dari library wifi , kl mau pake wifi harus pake ini
#include <WiFiClient.h> //kek diatas
#include <BlynkSimpleEsp32.h> //library blynk
#include <DHT.h>
char auth[] = BLYNK_AUTH_TOKEN; //supaya manggil template token di atas
char ssid[] = "Wokwi-GUEST"; //ini wifinya wokwi buat simulasi
char pass[] = ""; //ga ada pass , kl diganti kenyataan ya diganti sesuai pass asli
//Mendefinisikan Timer pada Blynk
DHT dht(23, DHT22);
BlynkTimer timer;
#define LED 22
int SW_state = 0; //kondisi lampu mati
BLYNK_WRITE (V0)//Fungsi Callback BLYNK_WRITE:
{
SW_state = param.asInt(); //kondisi saklar sw state, param asint itu dari blynk
if(SW_state == 1){
digitalWrite(LED, HIGH);
Serial.println("Lampu telah dihidupkan");
Blynk.virtualWrite(V0, HIGH);
}else{
digitalWrite(LED, LOW);
Serial.println("Lampu telah dimatikan");
Blynk.virtualWrite(V0, LOW);
}
}
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(LED, OUTPUT);
Blynk.begin(auth, ssid, pass);
timer.setInterval(100L,DHT22sensor);
}
void DHT22sensor(){
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h)|| isnan (t)){
Serial.println("failed");
}
Blynk.virtualWrite(V1,t);
Blynk.virtualWrite(V2,h);
}
void loop() {
// put your main code here, to run repeatedly:
// Memproses event Blynk dan untuk menjalankan timer Blynk.
Blynk.run();
timer.run();
}