Skip to content

File syn_biometric.c

FileList > sensor > syn_biometric.c

Go to the source code of this file

Generic Pulse Oximeter & Heart Rate Sensor Driver (MAX30102, MAX30100).

  • #include "syn_biometric.h"
  • #include "../util/syn_assert.h"
  • #include <math.h>
  • #include <string.h>

Public Functions

Type Name
void syn_biometric_feed_samples (SYN_Biometric * bio, uint32_t red_raw, uint32_t ir_raw)
Feed raw Red & IR photodiode samples.
uint16_t syn_biometric_get_bpm (const SYN_Biometric * bio)
Get measured Heart Rate in BPM.
float syn_biometric_get_spo2 (const SYN_Biometric * bio)
Get measured Blood Oxygen Saturation %.
SYN_Status syn_biometric_init (SYN_Biometric * bio, SYN_GPIO_Pin scl, SYN_GPIO_Pin sda, uint8_t i2c_addr, SYN_BiometricType type)
Initialize Biometric Sensor.
bool syn_biometric_is_finger_detected (const SYN_Biometric * bio)
Check if finger is detected.

Public Functions Documentation

function syn_biometric_feed_samples

Feed raw Red & IR photodiode samples.

void syn_biometric_feed_samples (
    SYN_Biometric * bio,
    uint32_t red_raw,
    uint32_t ir_raw
) 

Parameters:

  • bio Biometric sensor context.
  • red_raw Raw 18-bit Red LED sample.
  • ir_raw Raw 18-bit IR LED sample.

function syn_biometric_get_bpm

Get measured Heart Rate in BPM.

uint16_t syn_biometric_get_bpm (
    const SYN_Biometric * bio
) 

Parameters:

  • bio Biometric sensor context.

Returns:

Heart rate in Beats Per Minute.


function syn_biometric_get_spo2

Get measured Blood Oxygen Saturation %.

float syn_biometric_get_spo2 (
    const SYN_Biometric * bio
) 

Parameters:

  • bio Biometric sensor context.

Returns:

SpO2 percentage.


function syn_biometric_init

Initialize Biometric Sensor.

SYN_Status syn_biometric_init (
    SYN_Biometric * bio,
    SYN_GPIO_Pin scl,
    SYN_GPIO_Pin sda,
    uint8_t i2c_addr,
    SYN_BiometricType type
) 

Parameters:

  • bio Biometric sensor context.
  • scl I2C SCL GPIO pin.
  • sda I2C SDA GPIO pin.
  • i2c_addr I2C slave address (e.g. 0x57).
  • type Sensor type (MAX30102 or MAX30100).

Returns:

SYN_OK on success.


function syn_biometric_is_finger_detected

Check if finger is detected.

bool syn_biometric_is_finger_detected (
    const SYN_Biometric * bio
) 

Parameters:

  • bio Biometric sensor context.

Returns:

True if finger present.



The documentation for this class was generated from the following file src/syntropic/sensor/syn_biometric.c