RA Flexible Software Package Documentation  Release v5.6.0

 
OB1203 Middleware Interface

Detailed Description

Interface for OB1203 Middleware functions.

Summary

The OB1203 interface provides OB1203 functionality.

Data Structures

struct  rm_ob1203_callback_args_t
 
struct  rm_ob1203_raw_data_t
 
struct  rm_ob1203_light_data_t
 
struct  rm_ob1203_prox_data_t
 
struct  rm_ob1203_ppg_data_t
 
struct  rm_ob1203_device_interrupt_cfg_t
 
struct  rm_ob1203_device_status_t
 
struct  rm_ob1203_gain_t
 
struct  rm_ob1203_led_current_t
 
struct  rm_ob1203_fifo_info_t
 
struct  rm_ob1203_cfg_t
 
struct  rm_ob1203_api_t
 
struct  rm_ob1203_instance_t
 

Typedefs

typedef void rm_ob1203_ctrl_t
 

Enumerations

enum  rm_ob1203_event_t
 
enum  rm_ob1203_operation_mode_t
 
enum  rm_ob1203_light_sensor_mode_t
 
enum  rm_ob1203_ppg_sensor_mode_t
 
enum  rm_ob1203_light_data_type_t
 
enum  rm_ob1203_light_gain_t
 
enum  rm_ob1203_ppg_prox_gain_t
 
enum  rm_ob1203_led_order_t
 
enum  rm_ob1203_light_interrupt_type_t
 
enum  rm_ob1203_light_interrupt_source_t
 
enum  rm_ob1203_prox_interrupt_type_t
 
enum  rm_ob1203_ppg_interrupt_type_t
 
enum  rm_ob1203_variance_threshold_t
 
enum  rm_ob1203_sleep_after_interrupt_t
 
enum  rm_ob1203_moving_average_t
 
enum  rm_ob1203_power_save_mode_t
 
enum  rm_ob1203_analog_cancellation_t
 
enum  rm_ob1203_number_led_pulses_t
 
enum  rm_ob1203_number_averaged_samples_t
 
enum  rm_ob1203_light_resolution_meas_period_t
 
enum  rm_ob1203_prox_pulse_width_meas_period_t
 
enum  rm_ob1203_ppg_pulse_width_meas_period_t
 
enum  rm_ob1203_fifo_rollover_t
 

Data Structure Documentation

◆ rm_ob1203_callback_args_t

struct rm_ob1203_callback_args_t

OB1203 callback parameter definition

◆ rm_ob1203_raw_data_t

struct rm_ob1203_raw_data_t

OB1203 raw data structure

Data Fields
uint8_t adc_data[96] Max of PPG data is 96 (3 bytes multiplied by 32 samples)

◆ rm_ob1203_light_data_t

struct rm_ob1203_light_data_t

OB1203 light data structure

Data Fields
uint32_t clear_data Clear channel data (20bits).
uint32_t green_data Green channel data (20bits).
uint32_t blue_data Blue channel data (20bits).
uint32_t red_data Red channel data (20bits).
uint32_t comp_data Temperature compensation (Comp) channel data (20bits).

◆ rm_ob1203_prox_data_t

struct rm_ob1203_prox_data_t

OB1203 proximity data structure

Data Fields
uint16_t proximity_data Proximity data.

◆ rm_ob1203_ppg_data_t

struct rm_ob1203_ppg_data_t

OB1203 PPG data structure

Data Fields
uint32_t ppg_data[32] PPG data (18bits).

◆ rm_ob1203_device_interrupt_cfg_t

struct rm_ob1203_device_interrupt_cfg_t

OB1203 device interrupt configuration structure

Data Fields
rm_ob1203_operation_mode_t light_prox_mode Light Proximity mode only. If Light mode uses IRQ, set RM_OB1203_OPERATION_MODE_LIGHT. If Proximity mode uses IRQ, set RM_OB1203_OPERATION_MODE_PROXIMITY.
rm_ob1203_light_interrupt_type_t light_type Light mode interrupt type.
rm_ob1203_light_interrupt_source_t light_source Light mode interrupt source.
rm_ob1203_prox_interrupt_type_t prox_type Proximity mode interrupt type.
uint8_t persist The number of similar consecutive Light mode or Proximity interrupt events that must occur before the interrupt is asserted (4bits).
rm_ob1203_ppg_interrupt_type_t ppg_type PPG mode interrupt type.

