Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvements I should like to see done to the new Visualizer. #7

Open
georod99 opened this issue May 27, 2018 · 14 comments
Open

Improvements I should like to see done to the new Visualizer. #7

georod99 opened this issue May 27, 2018 · 14 comments

Comments

@georod99
Copy link

  1. Change the title to: PulseSensor HRV Biofeedback.
  2. Change the main graph from IBI to BPM, and graph it as a bar graph.
  3. Change the graph under the circle to HRV, with a bar changing its height as HRV varies. May be taking the average of 3 beats (otherwise it would vary to fast).
  4. Eliminate the Frequency domain plot.
@biomurph
Copy link
Contributor

  1. Can do.

  2. Ok, so instead of the blue IBI waveform in the large 'main' window, a bar graph of BPM. Should the BPM increment with every heartbeat? A bar graph instead of a waveform?

  3. Averaging every 3 beats would essentially be a low pass filter. You would not see the largest difference between beats. Right now, it graphs the difference between the peak and trough of the IBI wave.

  4. Can do.

@georod99
Copy link
Author

  1. Yes, BPM, a bar for every beat. Something like this:
    image
  2. We have to experiment: we can start with like it is now. Depending in what we obtain, then average 2 beats, then 3, and see how it behaves.

@georod99
Copy link
Author

georod99 commented May 27, 2018 via email

@biomurph
Copy link
Contributor

biomurph commented Jun 5, 2018

@georod99 The code that I'm developing for this is here. I want to make improvements to it there before I merge it into the WFE github.

It is still a work in progress, but I have addressed your 1 and 4 above.
Right now, the main graph is a timeline trace of the IBI values. It is easy to change that to a timeline graph of the BPM values for every beat.
The breath prompt is paced to breaths per minute.
The HRV graph is showing the difference in BPM between the trough and the peak of the IBI waveform.

@georod99
Copy link
Author

georod99 commented Jun 5, 2018

At 74, my HRV is very low. I have to find a neighbor (a young one) to test the graph on them.

@houshen0806
Copy link

@biomurph Thanks to all great work! I am currently a university student that work on a project to study the HRV biofeedback.

  1. Can I get the version that shows the main graph of timeline trace of the IBI values, please? Because this is more make sense for my study instead of the BPM version now.
  2. For the latest version, the HRV value and the bar graph of HRV are in what unit? Is it in a millisecond? What is the reason behind to use BPM waveform amplitude to get the HRV value?
    Your reply is really appreciated. Thanks.

@georod99
Copy link
Author

georod99 commented Jun 19, 2019 via email

@georod99
Copy link
Author

georod99 commented Jun 19, 2019 via email

@houshen0806
Copy link

@georod99 That’s very kind of you, thanks a lot. I wish I can still maintain my passion like you when I am 75 years old. I wish you a happy life every day, and health will always be there.
I am currently a final year student of Mechanical Engineering at UTAR, Malaysia. Just a beginner on this HRV study and programming stuff, so your help is really appreciated. My project is to build a prototype that can measure HRV and help in biofeedback training to regulate good mood.
For the paper really useful for me as a reference. My lecturer has done some research on HRV and also found that deep breathing may help in maintain mindfulness. Here is the video that one of my senior creates to guide on deep breathing (https://www.youtube.com/watch?v=bmp6D8h53OU). That video also in the pace of 6 breaths per minute. Hope that might help if you wish to have deep breathing session, it is easier to use, just open youtube video and can get the guide to perform deep breathing practice.
I was finished build the prototype and now on going to collect data and do the sampling. Now I am finding the ways to display and record down the data. And this brings me here and meet you.
Now I have well understood to the BPM in the discussion after your explanation. Thanks for all the great work before and really appreciate your help. Thanks!

@georod99
Copy link
Author

georod99 commented Jun 19, 2019 via email

@biomurph
Copy link
Contributor

Hi guys!
Thanks for using Pulse Sensor to learn about HRV!
@georod99 I do plan to dress up the HRV_Biofeedback sketch to add features like GUI buttons to change the speed of the breath-rate prompt. Any other features that would be helpful?

@houshen0806 if you haven't already, check out the PulseSensor Playground Tools page for useful user functions in Arduino. For example, the getBeatsPerMinute() function will return the latest calculated BPM (averaged over 10 beats). While this will not be useful for your HRV work, try the getInterBeatIntervalMs() which will return the latest IBI value in milliseconds which will be useful for HRV. You can modify the Arduino code so that only the IBI values are printed and then it's easy to graph on the Arduino Serial Plotter.

Good luck!

@georod99
Copy link
Author

georod99 commented Jun 19, 2019 via email

@georod99
Copy link
Author

Dear Joel: In your opinion, what is the accuracy of measuring HRV with the PulseSensor and with the camera of a phone?

@biomurph
Copy link
Contributor

@georod99
The PulseSensor sample rate is 500Hz, which I have read is fast enough to get accurate BPM and IBI when doing PPG based heart monitoring. PulseSensor code also determines the 'moment of heart beat' at very close to the mid-point in the rising pulse waveform. That, I've read, is the best way to closely match the timing of the R wave in an ECG.

I don't know anything about how smartphones do their IBI calculations, or what their sample rates are.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants