Getting (Calculating) BPM:

There are 3 Different Ways to get BPM. 

1)     Getting_BPM_to_Monitor


1)  Displays user's live and changing BPM, Beats Per Minute, in Arduino's native Serial Monitor.

2)  Print: "♥ A HeartBeat Happened !" when a beat is detected, live.

3)  Learn about using a PulseSensor Library Object.

4)  Blinks LED on PIN 13 with user's Heartbeat.


2)   PulseSensor_BPM

In the PulseSensor Playground library, select:


Pulse Sensor BPM


1)  Blinks LED on Pin 13 to a User's Live Heartbeat.

2)  "Fancy Fade Blink" an LED on Pin 5, to a User's Live HeartBeat.

3)  Calculates User's BPM, Beat-Per-Minute.

4)  Calculates User's IBI, the Interbeat Interval (Time between beats).

5)  Uses Arduino's Timer interrupt to calculate accurate BPM and IBI

6)  Serial.print the Signal, BPM, and IBI.  

7)  Outputs Signal, BPM, and IBI to serial, so you can use it right away with the Arduino Serial Plotter (below), or with our Processing Visualizer App, or our Pulse Sensor Mac Appor your own serial-enabled application


    This project and code will read the PulseSensor waveform and calculate Beats Per Minute, BPM.  It also calculates Interbeat Interval, IBI, which is the time between beats. The Arduino code uses a hardware Timer interrupt to measure the PulseSensor signal at an exact fixed rate (500Hz) in order to get a high-quality BPM reading. 

    Additional Note: In the bottom right corner of the data window, there is a drop-down menu for selecting the serial baud rate. Make sure that it is set to 115200 or you won't see anything!
    The signal may take a moment to settle, but you should see something like the image above. The pulse waveform is easy to spot. That line above it is the Interbeat Interval (IBI) in milliseconds, and the line below it is the Beats per Minute (BPM).


    3)  PulseSensor_BPM_Alternative

    In the PulseSensor Playground Library, select:

    PulseSensor_BPM_Alternative gives you all the features of PulseSensor_BPM, but works with boards that don't support the PulseSensor_BPM.


    1)  Exact same features as PulseSensor_BPM, but extends compatibility to more boards. 

    2)  Uses Software Serial, for boards without UART (a Serial Port).

    3)  Does not use are hardware Interrupt. 


    Pro Notes:

    Kit Parts and Hardware Guide:

    For an in-depth guide to preparing your Pulse Sensor Hardware and what to do with the parts in the kit, check out this handy GUIDE 


    More Ways To Visualize:

    The BPM and IBI values get sent over Serial and can be visualized by the Arduino Serial Plotter, OR with our Processing Visualizer, or Pulse Sensor Mac App.