◆ rm_ob1203_device_status_t

struct rm_ob1203_device_status_t

OB1203 device status

Data Fields
bool power_on_reset_occur
bool light_interrupt_occur
bool light_measurement_complete
bool ts_measurement_complete
bool fifo_afull_interrupt_occur FIFO almost full interrupt.
bool ppg_measurement_complete
bool object_near
bool prox_interrupt_occur
bool prox_measurement_complete

◆ rm_ob1203_gain_t

struct rm_ob1203_gain_t

OB1203 Gain structure

Data Fields
rm_ob1203_light_gain_t light Gain for Light mode.
rm_ob1203_ppg_prox_gain_t ppg_prox Gain for PPG mode and Proximity mode.

◆ rm_ob1203_led_current_t

struct rm_ob1203_led_current_t

OB1203 LED currents structure

Data Fields
uint16_t ir_led IR LED current.
uint16_t red_led Red LED current.

◆ rm_ob1203_fifo_info_t

struct rm_ob1203_fifo_info_t

OB1203 FIFO information structure

Data Fields
uint8_t write_index The FIFO index where the next sample of PPG data will be written in the FIFO.
uint8_t read_index The index of the next sample to be read from the FIFO_DATA register.
uint8_t overflow_counter If the FIFO Rollover Enable bit is set, the FIFO overflow counter counts the number of old samples (up to 15) which are overwritten by new data.
uint8_t unread_samples The number of unread samples calculated from the write index and the read index.

◆ rm_ob1203_cfg_t

struct rm_ob1203_cfg_t

OB1203 Configuration

Data Fields

rm_ob1203_semaphore_t const * p_semaphore
 The semaphore to wait for callback. This is used for another data read/write after a communication.
 
uint32_t semaphore_timeout
 timeout for callback.
 
rm_comms_instance_t const * p_comms_instance
 Pointer to Communications Middleware instance.
 
void const * p_irq_instance
 Pointer to IRQ instance.
 
void const * p_context
 Pointer to the user-provided context.
 
void const * p_extend
 Pointer to extended configuration by instance of interface.
 
void(* p_comms_callback )(rm_ob1203_callback_args_t *p_args)
 I2C Communications callback.
 
void(* p_irq_callback )(rm_ob1203_callback_args_t *p_args)
 IRQ callback.
 

◆ rm_ob1203_api_t

struct rm_ob1203_api_t

OB1203 APIs

Data Fields

fsp_err_t(* open )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_cfg_t const *const p_cfg)
 
fsp_err_t(* measurementStart )(rm_ob1203_ctrl_t *const p_ctrl)
 
fsp_err_t(* measurementStop )(rm_ob1203_ctrl_t *const p_ctrl)
 
fsp_err_t(* lightRead )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_light_data_type_t type)
 
fsp_err_t(* lightDataCalculate )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_light_data_t *const p_ob1203_data)
 
fsp_err_t(* proxRead )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data)
 
fsp_err_t(* proxDataCalculate )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_prox_data_t *const p_ob1203_data)
 
fsp_err_t(* ppgRead )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, uint8_t const number_of_samples)
 
fsp_err_t(* ppgDataCalculate )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_ppg_data_t *const p_ob1203_data)
 
fsp_err_t(* deviceStatusGet )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_device_status_t *const p_status)
 
fsp_err_t(* deviceInterruptCfgSet )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_device_interrupt_cfg_t const interrupt_cfg)
 
fsp_err_t(* gainSet )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_gain_t const gain)
 
fsp_err_t(* ledCurrentSet )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_led_current_t const led_current)
 
fsp_err_t(* fifoInfoGet )(rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_fifo_info_t *const p_fifo_info)
 
fsp_err_t(* close )(rm_ob1203_ctrl_t *const p_ctrl)
 

Field Documentation

◆ open

fsp_err_t(* rm_ob1203_api_t::open) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_cfg_t const *const p_cfg)

Open sensor.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_cfgPointer to configuration structure.

◆ measurementStart

fsp_err_t(* rm_ob1203_api_t::measurementStart) (rm_ob1203_ctrl_t *const p_ctrl)

