tinyPulsePPG icon indicating copy to clipboard operation
tinyPulsePPG copied to clipboard

SpO2 equation

Open moldos opened this issue 4 years ago • 3 comments

Hello,

First of all I would like to congratulate for the excellent job you did. I developed myself a version of "tinyPulsePPG" with MAX30105 sensor using you project as reference . Thank you. Now comes my question/concern regarding SpO2 calculation. You present two options for SpO2 calculation: one linear and the other quadratic. With regards on the linear equation, in the documentation you mention "104 - 1.7 * R", but inside the code you implement "104-0.17 * R+0.5". Fact that is a bit confusing. Anyhow, the implemented linear equation works fine. If possible, please clarify this concern (or may be I'm wrong). Other way around, using as reference a guideline from Maxim Integrated (https://www.maximintegrated.com/en/design/technical-documents/app-notes/6/6845.html) , I implemented also a quadratic equation : "1.5958 * R * R - 34.6596 * R + 112.6898 " with very close results to your linear implemented eq. I was afraid of wrong results, the coefficients of quadratic equation being for MAX30101 , me using MAX30105 (as I said). But no problem. It worked well.

moldos avatar May 07 '20 07:05 moldos

Thanks for your kind words. I am afraid that I cannot find the original reference, so I have no idea whether it should be 1.7 or 0.17. I was not able to calibrate or verify the SPO2 measurement in an way, so I would be very careful about inferring anything about blood oxygen level from it. If you have been able to compare it with a commercial device, I would be very interested in the results

jeffmer avatar May 07 '20 10:05 jeffmer

Noted. Actually, I was able to compare the results (SpO2 level) of the present project with a Beurer PO-40 pulse-oximeter (https://www.beurer.com/web/gb/products/medical/ecg-and-pulse-oximeter/pulse-oximeter/po-40.php). Let's say there are differences of 1-2%, if any (most of the time, there are not). I think the max-integrated sensor is well calibrated and the default coefficients for their SpO2 - quadratic equation lead to satisfactory results.

moldos avatar May 07 '20 11:05 moldos

Thanks, that’s really interesting - still would not rely on it in a medical situation!

jeffmer avatar May 07 '20 12:05 jeffmer