MT2523 API Reference  LinkIt SDK v4
Sensor Subsystem

The sensor subsystem interface APIs could be used to port physical sensor drivers, to port fusion algorithms, or to subscribe to a specific sensor to acquire data, as shown below. More...

Overview

The sensor subsystem interface APIs could be used to port physical sensor drivers, to port fusion algorithms, or to subscribe to a specific sensor to acquire data, as shown below.

sensor_subsys_architecture.png

Terms and acronyms

Terms Details
Sensor Subsystem Sensor software stack, including physical sensor drivers, sensor manager, fusion algorithms and the interface APIs.
Sensor Manager Manages the buffer, the registration of physical sensor driver and fusion algorithm and the subscription from applications.
Physical Sensor Detects device-specific properties such as acceleration, rotation and environmental properties such as light, magnetic field and barometric pressure.
Fusion Algorithm Filters the output of physical sensors to provide abstract results, such as pedometer and activity recognition.
PDR Pedestrian dead reckoning, calculating one's current position by using a previously determined position or fix, and advancing that position based upon known or estimated speeds over elapsed time and course.
EKG Electrocardiography (ECG or EKG) is the process of recording the electrical activity of the heart over a period of time using electrodes placed on a patient's body.
EEG Electroencephalography (EEG) is an electrophysiological monitoring method to record electrical activity of the brain.
EMG Electromyography (EMG) is an electrodiagnostic medicine technique for evaluating and recording the electrical activity produced by skeletal muscles.
GSR Galvanic skin response (GSR) is an electrophysiological monitoring method to record conductance of the skin.
PPG Photoplethysmogram (PPG) is an optical volumetric measurement of an organ. By illuminating skin with LED, the PPG is measured from the light transmitted or reflected to photodiode.
BISI Beat interval (BI) and signal integrity (SI) detection. The BI is computed based on subtracting the peak position of the successive PPG beats. The SI is an indicator to identify the PPG signal integrity.

Macros

#define SENSOR_TYPE_ACCELEROMETER   (0)
 Accelerometer. More...
 
#define SENSOR_TYPE_MAGNETIC_FIELD   (1)
 Magnetic field sensor. More...
 
#define SENSOR_TYPE_PRESSURE   (2)
 Pressure sensor (also known as barometer). More...
 
#define SENSOR_TYPE_GYROSCOPE   (3)
 Gyroscope sensor. More...
 
#define SENSOR_TYPE_PROXIMITY   (4)
 Proximity sensor. More...
 
#define SENSOR_TYPE_BIOSENSOR_EKG   (5)
 Biosensor EKG data. More...
 
#define SENSOR_TYPE_BIOSENSOR_EEG   (6)
 Biosensor EEG data. More...
 
#define SENSOR_TYPE_BIOSENSOR_EMG   (7)
 Biosensor EMG data. More...
 
#define SENSOR_TYPE_BIOSENSOR_GSR   (8)
 Biosensor GSR data. More...
 
#define SENSOR_TYPE_BIOSENSOR_PPG1   (9)
 Biosensor PPG channel 1 for optical heart rate monitoring. More...
 
#define SENSOR_TYPE_BIOSENSOR_PPG2   (10)
 Biosensor PPG channel 2. More...
 
#define SENSOR_TYPE_BIOSENSOR_BISI   (11)
 Biosensor BISI data. More...
 
#define SENSOR_TYPE_BIOSENSOR_PPG1_512HZ   (12)
 Biosensor PPG 512Hz data. More...
 
#define SENSOR_PHYSICAL_TYPE_ALL   (13)
 Total number of the listed physical sensors. More...
 
#define SENSOR_VIRTUAL_TYPE_START   (13)
 Starting number of the virtual sensor type for fusion algorithm. More...
 
#define SENSOR_TYPE_PEDOMETER   (SENSOR_VIRTUAL_TYPE_START)
 Step counter sensor. More...
 
#define SENSOR_TYPE_ACTIVITY   (SENSOR_VIRTUAL_TYPE_START+1)
 Activity recognition sensor. More...
 
#define SENSOR_TYPE_GESTURE_CHECK_TIME   (SENSOR_VIRTUAL_TYPE_START+2)
 A sensor to detect a gesture of checking the time or a glance at the screen. More...
 
#define SENSOR_TYPE_GESTURE_TAP   (SENSOR_VIRTUAL_TYPE_START+3)
 A sensor to detect a gesture of tapping the screen. More...
 
#define SENSOR_TYPE_GESTURE_SHAKE   (SENSOR_VIRTUAL_TYPE_START+4)
 A sensor to detect the gesture of shaking the device up and down or left and right. More...
 
#define SENSOR_TYPE_GESTURE_TWIST   (SENSOR_VIRTUAL_TYPE_START+5)
 A sensor to detect the gesture of twisting the device attached to a wrist. More...
 
#define SENSOR_TYPE_FALL   (SENSOR_VIRTUAL_TYPE_START+6)
 Fall detection sensor. More...
 
#define SENSOR_TYPE_SLEEP   (SENSOR_VIRTUAL_TYPE_START+7)
 Sleep tracker sensor. More...
 
#define SENSOR_TYPE_PDR   (SENSOR_VIRTUAL_TYPE_START+8)
 PDR sensor. More...
 