Start measurement.

Parameters
[in]p_ctrlPointer to control structure.
[in]modeSensor mode.

◆ measurementStop

fsp_err_t(* rm_ob1203_api_t::measurementStop) (rm_ob1203_ctrl_t *const p_ctrl)

Stop measurement.

Parameters
[in]p_ctrlPointer to control structure.
[in]modeSensor mode.

◆ lightRead

fsp_err_t(* rm_ob1203_api_t::lightRead) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_light_data_type_t type)

Read Light ADC data from OB1203.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_raw_dataPointer to raw data structure.
[in]typeLight data type.

◆ lightDataCalculate

fsp_err_t(* rm_ob1203_api_t::lightDataCalculate) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_light_data_t *const p_ob1203_data)

Calculate Light data from raw data.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_raw_dataPointer to raw data structure.
[in]p_ob1203_dataPointer to OB1203 Light data structure.

◆ proxRead

fsp_err_t(* rm_ob1203_api_t::proxRead) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data)

Read Proximity ADC data from OB1203.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_raw_dataPointer to raw data structure.

◆ proxDataCalculate

fsp_err_t(* rm_ob1203_api_t::proxDataCalculate) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_prox_data_t *const p_ob1203_data)

Calculate Proximity data from raw data.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_raw_dataPointer to raw data structure.
[in]p_ob1203_dataPointer to OB1203 Proximity data structure.

◆ ppgRead

fsp_err_t(* rm_ob1203_api_t::ppgRead) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, uint8_t const number_of_samples)

Read PPG ADC data from OB1203.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_raw_dataPointer to raw data structure.
[in]number_of_samplesNumber of PPG samples. One sample is 3 bytes.

◆ ppgDataCalculate

fsp_err_t(* rm_ob1203_api_t::ppgDataCalculate) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_raw_data_t *const p_raw_data, rm_ob1203_ppg_data_t *const p_ob1203_data)

Calculate PPG data from raw data.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_raw_dataPointer to raw data structure.
[in]p_ob1203_dataPointer to OB1203 PPG data structure.

◆ deviceStatusGet

fsp_err_t(* rm_ob1203_api_t::deviceStatusGet) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_device_status_t *const p_status)

Get device status. Read STATUS_0 and STATUS_1 registers.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_statusPointer to device status.

◆ deviceInterruptCfgSet

fsp_err_t(* rm_ob1203_api_t::deviceInterruptCfgSet) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_device_interrupt_cfg_t const interrupt_cfg)

Set device interrupt configuration.

Parameters
[in]p_ctrlPointer to control structure.
[in]interrupt_cfgDevice interrupt configuration.

◆ gainSet

fsp_err_t(* rm_ob1203_api_t::gainSet) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_gain_t const gain)

Set gain.

Parameters
[in]p_ctrlPointer to control structure.
[in]gainGain configuration.

◆ ledCurrentSet

fsp_err_t(* rm_ob1203_api_t::ledCurrentSet) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_led_current_t const led_current)

Set LED current value.

Parameters
[in]p_ctrlPointer to control structure.
[in]led_currentCurrent value structure.

◆ fifoInfoGet

fsp_err_t(* rm_ob1203_api_t::fifoInfoGet) (rm_ob1203_ctrl_t *const p_ctrl, rm_ob1203_fifo_info_t *const p_fifo_info)

Get FIFO information.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_fifo_infoPointer to FIFO information (write index, read index and overflow counter).

◆ close

fsp_err_t(* rm_ob1203_api_t::close) (rm_ob1203_ctrl_t *const p_ctrl)

Close OB1203.

Parameters
[in]p_ctrlPointer to control structure.

◆ rm_ob1203_instance_t

struct rm_ob1203_instance_t

OB1203 instance

Data Fields
rm_ob1203_ctrl_t * p_ctrl

Pointer to the control structure for this instance

rm_ob1203_cfg_t const * p_cfg

Pointer to the configuration structure for this instance

rm_ob1203_api_t const * p_api

Pointer to the API structure for this instance

Typedef Documentation

◆ rm_ob1203_ctrl_t

typedef void rm_ob1203_ctrl_t

OB1203 control block. Allocate an instance specific control block to pass into the OB1203 API calls.

Enumeration Type Documentation

◆ rm_ob1203_event_t

