siempre detecta presencia

Buenas a todos. Antes de irme de vacaciones tenía un código cargado en mi arduino para detectar presencia y a la vuelta de las vacaciones resulta que ya no funciona, os pongo el código y el resultado que me muestra.

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

// Pin real rf (D10)
// Pin real pir (D7)

//VARS
//El tiempo que nos da el sensor a calibrar (10-60 segundos de acuerdo con la hoja de datos)
int calibrationTime = 10;        

//El tiempo cuando el sensor emite un impulso de baja
long unsigned int lowIn;         

//La cantidad de milisegundos el sensor tiene que ser bajo
//Antes de que asuma todo el movimiento se ha detenido
long unsigned int pause = 5000;  

boolean lockLow = true;
boolean takeLowTime;  

int pirPin = 7;    //pin digital conectado a la salida del sensor PIR
//int ledPin = 8;


/////////////////////////////
//SETUP
void setup(){
  Serial.begin(9600);
  pinMode(pirPin, INPUT);
//  pinMode(ledPin, OUTPUT);
  digitalWrite(pirPin, LOW);

  //Dar el sensor de un cierto tiempo para calibrar
  Serial.print(" calibrando sensor ");
    for(int i = 0; i < calibrationTime; i++){
      Serial.print(".");
      delay(1000);
      }
    Serial.println(" hecho");
    Serial.println("SENSOR ACTIVADO");
    delay(50);

    mySwitch.enableTransmit(10);
  }

////////////////////////////
//LOOP
void loop(){

     if(digitalRead(pirPin) == HIGH){
       //digitalWrite(ledPin, HIGH);   //LED visualiza el estado de la salida del sensor
       if(lockLow){  
         //Se asegura de que esperar a que la transición a la baja antes de cualquier salida se hace otra:
         lockLow = false;            
         Serial.println("---");
         Serial.print("movimiento encontrado a los ");
         Serial.print(millis()/1000);
         Serial.println(" segundos "); 
         mySwitch.send(3131, 24);
         delay(50);
         }         
         takeLowTime = true;
       }

     if(digitalRead(pirPin) == LOW){       
       //digitalWrite(ledPin, LOW);  //LED visualiza el estado de la salida del sensor

       if(takeLowTime){
        lowIn = millis();          // guardar el momento de la transición de alta a baja
        takeLowTime = false;       //  asegurarse de que esto sólo se hace al comienzo de una fase de baja
       }
       //Si el sensor es baja para más de la pausa dada, 
       //Asumimos que el movimiento no más que va a pasar
       
       if(!lockLow && millis() - lowIn > pause){  
           //Se asegura de este bloque de código sólo se ejecuta de nuevo después de 
           //Una secuencia de movimiento se ha detectado nuevo
           lockLow = true;                        
           Serial.print("movimiento detenido a los ");      
           Serial.print((millis() - pause)/1000);
           Serial.println(" segundos ");
           mySwitch.send(9494, 24);
           delay(50);
           }
       }
    }

Y el resultado que me muestra el monitor es el siguiente:

 calibrando sensor .......... hecho
SENSOR ACTIVADO
---
movimiento encontrado a los 10 segundos

Ahora por mucho que pase la mano por delante del sensor el estado no cambia, he probado con otro sensor de presencia nuevo y pasa lo mismo. También he probado con otro código y mas de lo mismo. Esto me pasa en un arduino nano, he probado en otro arduino nano que tenía sin usar y mas de lo mismo ¿es posible que se hayan estropeado los dos arduinos solo sin mas?

Comienza por lo básico: Funciona el PIR?
Descomenta las lineas

// pinMode(ledPin, OUTPUT);

y las que lo enciende y apaga cuando se detecta HIGH o LOW

Debes ver que el sensor esta OK.

lo pruebas y nos cuentas.