#define SENSOR_TYPE_HEART_RATE_MONITOR   (SENSOR_VIRTUAL_TYPE_START+9)
 A sensor to monitor one's heart rate. More...
 
#define SENSOR_TYPE_HEART_RATE_VARIABILITY_MONITOR   (SENSOR_VIRTUAL_TYPE_START+10)
 A sensor to monitor one's heart rate variability. More...
 
#define SENSOR_TYPE_BLOOD_PRESSURE_MONITOR   (SENSOR_VIRTUAL_TYPE_START+11)
 A sensor to monitor one's blood pressure. More...
 
#define SENSOR_TYPE_SLEEP_STAGING   (SENSOR_VIRTUAL_TYPE_START+12)
 Sleep staging sensor. More...
 
#define SENSOR_TYPE_ALL   (SENSOR_VIRTUAL_TYPE_START+13)
 Total number of the listed physical sensors and fusion algorithms. More...
 

Modules

 Sensor application subscription interface
 The sensor application subscription interface targets the events of a specific sensor, such as pedometer, to provide rich information on user's daily activities.
 
 Sensor driver interface
 The sensor driver interface facilitates the physical sensor driver porting.
 
 Sensor fusion algorithm interface
 The sensor fusion algorithm interface enables the plug-in sensors, such as pedometer and activity recognition and the application of the fusion algorithms.
 

Macro Definition Documentation

#define SENSOR_PHYSICAL_TYPE_ALL   (13)

Total number of the listed physical sensors.

#define SENSOR_TYPE_ACCELEROMETER   (0)

Accelerometer.

#define SENSOR_TYPE_ACTIVITY   (SENSOR_VIRTUAL_TYPE_START+1)

Activity recognition sensor.

#define SENSOR_TYPE_ALL   (SENSOR_VIRTUAL_TYPE_START+13)

Total number of the listed physical sensors and fusion algorithms.

#define SENSOR_TYPE_BIOSENSOR_BISI   (11)

Biosensor BISI data.

#define SENSOR_TYPE_BIOSENSOR_EEG   (6)

Biosensor EEG data.

#define SENSOR_TYPE_BIOSENSOR_EKG   (5)

Biosensor EKG data.

#define SENSOR_TYPE_BIOSENSOR_EMG   (7)

Biosensor EMG data.

#define SENSOR_TYPE_BIOSENSOR_GSR   (8)

Biosensor GSR data.

#define SENSOR_TYPE_BIOSENSOR_PPG1   (9)

Biosensor PPG channel 1 for optical heart rate monitoring.

#define SENSOR_TYPE_BIOSENSOR_PPG1_512HZ   (12)

Biosensor PPG 512Hz data.

#define SENSOR_TYPE_BIOSENSOR_PPG2   (10)

Biosensor PPG channel 2.

To measure the pulse oximetry, two independent channels of PPG with different LED wavelengths are required.

#define SENSOR_TYPE_BLOOD_PRESSURE_MONITOR   (SENSOR_VIRTUAL_TYPE_START+11)

A sensor to monitor one's blood pressure.

#define SENSOR_TYPE_FALL   (SENSOR_VIRTUAL_TYPE_START+6)

Fall detection sensor.

#define SENSOR_TYPE_GESTURE_CHECK_TIME   (SENSOR_VIRTUAL_TYPE_START+2)

A sensor to detect a gesture of checking the time or a glance at the screen.

#define SENSOR_TYPE_GESTURE_SHAKE   (SENSOR_VIRTUAL_TYPE_START+4)

A sensor to detect the gesture of shaking the device up and down or left and right.

#define SENSOR_TYPE_GESTURE_TAP   (SENSOR_VIRTUAL_TYPE_START+3)

A sensor to detect a gesture of tapping the screen.

#define SENSOR_TYPE_GESTURE_TWIST   (SENSOR_VIRTUAL_TYPE_START+5)

A sensor to detect the gesture of twisting the device attached to a wrist.

#define SENSOR_TYPE_GYROSCOPE   (3)

Gyroscope sensor.

#define SENSOR_TYPE_HEART_RATE_MONITOR   (SENSOR_VIRTUAL_TYPE_START+9)

A sensor to monitor one's heart rate.

#define SENSOR_TYPE_HEART_RATE_VARIABILITY_MONITOR   (SENSOR_VIRTUAL_TYPE_START+10)

A sensor to monitor one's heart rate variability.

#define SENSOR_TYPE_MAGNETIC_FIELD   (1)

Magnetic field sensor.

#define SENSOR_TYPE_PDR   (SENSOR_VIRTUAL_TYPE_START+8)

PDR sensor.

#define SENSOR_TYPE_PEDOMETER   (SENSOR_VIRTUAL_TYPE_START)

Step counter sensor.

#define SENSOR_TYPE_PRESSURE   (2)

Pressure sensor (also known as barometer).

#define SENSOR_TYPE_PROXIMITY   (4)

Proximity sensor.

#define SENSOR_TYPE_SLEEP   (SENSOR_VIRTUAL_TYPE_START+7)

Sleep tracker sensor.

#define SENSOR_TYPE_SLEEP_STAGING   (SENSOR_VIRTUAL_TYPE_START+12)

Sleep staging sensor.

#define SENSOR_VIRTUAL_TYPE_START   (13)

Starting number of the virtual sensor type for fusion algorithm.