Here is my code:
int relay_1 = 14; //analog pin A0 -> digital to relay 1 [for door unlock]
int relay_2 = 15; //analog pin A1 -> digital to relay 2 [for door lock]
int relay_3 = 16; //analog pin A2 -> digital to relay 3 [My garage door UP/DOWN]
int relay_4 = 17; //analog pin A3 -> digital to relay 4 [Wifes garage door UP/DOWN]
int relay_5 = 18; //analog pin A4 -> digital to relay 5 [n/a]
int relay_6 = 19; //analog pin A5 -> digital to relay 6 [n/a]
int relay_7 = 13; //Digital pin D13 to relay 7 [n/a]
int relay_8 = 12; //Digital pin D12 to relay 8 [n/a]
String readString;
void setup()
{
pinMode(relay_1, OUTPUT); // sets the analog pin A0 to digital as output [for door unlock]
pinMode(relay_2, OUTPUT); // sets the analog pin A1 to digital as output [for door lock]
pinMode(relay_3, OUTPUT); // sets the analog pin A2 to digital as output [My garage door up/down]
pinMode(relay_4, OUTPUT); // sets the analog pin A3 to digital as output [Wifes garage door up/down]
pinMode(relay_5, OUTPUT); // sets the analog pin A4 to digital as output [n/a]
pinMode(relay_6, OUTPUT); // sets the analog pin A5 to digital as output [n/a]
pinMode(relay_7, OUTPUT); // sets the digital D13 as output [n/a]
pinMode(relay_8, OUTPUT); // sets the digital D12 as output [n/a]
Serial.begin(115200);
}
void loop()
{
while (Serial.available())
{
delay(1);
if (Serial.available() >0)
{
char c = Serial.read();
readString += c;
}
}
if (readString == "frontDoorUNLOCK") {
digitalWrite(relay_1, HIGH);
delay(1000);
digitalWrite(relay_1, LOW);
Serial.println("unlocked");
} else if (readString == "frontDoorLOCK") {
digitalWrite(relay_2, HIGH);
delay(1000);
digitalWrite(relay_2, LOW);
Serial.println("locked");
}
if (readString == "myGarage") {
digitalWrite(relay_3, HIGH);
delay(500);
digitalWrite(relay_3, LOW);
Serial.println("done");
} else if (readString == "wifesGarage") {
digitalWrite(relay_4, HIGH);
delay(10000); //Needed to bypass damaged sensors on the garage door
digitalWrite(relay_4, LOW);
Serial.println("done");
}
if (readString == "testRelay") {
digitalWrite(relay_1, HIGH);
delay(500);
digitalWrite(relay_1, LOW);
digitalWrite(relay_2, HIGH);
delay(500);
digitalWrite(relay_2, LOW);
digitalWrite(relay_3, HIGH);
delay(500);
digitalWrite(relay_3, LOW);
digitalWrite(relay_4, HIGH);
delay(500);
digitalWrite(relay_4, LOW);
digitalWrite(relay_5, HIGH);
delay(500);
digitalWrite(relay_5, LOW);
digitalWrite(relay_6, HIGH);
delay(500);
digitalWrite(relay_6, LOW);
digitalWrite(relay_7, HIGH);
delay(500);
digitalWrite(relay_7, LOW);
digitalWrite(relay_8, HIGH);
delay(500);
digitalWrite(relay_8, LOW);
}
readString = "";
delay(100);
}