Bluetooth LE Profile API document
Bluetooth LE Profile API document Rev.1.00 [May 22, 2020]
Continuous Glucose Monitoring Service Client

This is the client for the Continuous Glucose Monitoring Service. More...

Detailed Description

This is the client for the Continuous Glucose Monitoring Service.

Data Structures

struct  st_ble_cgmc_meas_flags_t
 CGM Measurement Flags value structure. More...
 
struct  st_ble_cgmc_meas_sensor_status_annunciation_t
 CGM Measurement Sensor Status Annunciation value structure. More...
 
struct  st_ble_cgmc_meas_t
 CGM Measurement value structure. More...
 
struct  st_ble_cgmc_meas_attr_hdl_t
 CGM Measurement attribute handle value. More...
 
struct  st_ble_cgmc_feat_cgm_feature_t
 CGM Feature CGM Feature value structure. More...
 
struct  st_ble_cgmc_feat_t
 CGM Feature value structure. More...
 
struct  st_ble_cgmc_feat_attr_hdl_t
 CGM Feature attribute handle value. More...
 
struct  st_ble_cgmc_status_t
 CGM Status value structure. More...
 
struct  st_ble_cgmc_status_attr_hdl_t
 CGM Status attribute handle value. More...
 
struct  st_ble_cgmc_session_start_time_t
 CGM Session Start Time value structure. More...
 
struct  st_ble_cgmc_session_start_time_attr_hdl_t
 CGM Session Start Time attribute handle value. More...
 
struct  st_ble_cgmc_session_run_time_t
 CGM Session Run Time value structure. More...
 
struct  st_ble_cgmc_session_run_time_attr_hdl_t
 CGM Session Run Time attribute handle value. More...
 
struct  st_ble_cgmc_record_access_cp_t
 Record Access Control Point value structure. More...
 
struct  st_ble_cgmc_record_access_cp_attr_hdl_t
 Record Access Control Point attribute handle value. More...
 
struct  st_ble_cgmc_specific_ops_cp_calibration_value_calibration_status_t
 CGM Specific Ops Control Point Calibration Value - Calibration Status value structure. More...
 
struct  st_ble_cgmc_specific_ops_cp_t
 CGM Specific Ops Control Point value structure. More...
 
struct  st_ble_cgmc_specific_ops_cp_attr_hdl_t
 CGM Specific Ops Control Point attribute handle value. More...
 
struct  st_ble_cgmc_evt_data_t
 Continuous Glucose Monitoring client event data. More...
 

Macros

#define BLE_CGMC_MEAS_UUID   (0x2AA7)
 
#define BLE_CGMC_MEAS_LEN   (15)
 
#define BLE_CGMC_MEAS_CLI_CNFG_UUID   (0x2902)
 
#define BLE_CGMC_MEAS_CLI_CNFG_LEN   (2)
 
#define BLE_CGMC_FEAT_UUID   (0x2AA8)
 
#define BLE_CGMC_FEAT_LEN   (6)
 
#define BLE_CGMC_STATUS_UUID   (0x2AA9)
 
#define BLE_CGMC_STATUS_LEN   (7)
 
#define BLE_CGMC_SESSION_START_TIME_UUID   (0x2AAA)
 
#define BLE_CGMC_SESSION_START_TIME_LEN   (11)
 
#define BLE_CGMC_SESSION_RUN_TIME_UUID   (0x2AAB)
 
#define BLE_CGMC_SESSION_RUN_TIME_LEN   (4)
 
#define BLE_CGMC_RECORD_ACCESS_CP_UUID   (0x2A52)
 
#define BLE_CGMC_RECORD_ACCESS_CP_LEN   (10)
 
#define BLE_CGMC_RECORD_ACCESS_CP_CLI_CNFG_UUID   (0x2902)
 
#define BLE_CGMC_RECORD_ACCESS_CP_CLI_CNFG_LEN   (2)
 
#define BLE_CGMC_SPECIFIC_OPS_CP_UUID   (0x2AAC)
 
#define BLE_CGMC_SPECIFIC_OPS_CP_LEN   (16)
 
#define BLE_CGMC_SPECIFIC_OPS_CP_CLI_CNFG_UUID   (0x2902)
 
#define BLE_CGMC_SPECIFIC_OPS_CP_CLI_CNFG_LEN   (2)
 
#define BLE_CGMC_MISSING_CRC_ERROR   (BLE_ERR_GROUP_GATT | 0x80)
 If E2E-CRC is supported and a Write procedure is processed without CRC attached. More...
 
#define BLE_CGMC_INVALID_CRC_ERROR   (BLE_ERR_GROUP_GATT | 0x81)
 If E2E-CRC is supported and a Write procedure is processed with incorrect or invalid CRC value attached. More...
 

Enumerations

enum  e_ble_cgmc_feat_cgm_type_t {
  BLE_CGMC_FEAT_CGM_TYPE_CAPILLARY_WHOLE_BLOOD_1 = 1,
  BLE_CGMC_FEAT_CGM_TYPE_CAPILLARY_PLASMA = 2,
  BLE_CGMC_FEAT_CGM_TYPE_CAPILLARY_WHOLE_BLOOD_3 = 3,
  BLE_CGMC_FEAT_CGM_TYPE_VENOUS_PLASMA = 4,
  BLE_CGMC_FEAT_CGM_TYPE_ARTERIAL_WHOLE_BLOOD = 5,
  BLE_CGMC_FEAT_CGM_TYPE_ARTERIAL_PLASMA = 6,
  BLE_CGMC_FEAT_CGM_TYPE_UNDETERMINED_WHOLE_BLOOD = 7,
  BLE_CGMC_FEAT_CGM_TYPE_UNDETERMINED_PLASMA = 8,
  BLE_CGMC_FEAT_CGM_TYPE_INTERSTITIAL_FLUID = 9,
  BLE_CGMC_FEAT_CGM_TYPE_CONTROL_SOLUTION = 10
}
 CGM Feature CGM Type enumeration. More...
 
