PPG Signal Processing
A software-based signal processing tool for analyzing Photoplethysmography (PPG) signals and extracting useful physiological information from the signal.
Introduction
- ✓Extracting heart-rate and respiratory metrics from a raw PPG signal takes filtering, beat detection, and careful validation across very different subjects.
- ✓This engine combines those stages into one portable, dependency-light package, with parameters grounded in published research.
- ✓The same processing runs on both a desktop monitor and an Android app, showing the PPG wave with its detected fiducial points in real time.
Try it live
Run the actual PPG engine in your browser. Pick a bundled recording or upload your own (one signal sample per line), choose the patient type and sampling rate, and the compiled algorithm — the same C code as the desktop tool, built to WebAssembly — extracts heart rate, heart-rate variability and respiratory rate right here on this page. Nothing is uploaded to a server.
Engineering Demonstrated
- ✓Biomedical signal processing
- ✓Portable embedded C (C99)
- ✓Algorithm design and validation
- ✓Beat / fiducial point detection
- ✓Cross-platform (desktop + Android) demonstration
- ✓AI-assisted engineering
Where This Can Help
- ✓Wearable and mobile health devices
- ✓Patient monitoring systems
- ✓PPG algorithm prototyping
- ✓Embedded biomedical firmware
- ✓Physiological signal research
- ✓Research and educational use
Videos
Desktop Monitor
The monitor displays the PPG wave along with the detected fiducial points.
Android App
The Android app receives the PPG signal from the laptop over Bluetooth and displays the waveform with its detected fiducial points in real time.
Open Source
Explore the source code and documentation for the PPG Signal Processing project.
View Source Code