-
Notifications
You must be signed in to change notification settings - Fork 136
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
Higher Precision #81
Comments
Hi, you may need to change how the getspo2 function defined in the library files. Probably it is an integer and you need to change it to float. However, even if this solves your problem by showing decimals, it doesn't mean it is more precise really. Even medical oximeters don't show decimals. So what you will be getting is just noise. I won't suggest you rely on that data for your project. |
Thank you for your help. That makes sense. |
are you going to confirm your results using a medical oximeter? |
Yes I have done that. The commercial pulseox gives 99 %SpO2 and my calculations give an average of 98.2 %Sp02. Based on the uncertainties in both I conclude that these are statistically similar. |
Commercial ones generally use moving average over spo2 results to smooth the output values. So it is not like an instantaneous reading result, just be careful with that |
Troubleshooting checklist
Description of the issue
I am using the MAX30100_Minimal and it is working fine. However, I would like more decimals (higher precision) of my SpO2 output. Can anyone help with this regarding the pox.getSpO2() function?
I tried using a float:
Serial.print(float(pox.getSpO2()),4);
But it just put four zeroes after my SpO2 result (like 98.0000 %). What I am looking for is to get numbers like 97.5482 %.
Hope someone can help. Thank you.
Output from MAX30100_Tester example
Details of my setup
The text was updated successfully, but these errors were encountered: