Loading... Please wait...

HC-SR501 PIR Sensor

HC-SR501 PIR Sensor

This example shows how to use an HC-SR501 PIR sensor (movement sensor). You will connect it up to pin 8 of your Arduino board and the input will be used to trigger the onboard LED.

Hardware Required

  • Arduino Board
  • onboard LED on pin 13
  • HC-SR501 PIR sensor


Connect power and ground as illustrated. Then connect the sensor pin to digital pin 8 on your Arduino.




// Uses a PIR sensor to detect movement and turn on a LED

int ledPin = 13; // choose the pin for the LED
int inputPin = 8; // 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 off
      Serial.println("Motion ended!");
      // We only want to print on the output change, not state
      pirState = LOW;



What's News


Copyright 2020 oddWires. All Rights Reserved.
 Sitemap | oddWires