Event in the callback function

◆ rm_ob1203_operation_mode_t

Operation mode of OB1203

Enumerator
RM_OB1203_OPERATION_MODE_STANDBY 

Standby.

RM_OB1203_OPERATION_MODE_LIGHT 

Light mode.

RM_OB1203_OPERATION_MODE_PROXIMITY 

Proximity mode.

RM_OB1203_OPERATION_MODE_PPG 

PPG mode.

◆ rm_ob1203_light_sensor_mode_t

Light sensor mode of OB1203

Enumerator
RM_OB1203_LIGHT_SENSOR_MODE_LS 

Light sensor LS mode (Green, Clear, Comp)

RM_OB1203_LIGHT_SENSOR_MODE_CS 

Light sensor CS mode (Red, Green, Blue, Clear, Comp)

◆ rm_ob1203_ppg_sensor_mode_t

PPG sensor mode of OB1203

Enumerator
RM_OB1203_PPG_SENSOR_MODE_PPG1 

PPG sensor PPG1 mode.

RM_OB1203_PPG_SENSOR_MODE_PPG2 

PPG sensor PPG2 mode.

◆ rm_ob1203_light_data_type_t

Data type of Light

Enumerator
RM_OB1203_LIGHT_DATA_TYPE_ALL 

Common.

RM_OB1203_LIGHT_DATA_TYPE_CLEAR 

Common.

RM_OB1203_LIGHT_DATA_TYPE_GREEN 

Common.

RM_OB1203_LIGHT_DATA_TYPE_BLUE 

CS mode only.

RM_OB1203_LIGHT_DATA_TYPE_RED 

CS mode only.

RM_OB1203_LIGHT_DATA_TYPE_COMP 

Common. Temperature compensation data.

◆ rm_ob1203_light_gain_t

Light gain range. Gain scales the ADC output and noise

Enumerator
RM_OB1203_LIGHT_GAIN_1 

Gain mode 1.

RM_OB1203_LIGHT_GAIN_3 

Gain mode 3.

RM_OB1203_LIGHT_GAIN_6 

Gain mode 6.

◆ rm_ob1203_ppg_prox_gain_t

PPG and proximity gain range. Gain scales the ADC output and noise

Enumerator
RM_OB1203_PPG_PROX_GAIN_1 

Gain mode 1.

RM_OB1203_PPG_PROX_GAIN_1P5 

Gain mode 1.5.

RM_OB1203_PPG_PROX_GAIN_2 

Gain mode 2.

RM_OB1203_PPG_PROX_GAIN_4 

Gain mode 4.

◆ rm_ob1203_led_order_t

LED order. Controls which LED is activated (PS, PPG1) or in which order the LEDs are activated (PPG2)

Enumerator
RM_OB1203_LED_IR_FIRST_RED_SECOND 

First LED : IR LED, second LED : red LED.

RM_OB1203_LED_RED_FIRST_IR_SECOND 

First LED : red LED, second LED : IR LED.

◆ rm_ob1203_light_interrupt_type_t

Light interrupt type

Enumerator
RM_OB1203_LIGHT_INTERRUPT_TYPE_THRESHOLD 

Light threshold interrupt.

RM_OB1203_LIGHT_INTERRUPT_TYPE_VARIATION 

Light variation interrupt.

◆ rm_ob1203_light_interrupt_source_t

Light interrupt source

Enumerator
RM_OB1203_LIGHT_INTERRUPT_SOURCE_CLEAR_CHANNEL 

Clear channel.

RM_OB1203_LIGHT_INTERRUPT_SOURCE_GREEN_CHANNEL 

Green channel.

RM_OB1203_LIGHT_INTERRUPT_SOURCE_RED_CHANNEL 

Red channel. CS mode only.

RM_OB1203_LIGHT_INTERRUPT_SOURCE_BLUE_CHANNEL 

Blue channel. CS mode only.

◆ rm_ob1203_prox_interrupt_type_t

Proximity interrupt type

Enumerator
RM_OB1203_PROX_INTERRUPT_TYPE_NORMAL 

Proximity normal interrupt.

RM_OB1203_PROX_INTERRUPT_TYPE_LOGIC 

Proximity logic output interrupt.

◆ rm_ob1203_ppg_interrupt_type_t

