This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AFE4490SPO2EVM: SpO2 value doesn't change when SpO2 simulator is used.

Part Number: AFE4490SPO2EVM

Hi Team,

 I am using this simulator MS100 (rfmedical.com.br) to validate our algorithm written in python to find spo2 and HR. While the HR seems good, the spo2 value doesn't match the settings on the simulator. The simulator is set to have 75BPM with spo2 level varied from 35 to 99 in terms of 5 units for each run. While debugging found that R value doesn't change much. I am using beer-lambert's law to calculate the spo2 and the curve I am using is attached in the code: 

A = 110  
B = 25  
ir_ac_rms = np.sqrt(np.mean(np.square(self.ir_ac_buffer.get())))  # RMS value of IR AC component
ir_dc_rms = np.sqrt(np.mean(np.square(self.ir_dc_buffer.get())))  # RMS value of IR DC component
red_ac_rms = np.sqrt(np.mean(np.square(self.red_ac_buffer.get())))  # RMS value of red AC component
red_dc_rms = np.sqrt(np.mean(np.square(self.red_dc_buffer.get())))  # RMS value of red DC component
ratio = (red_ac_rms / red_dc_rms) / (
    ir_ac_rms / ir_dc_rms
)  # Ratio of the AC and DC components

# Calculate the SpO2 level using the formula
spo2 = A - B * ratio  # SpO2 level in percentage
 

Attached the image of spo2 vs calculated R value in a plot. Let me know if you need more details.

This is the raw signal captured using the GUI @ 96% spo2 level and 75 bpm.

Aswath