Arduino RPM Sensor – Rotational Speed Detector Module
Arduino RPM Sensor – Rotational Speed Detector Module
This Hall Effect / IR-based RPM Sensor Module measures the rotational speed of motors, fans, wheels, and other rotating machinery. It outputs a digital pulse signal for every revolution, making it simple to calculate RPM using a microcontroller's interrupt pin. Compatible with Arduino, ESP32, ESP8266, Raspberry Pi, and other development boards.
Key Features
- Detects rotational speed (RPM) via Hall Effect or IR slotted optocoupler (depending on variant)
- Digital pulse output — one pulse per revolution (or per slot/magnet count)
- On-board LM393 comparator for clean, stable digital signal
- Sensitivity adjustable via on-board potentiometer
- Signal indicator LED for visual feedback
- Operating voltage: 3.3V – 5V (compatible with 3.3V and 5V MCUs)
- Compact PCB with mounting holes
Typical Applications
- Motor speed monitoring and closed-loop PID control
- Fan and pump RPM measurement
- Conveyor belt and wheel speed detection
- Tachometer / speedometer projects
- Encoder-based position and velocity feedback
Pin Description
- VCC – 3.3V to 5V power supply
- GND – Ground
- DO – Digital output pulse signal (connect to interrupt pin on MCU)
- AO – Analog output (on applicable variants)
How It Works
The sensor detects each passing magnet (Hall Effect) or slotted disc segment (IR optocoupler) and generates a digital LOW pulse. By counting pulses over a fixed time interval using Arduino's attachInterrupt(), RPM is calculated as:
RPM = (pulse count / time in seconds) × 60
Works with Arduino Uno, Nano, Mega, ESP32, ESP8266, STM32, and Raspberry Pi GPIO. No additional components required — plug in and start measuring.