enum  e_ble_cgmc_feat_cgm_sample_location_t {
  BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_FINGER = 1,
  BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_ALTERNATE_SITE_TEST = 2,
  BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_EARLOBE = 3,
  BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_CONTROL_SOLUTION = 4,
  BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_SUBCUTANEOUS_TISSUE = 5,
  BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_SAMPLE_LOCATION_VALUE_NOT_AVAILABLE = 15
}
 CGM Feature CGM Sample Location enumeration. More...
 
enum  e_ble_cgmc_session_start_time_dst_offset_t {
  BLE_CGMC_SESSION_START_TIME_DST_OFFSET_STANDARD_TIME = 0,
  BLE_CGMC_SESSION_START_TIME_DST_OFFSET_HALF_AN_HOUR_DAYLIGHT_TIME = 2,
  BLE_CGMC_SESSION_START_TIME_DST_OFFSET_DAYLIGHT_TIME = 4,
  BLE_CGMC_SESSION_START_TIME_DST_OFFSET_DOUBLE_DAYLIGHT_TIME = 8
}
 CGM Session Start Time DST-Offset enumeration. More...
 
enum  e_ble_cgmc_record_access_cp_op_code_t {
  BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_REPORT_STORED_RECORDS = 1,
  BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_DELETE_STORED_RECORDS = 2,
  BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_ABORT_OPERATION = 3,
  BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_REPORT_NUMBER_OF_STORED_RECORDS = 4,
  BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_NUMBER_OF_STORED_RECORDS_RESPONSE = 5,
  BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_RESPONSE_CODE = 6
}
 Record Access Control Point Op Code enumeration. More...
 
enum  e_ble_cgmc_record_access_cp_operator_t {
  BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_NULL = 0,
  BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_ALL_RECORDS = 1,
  BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_LESS_THAN_OR_EQUAL_TO = 2,
  BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_GREATER_THAN_OR_EQUAL_TO = 3,
  BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_WITHIN_RANGE_OF = 4,
  BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_FIRST_RECORD = 5,
  BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_LAST_RECORD = 6
}
 Record Access Control Point Operator enumeration. More...
 
enum  e_ble_cgmc_record_access_cp_operand_t {
  BLE_CGMC_RECORD_ACCESS_CP_OPERAND_FILTER_PARAMETERS_1 = 1,
  BLE_CGMC_RECORD_ACCESS_CP_OPERAND_FILTER_PARAMETERS_2 = 2,
  BLE_CGMC_RECORD_ACCESS_CP_OPERAND_NOT_INCLUDED = 3,
  BLE_CGMC_RECORD_ACCESS_CP_OPERAND_FILTER_PARAMETERS_4 = 4,
  BLE_CGMC_RECORD_ACCESS_CP_OPERAND_NUMBER_OF_RECORDS = 5,
  BLE_CGMC_RECORD_ACCESS_CP_OPERAND_REQUEST_OP_CODE__RESPONSE_CODE_VALUE = 6
}
 Record Access Control Point Operand enumeration. More...
 
enum  e_ble_cgmc_record_access_cp_response_code_t {
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_SUCCESS = 1,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_OP_CODE_NOT_SUPPORTED = 2,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_INVALID_OPERATOR = 3,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_OPERATOR_NOT_SUPPORTED = 4,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_INVALID_OPERAND = 5,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_NO_RECORDS_FOUND = 6,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_ABORT_UNSUCCESSFUL = 7,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_PROCEDURE_NOT_COMPLETED = 8,
  BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_OPERAND_NOT_SUPPORTED = 9
}
 Record Access Control Point Response Code enumeration. More...
 
enum  e_ble_cgmc_specific_ops_cp_op_code_t {
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_CGM_COMMUNICATION_INTERVAL = 1,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_CGM_COMMUNICATION_INTERVAL = 2,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_CGM_COMMUNICATION_INTERVAL_RESPONSE = 3,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_GLUCOSE_CALIBRATION_VALUE = 4,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_GLUCOSE_CALIBRATION_VALUE = 5,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GLUCOSE_CALIBRATION_VALUE_RESPONSE = 6,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_PATIENT_HIGH_ALERT_LEVEL = 7,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_PATIENT_HIGH_ALERT_LEVEL = 8,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_PATIENT_HIGH_ALERT_LEVEL_RESPONSE = 9,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_PATIENT_LOW_ALERT_LEVEL = 10,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_PATIENT_LOW_ALERT_LEVEL = 11,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_PATIENT_LOW_ALERT_LEVEL_RESPONSE = 12,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_HYPO_ALERT_LEVEL = 13,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_HYPO_ALERT_LEVEL = 14,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_HYPO_ALERT_LEVEL_RESPONSE = 15,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_HYPER_ALERT_LEVEL = 16,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_HYPER_ALERT_LEVEL = 17,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_HYPER_ALERT_LEVEL_RESPONSE = 18,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_RATE_OF_DECREASE_ALERT_LEVEL = 19,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_RATE_OF_DECREASE_ALERT_LEVEL = 20,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RATE_OF_DECREASE_ALERT_LEVEL_RESPONSE = 21,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_RATE_OF_INCREASE_ALERT_LEVEL = 22,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_RATE_OF_INCREASE_ALERT_LEVEL = 23,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RATE_OF_INCREASE_ALERT_LEVEL_RESPONSE = 24,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESET_DEVICE_SPECIFIC_ALERT = 25,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_START_THE_SESSION = 26,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_STOP_THE_SESSION = 27,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODE = 28
}
 CGM Specific Ops Control Point Op Code enumeration. More...
 
