Skip to content

Heart rate measurement accuracy #532

@Riksu9000

Description

@Riksu9000

I have done some experiments with the heart rate sensor. I think one of the issue is that small movements while measuring can produce noise that could throw off the measurement. I don't think there's any code that detects noisy data and ignores it. The accelerometer could also be used to ignore data while there is movement. For some reason decreasing the gain improves accuracy for people. Why is that?

Setting the gain from 64 to 8 may have improved the results a bit. It worked at least as well as before.

Setting the LED current to 40mA didn't seem to make a difference.

The ambient light sensor could be used to detect if the watch isn't on the wrist, or if it's too loose, which could cause incorrect measurements as well.

Below you can see the SPL value graphed. This was with gain set to eight. The blinking light I added might actually be more accurate than the number shown, implying there might be an issue with the conversion to BPM. EDIT: Maybe its just HRV?

The data looks clean enough so it should be possible to get accurate measurements.

Here's the branch if anyone wants to test this.
https://github.com/Riksu9000/InfiniTime/tree/heartrate_test

VID_20210728_114837.mp4

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementEnhancement to an existing app/feature

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions