#include <Wire.h>
#include <ESP32Servo.h> // Ganti dengan library ESP32Servo
#include "RTClib.h"
RTC_DS1307 rtc;
const int servoPin = 12;
Servo myServo;
int pos = 0;
void setup () {
myServo.attach(servoPin, 500, 2400);
Serial.begin(115200);
if (! rtc.begin()) {
Serial.println("Couldn't find RTC");
Serial.flush();
abort();
}
if (! rtc.isrunning()) {
Serial.println("RTC is NOT running, let's set the time!");
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
}
}
void loop() {
DateTime time = rtc.now();
// Cek jika waktu adalah 6 pagi
if (time.hour() == 21 && time.minute() == 06 && time.second() == 0) {
// Posisi awal servo adalah 90 derajat
myServo.write(90);
delay(1000); // Delay untuk memastikan servo mencapai posisi awal
// Putar servo hingga 180 derajat
myServo.write(180);
delay(1000); // Delay untuk memberikan waktu servo berputar
}
//Full Timestamp
Serial.println(String("DateTime::TIMESTAMP_FULL:\t") + time.timestamp(DateTime::TIMESTAMP_FULL));
//Date Only
Serial.println(String("DateTime::TIMESTAMP_DATE:\t") + time.timestamp(DateTime::TIMESTAMP_DATE));
//Full Timestamp
Serial.println(String("DateTime::TIMESTAMP_TIME:\t") + time.timestamp(DateTime::TIMESTAMP_TIME));
Serial.println("\n");
delay(500);
}