PPG interrupt type

Enumerator
RM_OB1203_PPG_INTERRUPT_TYPE_DATA 

PPG data interrupt.

RM_OB1203_PPG_INTERRUPT_TYPE_FIFO_AFULL 

PPG FIFO almost full interrupt.

◆ rm_ob1203_variance_threshold_t

Variance threshold

Enumerator
RM_OB1203_VARIANCE_THRESHOLD_8_COUNTS 

New LS_DATA varies by ± 8 counts compared to previous result.

RM_OB1203_VARIANCE_THRESHOLD_16_COUNTS 

New LS_DATA varies by ± 16 counts compared to previous result.

RM_OB1203_VARIANCE_THRESHOLD_32_COUNTS 

New LS_DATA varies by ± 32 counts compared to previous result.

RM_OB1203_VARIANCE_THRESHOLD_64_COUNTS 

New LS_DATA varies by ± 64 counts compared to previous result.

RM_OB1203_VARIANCE_THRESHOLD_128_COUNTS 

New LS_DATA varies by ± 128 counts compared to previous result.

RM_OB1203_VARIANCE_THRESHOLD_256_COUNTS 

New LS_DATA varies by ± 256 counts compared to previous result.

RM_OB1203_VARIANCE_THRESHOLD_512_COUNTS 

New LS_DATA varies by ± 512 counts compared to previous result.

RM_OB1203_VARIANCE_THRESHOLD_1024_COUNTS 

New LS_DATA varies by ± 1024 counts compared to previous result.

◆ rm_ob1203_sleep_after_interrupt_t

Sleep after interrupt

Enumerator
RM_OB1203_SLEEP_AFTER_INTERRUPT_DISABLE 

Disable sleep after interrupt.

RM_OB1203_SLEEP_AFTER_INTERRUPT_ENABLE 

Stop measurement after an interrupt occurs. After STATUS_0/STATUS_1 register is read, start measurement.

◆ rm_ob1203_moving_average_t

Moving average

Enumerator
RM_OB1203_MOVING_AVERAGE_DISABLE 

Moving average is disabled for Proximity mode.

RM_OB1203_MOVING_AVERAGE_ENABLE 

Moving average is enabled for Proximity mode. Proximity data is the average of the current and previous measurement. The moving average is applied after digital offset cancellation.

◆ rm_ob1203_power_save_mode_t

Power save mode

Enumerator
RM_OB1203_POWER_SAVE_MODE_DISABLE 

Power save mode is disabled for PPG mode.

RM_OB1203_POWER_SAVE_MODE_ENABLE 

Power save mode is enabled for PPG mode. On power save mode, some analog circuitry powers down between individual PPG measurements if the idle time.

◆ rm_ob1203_analog_cancellation_t

Analog cancellation

Enumerator
RM_OB1203_ANALOG_CANCELLATION_DISABLE 

No offset cancellation.

RM_OB1203_ANALOG_CANCELLATION_ENABLE 

50% offset of the full-scale value

◆ rm_ob1203_number_led_pulses_t

Number of LED pulses

Enumerator
RM_OB1203_NUM_LED_PULSES_1 

1 pulse.

RM_OB1203_NUM_LED_PULSES_2 

2 pulses.

RM_OB1203_NUM_LED_PULSES_4 

4 pulses.

RM_OB1203_NUM_LED_PULSES_8 

8 pulses.

RM_OB1203_NUM_LED_PULSES_16 

16 pulses.

RM_OB1203_NUM_LED_PULSES_32 

32 pulses.

◆ rm_ob1203_number_averaged_samples_t

Number of averaged samples

Enumerator
RM_OB1203_NUM_AVERAGED_SAMPLES_1 

1 (No averaging).

RM_OB1203_NUM_AVERAGED_SAMPLES_2 

2 consecutives samples are averaged.

RM_OB1203_NUM_AVERAGED_SAMPLES_4 

4 consecutives samples are averaged.

RM_OB1203_NUM_AVERAGED_SAMPLES_8 

8 consecutives samples are averaged.

RM_OB1203_NUM_AVERAGED_SAMPLES_16 

16 consecutives samples are averaged.

RM_OB1203_NUM_AVERAGED_SAMPLES_32 

32 consecutives samples are averaged.