enum  e_ble_cgmc_specific_ops_cp_op_code_response_codes_t {
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_SUCCESS = 1,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_OP_CODE_NOT_SUPPORTED = 2,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_INVALID_OPERAND = 3,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_PROCEDURE_NOT_COMPLETED = 4,
  BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_PARAMETER_OUT_OF_RANGE = 5
}
 CGM Specific Ops Control Point Op Code - Response Codes enumeration. More...
 
enum  e_ble_cgmc_specific_ops_cp_operand_t {
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_COMMUNICATION_INTERVAL_IN_MINUTES_1 = 1,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_COMMUNICATION_INTERVAL_IN_MINUTES_3 = 3,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_OPERAND_VALUE_AS_DEFINED_IN_THE_CALIBRATION_VALUE_FIELDS_ = 4,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_CALIBRATION_DATA_RECORD_NUMBER = 5,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_CALIBRATION_DATA = 6,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_HIGH_BG_VALUE_IN_MG_DL_7 = 7,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_HIGH_BG_VALUE_IN_MG_DL_9 = 9,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_LOW_BG_VALUE_IN_MG_DL_10 = 10,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_LOW_BG_VALUE_IN_MG_DL_12 = 12,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPO_ALERT_LEVEL_VALUE_IN_MG_DL_13 = 13,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPO_ALERT_LEVEL_VALUE_IN_MG_DL_15 = 15,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPER_ALERT_LEVEL_VALUE_IN_MG_DL_16 = 16,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPER_ALERT_LEVEL_VALUE_IN_MG_DL_18 = 18,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_DECREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_19 = 19,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_DECREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_21 = 21,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_INCREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_22 = 22,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_INCREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_24 = 24,
  BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_REQUEST_OP_CODE__RESPONSE_CODE_VALUE = 28
}
 CGM Specific Ops Control Point Operand enumeration. More...
 
enum  e_ble_cgmc_char_idx_t {
  BLE_CGMC_MEAS_IDX,
  BLE_CGMC_MEAS_CLI_CNFG_IDX,
  BLE_CGMC_FEAT_IDX,
  BLE_CGMC_STATUS_IDX,
  BLE_CGMC_SESSION_START_TIME_IDX,
  BLE_CGMC_SESSION_RUN_TIME_IDX,
  BLE_CGMC_RECORD_ACCESS_CP_IDX,
  BLE_CGMC_RECORD_ACCESS_CP_CLI_CNFG_IDX,
  BLE_CGMC_SPECIFIC_OPS_CP_IDX,
  BLE_CGMC_SPECIFIC_OPS_CP_CLI_CNFG_IDX
}
 Continuous Glucose Monitoring characteristic ID. More...
 
enum  e_ble_cgmc_event_t {
  BLE_CGMC_EVENT_MEAS_HDL_VAL_NTF = BLE_SERVC_ATTR_EVENT(BLE_CGMC_MEAS_IDX, BLE_SERVC_HDL_VAL_NTF),
  BLE_CGMC_EVENT_MEAS_CLI_CNFG_READ_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_MEAS_CLI_CNFG_IDX, BLE_SERVC_READ_RSP),
  BLE_CGMC_EVENT_MEAS_CLI_CNFG_WRITE_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_MEAS_CLI_CNFG_IDX, BLE_SERVC_WRITE_RSP),
  BLE_CGMC_EVENT_FEAT_READ_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_FEAT_IDX, BLE_SERVC_READ_RSP),
  BLE_CGMC_EVENT_STATUS_READ_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_STATUS_IDX, BLE_SERVC_READ_RSP),
  BLE_CGMC_EVENT_SESSION_START_TIME_READ_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_SESSION_START_TIME_IDX, BLE_SERVC_READ_RSP),
  BLE_CGMC_EVENT_SESSION_START_TIME_WRITE_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_SESSION_START_TIME_IDX, BLE_SERVC_WRITE_RSP),
  BLE_CGMC_EVENT_SESSION_RUN_TIME_READ_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_SESSION_RUN_TIME_IDX, BLE_SERVC_READ_RSP),
  BLE_CGMC_EVENT_RECORD_ACCESS_CP_WRITE_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_RECORD_ACCESS_CP_IDX, BLE_SERVC_WRITE_RSP),
  BLE_CGMC_EVENT_RECORD_ACCESS_CP_HDL_VAL_IND = BLE_SERVC_ATTR_EVENT(BLE_CGMC_RECORD_ACCESS_CP_IDX, BLE_SERVC_HDL_VAL_IND),
  BLE_CGMC_EVENT_RECORD_ACCESS_CP_CLI_CNFG_READ_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_RECORD_ACCESS_CP_CLI_CNFG_IDX, BLE_SERVC_READ_RSP),
  BLE_CGMC_EVENT_RECORD_ACCESS_CP_CLI_CNFG_WRITE_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_RECORD_ACCESS_CP_CLI_CNFG_IDX, BLE_SERVC_WRITE_RSP),
  BLE_CGMC_EVENT_SPECIFIC_OPS_CP_WRITE_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_SPECIFIC_OPS_CP_IDX, BLE_SERVC_WRITE_RSP),
  BLE_CGMC_EVENT_SPECIFIC_OPS_CP_HDL_VAL_IND = BLE_SERVC_ATTR_EVENT(BLE_CGMC_SPECIFIC_OPS_CP_IDX, BLE_SERVC_HDL_VAL_IND),
  BLE_CGMC_EVENT_SPECIFIC_OPS_CP_CLI_CNFG_READ_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_SPECIFIC_OPS_CP_CLI_CNFG_IDX, BLE_SERVC_READ_RSP),
  BLE_CGMC_EVENT_SPECIFIC_OPS_CP_CLI_CNFG_WRITE_RSP = BLE_SERVC_ATTR_EVENT(BLE_CGMC_SPECIFIC_OPS_CP_CLI_CNFG_IDX, BLE_SERVC_WRITE_RSP)
}
 Continuous Glucose Monitoring client event type. More...
 

