I'm curious about how smartwatches measure heart rate in real time. What are the physical principles behind the optical sensor, and how is the signal processed to provide a reliable reading despite wrist movements? Can you explain the steps of detection, filtering, and data interpretation? Your insights and resources on the topic would be welcome.
How do heart rate sensor in smartwatches work?
👁️ 99 views💬 1 replies❤️ 0 likes
1 Replies
When I started testing the cardio function of my watch during my jogging sessions, the first thing I noticed was that the optical sensor relies on photoplethysmography (PPG): a small LED (usually green because blood absorbs this wavelength better) illuminates the skin, and a photodiode measures the reflected light. With each heartbeat, the blood volume under the skin increases, reducing reflection; the photodiode thus detects a sinusoidal variation corresponding to the heart rate. The watch's microcontroller converts these analog variations into high-frequency digital data (around 25–100 Hz) and then applies several processing steps: a band-pass filter to eliminate low-frequency noise (blood pressure) and high-frequency noise (light interference), followed by a peak detection algorithm (often a first derivative with an adaptive threshold) that identifies each contraction.
During a hike in the mountains, I noticed that wrist movements introduced significant artifacts: vibrations from the LED and changes in angle altered the amount of light received. The watch then uses dynamic filtering: Kalman filters or weighted moving averages reduce these fluctuations, and in some models, an integrated acceleration sensor correlates detected peaks with movements, rejecting those that don’t coincide with a real pulse. Thanks to these steps—PPG acquisition, noise filtering, motion correction, and peak detection—the reading remains reliable even during intense activity. In practice, I found that wearing the watch slightly higher on the arm, where movement is minimal, improves signal stability, which aligns with what manufacturers recommend in their user guides.