Features:
- Operating Voltage: 4.8V to 20V
- Idle Power Consumption: < 50µA
- Active Power Consumption: ~65mA
- Detection Range: Adjustable from 3 to 7 meters
- Detection Angle: 120°
- Output Signal: Digital HIGH (3.3V) or LOW (0V)
- Adjustable Delay Time: 0.3 to 200 seconds (up to 10 minutes)
- Adjustable Sensitivity
- Trigger Modes: Single and Repeatable
- Compatible with Arduino, Raspberry Pi, and other microcontrollers
Pinout:
- VCC: 4.8V to 20V power input
- GND: Ground
- OUT: Digital output pin (HIGH when motion is detected)

Adjustments:
- Sensitivity: Rotate potentiometer CW to increase range (up to 7m), CCW to decrease (min 3m)
- Time Delay: Rotate CW to increase delay (up to 300s), CCW to decrease
- Trigger Mode Jumper:
- L (Single Trigger): Output goes HIGH for set time; additional motion is ignored
- H (Repeatable Trigger): Each motion resets the HIGH time
Principle of Operation:
The module detects infrared radiation changes using a pyroelectric sensor. When motion is detected, the output pin goes HIGH and remains so for a user-defined delay period, after which it goes LOW again.
Applications:
- Security Systems
- Home Automation (e.g., automatic lighting)
- Robotics
- Energy-saving Systems
- Industrial Automation
- Smart Cameras
- Access Control
- Wildlife Monitoring
Example Circuit:
Connection to Arduino with an LED on pin 13:

- VCC → Arduino 5V
- GND → Arduino GND
- OUT → Arduino Digital Pin 2
- LED → Arduino Digital Pin 13 + resistor
Arduino Code:
// Set up pins
int motionSensorPin = 2;
int ledPin = 13;
void setup() {
pinMode(motionSensorPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
int motionDetected = digitalRead(motionSensorPin);
if (motionDetected == HIGH) {
Serial.println("Motion detected!");
digitalWrite(ledPin, HIGH);
delay(1000);
} else {
digitalWrite(ledPin, LOW);
}
}
Technical Details:
Voltage |
4.8V – 20V |
Current (Idle) |
<50 µA |
Output |
3.3V / 0V |
Delay Time |
0.3 – 200 s (up to 10 minutes) |
Lock Time |
2.5 s |
Trigger |
L = Single, H = Repeat |
Detection Range |
3 – 7 meters |
Detection Angle |
120° |
Operating Temp |
–15 to +70 °C |
Dimensions |
32 x 24 mm |
Lens Diameter |
23 mm |
Resources:
Comparisons:
- HC-SR505 vs HC-SR501:
- HC-SR505: Higher sensitivity, 3m max range, 2.7V-12V, non-retriggerable
- HC-SR501: Adjustable range up to 7m, 4.8V-20V, retriggerable
Features:
- Operating Voltage: 4.8V to 20V
- Idle Power Consumption: < 50µA
- Active Power Consumption: ~65mA
- Detection Range: Adjustable from 3 to 7 meters
- Detection Angle: 120°
- Output Signal: Digital HIGH (3.3V) or LOW (0V)
- Adjustable Delay Time: 0.3 to 200 seconds (up to 10 minutes)
- Adjustable Sensitivity
- Trigger Modes: Single and Repeatable
- Compatible with Arduino, Raspberry Pi, and other microcontrollers
Pinout:
- VCC: 4.8V to 20V power input
- GND: Ground
- OUT: Digital output pin (HIGH when motion is detected)

Adjustments:
- Sensitivity: Rotate potentiometer CW to increase range (up to 7m), CCW to decrease (min 3m)
- Time Delay: Rotate CW to increase delay (up to 300s), CCW to decrease
- Trigger Mode Jumper:
- L (Single Trigger): Output goes HIGH for set time; additional motion is ignored
- H (Repeatable Trigger): Each motion resets the HIGH time
Principle of Operation:
The module detects infrared radiation changes using a pyroelectric sensor. When motion is detected, the output pin goes HIGH and remains so for a user-defined delay period, after which it goes LOW again.
Applications:
- Security Systems
- Home Automation (e.g., automatic lighting)
- Robotics
- Energy-saving Systems
- Industrial Automation
- Smart Cameras
- Access Control
- Wildlife Monitoring
Example Circuit:
Connection to Arduino with an LED on pin 13:

- VCC → Arduino 5V
- GND → Arduino GND
- OUT → Arduino Digital Pin 2
- LED → Arduino Digital Pin 13 + resistor
Arduino Code:
// Set up pins
int motionSensorPin = 2;
int ledPin = 13;
void setup() {
pinMode(motionSensorPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
int motionDetected = digitalRead(motionSensorPin);
if (motionDetected == HIGH) {
Serial.println("Motion detected!");
digitalWrite(ledPin, HIGH);
delay(1000);
} else {
digitalWrite(ledPin, LOW);
}
}
Technical Details:
Voltage |
4.8V – 20V |
Current (Idle) |
<50 µA |
Output |
3.3V / 0V |
Delay Time |
0.3 – 200 s (up to 10 minutes) |
Lock Time |
2.5 s |
Trigger |
L = Single, H = Repeat |
Detection Range |
3 – 7 meters |
Detection Angle |
120° |
Operating Temp |
–15 to +70 °C |
Dimensions |
32 x 24 mm |
Lens Diameter |
23 mm |
Resources:
Comparisons:
- HC-SR505 vs HC-SR501:
- HC-SR505: Higher sensitivity, 3m max range, 2.7V-12V, non-retriggerable
- HC-SR501: Adjustable range up to 7m, 4.8V-20V, retriggerable