#include <FirebaseESP32.h>
#include <WiFi.h>
FirebaseData firebaseData;
// GANTI DENGAN FIREBASE HOST ANDA
#define FIREBASE_HOST "kontrol-4-led-62cb6-default-rtdb.firebaseio.com"
//GANTI DENGAN FIREBASE AUTH ANDA
#define FIREBASE_AUTH "tAfCNelvfvDJjmYZsMmgRdKAo7FOWTRUtkHSjsb6"
const char* ssid = "Wokwi-GUEST";
const char* password = "";
#define LED1 13
#define LED2 12
#define LED3 14
#define LED4 27
String message1 = "";
String message2 = "";
String message3 = "";
String message4 = "";
void setup() {
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT);
Serial.begin(115200);
delay(10);
Serial.println();
Serial.print("Connecting with ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("WiFi conected. IP: ");
Serial.println(WiFi.localIP());
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
//Firebase.reconnectWiFi(true);
}
void loop() {
if (Firebase.getString(firebaseData, "/kontrol_4_LED/LED1")) {
String message1_fb = firebaseData.stringData();
if (message1_fb != message1) {
message1 = message1_fb;
Serial.println(message1);
if(message1.indexOf("L1_ON") != -1){digitalWrite(LED1, HIGH);}
if(message1.indexOf("L1_OFF") != -1){digitalWrite(LED1, LOW);}
}
}
if (Firebase.getString(firebaseData, "/kontrol_4_LED/LED2")) {
String message2_fb = firebaseData.stringData();
if (message2_fb != message2) {
message2 = message2_fb;
Serial.println(message2);
if(message2.indexOf("L2_ON") != -1){digitalWrite(LED2, HIGH);}
if(message2.indexOf("L2_OFF") != -1){digitalWrite(LED2, LOW);}
}
}
if (Firebase.getString(firebaseData, "/kontrol_4_LED/LED3")) {
String message3_fb = firebaseData.stringData();
if (message3_fb != message3) {
message3 = message3_fb;
Serial.println(message3);
if(message3.indexOf("L3_ON") != -1){digitalWrite(LED3, HIGH);}
if(message3.indexOf("L3_OFF") != -1){digitalWrite(LED3, LOW);}
}
}
if (Firebase.getString(firebaseData, "/kontrol_4_LED/LED4")) {
String message4_fb = firebaseData.stringData();
if (message4_fb != message4) {
message4 = message4_fb;
Serial.println(message4);
if(message4.indexOf("L4_ON") != -1){digitalWrite(LED4, HIGH);}
if(message4.indexOf("L4_OFF") != -1){digitalWrite(LED4, LOW);}
}
}
}