#define BLYNK_TEMPLATE_ID "TMPL6jHovoogg"
#define BLYNK_TEMPLATE_NAME "IoTuts"
#define BLYNK_AUTH_TOKEN "p37NTvRq9O8542hbyCKipCfDaSjgf7tx"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
void sendSensorData() {
// Simulate sensor reading (replace this with your actual sensor code)
int sensorValue = random(0, 1023);
// Kirim nilai sensor ke Blynk
Blynk.virtualWrite(V1, sensorValue);
}
BLYNK_WRITE(V2) {
// Terima data dari Blynk
int newValue = param.asInt();
// Lakukan sesuatu dengan nilai yang diterima dari Blynk
// Contoh: Aktuasi pada aktuator (ganti ini dengan kode untuk mengendalikan aktuator)
Serial.println("Received value from Blynk: " + String(newValue));
}
void checkConnection() {
Serial.println("Checking Blynk connection...");
if (!Blynk.connected()) {
Serial.println("Reconnecting...");
if (Blynk.connect()) {
Serial.println("Reconnected with Blynk");
} else {
Serial.println("Reconnect failed. Please check your WiFi and Blynk credentials.");
}
} else {
Serial.println("Connected with Blynk");
}
}
void setup() {
Serial.begin(115200);
Serial.println("Connected with Blynk");
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
// Set up a timer to send sensor data every 1 second
timer.setInterval(1000L, sendSensorData);
// Set up a timer to check the connection status every 10 seconds
timer.setInterval(10000L, checkConnection);
}
void loop() {
Blynk.run();
timer.run();
}