Hi - in that last photo you posted - the one that says 67 - it looks like you're starting to get a really good reading.
I think the problem you might be hitting is that the sensor takes 10-20 seconds to calibrate itself, so if you move the Bangle, it can take a while before the change you made takes effect.
Also, the heart rate monitor app actually uses a different algorithm to the 'internal' heart rate monitor (because it's attempting to show you real-time values). You should find that in all the cases you show, the internal heart rate monitor (that you'd see used on something like the heart rate widget at https://banglejs.com/apps/#widhrm or any other app that uses heart rate) would be able to get a valid heart rate value for you since it works by finding repeating patterns rather than by detecting peaks.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Hi - in that last photo you posted - the one that says 67 - it looks like you're starting to get a really good reading.
I think the problem you might be hitting is that the sensor takes 10-20 seconds to calibrate itself, so if you move the Bangle, it can take a while before the change you made takes effect.
Also, the heart rate monitor app actually uses a different algorithm to the 'internal' heart rate monitor (because it's attempting to show you real-time values). You should find that in all the cases you show, the internal heart rate monitor (that you'd see used on something like the heart rate widget at https://banglejs.com/apps/#widhrm or any other app that uses heart rate) would be able to get a valid heart rate value for you since it works by finding repeating patterns rather than by detecting peaks.