Problemas com relé

Sim... se quiseres podes meter o segundo, eu não me dei ao trabalho porque vi que não o usavas.

Quando à alternancia, eu reparei que o Arduino tem algum significado para now. Também reparei que meti as variáveis como locais.
Este sketch funciona para alternar de 10 em 10 segundos.

#define TIMEOUT 10000

void setup(){

Serial.begin(19200);
}

unsigned long t_now = 0, before = 0; 
unsigned char data = 0; 

void loop(){




if((t_now = millis())-before > TIMEOUT) {
   if (data == 0) {
      Serial.print("COISAS");
      data = 1; 
      } else {
      Serial.print("OUTRAS COISAS");
      data = 0;
      }
   before = t_now; 
   }


}