#define BLYNK_TEMPLATE_ID "TMPL6613waGwI"
#define BLYNK_TEMPLATE_NAME "Smart Home"
#define BLYNK_AUTH_TOKEN "K8yjogBQI3WX9akFWI2j-419pxpkh9A7"
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
// Informasi WiFi
char ssid[] = "Wokwi-GUEST"; // Ganti dengan SSID WiFi Anda
char pass[] = "";
#define LAMPU_1 2 // Pin GPIO untuk Lampu 1
#define LAMPU_2 4 // Pin GPIO untuk Lampu 2
#define LAMPU_3 5 // Pin GPIO untuk Lampu 3
#define LAMPU_4 18 // Pin GPIO untuk Lampu 4
#define KIPAS 19 // Pin GPIO untuk Kipas
#define POMPA 21 // Pin GPIO untuk Pompa Air
BLYNK_WRITE(V0) {
int state = param.asInt();
digitalWrite(LAMPU_1, state == 1 ? HIGH : LOW);
Serial.print("Lampu 1: ");
Serial.println(state == 1 ? "ON" : "OFF");
}
BLYNK_WRITE(V1) {
int state = param.asInt();
digitalWrite(LAMPU_2, state == 1 ? HIGH : LOW);
Serial.print("Lampu 2: ");
Serial.println(state == 1 ? "ON" : "OFF");
}
BLYNK_WRITE(V2) {
int state = param.asInt();
digitalWrite(LAMPU_3, state == 1 ? HIGH : LOW);
Serial.print("Lampu 3: ");
Serial.println(state == 1 ? "ON" : "OFF");
}
BLYNK_WRITE(V3) {
int state = param.asInt();
digitalWrite(LAMPU_4, state == 1 ? HIGH : LOW);
Serial.print("Lampu 4: ");
Serial.println(state == 1 ? "ON" : "OFF");
}
BLYNK_WRITE(V4) {
int state = param.asInt();
digitalWrite(KIPAS, state == 1 ? HIGH : LOW);
Serial.print("Kipas: ");
Serial.println(state == 1 ? "ON" : "OFF");
}
BLYNK_WRITE(V5) {
int state = param.asInt();
digitalWrite(POMPA, state == 1 ? HIGH : LOW);
Serial.print("Pompa Air: ");
Serial.println(state == 1 ? "ON" : "OFF");
}
void setup() {
// Inisialisasi Serial Monitor
Serial.begin(115200);
// Inisialisasi koneksi Blynk
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
// Inisialisasi pin sebagai output
pinMode(LAMPU_1, OUTPUT);
pinMode(LAMPU_2, OUTPUT);
pinMode(LAMPU_3, OUTPUT);
pinMode(LAMPU_4, OUTPUT);
pinMode(KIPAS, OUTPUT);
pinMode(POMPA, OUTPUT);
// Memastikan semua relay mati saat awal start
digitalWrite(LAMPU_1, LOW);
digitalWrite(LAMPU_2, LOW);
digitalWrite(LAMPU_3, LOW);
digitalWrite(LAMPU_4, LOW);
digitalWrite(KIPAS, LOW);
digitalWrite(POMPA, LOW);
Serial.println("Sistem siap dan terkoneksi ke Blynk.");
}
void loop() {
Blynk.run();
// Semua relay hanya menyala jika menerima perintah dari Blynk
// Tanpa perintah dari Blynk, relay akan tetap mati
}