You might have an app on your phone that measures your heart rate, using only the phone’s camera and flash – the first time I used one, I marveled at the fact that your blood’s reflectivity under the skin actually changes between heartbeats.
 
heart rate pulse app
Heart Rate Monitor - Pulse App. Source: Google Play Store

That was a few years ago, and, while phone apps aren’t going away, there is something to be said for small, cheap devices that specialize in doing just one thing.

Nowadays, pulse sensors that work on the same principle are available in module form for makers like us. One such board, the Elecrow Crowtail Pulse Sensor, consists of a simple LED and a photodetector (not even a camera). All we need to know is how to read it. 

In terms of hardware, with the Raspberry Pi Pico taking the maker world by storm (in no small part thanks to the shortage of its bigger brothers), is a good fit as a small, cheap, and compact mate for the sensor.

Giuseppe Cassibba of peppe8o.com has paired a pulse sensor with Pico:
 
pico-with-pulse-sensor.jpg
Raspberry Pi Pico with an Elecrow Crowtail Pulse Sensor. Source: Giuseppe Cassibba

In terms of software, he made use of our friend, the Thonny Python IDE. His homework-helper was some spreadsheets for data analysis.

Besides a power input and ground, the Crowtail has a single output line – an analog representation of what's coming from the sensor. Cassibba found it challenging to handle the output, which was highly variable, depending on factors such as the absence or presence of living tissue, air pressure, temperature, etc. It wasn’t easy solving this, but he’s done the homework of figuring out how to deal with the spurious data one gets from such an analog sensor.

Now that he’s hacked it, he put together this guide that will make our own projects easier to realize.

Follow @peppecassibba on Twitter for more creative answers to Raspberry Pi questions!