I made a pulse oximeter using Seeed Wio Terminal.
Wio Terminal is LCD, Bluetooth, WiFi, infrared and illuminance sensor, etc.It is a multifunctional microcontroller in which everything else is packaged.
MAX30105 is used for the sensor. MAX30105 has red, green and infrared LEDs and a high-sensitivity photon detector, and can measure dust and blood oxygen saturation (SpO2).
Connect the MAX30105 to the 4-pin Grove connector on the Wio Terminal.
According to the schematic, the left side of the two Grove connectors connects to the hardware I2C.
Oxygen saturation (SpO2), pulse rate and ECG are displayed. A buzzer sounds as the heart beats.
The MAX30105 library is below.https://github.com/sparkfun/SparkFun_MAX3010x_Sensor_Library
I coded with reference to the following sample code.
The LCD display of Wio Terminal is based on the following.https://wiki.seeedstudio.com/Wio-Terminal-LCD-Linecharts/
I referred to the following about the buzzer.https://wiki.seeedstudio.com/Wio-Terminal-Buzzer/