 //Define os pinos para o trigger e echo
 #define PINO_TRIGGER 8
 #define PINO_ECHO 9
-#define PINO_LED_OCUPACAO 12
+#define PINO_LED_OCUPACAO 4
+
 // Distância que define se a garagem está ocupada
 #define DISTANCIA_OCUPADA 10
+#define TEMPO_NOVA_LEITURA_GARAGEM 5000
+
 #define TP_GARAGEM_STATUS "casa/garagem/status"
 
 int status_garagem = LOW;

#define TEMPO_NOVA_TENTATIVA 5000

// Carrega biblioteca para economia de energia
#include <Narcoleptic.h>

  pinMode(PINO_SENSOR_MOV, INPUT);
  pinMode(PINO_LED_ALARME, OUTPUT);
  pinMode(PINO_BUZZER, OUTPUT);

  attachInterrupt(INTERRUPCAO_ALARME, verificar_movimento, RISING);
}

volatile void acionar_alarme() {
  digitalWrite(PINO_LED_ALARME, HIGH);
  if (status_alarme == ALARME_ATIVADO) {
    client.publish(TP_ALARME_STATUS, "1");
    status_alarme = ALARME_ACIONADO;
  }
}

void verificar_movimento() {  
  Serial.println(digitalRead(PINO_SENSOR_MOV));
  if (digitalRead(PINO_SENSOR_MOV)) {
    acionar_alarme();
  }
}

void tratar_status_alarme(int status_recebido) {
  status_alarme = status_recebido;
}

void acionar_buzzer() {
  //Ligando o buzzer com uma frequencia de 1500 hz.
  tone(PINO_BUZZER, FREQ_BUZZER);   
  delay(DELAY_SONORO);
  
  //Desligando o buzzer.
  noTone(PINO_BUZZER);
  delay(DELAY_SONORO);
}