Functions

ble_status_t R_BLE_CGMC_ReadMeasCliCnfg (uint16_t conn_hdl)
 Read CGM Measurement characteristic Client Characteristic Configuration descriptor value from the remote GATT database. More...
 
ble_status_t R_BLE_CGMC_WriteMeasCliCnfg (uint16_t conn_hdl, const uint16_t *p_value)
 Write CGM Measurement characteristic Client Characteristic Configuration descriptor value to remote GATT database. More...
 
void R_BLE_CGMC_GetMeasAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_cgmc_meas_attr_hdl_t *p_hdl)
 Get CGM Measurement attribute handles. More...
 
ble_status_t R_BLE_CGMC_ReadFeat (uint16_t conn_hdl)
 Read CGM Feature characteristic value from the remote GATT database. More...
 
void R_BLE_CGMC_GetFeatAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_cgmc_feat_attr_hdl_t *p_hdl)
 Get CGM Feature attribute handles. More...
 
ble_status_t R_BLE_CGMC_ReadStatus (uint16_t conn_hdl)
 Read CGM Status characteristic value from the remote GATT database. More...
 
void R_BLE_CGMC_GetStatusAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_cgmc_status_attr_hdl_t *p_hdl)
 Get CGM Status attribute handles. More...
 
ble_status_t R_BLE_CGMC_ReadSessionStartTime (uint16_t conn_hdl)
 Read CGM Session Start Time characteristic value from the remote GATT database. More...
 
ble_status_t R_BLE_CGMC_WriteSessionStartTime (uint16_t conn_hdl, const st_ble_cgmc_session_start_time_t *p_value)
 Write CGM Session Start Time characteristic value to remote GATT database. More...
 
void R_BLE_CGMC_GetSessionStartTimeAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_cgmc_session_start_time_attr_hdl_t *p_hdl)
 Get CGM Session Start Time attribute handles. More...
 
ble_status_t R_BLE_CGMC_ReadSessionRunTime (uint16_t conn_hdl)
 Read CGM Session Run Time characteristic value from the remote GATT database. More...
 
void R_BLE_CGMC_GetSessionRunTimeAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_cgmc_session_run_time_attr_hdl_t *p_hdl)
 Get CGM Session Run Time attribute handles. More...
 
ble_status_t R_BLE_CGMC_ReadRecordAccessCpCliCnfg (uint16_t conn_hdl)
 Read Record Access Control Point characteristic Client Characteristic Configuration descriptor value from the remote GATT database. More...
 
ble_status_t R_BLE_CGMC_WriteRecordAccessCpCliCnfg (uint16_t conn_hdl, const uint16_t *p_value)
 Write Record Access Control Point characteristic Client Characteristic Configuration descriptor value to remote GATT database. More...
 
ble_status_t R_BLE_CGMC_WriteRecordAccessCp (uint16_t conn_hdl, const st_ble_cgmc_record_access_cp_t *p_value)
 Write Record Access Control Point characteristic value to remote GATT database. More...
 
void R_BLE_CGMC_GetRecordAccessCpAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_cgmc_record_access_cp_attr_hdl_t *p_hdl)
 Get Record Access Control Point attribute handles. More...
 
ble_status_t R_BLE_CGMC_ReadSpecificOpsCpCliCnfg (uint16_t conn_hdl)
 Read CGM Specific Ops Control Point characteristic Client Characteristic Configuration descriptor value from the remote GATT database. More...
 
ble_status_t R_BLE_CGMC_WriteSpecificOpsCpCliCnfg (uint16_t conn_hdl, const uint16_t *p_value)
 Write CGM Specific Ops Control Point characteristic Client Characteristic Configuration descriptor value to remote GATT database. More...
 
ble_status_t R_BLE_CGMC_WriteSpecificOpsCp (uint16_t conn_hdl, const st_ble_cgmc_specific_ops_cp_t *p_value)
 Write CGM Specific Ops Control Point characteristic value to remote GATT database. More...
 
void R_BLE_CGMC_GetSpecificOpsCpAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_cgmc_specific_ops_cp_attr_hdl_t *p_hdl)
 Get CGM Specific Ops Control Point attribute handles. More...
 
ble_status_t R_BLE_CGMC_Init (ble_servc_app_cb_t cb)
 Initialize Continuous Glucose Monitoring client. More...
 