◆ rm_ob1203_light_resolution_meas_period_t

Light resolution and measurement period

Enumerator
RM_OB1203_LIGHT_RESOLUTION_13BIT_PERIOD_25MS 

Resolution : 13bit, measurement period : 25ms.

RM_OB1203_LIGHT_RESOLUTION_13BIT_PERIOD_50MS 

Resolution : 13bit, measurement period : 50ms.

RM_OB1203_LIGHT_RESOLUTION_13BIT_PERIOD_100MS 

Resolution : 13bit, measurement period : 100ms.

RM_OB1203_LIGHT_RESOLUTION_13BIT_PERIOD_200MS 

Resolution : 13bit, measurement period : 200ms.

RM_OB1203_LIGHT_RESOLUTION_13BIT_PERIOD_500MS 

Resolution : 13bit, measurement period : 500ms.

RM_OB1203_LIGHT_RESOLUTION_13BIT_PERIOD_1000MS 

Resolution : 13bit, measurement period : 1000ms.

RM_OB1203_LIGHT_RESOLUTION_13BIT_PERIOD_2000MS 

Resolution : 13bit, measurement period : 2000ms.

RM_OB1203_LIGHT_RESOLUTION_16BIT_PERIOD_25MS 

Resolution : 16bit, measurement period : 25ms.

RM_OB1203_LIGHT_RESOLUTION_16BIT_PERIOD_50MS 

Resolution : 16bit, measurement period : 50ms.

RM_OB1203_LIGHT_RESOLUTION_16BIT_PERIOD_100MS 

Resolution : 16bit, measurement period : 100ms.

RM_OB1203_LIGHT_RESOLUTION_16BIT_PERIOD_200MS 

Resolution : 16bit, measurement period : 200ms.

RM_OB1203_LIGHT_RESOLUTION_16BIT_PERIOD_500MS 

Resolution : 16bit, measurement period : 500ms.

RM_OB1203_LIGHT_RESOLUTION_16BIT_PERIOD_1000MS 

Resolution : 16bit, measurement period : 1000ms.

RM_OB1203_LIGHT_RESOLUTION_16BIT_PERIOD_2000MS 

Resolution : 16bit, measurement period : 2000ms.

RM_OB1203_LIGHT_RESOLUTION_17BIT_PERIOD_50MS 

Resolution : 17bit, measurement period : 50ms.

RM_OB1203_LIGHT_RESOLUTION_17BIT_PERIOD_100MS 

Resolution : 17bit, measurement period : 100ms.

RM_OB1203_LIGHT_RESOLUTION_17BIT_PERIOD_200MS 

Resolution : 17bit, measurement period : 200ms.

RM_OB1203_LIGHT_RESOLUTION_17BIT_PERIOD_500MS 

Resolution : 17bit, measurement period : 500ms.

RM_OB1203_LIGHT_RESOLUTION_17BIT_PERIOD_1000MS 

Resolution : 17bit, measurement period : 1000ms.

RM_OB1203_LIGHT_RESOLUTION_17BIT_PERIOD_2000MS 

Resolution : 17bit, measurement period : 2000ms.

RM_OB1203_LIGHT_RESOLUTION_18BIT_PERIOD_100MS 

Resolution : 18bit, measurement period : 100ms.

RM_OB1203_LIGHT_RESOLUTION_18BIT_PERIOD_200MS 

Resolution : 18bit, measurement period : 200ms.

RM_OB1203_LIGHT_RESOLUTION_18BIT_PERIOD_500MS 

Resolution : 18bit, measurement period : 500ms.

RM_OB1203_LIGHT_RESOLUTION_18BIT_PERIOD_1000MS 

Resolution : 18bit, measurement period : 1000ms.

RM_OB1203_LIGHT_RESOLUTION_18BIT_PERIOD_2000MS 

Resolution : 18bit, measurement period : 2000ms.

RM_OB1203_LIGHT_RESOLUTION_19BIT_PERIOD_200MS 

Resolution : 19bit, measurement period : 200ms.

RM_OB1203_LIGHT_RESOLUTION_19BIT_PERIOD_500MS 

Resolution : 19bit, measurement period : 500ms.

RM_OB1203_LIGHT_RESOLUTION_19BIT_PERIOD_1000MS 

