Arbeitsweise vom sketch

Als Anfänger sollte man den Sketch nur als negativ Beispiel ansehen, da ist einfach so viel falsch in dem Sketch:

void checkRelayStatusON(){ //Interrupt
  Serial.println("Motion Detected. Low To High Interrupt Triggered");
}

Für solche Sachen braucht man keine Interrupts, man liest Pins einfach wiederholt in der loop() aus, eventuell auch mit Flankenerkennung.
Serial in Interrupts geht ja mal garnicht, genauso wie delay. Ein Interrupt sollte schnelsstmölich verlassen werden.

digitalWrite(relay, LOW);
    if(digitalRead(relay)==LOW){
    Serial.println("Relay successfully turned OFF");
  }
  else{
     Serial.println("Switching OFF relay FAILED...");
  }

Warum sollte man sowas überprüfen?

Programmiere dein Programm lieber selbst von Grund auf, verwende auch keine Codeschnipsel aus dem Sketch dieser Seite, damit lernst du nur falsche Dinge.