//* Make by BLK Surabaya *//

//Ganti Sesuai Template Pada Blynk
// #define BLYNK_TEMPLATE_ID "TMPL6m9AsuOcX"
// #define BLYNK_TEMPLATE_NAME "ledblink"
// #define BLYNK_AUTH_TOKEN "PbX9X-SqgcmAJSnuNJAQ6X5_YG99ciqh"
#define BLYNK_TEMPLATE_ID "TMPL6HoMA3VSd"
#define BLYNK_TEMPLATE_NAME "suhu"
#define BLYNK_AUTH_TOKEN "8gSar4M-szXeoUshn91O3nB2rlNhY3N8"

#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> //Tambahkan library 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
BlynkTimer timer;

#define LED 22 
#define DHTPIN 14 // Pin yang terhubung ke sensor DHT22
#define DHTTYPE DHT22 // Jenis sensor DHT

DHT dht(DHTPIN, DHTTYPE); // Inisialisasi objek DHT

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);
  dht.begin(); // Inisialisasi sensor DHT22
}

void loop() {
  // put your main code here, to run repeatedly:
  // Memproses event Blynk dan untuk menjalankan timer Blynk.
  Blynk.run();
  timer.run();

  // Baca suhu dari sensor DHT22 dan kirim ke Blynk
  float temperature = dht.readTemperature(); // Baca suhu dari sensor DHT22
  if (!isnan(temperature)) {
    Blynk.virtualWrite(V1, temperature); // Kirim suhu ke widget V1 di Blynk
  }

  // Baca kelembaban dari sensor DHT22 dan kirim ke Blynk
  float humidity = dht.readHumidity(); // Baca kelembaban dari sensor DHT22
  if (!isnan(humidity)) {
    Blynk.virtualWrite(V2, humidity); // Kirim kelembaban ke widget V2 di Blynk
  }
}
Loading
esp32-devkit-v1