void R_BLE_CGMC_ServDiscCb (uint16_t conn_hdl, uint8_t serv_idx, uint16_t type, void *p_param)
 Continuous Glucose Monitoring client discovery callback. More...
 
void R_BLE_CGMC_GetServAttrHdl (const st_ble_dev_addr_t *p_addr, st_ble_gatt_hdl_range_t *p_hdl)
 Get Continuous Glucose Monitoring client attribute handle. More...
 

Macro Definition Documentation

◆ BLE_CGMC_MISSING_CRC_ERROR

#define BLE_CGMC_MISSING_CRC_ERROR   (BLE_ERR_GROUP_GATT | 0x80)

If E2E-CRC is supported and a Write procedure is processed without CRC attached.

◆ BLE_CGMC_INVALID_CRC_ERROR

#define BLE_CGMC_INVALID_CRC_ERROR   (BLE_ERR_GROUP_GATT | 0x81)

If E2E-CRC is supported and a Write procedure is processed with incorrect or invalid CRC value attached.

Enumeration Type Documentation

◆ e_ble_cgmc_feat_cgm_type_t

CGM Feature CGM Type enumeration.

Enumerator
BLE_CGMC_FEAT_CGM_TYPE_CAPILLARY_WHOLE_BLOOD_1 

Capillary Whole blood

BLE_CGMC_FEAT_CGM_TYPE_CAPILLARY_PLASMA 

Capillary Plasma

BLE_CGMC_FEAT_CGM_TYPE_CAPILLARY_WHOLE_BLOOD_3 

Capillary Whole blood

BLE_CGMC_FEAT_CGM_TYPE_VENOUS_PLASMA 

Venous Plasma

BLE_CGMC_FEAT_CGM_TYPE_ARTERIAL_WHOLE_BLOOD 

Arterial Whole blood

BLE_CGMC_FEAT_CGM_TYPE_ARTERIAL_PLASMA 

Arterial Plasma

BLE_CGMC_FEAT_CGM_TYPE_UNDETERMINED_WHOLE_BLOOD 

Undetermined Whole blood

BLE_CGMC_FEAT_CGM_TYPE_UNDETERMINED_PLASMA 

Undetermined Plasma

BLE_CGMC_FEAT_CGM_TYPE_INTERSTITIAL_FLUID 

Interstitial Fluid (ISF)

BLE_CGMC_FEAT_CGM_TYPE_CONTROL_SOLUTION 

Control Solution

◆ e_ble_cgmc_feat_cgm_sample_location_t

CGM Feature CGM Sample Location enumeration.

Enumerator
BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_FINGER 

Finger

BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_ALTERNATE_SITE_TEST 

Alternate Site Test (AST)

BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_EARLOBE 

Earlobe

BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_CONTROL_SOLUTION 

Control solution

BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_SUBCUTANEOUS_TISSUE 

Subcutaneous tissue

BLE_CGMC_FEAT_CGM_SAMPLE_LOCATION_SAMPLE_LOCATION_VALUE_NOT_AVAILABLE 

Sample Location value not available

◆ e_ble_cgmc_session_start_time_dst_offset_t

CGM Session Start Time DST-Offset enumeration.

Enumerator
BLE_CGMC_SESSION_START_TIME_DST_OFFSET_STANDARD_TIME 

Standard Time

BLE_CGMC_SESSION_START_TIME_DST_OFFSET_HALF_AN_HOUR_DAYLIGHT_TIME 

Half An Hour Daylight Time (+0.5h)

BLE_CGMC_SESSION_START_TIME_DST_OFFSET_DAYLIGHT_TIME 

Daylight Time (+1h)

BLE_CGMC_SESSION_START_TIME_DST_OFFSET_DOUBLE_DAYLIGHT_TIME 

Double Daylight Time (+2h)

◆ e_ble_cgmc_record_access_cp_op_code_t

Record Access Control Point Op Code enumeration.

Enumerator
BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_REPORT_STORED_RECORDS 

Report stored records (Operator: Value from Operator Table)

BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_DELETE_STORED_RECORDS 

Delete stored records (Operator: Value from Operator Table)

BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_ABORT_OPERATION 

Abort operation (Operator: Null 'value of 0x00 from Operator Table')

BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_REPORT_NUMBER_OF_STORED_RECORDS 

Report number of stored records (Operator: Value from Operator Table)

BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_NUMBER_OF_STORED_RECORDS_RESPONSE 

Number of stored records response (Operator: Null 'value of 0x00 from Operator Table')

BLE_CGMC_RECORD_ACCESS_CP_OP_CODE_RESPONSE_CODE 

Response Code (Operator: Null 'value of 0x00 from Operator Table')

◆ e_ble_cgmc_record_access_cp_operator_t

Record Access Control Point Operator enumeration.

Enumerator
BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_NULL 

Null

BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_ALL_RECORDS 

All records

BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_LESS_THAN_OR_EQUAL_TO 

Less than or equal to

BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_GREATER_THAN_OR_EQUAL_TO 

Greater than or equal to

BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_WITHIN_RANGE_OF 

Within range of (inclusive)

BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_FIRST_RECORD 

First record(i.e. oldest record)

BLE_CGMC_RECORD_ACCESS_CP_OPERATOR_LAST_RECORD 

Last record (i.e. most recent record)

◆ e_ble_cgmc_record_access_cp_operand_t

Record Access Control Point Operand enumeration.

Enumerator
BLE_CGMC_RECORD_ACCESS_CP_OPERAND_FILTER_PARAMETERS_1 

Filter parameters (as appropriate to Operator and Service)

