[AJUDA] Automação Residencial com Arduino: acenda lâmpadas pela internet

Recentemente ví esse post;

Preciso colocar um temporizador para desligar a lampada automaticamente, fiz da seguinte maneira;

//Controle do rele1
Serial.println(readString);
//Liga o Rele 1
if (readString.indexOf("?ligar") > 0)
{
digitalWrite(pino_rele1, LOW);
Serial.println(“Rele 1 Ligado”);
ligado = false;
delay (120000);
digitalWrite(pino_rele1, HIGH);
Serial.println(“Rele 1 Desligado”);
ligado = true;

Porém dessa forma, utilizando delay o status da lampada não é atualizado.
Como poderia utilizar o millis() para esse caso?

maneira , simples sem ter que usar millis()
isso resolve o problema

for(int a = 0; a < 1200; a++){

if (readString.indexOf("?ligar") > 0){
digitalWrite(pino_rele1, HIGH); }

if (readString.indexOf("?desligar") > 0){
digitalWrite(pino_rele1, LOW); a = 1200;}

delay(100);

}

agora quer usar millis(), veja blink without delay nos exemplos do arduino