Description
The XD-58C PulseSensor is an optical reflective heart rate sensor module designed for Arduino and other microcontroller platforms. It uses a green LED (peak wavelength ~515nm) to illuminate the skin and a photodetector to measure the reflected light intensity, which varies with blood volume changes during each heartbeat—a technique known as photoplethysmography (PPG) .
The module integrates onboard amplification and noise elimination circuitry, outputting an analog voltage that oscillates with each pulse beat. The signal is centered around VCC/2, making it directly readable by any microcontroller ADC without external bias circuits . The sensor can be placed on a fingertip or earlobe, and with appropriate code (such as the open-source PulseSensor library), it can calculate heart rate in beats per minute (BPM).
The XD-58C is widely used in educational projects, interactive art installations, and hobbyist health monitoring prototypes. It is a popular choice for students and makers learning about biosensing because it is inexpensive, well-documented, and compatible with Arduino’s 3.3V and 5V logic levels .
Critical limitations: This is not a precision instrument. The PPG signal is highly susceptible to motion artifacts, ambient light interference, and contact pressure variations . Academic evaluation showed that the XD-58C’s readings can deviate substantially from a commercial pulse oximeter, with errors exceeding 50% in some measurements . It is not a wearable fitness tracker—it requires stable finger placement and is best suited for stationary, controlled measurements. It is not a medical device and should not be used for diagnosis or health-critical decisions.
Features
-
Optical PPG Sensing: Green LED and photodetector measure blood volume changes through the skin .
-
Analog Voltage Output: Signal centered at VCC/2, directly readable by Arduino ADC .
-
Onboard Signal Conditioning: Integrated amplification and noise elimination circuitry .
-
Wide Supply Compatibility: Operates from 3.3V to 5.5V; works with Arduino Uno, ESP32, and other boards .
-
Low Power Consumption: <4mA typical, <8mA with LED active .
-
Compact Module: Small PCB (approx. 15.8mm) with 3-wire cable for easy connection .
-
Open-Source Support: Compatible with PulseSensor library and Processing visualization software .
-
Finger/Earlobe Placement: Can be clipped or taped to fingertip or earlobe for pulse detection .
Technical Specifications
| Parameter | Specification |
|---|---|
| Sensor Type | Optical reflective PPG (green LED) |
| LED Peak Wavelength | ~515nm |
| Supply Voltage | 3.3V – 5.5V DC |
| Current Draw | <4mA (idle); <8mA (LED active) |
| Output Type | Analog voltage (0.3V to VCC) |
| Output Impedance | <1kΩ |
| Heart Rate Range | 50–250 BPM (with appropriate code) |
| PCB Size | Approx. 15.8mm diameter |
| Cable Length | Approx. 20cm |























Reviews
There are no reviews yet.