MAX30102 Pulse Oximeter & Heart Rate Sensor
Wearable-grade heart rate and blood oxygen sensing.
The MAX30102 is an integrated pulse oximetry and heart-rate monitor module that combines red and infrared LEDs, a photodetector, and low-noise analog signal processing into a single package. It measures blood oxygen saturation (SpO2) and heart rate by shining light through the skin and detecting the tiny changes in reflected light caused by blood flow, making it the go-to sensor for wearable health trackers, pulse monitors, and fitness project builds.
Specifications
| Sensor type | Integrated SpO2 and heart-rate module with red + IR LEDs and photodetector |
| Operating voltage | 1.8V logic / 3.3V LED supply (breakout boards regulate from 3.3-5V input) |
| Operating current | Configurable LED current, typically 5-10 mA average during active sampling |
| ADC resolution | 18-bit internal ADC |
| Measurement | Heart rate (BPM) and blood oxygen saturation (SpO2 %) via photoplethysmography |
| Interface | I2C, up to 400 kHz (fast mode) |
| Sample rate | Programmable, 50-3200 samples per second |
| Additional feature | Onboard temperature sensor for optical readout calibration |
Pinout
| Pin | Name | Description |
|---|---|---|
| 1 | VIN | Power, 3.3–5V DC depending on breakout regulator |
| 2 | GND | Ground |
| 3 | SCL | I2C clock line |
| 4 | SDA | I2C data line |
| 5 | INT | Interrupt output — signals when new sample data is ready, avoiding constant polling |
| 6 | IRD / RD | Some breakouts expose raw IR/RED LED test points, not typically used in normal designs |
The default I2C address is 0x57. Because the sensor is very sensitive to motion and ambient light, best results come from a firm, still fingertip placement (or a wrist strap design) shielded from direct sunlight, and most libraries need a short warm-up period before heart-rate/SpO2 values stabilize.
Variants
Default to the MAX30102 for new builds — it has better SNR than the MAX30100 and far simpler setup than the ECG-capable MAX86150. Only reach for the MAX86150 if the project specifically needs synchronized ECG and PPG data.
| Variant | Temp range | Hum range | Accuracy | Protocol | Price |
|---|---|---|---|---|---|
| MAX30102 breakout module | ~$3-6 | ||||
| MAX30100 | ~$2-4 | ||||
| MAX86150 | ~$8-12 |