#define BLYNK_PRINT Serial
#define BLYNK_TEMPLATE_ID "TMPL6RX8znZOb"
#define BLYNK_TEMPLATE_NAME "DHT22"
#define BLYNK_AUTH_TOKEN "8ZiZBXujgWBBszTCZKY6I_cnUqEFCpow"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <RTClib.h> // Tambahkan pustaka RTClib
#include <Servo.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
Servo servo;
const int SERVO_PIN = 32; // Pin untuk mengendalikan servo
void setup() {
Serial.begin(15200);
Blynk.begin(auth, ssid, pass);
servo.attach(SERVO_PIN);
}
void loop() {
Blynk.run();
}
BLYNK_WRITE(V3) {
int feedingSwitchStatus = param.asInt(); // Mendapatkan status switch dari Blynk
if (feedingSwitchStatus == 1) { // Jika switch dalam posisi ON
// Beri makan secara manual
giveFood();
// Perbarui waktu terakhir pemberian makan
// lastFeedingTime = rtc.now(); // Pastikan Anda telah mendeklarasikan lastFeedingTime sebelumnya
}
}
void giveFood() {
// Putar servo untuk memberikan pakan
servo.write(90); // Ganti angka 90 dengan sudut yang sesuai untuk memberi pakan
delay(1000); // Tunggu 1 detik
servo.write(0); // Putar servo kembali ke posisi awal
}
//@Rymutich '_' Ojo Lupa Ngopi