Resolution : 19bit, measurement period : 1000ms.

RM_OB1203_LIGHT_RESOLUTION_19BIT_PERIOD_2000MS 

Resolution : 19bit, measurement period : 2000ms.

RM_OB1203_LIGHT_RESOLUTION_20BIT_PERIOD_500MS 

Resolution : 20bit, measurement period : 500ms.

RM_OB1203_LIGHT_RESOLUTION_20BIT_PERIOD_1000MS 

Resolution : 20bit, measurement period : 1000ms.

RM_OB1203_LIGHT_RESOLUTION_20BIT_PERIOD_2000MS 

Resolution : 20bit, measurement period : 2000ms.

◆ rm_ob1203_prox_pulse_width_meas_period_t

Proximity pulse width and measurement period

Enumerator
RM_OB1203_PROX_WIDTH_26US_PERIOD_3P125MS 

Pulse width : 26us, measurement period : 3.125ms. Except for the number 32 of LED pulses.

RM_OB1203_PROX_WIDTH_26US_PERIOD_6P25MS 

Pulse width : 26us, measurement period : 6.25ms.

RM_OB1203_PROX_WIDTH_26US_PERIOD_12P5MS 

Pulse width : 26us, measurement period : 12.5ms.

RM_OB1203_PROX_WIDTH_26US_PERIOD_25MS 

Pulse width : 26us, measurement period : 25ms.

RM_OB1203_PROX_WIDTH_26US_PERIOD_50MS 

Pulse width : 26us, measurement period : 50ms.

RM_OB1203_PROX_WIDTH_26US_PERIOD_100MS 

Pulse width : 26us, measurement period : 100ms.

RM_OB1203_PROX_WIDTH_26US_PERIOD_200MS 

Pulse width : 26us, measurement period : 200ms.

RM_OB1203_PROX_WIDTH_26US_PERIOD_400MS 

Pulse width : 26us, measurement period : 400ms.

RM_OB1203_PROX_WIDTH_42US_PERIOD_3P125MS 

Pulse width : 42us, measurement period : 3.125ms. Except for the number 32 of LED pulses.

RM_OB1203_PROX_WIDTH_42US_PERIOD_6P25MS 

Pulse width : 42us, measurement period : 6.25ms.

RM_OB1203_PROX_WIDTH_42US_PERIOD_12P5MS 

Pulse width : 42us, measurement period : 12.5ms.

RM_OB1203_PROX_WIDTH_42US_PERIOD_25MS 

Pulse width : 42us, measurement period : 25ms.

RM_OB1203_PROX_WIDTH_42US_PERIOD_50MS 

Pulse width : 42us, measurement period : 50ms.

RM_OB1203_PROX_WIDTH_42US_PERIOD_100MS 

Pulse width : 42us, measurement period : 100ms.

RM_OB1203_PROX_WIDTH_42US_PERIOD_200MS 

Pulse width : 42us, measurement period : 200ms.

RM_OB1203_PROX_WIDTH_42US_PERIOD_400MS 

Pulse width : 42us, measurement period : 400ms.

RM_OB1203_PROX_WIDTH_71US_PERIOD_3P125MS 

Pulse width : 71us, measurement period : 3.125ms. Except for the number 16 and 32 of LED pulses.

RM_OB1203_PROX_WIDTH_71US_PERIOD_6P25MS 

Pulse width : 71us, measurement period : 6.25ms. Except for the number 32 of LED pulses.

RM_OB1203_PROX_WIDTH_71US_PERIOD_12P5MS 

Pulse width : 71us, measurement period : 12.5ms.

RM_OB1203_PROX_WIDTH_71US_PERIOD_25MS 

Pulse width : 71us, measurement period : 25ms.

RM_OB1203_PROX_WIDTH_71US_PERIOD_50MS 

Pulse width : 71us, measurement period : 50ms.

RM_OB1203_PROX_WIDTH_71US_PERIOD_100MS 

Pulse width : 71us, measurement period : 100ms.

RM_OB1203_PROX_WIDTH_71US_PERIOD_200MS 

Pulse width : 71us, measurement period : 200ms.

RM_OB1203_PROX_WIDTH_71US_PERIOD_400MS 

Pulse width : 71us, measurement period : 400ms.

