#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);
}