Category Archives: Uncategorized

Arduino Pulsesensor review (with Arduino micro)

0
Filed under Uncategorized

So, in the previous post I said I am interested in hacking the human being…
Now, biohacking is not a new topic, there are plenty of websites and blogs on this, and I will surely cover the topic in more detail later.

Amongst the various topics (galvanic response, brainwave sensors and so on…) I think one good indicator is heartbeats. Heartbeats can increase or decrease under stress, so can be an excellent feedback mechanism. Fortunately, the company pulsesensor.com offers a little arduino pulse sensor exactly for this.
The sensor will use light reflection to track changes in our skin; those changes can be used to track the heartbeat (a similar mechanism is also used to track blood oxygenation).

pulsesensor

pulsesensor

The website claims this is a plug and play sensor for arduino… Not quite, I found (though the device is still quite impressive).

The sensor is quite small and fits well under the index finger – here it is next to the arduino micro I used for testing:

Pulsesensor + Arduino Micro

Pulsesensor + Arduino Micro

So, let’s plug it on our breadboard with arduino: pink cable on A0 (analog port), red on V3 and black on ground.

Arduino Pins

Arduino Pins

It is important first to isolate well the sensor, a plastic sticker is given to prevent moisture from interfering (should be applied on the “heart logo” part) and some insulation is due also at the bottom. Once this is done, let’s move to the code.

The website here is a bit confusing. The tutorial points to the version 1.1 of the code, which is not compatible with the latest amped version. I suggest to download the 1.2 code before anything from their code page.

At this point some customization is needed, as the code is written by default using an Arduino uno, whilst here I will be using an Arduino micro. Make sure both the interrupt.ino and PulseSensorAmped_Arduino_1dot2 are on the same arduino project (drag and drop the missing file) and move to interrupt.ino.
The first part to change (as noted on their tutorial instructions) is the interruptSetup part. Here are my entries for the arduino Micro:

The default code is pre-compiled for the arduino uno, hence the default values will not work. The second value to change is ISR(TIMER2_COMPA_vect), which on arduino micro is ISR(TIMER0_COMPA_vect)

Code can now be uploaded.
The second part now is for processing data. If you are not familiar with processing, just download it from their website and run the code downloaded from the pulsemonitor page.
Make sure the serial is correct there. Although comments say “get the arduino”, the tool will simply parse the first com port:

Fortunately this will also print the list of serials on the console; in my case I had COM1 and COM3, so my correct entry is the second:

Now all is set, let’s fire up the processing tool clicking on play…

Pulsesensor processing

Pulsesensor processing

And it works!
Almost.

The heartbeats are way too high – I roughly think they are twice as many, so dividing the output by two will do until I have some more time; not sure if this is related to the arduino timer or the processing tool.

So, overall, this wasn’t exactly easy to setup, it is not very plug and play, but it really gets the heartbeats accurately (with the default code, the light on the arduino will blink on each heart beat), so will definitely investigate further…

More news on the way!

0
Filed under Uncategorized
Tagged as ,

Although this website is not picking up yet, the freecode.com page of ANNFiD (the only site where it is advertised officially so far) is getting from 50 to 100 viewers a day!
I am currently working on a new release of ANNFiD, I know right now setting the thresholds is quite hard (must modify sqlite directly), but the new release will get rid of the issue.

Shortly after the new release is out I’ll release the tutorial on how to train new files – so stay tuned for more news!

Last but not least, thank you for everyone helping me (for me this includes advertising the site or writing comments) – having some support is great when you are starting something new