◆ rm_ob1203_ppg_pulse_width_meas_period_t

PPG pulse width and measurement period

Enumerator
RM_OB1203_PPG_WIDTH_130US_PERIOD_0P3125MS 

Pulse width : 130us, measurement period : 0.3125ms. PPG1 mode only.

RM_OB1203_PPG_WIDTH_130US_PERIOD_0P625MS 

Pulse width : 130us, measurement period : 0.625ms.

RM_OB1203_PPG_WIDTH_130US_PERIOD_1MS 

Pulse width : 130us, measurement period : 1ms.

RM_OB1203_PPG_WIDTH_130US_PERIOD_1P25MS 

Pulse width : 130us, measurement period : 1.25ms.

RM_OB1203_PPG_WIDTH_130US_PERIOD_2P5MS 

Pulse width : 130us, measurement period : 2.5ms.

RM_OB1203_PPG_WIDTH_130US_PERIOD_5MS 

Pulse width : 130us, measurement period : 5ms.

RM_OB1203_PPG_WIDTH_130US_PERIOD_10MS 

Pulse width : 130us, measurement period : 10ms.

RM_OB1203_PPG_WIDTH_130US_PERIOD_20MS 

Pulse width : 130us, measurement period : 20ms.

RM_OB1203_PPG_WIDTH_247US_PERIOD_0P625MS 

Pulse width : 247us, measurement period : 0.625ms. PPG1 mode only.

RM_OB1203_PPG_WIDTH_247US_PERIOD_1MS 

Pulse width : 247us, measurement period : 1ms.

RM_OB1203_PPG_WIDTH_247US_PERIOD_1P25MS 

Pulse width : 247us, measurement period : 1.25ms.

RM_OB1203_PPG_WIDTH_247US_PERIOD_2P5MS 

Pulse width : 247us, measurement period : 2.5ms.

RM_OB1203_PPG_WIDTH_247US_PERIOD_5MS 

Pulse width : 247us, measurement period : 5ms.

RM_OB1203_PPG_WIDTH_247US_PERIOD_10MS 

Pulse width : 247us, measurement period : 10ms.

RM_OB1203_PPG_WIDTH_247US_PERIOD_20MS 

Pulse width : 247us, measurement period : 20ms.

RM_OB1203_PPG_WIDTH_481US_PERIOD_1MS 

Pulse width : 481us, measurement period : 1ms. PPG1 mode only.

RM_OB1203_PPG_WIDTH_481US_PERIOD_1P25MS 

Pulse width : 481us, measurement period : 1.25ms. PPG1 mode only.

RM_OB1203_PPG_WIDTH_481US_PERIOD_2P5MS 

Pulse width : 481us, measurement period : 2.5ms.

RM_OB1203_PPG_WIDTH_481US_PERIOD_5MS 

Pulse width : 481us, measurement period : 5ms.

RM_OB1203_PPG_WIDTH_481US_PERIOD_10MS 

Pulse width : 481us, measurement period : 10ms.

RM_OB1203_PPG_WIDTH_481US_PERIOD_20MS 

Pulse width : 481us, measurement period : 20ms.

RM_OB1203_PPG_WIDTH_949US_PERIOD_2P5MS 

Pulse width : 949us, measurement period : 2.5ms. PPG1 mode only.

RM_OB1203_PPG_WIDTH_949US_PERIOD_5MS 

Pulse width : 949us, measurement period : 5ms.

RM_OB1203_PPG_WIDTH_949US_PERIOD_10MS 

Pulse width : 949us, measurement period : 10ms.

RM_OB1203_PPG_WIDTH_949US_PERIOD_20MS 

Pulse width : 949us, measurement period : 20ms.

◆ rm_ob1203_fifo_rollover_t

FIFO Rollover

Enumerator
RM_OB1203_FIFO_ROLLOVER_DISABLE 

In the event of a full FIFO, no more samples of PPG data are written into the FIFO; the samples from new measurements are lost.

RM_OB1203_FIFO_ROLLOVER_ENABLE 

New PPG data will always be written to the FIFO, and the FIFO Write Pointer is incremented (rollover). If the FIFO is full, old data will be overwritten. The FIFO Overflow Counter counts the number of lost (overwritten) and respectively the number of new samples. The FIFO Read Pointer remains unchanged.