BLE_CGMC_RECORD_ACCESS_CP_OPERAND_FILTER_PARAMETERS_2 

Filter parameters (as appropriate to Operator and Service)

BLE_CGMC_RECORD_ACCESS_CP_OPERAND_NOT_INCLUDED 

Not included

BLE_CGMC_RECORD_ACCESS_CP_OPERAND_FILTER_PARAMETERS_4 

Filter parameters (as appropriate to Operator and Service)

BLE_CGMC_RECORD_ACCESS_CP_OPERAND_NUMBER_OF_RECORDS 

Number of Records (Field size defined per service)

BLE_CGMC_RECORD_ACCESS_CP_OPERAND_REQUEST_OP_CODE__RESPONSE_CODE_VALUE 

Request Op Code, Response Code Value

◆ e_ble_cgmc_record_access_cp_response_code_t

Record Access Control Point Response Code enumeration.

Enumerator
BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_SUCCESS 

Normal response for successful operation

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_OP_CODE_NOT_SUPPORTED 

Normal response if unsupported Op Code is received

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_INVALID_OPERATOR 

Normal response if Operator received does not meet the requirements of the service (e.g. Null was expected)

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_OPERATOR_NOT_SUPPORTED 

Normal response if unsupported Operator is received

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_INVALID_OPERAND 

Normal response if Operand received does not meet the requirements of the service

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_NO_RECORDS_FOUND 

Normal response if request to report stored records or request to delete stored

records resulted in no records meeting criteria.

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_ABORT_UNSUCCESSFUL 

Normal response if request for Abort cannot be completed

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_PROCEDURE_NOT_COMPLETED 

Normal response if unable to complete a procedure for any reason

BLE_CGMC_RECORD_ACCESS_CP_RESPONSE_CODE_OPERAND_NOT_SUPPORTED 

Normal response if unsupported Operand is received

◆ e_ble_cgmc_specific_ops_cp_op_code_t

CGM Specific Ops Control Point Op Code enumeration.

Enumerator
BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_CGM_COMMUNICATION_INTERVAL 

Set CGM Communication Interval

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_CGM_COMMUNICATION_INTERVAL 

Get CGM Communication Interval

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_CGM_COMMUNICATION_INTERVAL_RESPONSE 

CGM Communication Interval response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_GLUCOSE_CALIBRATION_VALUE 

Set Glucose Calibration Value

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_GLUCOSE_CALIBRATION_VALUE 

Get Glucose Calibration Value

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GLUCOSE_CALIBRATION_VALUE_RESPONSE 

Glucose Calibration Value response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_PATIENT_HIGH_ALERT_LEVEL 

Set Patient High Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_PATIENT_HIGH_ALERT_LEVEL 

Get Patient High Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_PATIENT_HIGH_ALERT_LEVEL_RESPONSE 

Patient High Alert Level Response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_PATIENT_LOW_ALERT_LEVEL 

Set Patient Low Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_PATIENT_LOW_ALERT_LEVEL 

Get Patient Low Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_PATIENT_LOW_ALERT_LEVEL_RESPONSE 

Patient Low Alert Level Response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_HYPO_ALERT_LEVEL 

Set Hypo Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_HYPO_ALERT_LEVEL 

Get Hypo Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_HYPO_ALERT_LEVEL_RESPONSE 

Hypo Alert Level Response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_HYPER_ALERT_LEVEL 

Set Hyper Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_HYPER_ALERT_LEVEL 

Get Hyper Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_HYPER_ALERT_LEVEL_RESPONSE 

Hyper Alert Level Response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_RATE_OF_DECREASE_ALERT_LEVEL 

Set Rate of Decrease Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_RATE_OF_DECREASE_ALERT_LEVEL 

Get Rate of Decrease Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RATE_OF_DECREASE_ALERT_LEVEL_RESPONSE 

Rate of Decrease Alert Level Response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_SET_RATE_OF_INCREASE_ALERT_LEVEL 

Set Rate of Increase Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_GET_RATE_OF_INCREASE_ALERT_LEVEL 

Get Rate of Increase Alert Level

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RATE_OF_INCREASE_ALERT_LEVEL_RESPONSE 

Rate of Increase Alert Level Response

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESET_DEVICE_SPECIFIC_ALERT 

Reset Device Specific Alert

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_START_THE_SESSION 

Start the Session

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_STOP_THE_SESSION 

Stop the Session

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODE 

Response Code

◆ e_ble_cgmc_specific_ops_cp_op_code_response_codes_t

CGM Specific Ops Control Point Op Code - Response Codes enumeration.

Enumerator
BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_SUCCESS 

Success

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_OP_CODE_NOT_SUPPORTED 

Op Code not supported

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_INVALID_OPERAND 

Invalid Operand

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_PROCEDURE_NOT_COMPLETED 

Procedure not completed

BLE_CGMC_SPECIFIC_OPS_CP_OP_CODE_RESPONSE_CODES_PARAMETER_OUT_OF_RANGE 

Parameter out of range

◆ e_ble_cgmc_specific_ops_cp_operand_t

CGM Specific Ops Control Point Operand enumeration.

Enumerator
BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_COMMUNICATION_INTERVAL_IN_MINUTES_1 

Communication interval in minutes

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_COMMUNICATION_INTERVAL_IN_MINUTES_3 

Communication Interval in minutes

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_OPERAND_VALUE_AS_DEFINED_IN_THE_CALIBRATION_VALUE_FIELDS_ 

Operand value as defined in the Calibration Value Fields.

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_CALIBRATION_DATA_RECORD_NUMBER 

