Shop Learn
Wide Angle PIR (28032) Not Working — Parallax Forums

Wide Angle PIR (28032) Not Working

Hi All -

I'm hoping previous users of the wide angle PIR can help me troubleshoot my issue. I'm trying upgrade my current PIR (from adafruit, with a 120 degree range) with the 28032. The only issue is, I can't get the wide angle sensor to sense anything. My program runs successfully using my old adafruit sensor, but when I swap in the wide angel, it seems like there's no output from the sensor. My project uses a Huzzah ESP8266 running Arduino. The 28032 is running on 5V and the OUT pin goes to pin 12 which is also tied to a 22K pulldown resister (for an interrupt service routine that I'm running). Again, using the adafruit sensor, this works, but the wide angle does not. I've read the datasheet and from what I can tell, I'm doing everything correctly. Does anyone have any insight? Thanks!


  • Okay, in an effort maybe get some traction with this issue, I created a new sketch. Again, my old adafruit PIR sensor works perfectly with this, but the wide angle does not. In this set up, there is still 5v connected to VCC but there is no pulldown resistor. The OUT pin on the wide angle is connected directly to pin 15. What am I missing? It's almost as if the OUT pin on the PIR doesn't provide enough voltage to register a HIGH pulse.
     * PIR sensor tester
    int ledPin = 0;                // choose the pin for the LED
    int inputPin = 15;               // choose the input pin (for PIR sensor)
    int pirState = LOW;             // we start, assuming no motion detected
    int val = 0;                    // variable for reading the pin status
    void setup() {
      pinMode(ledPin, OUTPUT);      // declare LED as output
      pinMode(inputPin, INPUT);     // declare sensor as input
    void loop(){
      val = digitalRead(inputPin);  // read input value
      if (val == HIGH) {            // check if the input is HIGH
        digitalWrite(ledPin, HIGH);  // turn LED ON
        if (pirState == LOW) {
          // we have just turned on
          Serial.println("Motion detected!");
          // We only want to print on the output change, not state
          pirState = HIGH;
      } else {
        digitalWrite(ledPin, LOW); // turn LED OFF
        if (pirState == HIGH){
          // we have just turned of
          Serial.println("Motion ended!");
          // We only want to print on the output change, not state
          pirState = LOW;
  • A couple of things.

    Did you wait a least 40 seconds for warm-up time?
    Was the LED on during warm-up?
    Did you try different sensitivity setting, (pot)?
    Did you try the different switch settings. (Night/All Time)?
Sign In or Register to comment.