Hello, I adapted this code to my needs it is working perfect but I am looking to make it better, maybe shorter and easier to read. What you developers would do better.
It is a simple command relay to turn ON OFF two different devices in predetermined hour, Thanks in advance.
Blockquote
#include <DS3231.h>
'
int RelayIN1 = 4;
int RelayIN2 = 5;
'
DS3231 rtc(SDA, SCL);
Time t;
'
const int OnHour1 = 22;
const int OnMin1 = 10;
const int OnSec1 = 00;
const int OffHour1 = 22;
const int OffMin1 = 10;
const int OffSec1 = 30;
'
const int OnHour2 = 22;
const int OnMin2 = 11;
const int OnSec2 = 00;
const int OffHour2 = 22;
const int OffMin2 = 11;
const int OffSec2 = 35;
'
const int OnHour3 = 22;
const int OnMin3 = 12;
const int OnSec3 = 00;
const int OffHour3 = 22;
const int OffMin3 = 12;
const int OffSec3 = 32;
'
const int OnHour4 = 22;
const int OnMin4 = 11;
const int OnSec4 = 05;
const int OffHour4 = 22;
const int OffMin4 = 12;
const int OffSec4 = 35;
'
void setup() {
Serial.begin(115200);
rtc.begin();
'
pinMode(RelayIN1, OUTPUT);
digitalWrite(RelayIN1, LOW);
'
pinMode(RelayIN2, OUTPUT);
digitalWrite(RelayIN2, LOW);
}
void loop() {
t = rtc.getTime();
Serial.print(t.hour);
Serial.print(" hour(s), ");
Serial.print(t.min);
Serial.print(" minute(s)");
Serial.print(t.sec);
Serial.print(" seconds(s)");
Serial.println(" ");
delay (1000);
'
if(t.hour == OnHour1 && t.min == OnMin1 && t.sec == OnSec1){
digitalWrite(RelayIN1,HIGH);
Serial.println("Morning Spray ON");
}
else if(t.hour == OffHour1 && t.min == OffMin1 && t.sec == OffSec1){
digitalWrite(RelayIN1,LOW);
Serial.println("Morning Spray OFF");
}
'
if(t.hour == OnHour2 && t.min == OnMin2 && t.sec == OnSec2){
digitalWrite(RelayIN1,HIGH);
Serial.println("Afternoon Spray ON");
}
else if(t.hour == OffHour2 && t.min == OffMin2 && t.sec == OffSec2){
digitalWrite(RelayIN1,LOW);
Serial.println("Afternoon Spray OFF");
}
'
if(t.hour == OnHour3 && t.min == OnMin3 && t.sec == OnSec3){
digitalWrite(RelayIN1,HIGH);
Serial.println("Evening Spray ON");
}
else if(t.hour == OffHour3 && t.min == OffMin3 && t.sec == OffSec3){
digitalWrite(RelayIN1,LOW);
Serial.println("Evening Spray OFF");
}
'
if(t.hour == OnHour4 && t.min == OnMin4 && t.sec == OnSec4){
digitalWrite(RelayIN2,HIGH);
Serial.println("LED Day Lights ON");
}
else if(t.hour == OffHour4 && t.min == OffMin4 && t.sec == OffSec4){
digitalWrite(RelayIN2,LOW);
Serial.println("LED Night OFF");
}
}
Blockquote