Calibration Data Record Number

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_CALIBRATION_DATA 

Calibration Data

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_HIGH_BG_VALUE_IN_MG_DL_7 

Patient High bG value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_HIGH_BG_VALUE_IN_MG_DL_9 

Patient High bG value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_LOW_BG_VALUE_IN_MG_DL_10 

Patient Low bG value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_PATIENT_LOW_BG_VALUE_IN_MG_DL_12 

Patient Low bG value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPO_ALERT_LEVEL_VALUE_IN_MG_DL_13 

Hypo Alert Level value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPO_ALERT_LEVEL_VALUE_IN_MG_DL_15 

Hypo Alert Level value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPER_ALERT_LEVEL_VALUE_IN_MG_DL_16 

Hyper Alert Level value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_HYPER_ALERT_LEVEL_VALUE_IN_MG_DL_18 

Hyper Alert Level value in mg/dL

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_DECREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_19 

Rate of Decrease Alert Level value in mg/dL/min

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_DECREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_21 

Rate of Decrease Alert Level value in mg/dL/min

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_INCREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_22 

Rate of Increase Alert Level value in mg/dL/min

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_RATE_OF_INCREASE_ALERT_LEVEL_VALUE_IN_MG_DL_MIN_24 

Rate of Increase Alert Level value in mg/dL/min

BLE_CGMC_SPECIFIC_OPS_CP_OPERAND_REQUEST_OP_CODE__RESPONSE_CODE_VALUE 

Request Op Code, Response Code Value

◆ e_ble_cgmc_char_idx_t

Continuous Glucose Monitoring characteristic ID.

◆ e_ble_cgmc_event_t

Continuous Glucose Monitoring client event type.

Function Documentation

◆ R_BLE_CGMC_ReadMeasCliCnfg()

ble_status_t R_BLE_CGMC_ReadMeasCliCnfg ( uint16_t  conn_hdl)

Read CGM Measurement characteristic Client Characteristic Configuration descriptor value from the remote GATT database.

Parameters
[in]conn_hdlConnection handle.
Returns
ble_status_t

◆ R_BLE_CGMC_WriteMeasCliCnfg()

ble_status_t R_BLE_CGMC_WriteMeasCliCnfg ( uint16_t  conn_hdl,
const uint16_t *  p_value 
)

Write CGM Measurement characteristic Client Characteristic Configuration descriptor value to remote GATT database.

Parameters
[in]conn_hdlConnection handle.
[in]p_valueCGM Measurement characteristic Client Characteristic Configuration descriptor value to write.
Returns
ble_status_t

◆ R_BLE_CGMC_GetMeasAttrHdl()

void R_BLE_CGMC_GetMeasAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_cgmc_meas_attr_hdl_t p_hdl 
)

Get CGM Measurement attribute handles.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.
Returns
ble_status_t

◆ R_BLE_CGMC_ReadFeat()

ble_status_t R_BLE_CGMC_ReadFeat ( uint16_t  conn_hdl)

Read CGM Feature characteristic value from the remote GATT database.

Parameters
[in]conn_hdlConnection handle.
Returns
ble_status_t

◆ R_BLE_CGMC_GetFeatAttrHdl()

void R_BLE_CGMC_GetFeatAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_cgmc_feat_attr_hdl_t p_hdl 
)

Get CGM Feature attribute handles.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.
Returns
ble_status_t

◆ R_BLE_CGMC_ReadStatus()

ble_status_t R_BLE_CGMC_ReadStatus ( uint16_t  conn_hdl)

Read CGM Status characteristic value from the remote GATT database.

Parameters
[in]conn_hdlConnection handle.
Returns
ble_status_t

◆ R_BLE_CGMC_GetStatusAttrHdl()

void R_BLE_CGMC_GetStatusAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_cgmc_status_attr_hdl_t p_hdl 
)

Get CGM Status attribute handles.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.
Returns
ble_status_t

◆ R_BLE_CGMC_ReadSessionStartTime()

ble_status_t R_BLE_CGMC_ReadSessionStartTime ( uint16_t  conn_hdl)

Read CGM Session Start Time characteristic value from the remote GATT database.

Parameters
[in]conn_hdlConnection handle.
Returns
ble_status_t

◆ R_BLE_CGMC_WriteSessionStartTime()

ble_status_t R_BLE_CGMC_WriteSessionStartTime ( uint16_t  conn_hdl,
const st_ble_cgmc_session_start_time_t p_value 
)

Write CGM Session Start Time characteristic value to remote GATT database.

Parameters
[in]conn_hdlConnection handle.
[in]p_valueCGM Session Start Time characteristic value to write.
Returns
ble_status_t

◆ R_BLE_CGMC_GetSessionStartTimeAttrHdl()

void R_BLE_CGMC_GetSessionStartTimeAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_cgmc_session_start_time_attr_hdl_t p_hdl 
)

Get CGM Session Start Time attribute handles.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.
Returns
ble_status_t

◆ R_BLE_CGMC_ReadSessionRunTime()

ble_status_t R_BLE_CGMC_ReadSessionRunTime ( uint16_t  conn_hdl)

Read CGM Session Run Time characteristic value from the remote GATT database.

Parameters
[in]conn_hdlConnection handle.
Returns
ble_status_t

◆ R_BLE_CGMC_GetSessionRunTimeAttrHdl()

void R_BLE_CGMC_GetSessionRunTimeAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_cgmc_session_run_time_attr_hdl_t p_hdl 
)

