This paper describes the functioning and development of HeartPy: a heart rate analysis toolkit designed for photoplethysmogram (PPG) data. Most openly available algorithms focus on electrocardiogram (ECG) data, which has very different signal properties and morphology, creating a problem with analysis. ECG-based algorithms generally don’t function well on PPG data, especially noisy PPG data collected in experimental studies. To counter this, we developed HeartPy to be a noise-resistant algorithm that handles PPG data well. It has been implemented in Python and C. Arduino IDE sketches for popular boards (Arduino, Teensy) are available to enable data collection as well. This provides both pc-based and wearable implementations of the software, which allows rapid reuse by researchers looking for a validated heart rate analysis toolkit for use in human factors studies.
Original languageEnglish
Article number32
Pages (from-to)1-9
Number of pages9
JournalJournal of Open Research Software
Issue number1
Publication statusPublished - 2019

    Research areas

  • Heart rate analysis, Human factors, PPG, Python, Arduino, OA-Fund TU Delft

ID: 47328740