Get CGM Session Run Time attribute handles.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.
Returns
ble_status_t

◆ R_BLE_CGMC_ReadRecordAccessCpCliCnfg()

ble_status_t R_BLE_CGMC_ReadRecordAccessCpCliCnfg ( uint16_t  conn_hdl)

Read Record Access Control Point characteristic Client Characteristic Configuration descriptor value from the remote GATT database.

Parameters
[in]conn_hdlConnection handle.
Returns
ble_status_t

◆ R_BLE_CGMC_WriteRecordAccessCpCliCnfg()

ble_status_t R_BLE_CGMC_WriteRecordAccessCpCliCnfg ( uint16_t  conn_hdl,
const uint16_t *  p_value 
)

Write Record Access Control Point characteristic Client Characteristic Configuration descriptor value to remote GATT database.

Parameters
[in]conn_hdlConnection handle.
[in]p_valueRecord Access Control Point characteristic Client Characteristic Configuration descriptor value to write.
Returns
ble_status_t

◆ R_BLE_CGMC_WriteRecordAccessCp()

ble_status_t R_BLE_CGMC_WriteRecordAccessCp ( uint16_t  conn_hdl,
const st_ble_cgmc_record_access_cp_t p_value 
)

Write Record Access Control Point characteristic value to remote GATT database.

Parameters
[in]conn_hdlConnection handle.
[in]p_valueRecord Access Control Point characteristic value to write.
Returns
ble_status_t

◆ R_BLE_CGMC_GetRecordAccessCpAttrHdl()

void R_BLE_CGMC_GetRecordAccessCpAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_cgmc_record_access_cp_attr_hdl_t p_hdl 
)

Get Record Access Control Point attribute handles.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.
Returns
ble_status_t

◆ R_BLE_CGMC_ReadSpecificOpsCpCliCnfg()

ble_status_t R_BLE_CGMC_ReadSpecificOpsCpCliCnfg ( uint16_t  conn_hdl)

Read CGM Specific Ops Control Point characteristic Client Characteristic Configuration descriptor value from the remote GATT database.

Parameters
[in]conn_hdlConnection handle.
Returns
ble_status_t

◆ R_BLE_CGMC_WriteSpecificOpsCpCliCnfg()

ble_status_t R_BLE_CGMC_WriteSpecificOpsCpCliCnfg ( uint16_t  conn_hdl,
const uint16_t *  p_value 
)

Write CGM Specific Ops Control Point characteristic Client Characteristic Configuration descriptor value to remote GATT database.

Parameters
[in]conn_hdlConnection handle.
[in]p_valueCGM Specific Ops Control Point characteristic Client Characteristic Configuration descriptor value to write.
Returns
ble_status_t

◆ R_BLE_CGMC_WriteSpecificOpsCp()

ble_status_t R_BLE_CGMC_WriteSpecificOpsCp ( uint16_t  conn_hdl,
const st_ble_cgmc_specific_ops_cp_t p_value 
)

Write CGM Specific Ops Control Point characteristic value to remote GATT database.

Parameters
[in]conn_hdlConnection handle.
[in]p_valueCGM Specific Ops Control Point characteristic value to write.
Returns
ble_status_t

◆ R_BLE_CGMC_GetSpecificOpsCpAttrHdl()

void R_BLE_CGMC_GetSpecificOpsCpAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_cgmc_specific_ops_cp_attr_hdl_t p_hdl 
)

Get CGM Specific Ops Control Point attribute handles.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.
Returns
ble_status_t

◆ R_BLE_CGMC_Init()

ble_status_t R_BLE_CGMC_Init ( ble_servc_app_cb_t  cb)

Initialize Continuous Glucose Monitoring client.

Parameters
[in]cbClient callback.
Returns
ble_status_t

Function Name: R_BLE_CGMC_Init Description : This function initializes the GATTS Server and CGM Service, registers the callback function for GATTS. Arguments : cb - cal back to the initialization parameters data Return Value : BLE_SUCCESS - Success BLE_ERR_INVALID_PTR - The p_ntf_data parameter or the value field in the value field in the p_ntf_data parameter is NULL. BLE_ERR_INVALID_ARG - The value_len field in the value field in the p_ntf_data parameter is 0 or the attr_hdl field in the p_ntf_data parameters is 0.

◆ R_BLE_CGMC_ServDiscCb()

void R_BLE_CGMC_ServDiscCb ( uint16_t  conn_hdl,
uint8_t  serv_idx,
uint16_t  type,
void *  p_param 
)

Continuous Glucose Monitoring client discovery callback.

Parameters
[in]conn_hdlConnection handle
[in]serv_idxService instance index.
[in]typeService discovery event type.
[in]p_paramService discovery event parameter.
Returns
ble_status_t

Function Name: R_BLE_CGMC_ServDiscCb Description : Callback function for the Continuous Glucose Monitoring Service Discovery events. Arguments : conn_hdl - handle to the connection type - discovery event id : p_param - pointer to GATTC event data : serv_idx - Service index used to distinguish the multiple same UUID service. Return Value : none

◆ R_BLE_CGMC_GetServAttrHdl()

void R_BLE_CGMC_GetServAttrHdl ( const st_ble_dev_addr_t p_addr,
st_ble_gatt_hdl_range_t p_hdl 
)

Get Continuous Glucose Monitoring client attribute handle.

Parameters
[in]p_addrBluetooth device address for the attribute handles.
[out]p_hdlThe pointer to store the retrieved attribute handles.