InPlay API
BLE General Access Profile

BLE GAP. More...

Data Structures

struct  ble_dev_name_t
 Device name. More...
 
struct  ble_dev_verison_t
 Device version parameters. More...
 
struct  ble_peer_version_ind_t
 Indication of peer version info. More...
 
struct  ble_peer_features_ind_t
 Indication of peer features info. More...
 
struct  ble_sugg_dft_t
 Suggested data len & time. More...
 
struct  ble_supp_dft_t
 Supported data len & time. */. More...
 
struct  ble_tx_pwr_t
 Transmit powers supported by the controller. More...
 
struct  ble_slv_pref_t
 Slave preferred connection parameters. More...
 
struct  ble_addr_t
 BD Address structure. More...
 
struct  ble_chnl_map_t
 Channel map structure. More...
 
struct  ble_rnd_nb_t
 Random number structure. More...
 
struct  ble_pub_key_t
 P256 Public key data format. More...
 
struct  ble_bdaddr_t
 Address information about a device address. More...
 
struct  ble_ral_dev_info_t
 Resolving list device information. More...
 
struct  ble_pal_dev_info_t
 Peroidic address list device information. More...
 
struct  ble_sec_key_t
 Generic Security key structure. More...
 
struct  ble_ltk_t
 Long Term Key information. More...
 
struct  ble_irk_t
 Identity Resolving Key information. More...
 
struct  ble_bond_auth_t
 Authentication information. More...
 
struct  ble_oob_t
 Out of band data. More...
 
struct  ble_nc_t
 Numeric comparison value */. More...
 
struct  ble_pairing_t
 Pairing structure. More...
 
struct  ble_phy_ind_t
 Indicate the PHY used for transmission and reception. More...
 
struct  ble_test_mode_t
 Test PHY structure. More...
 
struct  ble_set_dev_config_t
 device configuration structure More...
 
union  ble_local_dev_info_t
 local device info More...
 
struct  ble_rnd_addr_resolve_t
 Resolve random Address. More...
 
struct  ble_rnd_addr_solved_t
 Resolved address. More...
 
struct  ble_aes_enc_t
 AES-128 encryption. More...
 
struct  ble_lepsm_param_t
 LE PSM paramters. More...
 
struct  ble_get_ral_addr_t
 Get local or peer resolvable address. More...
 
struct  ble_wl_param_t
 Add white list parameters. More...
 
struct  ble_ral_param_t
 Add resolvable list parameters. More...
 
struct  ble_pal_param_t
 Add periodic address list parameters. More...
 
struct  adv_prim_cfg
 Advertising configuration for primary channel structure. More...
 
struct  adv_second_cfg
 Advertising configuration for secondary channel structure. More...
 
struct  adv_period_cfg
 Advertising periodic configuration structure. More...
 
struct  adv_create_param_t
 Advertisement activity create structure. More...
 
struct  ble_actv_create_t
 Activity create structure. More...
 
struct  ble_adv_start_t
 Advertisement start structure. More...
 
struct  scan_wd_op_param
 Scan Window operation parameters. More...
 
struct  ble_scan_start_t
 Scanning start structure. More...
 
struct  conn_param
 Connection parameters. More...
 
struct  ble_init_start_t
 Initiator start structure. More...
 
struct  period_adv_addr_cfg
 Periodic advertiser information. More...
 
struct  ble_per_sync_start_t
 Periodic synchronization start structure. More...
 
struct  ble_actv_start_t
 Activity start structure. More...
 
struct  ble_conn_cfm_t
 Connection request confirm structure. More...
 
union  ble_conn_peer_info_t
 Connection get peer information structure. More...
 
struct  ble_conn_param_update_t
 Connection parameters update structure. More...
 
struct  ble_conn_encrypt_cfm_t
 Connection encrypt request confirm structure. More...
 
struct  ble_bond_cfm_t
 Connection bond confirm. More...
 
struct  ble_conn_pref_phy_t
 Connection set prefered PHY. More...
 
struct  ble_pref_le_pkt_size_t
 Set prefer TX data length. More...
 
struct  ble_le_pkt_size_t
 Controller max TX/RX size. More...
 
struct  ble_get_dev_info_cfm_t
 Send requested info to peer device. More...
 

Macros

#define BLE_BDADDR_LEN   (6)
 BD address length.
 
#define BLE_CHNL_MAP_LEN   (0x05)
 LE Channel map length.
 
#define BLE_FEATS_LEN   (0x08)
 LE Feature Flags Length.
 
#define BLE_ADV_DATA_LEN   (0x1F)
 ADV Data and Scan Response length.
 
#define BLE_RAND_NB_LEN   (0x08)
 Random number length.
 
#define BLE_KEY_LEN   (16)
 Key length.
 
#define BLE_P256_KEY_LEN   (0x20)
 P256 Key Len.
 
#define GAP_CNX_INTERVAL_MIN   6
 Connection interval min (N*1.250ms)
 
#define GAP_CNX_INTERVAL_MAX   3200
 Connection interval Max (N*1.250ms)
 
#define GAP_CNX_LATENCY_MIN   0
 Connection latency min (N*cnx evt)
 
#define GAP_CNX_LATENCY_MAX   499
 Connection latency Max (N*cnx evt.
 
#define GAP_CNX_SUP_TO_MIN   10
 Supervision TO min (N*10ms)
 
#define GAP_CNX_SUP_TO_MAX   3200
 Supervision TO Max (N*10ms)
 
#define ADDR_PRAND_LEN   (3)
 Length of resolvable random address prand part.
 
#define ADDR_HASH_LEN   (3)
 Length of resolvable random address hash part.
 
#define GAP_TMR_CONN_PAUSE_CT   0x0064
 
#define GAP_TMR_CONN_PAUSE_PH   0x01F4
 
#define GAP_TMR_SCAN_FAST_PERIOD   0x0C00
 
#define GAP_TMR_ADV_FAST_PERIOD   0x0BB8
 
#define GAP_LIM_DISC_SCAN_INT   0x0012
 
#define GAP_SCAN_FAST_INTV   0x0030
 
#define GAP_SCAN_FAST_WIND   0x0030
 
#define GAP_SCAN_SLOW_INTV1   0x00CD
 
#define GAP_SCAN_SLOW_INTV2   0x019A
 
#define GAP_SCAN_SLOW_WIND1   0x0012
 
#define GAP_SCAN_SLOW_WIND2   0x0024
 
#define GAP_ADV_FAST_INTV1   0x0030
 
#define GAP_ADV_FAST_INTV2   0x0064
 
#define GAP_ADV_SLOW_INTV   0x00B0
 
#define GAP_INIT_CONN_MIN_INTV   0x0018
 
#define GAP_CONN_SUPERV_TIMEOUT   0x07D0
 
#define GAP_CONN_MIN_CE   0x0000
 
#define GAP_CONN_MAX_CE   0xFFFF
 
#define GAP_CONN_LATENCY   0x0000
 
#define GAP_APPEARANCE   0x0000
 
#define GAP_PPCP_CONN_INTV_MAX   0x0064
 GAP Peripheral Preferred Connection Parameter - 8 octets.
 

Enumerations

enum  ble_ad_type {
  AD_TYPE_FLAGS = 0x01, AD_TYPE_MORE_16_BIT_UUID = 0x02, AD_TYPE_COMPLETE_LIST_16_BIT_UUID = 0x03, AD_TYPE_MORE_32_BIT_UUID = 0x04,
  AD_TYPE_COMPLETE_LIST_32_BIT_UUID = 0x05, AD_TYPE_MORE_128_BIT_UUID = 0x06, AD_TYPE_COMPLETE_LIST_128_BIT_UUID = 0x07, AD_TYPE_SHORTENED_NAME = 0x08,
  AD_TYPE_COMPLETE_NAME = 0x09, AD_TYPE_TRANSMIT_POWER = 0x0A, AD_TYPE_CLASS_OF_DEVICE = 0x0D, AD_TYPE_SP_HASH_C = 0x0E,
  AD_TYPE_SP_RANDOMIZER_R = 0x0F, AD_TYPE_TK_VALUE = 0x10, AD_TYPE_OOB_FLAGS = 0x11, AD_TYPE_SLAVE_CONN_INT_RANGE = 0x12,
  AD_TYPE_RQRD_16_BIT_SVC_UUID = 0x14, AD_TYPE_RQRD_32_BIT_SVC_UUID = 0x1F, AD_TYPE_RQRD_128_BIT_SVC_UUID = 0x15, AD_TYPE_SERVICE_16_BIT_DATA = 0x16,
  AD_TYPE_SERVICE_32_BIT_DATA = 0x20, AD_TYPE_SERVICE_128_BIT_DATA = 0x21, AD_TYPE_PUB_TGT_ADDR = 0x17, AD_TYPE_RAND_TGT_ADDR = 0x18,
  AD_TYPE_APPEARANCE = 0x19, AD_TYPE_ADV_INTV = 0x1A, AD_TYPE_LE_BT_ADDR = 0x1B, AD_TYPE_LE_ROLE = 0x1C,
  AD_TYPE_SPAIR_HASH = 0x1D, AD_TYPE_SPAIR_RAND = 0x1E, AD_TYPE_3D_INFO = 0x3D, AD_TYPE_MANU_SPECIFIC_DATA = 0xFF
}
 GAP Advertising Flags. More...
 
enum  ble_rnd_addr_type { STATIC_ADDR = 0xC0, NON_RSLV_ADDR = 0x00, RSLV_ADDR = 0x40 }
 Random Address type. More...
 
enum  ble_role {
  ROLE_NONE = 0x00, ROLE_OBSERVER = 0x01, ROLE_BROADCASTER = 0x02, ROLE_CENTRAL = (0x04 | ROLE_OBSERVER),
  ROLE_PERIPHERAL = (0x08 | ROLE_BROADCASTER), ROLE_ALL = (ROLE_CENTRAL | ROLE_PERIPHERAL)
}
 GAP Role. More...
 
enum  ble_io_cap {
  IO_CAP_DISPLAY_ONLY = 0x00, IO_CAP_DISPLAY_YES_NO, IO_CAP_KB_ONLY, IO_CAP_NO_INPUT_NO_OUTPUT,
  IO_CAP_KB_DISPLAY
}
 IO Capability Values. More...
 
enum  ble_tk_type { TK_OOB = 0x00, TK_DISPLAY, TK_KEY_ENTRY }
 TK Type. More...
 
enum  ble_oob { OOB_AUTH_DATA_NOT_PRESENT = 0x00, OOB_AUTH_DATA_PRESENT }
 OOB Data Present Flag Values. More...
 
enum  ble_auth_mask {
  AUTH_NONE = 0, AUTH_BOND = (1 << 0), AUTH_MITM = (1 << 2), AUTH_SEC_CON = (1 << 3),
  AUTH_KEY_NOTIF = (1 << 4)
}
 Authentication mask. More...
 
enum  ble_lk_sec_lvl { LK_NO_AUTH = 0, LK_UNAUTH, LK_AUTH, LK_SEC_CON }
 Security Link Level. More...
 
enum  ble_auth {
  AUTH_REQ_NO_MITM_NO_BOND = (AUTH_NONE), AUTH_REQ_NO_MITM_BOND = (AUTH_BOND), AUTH_REQ_MITM_NO_BOND = (AUTH_MITM), AUTH_REQ_MITM_BOND = (AUTH_MITM | AUTH_BOND),
  AUTH_REQ_SEC_CON_NO_BOND = (AUTH_SEC_CON), AUTH_REQ_SEC_CON_BOND = (AUTH_SEC_CON | AUTH_BOND), AUTH_REQ_SEC_CON_MITM_BOND = (AUTH_SEC_CON | AUTH_BOND | AUTH_MITM) , AUTH_REQ_MASK = 0x1F
}
 Authentication Requirements. More...
 
enum  ble_kdist {
  KDIST_NONE = 0x00, KDIST_ENCKEY = (1 << 0), KDIST_IDKEY = (1 << 1), KDIST_SIGNKEY = (1 << 2),
  KDIST_LINKKEY = (1 << 3)
}
 Key Distribution Flags. More...
 
enum  ble_sec_req {
  NO_SEC = 0x00, SEC1_NOAUTH_PAIR_ENC, SEC1_AUTH_PAIR_ENC, SEC2_NOAUTH_DATA_SGN,
  SEC2_AUTH_DATA_SGN, SEC1_SEC_CON_PAIR_ENC
}
 Security Defines. More...
 
enum  ble_phy { PHY_ANY = 0x00, PHY_LE_1MBPS = (1 << 0), PHY_LE_2MBPS = (1 << 1), PHY_LE_CODED = (1 << 2) }
 Bit field use to select the preferred TX or RX LE PHY. 0 means no preferences. More...
 
enum  ble_phy_value { PHY_UNDEF_LNK_VALUE = 0, PHY_1MBPS_LNK_VALUE = 1, PHY_2MBPS_LNK_VALUE = 2, PHY_CODED_LNK_VALUE = 3 }
 PHY value return from the link layer. More...
 
enum  ble_test_mode
 Test mode operation.
 
enum  ble_test_phy {
  TEST_PHY_1MBPS = 1, TEST_PHY_2MBPS = 2, TEST_PHY_CODED = 3, TEST_PHY_125KBPS = 3,
  TEST_PHY_500KBPS = 4
}
 Enumeration of TX/RX PHY used for Test Mode. More...
 
enum  ble_modulation_idx { MODULATION_STANDARD, MODULATION_STABLE }
 Modulation index. More...
 
enum  ble_pkt_pld_type {
  PKT_PLD_PRBS9, PKT_PLD_REPEATED_11110000, PKT_PLD_REPEATED_10101010, PKT_PLD_PRBS15,
  PKT_PLD_REPEATED_11111111, PKT_PLD_REPEATED_00000000, PKT_PLD_REPEATED_00001111, PKT_PLD_REPEATED_01010101
}
 Packet Payload type for test mode. More...
 
enum  ble_priv_cfg { PRIV_CFG_PRIV_ADDR_BIT = (1 << 0), PRIV_CFG_RSVD = (1 << 1), PRIV_CFG_PRIV_EN_BIT = (1 << 2) }
 Privacy configuration. More...
 
enum  ble_pairing_mode { PAIRING_DISABLE = 0, PAIRING_LEGACY = (1 << 0), PAIRING_SEC_CON = (1 << 1), PAIRING_FORCE_P256_KEY_GEN = (1<<7) }
 Pairing mode authorized on the device. More...
 
enum  ble_write_att_perm {
  WRITE_DISABLE = 0, WRITE_NO_AUTH = 1, WRITE_UNAUTH = 2, WRITE_AUTH = 3,
  WRITE_SEC_CON = 4
}
 Device Attribute write permission requirement. More...
 
enum  ble_get_dev_info_cmd {
  GET_DEV_INFO_VERSION, GET_DEV_INFO_BDADDR, GET_DEV_INFO_TX_POWER, GET_DEV_INFO_ADV_TX_POWER,
  GET_DEV_INFO_SUGG_DFT_DATA, GET_DEV_INFO_SUPP_DFT_DATA, GET_DEV_INFO_MAX_ADV_DATA_LEN, GET_DEV_INFO_WLIST_SIZE,
  GET_DEV_INFO_RAL_SIZE, GET_DEV_INFO_PAL_SIZE, GET_DEV_INFO_NB_ADV_SETS
}
 get device local info command. More...
 
enum  ble_actv_type { ACTV_TYPE_ADV = 0, ACTV_TYPE_SCAN, ACTV_TYPE_INIT, ACTV_TYPE_PER_SYNC }
 Type of activities that can be created. More...
 
enum  adv_report_type {
  REPORT_TYPE_ADV_EXT = 0, REPORT_TYPE_ADV_LEG, REPORT_TYPE_SCAN_RSP_EXT, REPORT_TYPE_SCAN_RSP_LEG,
  REPORT_TYPE_PER_ADV
}
 Advertising report type. More...
 
enum  ble_adv_report_info {
  REPORT_INFO_REPORT_TYPE_MASK = 0x07, REPORT_INFO_COMPLETE_BIT = (1 << 3), REPORT_INFO_CONN_ADV_BIT = (1 << 4), REPORT_INFO_SCAN_ADV_BIT = (1 << 5),
  REPORT_INFO_DIR_ADV_BIT = (1 << 6)
}
 Advertising report information. More...
 
enum  ble_adv_type { ADV_TYPE_LEGACY = 0, ADV_TYPE_EXTENDED, ADV_TYPE_PERIODIC }
 Type of advertising that can be created. More...
 
enum  ble_adv_disc_mode { ADV_MODE_NON_DISC = 0, ADV_MODE_GEN_DISC, ADV_MODE_LIM_DISC, ADV_MODE_BEACON }
 Advertising discovery mode. More...
 
enum  ble_adv_prop {
  ADV_PROP_CONNECTABLE = 0x01, ADV_PROP_SCANNABLE = 0x02, ADV_PROP_DIRECTED = 0x04, ADV_PROP_HDC = 0x08,
  ADV_PROP_ANONYMOUS = 0x20, ADV_PROP_TX_PWR = 0x40, ADV_PROP_PER_TX_PWR = 0x80, ADV_PROP_SCAN_REQ_NTF_EN = 0x100,
  ADV_PROP_NO_ADV_DATA = 0x200
}
 Advertising properties. More...
 
enum  ble_adv_legacy_prop {
  ADV_PROP_NON_CONN_NON_SCAN = 0x00, ADV_PROP_BROADCAST_NON_SCAN = 0x00, ADV_PROP_NON_CONN_SCAN = ADV_PROP_SCANNABLE, ADV_PROP_BROADCAST_SCAN = ADV_PROP_NON_CONN_SCAN,
  ADV_PROP_UNDIR_CONN = ADV_PROP_CONNECTABLE | ADV_PROP_SCANNABLE, ADV_PROP_DIR_CONN = ADV_PROP_DIRECTED | ADV_PROP_CONNECTABLE, ADV_PROP_DIR_CONN_LDC = ADV_PROP_DIR_CONN, ADV_PROP_DIR_CONN_HDC = ADV_PROP_DIR_CONN | ADV_PROP_HDC
}
 Advertising properties legacy advertising. More...
 
enum  ble_adv_ext_prop {
  EXT_ADV_PROP_NON_CONN_NON_SCAN = 0x00, EXT_ADV_PROP_NON_CONN_SCAN = ADV_PROP_SCANNABLE, EXT_ADV_PROP_NON_CONN_SCAN_DIR = ADV_PROP_SCANNABLE | ADV_PROP_DIRECTED, EXT_ADV_PROP_ANONYM_DIR = ADV_PROP_ANONYMOUS | ADV_PROP_DIRECTED,
  EXT_ADV_PROP_UNDIR_CONN = ADV_PROP_CONNECTABLE, EXT_ADV_PROP_DIR_CONN = ADV_PROP_CONNECTABLE | ADV_PROP_DIRECTED, EXT_ADV_PROP_NON_CONN_NON_SCAN_NON_ADV_DATA = ADV_PROP_NO_ADV_DATA
}
 Advertising properties for extended advertising. More...
 
enum  ble_adv_per_prop { PER_ADV_PROP_UNDIR = 0x00, PER_ADV_PROP_DIR = ADV_PROP_DIRECTED }
 Advertising properties for periodic advertising. More...
 
enum  ble_adv_filt_pol { ADV_FILT_ALLOW_SCAN_ANY_CON_ANY = 0, ADV_FILT_ALLOW_SCAN_WLST_CON_ANY, ADV_FILT_ALLOW_SCAN_ANY_CON_WLST, ADV_FILT_ALLOW_SCAN_WLST_CON_WLST }
 Advertising filter policy. More...
 
enum  ble_adv_chnl
 Advertising channel.
 
enum  ble_addr_type { ADDR_STATIC, ADDR_RESOLVABLE, ADDR_NON_RESOLVABLE }
 Address type. More...
 
enum  ble_scan_type {
  GEN_DISC = 0, LIM_DISC, OBSERVER, SEL_OBSERVER,
  CONN_DISC, SEL_CONN_DISC
}
 Scanning Types. More...
 
enum  ble_scan_prop {
  SCAN_PROP_PHY_1M = 0x01, SCAN_PROP_PHY_CODED = 0x02, SCAN_PROP_ACTIVE_1M = 0x04, SCAN_PROP_ACTIVE_CODED = 0x08,
  SCAN_PROP_ACCEPT_RPA = 0x10, SCAN_PROP_FILT_TRUNC = 0x20
}
 Scan properties. More...
 
enum  ble_scan_dup_filt { DUPLIC_DIS = 0, DUPLIC_EN, DUPLIC_EN_PER_PERIOD }
 Scan Filter duplicates Policy. More...
 
enum  ble_initiator_type { INIT_TYPE_DIRECT_CONN_EST = 0, INIT_TYPE_AUTO_CONN_EST, INIT_TYPE_NAME_DISC }
 Initiator Types. More...
 
enum  ble_initiator_prop { INIT_PROP_1M = 0x01, INIT_PROP_2M = 0x02, INIT_PROP_CODED = 0x04 }
 Initiator Properties. More...
 
enum  ble_per_sync_type { PER_SYNC_TYPE_GENERAL = 0, PER_SYNC_TYPE_SELECTIVE }
 Periodic synchronization types. More...
 
enum  ble_coded_phy_opt { PHY_OPT_NO_CODED_TX_PREF, PHY_OPT_S2_CODED_TX_PREF, PHY_OPT_S8_CODED_TX_PREF }
 LE CODED PHY option. More...
 
enum  ble_keypress_state {
  PASSKEY_ENTRY_STARTED = 0, PASSKEY_DIGIT_ENTERED, PASSKEY_DIGIT_ERASED, PASSKEY_CLEARED,
  PASSKEY_ENTRY_COMPLETED
}
 Keypress state. More...
 
enum  ble_bond {
  PAIRING_REQ, PAIRING_RSP, PAIRING_SUCCEED, PAIRING_FAILED,
  TK_EXCH, IRK_EXCH, CSRK_EXCH, LTK_EXCH,
  REPEATED_ATTEMPT, OOB_EXCH, NC_EXCH
}
 Bond request/event type. More...
 
enum  ble_clk_acc {
  CLK_ACC_500 = 0, CLK_ACC_250, CLK_ACC_150, CLK_ACC_100,
  CLK_ACC_75, CLK_ACC_50, CLK_ACC_30, CLK_ACC_20
}
 Clock accuracy values. More...
 
enum  ble_disc_reason {
  DISC_REASON_AUTH_FAILURE = 0x05, DISC_REASON_REMOTE_USER_TERM_CON = 0x13, DISC_REASON_REMOTE_DEV_TERM_LOW_RESOURCES = 0x14, DISC_REASON_REMOTE_DEV_POWER_OFF = 0x15,
  DISC_REASON_UNSUPPORTED_REMOTE_FEATURE = 0x1A, DISC_REASON_PAIRING_WITH_UNIT_KEY_NOT_SUPP = 0x29, DISC_REASON_UNACCEPTABLE_CONN_INT = 0x3B
}
 Disconnect reason code. More...
 
enum  ble_dev_info {
  DEV_NAME, DEV_APPEARANCE, DEV_SLV_PREF_PARAMS, DEV_CTL_ADDR_RESOL,
  DEV_INFO_MAX
}
 List of device info that should be provided by application. More...
 

Functions

int in_ble_reset (void *hdl, comp_cb callback)
 Reset BLE stack. More...
 
int in_ble_get_chn_assess (void *hdl, int chn, int8_t *level, uint32_t *timestamp)
 Get channel assess data. More...
 
int in_ble_test (void *hdl, ble_test_mode_t *p_test, uint16_t *nb_rx_packet, comp_cb callback)
 Test BLE phy TX and RX. More...
 
int in_ble_set_dev_config (void *hdl, ble_set_dev_config_t *p_cfg, comp_cb callback)
 Set device configuration. More...
 
int in_ble_get_dev_info (void *hdl, int cmd, ble_local_dev_info_t *p_info, comp_cb callback)
 Get local device informations. More...
 
int in_ble_set_chn_map (void *hdl, ble_chnl_map_t *p_chn_map, comp_cb callback)
 Set channel map. More...
 
int in_ble_resolve_addr (void *hdl, ble_rnd_addr_resolve_t *p_rnd_addr, ble_rnd_addr_solved_t *p_addr, comp_cb callback)
 Resolve provided random address by usng array of IRK. More...
 
int in_ble_gen_random_addr (void *hdl, int rnd_addr_type, ble_bdaddr_t *p_rnd_addr, comp_cb callback)
 Generate random address. More...
 
int in_ble_aes_enc (void *hdl, ble_aes_enc_t *p_enc, uint8_t *p_enc_res, comp_cb callback)
 AES-128 calculation. More...
 
int in_ble_get_pub_key (void *hdl, int renew, ble_pub_key_t *p_pub_key, comp_cb callback)
 get public key More...
 
int in_ble_gen_random_nb (void *hdl, ble_rnd_nb_t *p_rnd_nb, comp_cb callback)
 Generate a 8 bytes random number. More...
 
int in_ble_set_irk (void *hdl, ble_sec_key_t *p_irk, comp_cb callback)
 Change the current IRK for a renewed one. More...
 
int in_ble_register_lepsm (void *hdl, ble_lepsm_param_t *p_psm, comp_cb callback)
 Register a LE Protocol/Service Multiplexer identified. More...
 
int in_ble_unregister_lepsm (void *hdl, uint32_t psm, comp_cb callback)
 Un-register a LE Protocol/Service Multiplexer identified. More...
 
int in_ble_get_ral_addr (void *hdl, ble_get_ral_addr_t *p_ral_addr, ble_bdaddr_t *p_addr, comp_cb callback)
 Get local or peer resolvable private address. More...
 
int in_ble_set_white_list (void *hdl, ble_wl_param_t *p_wlist, comp_cb callback)
 Set the white list content. More...
 
int in_ble_set_ral_list (void *hdl, ble_ral_param_t *p_ral, comp_cb callback)
 Set the resolving list content. More...
 
int in_ble_set_pal_list (void *hdl, ble_pal_param_t *p_pal, comp_cb callback)
 Set the peroidic advertiser list content. More...
 
int in_ble_actv_create (void *hdl, ble_actv_create_t *p_act, int *p_actv_idx, comp_cb callback)
 Create an advertising, a scanning, an initiating or a periodic synchronization activity. More...
 
int in_ble_actv_start (void *hdl, int actv_idx, ble_actv_start_t *p_start, comp_cb callback)
 Start an advertising, a scanning, an initiating or a periodic synchronization activity. More...
 
int in_ble_actv_data (void *hdl, int actv_idx, int option, uint8_t *data, uint32_t data_len, comp_cb callback)
 Set an advertising, a periodic advertising, or a scan response data. More...
 
int in_ble_actv_stop (void *hdl, int actv_idx, comp_cb callback)
 Stop an activity or all activities. More...
 
int in_ble_actv_del (void *hdl, int actv_idx, comp_cb callback)
 Delete an activity or all activities. More...
 
int in_ble_conn_cfm (void *hdl, int conidx, ble_conn_cfm_t *p_cfm)
 Confirm connection request. More...
 
int in_ble_conn_disconnect (void *hdl, int conidx, uint32_t reason, comp_cb callback)
 Disconnect a link. More...
 
int in_ble_conn_get_peer_info (void *hdl, int conidx, int option, ble_conn_peer_info_t *p_peer_info, comp_cb callback)
 Retrieve connection information. More...
 
int in_ble_conn_param_update (void *hdl, int conidx, ble_conn_param_update_t *p_upd, comp_cb callback)
 Update connection paramters. More...
 
int in_ble_conn_param_update_cfm (void *hdl, int conidx, bool accept)
 Confirm updated paramters. More...
 
int in_ble_conn_req_encrypt (void *hdl, int conidx, ble_ltk_t *p_ltk, comp_cb callback)
 Initiate encryption procedure. More...
 
int in_ble_conn_req_encrypt_cfm (void *hdl, int conidx, ble_conn_encrypt_cfm_t *p_cfm)
 Confirm master's encryption request. More...
 
int in_ble_conn_req_security (void *hdl, int conidx, int auth, comp_cb callback)
 Initiate security request procedure. More...
 
int in_ble_conn_set_ping_tmo (void *hdl, int conidx, uint32_t timeout, comp_cb callback)
 Set LE ping time out value. More...
 
int in_ble_conn_set_pkt_size (void *hdl, uint8_t conidx, ble_pref_le_pkt_size_t *p_pref_pkt_size, ble_le_pkt_size_t *p_pkt_size, comp_cb callback)
 Change current LE packet size. More...
 
int in_ble_conn_bond (void *hdl, int conidx, ble_pairing_t *p_bond, comp_cb callback)
 Initiate bond. More...
 
int in_ble_conn_bond_cfm (void *hdl, int conidx, ble_bond_cfm_t *p_cfm)
 Confirm bond request. More...
 
int in_ble_conn_set_pref_phy (void *hdl, int conidx, ble_conn_pref_phy_t *p_phy, ble_phy_ind_t *p_phy_ind, comp_cb callback)
 Set prefered PHY. More...
 
int in_ble_conn_keypress_notify (void *hdl, int conidx, int key_state, comp_cb callback)
 Send a keypress to peer. More...
 
int in_ble_conn_get_dev_info_cfm (void *hdl, int conidx, ble_get_dev_info_cfm_t *p_cfm)
 Send requested info to peer device. More...
 

Detailed Description

BLE GAP.

Macro Definition Documentation

◆ GAP_ADV_FAST_INTV1

#define GAP_ADV_FAST_INTV1   0x0030

Minimum to maximum advertisement interval in any discoverable or connectable mode when user initiated: TGAP(adv_fast_interval1) recommended value: 30 to 60 ms; N * 0.625

◆ GAP_ADV_FAST_INTV2

#define GAP_ADV_FAST_INTV2   0x0064

Minimum to maximum advertisement interval in any discoverable or connectable mode when user initiated: TGAP(adv_fast_interval2) recommended value: 100 to 150 ms; N * 0.625

◆ GAP_ADV_SLOW_INTV

#define GAP_ADV_SLOW_INTV   0x00B0

Minimum to maximum advertisement interval in any discoverable or connectable mode when background advertising: TGAP(adv_slow_interval) recommended value: 1 to 1.2 s : 0x00B0 (176); N * 0.625

◆ GAP_APPEARANCE

#define GAP_APPEARANCE   0x0000

GAP Appearance or Icon Characteristic - 2 octets Current appearance value is 0x0000 (unknown appearance) Description: http://developer.bluetooth.org/gatt/characteristics/Pages/CharacteristicViewer.aspx?u=org.bluetooth.characteristic.gap.appearance.xml

◆ GAP_CONN_LATENCY

#define GAP_CONN_LATENCY   0x0000

Connection latency default value: 0x0000

◆ GAP_CONN_MAX_CE

#define GAP_CONN_MAX_CE   0xFFFF

Maximum connection event default value: 0xFFFF

◆ GAP_CONN_MIN_CE

#define GAP_CONN_MIN_CE   0x0000

Minimum connection event default value: 0x0000

◆ GAP_CONN_SUPERV_TIMEOUT

#define GAP_CONN_SUPERV_TIMEOUT   0x07D0

Connection supervision timeout recommended value: 20s

◆ GAP_INIT_CONN_MIN_INTV

#define GAP_INIT_CONN_MIN_INTV   0x0018

Minimum to maximum connection interval upon any connection establishment: TGAP(initial_conn_interval) recommended value: 30 to 50 ms ; N * 1.25 ms

◆ GAP_LIM_DISC_SCAN_INT

#define GAP_LIM_DISC_SCAN_INT   0x0012

Scan interval used during Link Layer Scanning State when performing the Limited Discovery procedure TGAP(lim_disc_scan_int) recommended value: 11.25ms; (18 decimal)

◆ GAP_SCAN_FAST_INTV

#define GAP_SCAN_FAST_INTV   0x0030

Scan interval in any discovery or connection establishment procedure when user initiated: TGAP(scan_fast_interval) recommended value: 30 to 60 ms; N * 0.625

◆ GAP_SCAN_FAST_WIND

#define GAP_SCAN_FAST_WIND   0x0030

Scan window in any discovery or connection establishment procedure when user initiated: TGAP(scan_fast_window) recommended value: 30 ms; N * 0.625

◆ GAP_SCAN_SLOW_INTV1

#define GAP_SCAN_SLOW_INTV1   0x00CD

Scan interval in any discovery or connection establishment procedure when background scanning: TGAP(scan_slow_interval1) recommended value: 1.28 s : 0x00CD (205); N * 0.625

◆ GAP_SCAN_SLOW_INTV2

#define GAP_SCAN_SLOW_INTV2   0x019A

Scan interval in any discovery or connection establishment procedure when background scanning: TGAP(scan_slow_interval2) recommended value: 2.56 s : 0x019A (410); N * 0.625

◆ GAP_SCAN_SLOW_WIND1

#define GAP_SCAN_SLOW_WIND1   0x0012

Scan window in any discovery or connection establishment procedure when background scanning: TGAP(scan_slow_window1) recommended value: 11.25 ms : 0x0012 (18); N * 0.625

◆ GAP_SCAN_SLOW_WIND2

#define GAP_SCAN_SLOW_WIND2   0x0024

Scan window in any discovery or connection establishment procedure when background scanning: TGAP(scan_slow_window2) recommended value: 22.5 ms : 0x0024 (36); N * 0.625

◆ GAP_TMR_ADV_FAST_PERIOD

#define GAP_TMR_ADV_FAST_PERIOD   0x0BB8

Minimum time to perform advertising when user initiated TGAP(adv_fast_period) recommended value: 30 s: (3000 for ke timer)

◆ GAP_TMR_CONN_PAUSE_CT

#define GAP_TMR_CONN_PAUSE_CT   0x0064

Central idle timer TGAP(conn_pause_central) recommended value: 1 s: (100 for ke timer)

◆ GAP_TMR_CONN_PAUSE_PH

#define GAP_TMR_CONN_PAUSE_PH   0x01F4

Minimum time upon connection establishment before the peripheral starts a connection update procedure: TGAP(conn_pause_peripheral) recommended value: 5 s: (500 for ke timer)

◆ GAP_TMR_SCAN_FAST_PERIOD

#define GAP_TMR_SCAN_FAST_PERIOD   0x0C00

Minimum time to perform scanning when user initiated TGAP(scan_fast_period) recommended value: 30.72 s: (3072 for ke timer)

Enumeration Type Documentation

◆ adv_report_type

Advertising report type.

Enumerator
REPORT_TYPE_ADV_EXT 

Extended advertising report.

REPORT_TYPE_ADV_LEG 

Legacy advertising report.

REPORT_TYPE_SCAN_RSP_EXT 

Extended scan response report.

REPORT_TYPE_SCAN_RSP_LEG 

Legacy scan response report.

REPORT_TYPE_PER_ADV 

Periodic advertising report.

◆ ble_actv_type

Type of activities that can be created.

Enumerator
ACTV_TYPE_ADV 

Advertising activity.

ACTV_TYPE_SCAN 

Scanning activity.

ACTV_TYPE_INIT 

Initiating activity.

ACTV_TYPE_PER_SYNC 

Periodic synchronization activity.

◆ ble_ad_type

GAP Advertising Flags.

Enumerator
AD_TYPE_FLAGS 

Flag.

GAP_AD_TYPE_FLAGS

AD_TYPE_MORE_16_BIT_UUID 

Use of more than 16 bits UUID.

GAP_AD_TYPE_MORE_16_BIT_UUID

AD_TYPE_COMPLETE_LIST_16_BIT_UUID 

Complete list of 16 bit UUID.

GAP_AD_TYPE_COMPLETE_LIST_16_BIT_UUID

AD_TYPE_MORE_32_BIT_UUID 

Use of more than 32 bit UUD.

GAP_AD_TYPE_MORE_32_BIT_UUID

AD_TYPE_COMPLETE_LIST_32_BIT_UUID 

Complete list of 32 bit UUID.

GAP_AD_TYPE_COMPLETE_LIST_32_BIT_UUID

AD_TYPE_MORE_128_BIT_UUID 

Use of more than 128 bit UUID.

GAP_AD_TYPE_MORE_128_BIT_UUID

AD_TYPE_COMPLETE_LIST_128_BIT_UUID 

Complete list of 128 bit UUID.

GAP_AD_TYPE_COMPLETE_LIST_128_BIT_UUID

AD_TYPE_SHORTENED_NAME 

Shortened device name.

GAP_AD_TYPE_SHORTENED_NAME

AD_TYPE_COMPLETE_NAME 

Complete device name.

GAP_AD_TYPE_COMPLETE_NAME

AD_TYPE_TRANSMIT_POWER 

Transmit power.

GAP_AD_TYPE_TRANSMIT_POWER

AD_TYPE_CLASS_OF_DEVICE 

Class of device.

GAP_AD_TYPE_CLASS_OF_DEVICE

AD_TYPE_SP_HASH_C 

Simple Pairing Hash C.

GAP_AD_TYPE_SP_HASH_C

AD_TYPE_SP_RANDOMIZER_R 

Simple Pairing Randomizer.

GAP_AD_TYPE_SP_RANDOMIZER_R

AD_TYPE_TK_VALUE 

Temporary key value.

GAP_AD_TYPE_TK_VALUE

AD_TYPE_OOB_FLAGS 

Out of Band Flag.

GAP_AD_TYPE_OOB_FLAGS

AD_TYPE_SLAVE_CONN_INT_RANGE 

Slave connection interval range.

GAP_AD_TYPE_SLAVE_CONN_INT_RANGE

AD_TYPE_RQRD_16_BIT_SVC_UUID 

Require 16 bit service UUID.

GAP_AD_TYPE_RQRD_16_BIT_SVC_UUID

AD_TYPE_RQRD_32_BIT_SVC_UUID 

Require 32 bit service UUID.

GAP_AD_TYPE_RQRD_32_BIT_SVC_UUID

AD_TYPE_RQRD_128_BIT_SVC_UUID 

Require 128 bit service UUID.

GAP_AD_TYPE_RQRD_128_BIT_SVC_UUID

AD_TYPE_SERVICE_16_BIT_DATA 

Service data 16-bit UUID.

GAP_AD_TYPE_SERVICE_16_BIT_DATA

AD_TYPE_SERVICE_32_BIT_DATA 

Service data 32-bit UUID.

GAP_AD_TYPE_SERVICE_32_BIT_DATA

AD_TYPE_SERVICE_128_BIT_DATA 

Service data 128-bit UUID.

GAP_AD_TYPE_SERVICE_128_BIT_DATA

AD_TYPE_PUB_TGT_ADDR 

Public Target Address.

GAP_AD_TYPE_PUB_TGT_ADDR

AD_TYPE_RAND_TGT_ADDR 

Random Target Address.

GAP_AD_TYPE_RAND_TGT_ADDR

AD_TYPE_APPEARANCE 

Appearance.

GAP_AD_TYPE_APPEARANCE

AD_TYPE_ADV_INTV 

Advertising Interval.

GAP_AD_TYPE_ADV_INTV

AD_TYPE_LE_BT_ADDR 

LE Bluetooth Device Address.

GAP_AD_TYPE_LE_BT_ADDR

AD_TYPE_LE_ROLE 

LE Role.

GAP_AD_TYPE_LE_ROLE

AD_TYPE_SPAIR_HASH 

Simple Pairing Hash C-256.

GAP_AD_TYPE_SPAIR_HASH

AD_TYPE_SPAIR_RAND 

Simple Pairing Randomizer R-256.

GAP_AD_TYPE_SPAIR_RAND

AD_TYPE_3D_INFO 

3D Information Data

GAP_AD_TYPE_3D_INFO

AD_TYPE_MANU_SPECIFIC_DATA 

Manufacturer specific data.

GAP_AD_TYPE_MANU_SPECIFIC_DATA

◆ ble_addr_type

Address type.

Enumerator
ADDR_STATIC 

0: static (public or private),

ADDR_RESOLVABLE 

1: generate resolvable private random address,

ADDR_NON_RESOLVABLE 

2: generate non-resolvable private random address.

◆ ble_adv_disc_mode

Advertising discovery mode.

Enumerator
ADV_MODE_NON_DISC 

non-discoverable mode

ADV_MODE_GEN_DISC 

general discoverable mode

ADV_MODE_LIM_DISC 

limited discoverable mode

ADV_MODE_BEACON 

Broadcast mode without presence of AD_TYPE_FLAG in advertising data.

◆ ble_adv_ext_prop

Advertising properties for extended advertising.

Enumerator
EXT_ADV_PROP_NON_CONN_NON_SCAN 

Non connectable non scannable extended advertising.

EXT_ADV_PROP_NON_CONN_SCAN 

Non connectable scannable extended advertising.

EXT_ADV_PROP_NON_CONN_SCAN_DIR 

Non connectable scannable directed extended advertising.

EXT_ADV_PROP_ANONYM_DIR 

Non connectable anonymous directed extended advertising.

EXT_ADV_PROP_UNDIR_CONN 

Undirected connectable extended advertising.

EXT_ADV_PROP_DIR_CONN 

Directed connectable extended advertising.

EXT_ADV_PROP_NON_CONN_NON_SCAN_NON_ADV_DATA 

Non connectable non scannable extended advertising with no advertising data */.

◆ ble_adv_filt_pol

Advertising filter policy.

Enumerator
ADV_FILT_ALLOW_SCAN_ANY_CON_ANY 

Allow both scan and connection requests from anyone.

ADV_FILT_ALLOW_SCAN_WLST_CON_ANY 

Allow both scan req from White List devices only and connection req from anyone.

ADV_FILT_ALLOW_SCAN_ANY_CON_WLST 

Allow both scan req from anyone and connection req from White List devices only.

ADV_FILT_ALLOW_SCAN_WLST_CON_WLST 

Allow scan and connection requests from White List devices only.

◆ ble_adv_legacy_prop

Advertising properties legacy advertising.

Enumerator
ADV_PROP_NON_CONN_NON_SCAN 

Non connectable non scannable advertising.

ADV_PROP_BROADCAST_NON_SCAN 

Broadcast non scannable advertising - Discovery mode must be Non Discoverable.

ADV_PROP_NON_CONN_SCAN 

Non connectable scannable advertising.

ADV_PROP_BROADCAST_SCAN 

Broadcast scannable advertising - Discovery mode must be Non Discoverable.

ADV_PROP_UNDIR_CONN 

Undirected connectable advertising.

ADV_PROP_DIR_CONN 

Directed connectable advertising.

ADV_PROP_DIR_CONN_LDC 

Directed connectable with Low Duty Cycle.

ADV_PROP_DIR_CONN_HDC 

Directed connectable with High Duty Cycle.

◆ ble_adv_per_prop

Advertising properties for periodic advertising.

Enumerator
PER_ADV_PROP_UNDIR 

Undirected periodic advertising.

PER_ADV_PROP_DIR 

Directed periodic advertising.

◆ ble_adv_prop

Advertising properties.

Enumerator
ADV_PROP_CONNECTABLE 

Advertising is connectable, reception of CONNECT_REQ or AUX_CONNECT_REQ PDUs is accepted. not applicable for periodic advertising.

ADV_PROP_SCANNABLE 

Advertising is scannable, reception of SCAN_REQ or AUX_SCAN_REQ PDUs is accepted.

ADV_PROP_DIRECTED 

Advertising targets a specific device. Only apply in following cases:

  • Legacy advertising: if connectable
  • Extended advertising: connectable or (non connectable and non discoverable).
ADV_PROP_HDC 

High Duty Cycle has to be used for advertising on primary channel Apply only if created advertising is not an extended advertising.

ADV_PROP_ANONYMOUS 

Enable anonymous mode. Device address won't appear in send PDUs Valid only if created advertising is an extended advertising.

ADV_PROP_TX_PWR 

TX Power in the extended header of the advertising PDU Valid only if created advertising is not a legacy advertising.

ADV_PROP_PER_TX_PWR 

TX Power in the periodic advertising PDU Valid only if created advertising is a periodic advertising.

ADV_PROP_SCAN_REQ_NTF_EN 

Indicate if application must be informed about received scan requests PDUs.

ADV_PROP_NO_ADV_DATA 

Indicate no advertising data */.

◆ ble_adv_report_info

Advertising report information.

Enumerator
REPORT_INFO_REPORT_TYPE_MASK 

Report Type.

REPORT_INFO_COMPLETE_BIT 

Report is complete.

REPORT_INFO_CONN_ADV_BIT 

Connectable advertising.

REPORT_INFO_SCAN_ADV_BIT 

Scannable advertising.

REPORT_INFO_DIR_ADV_BIT 

Directed advertising.

◆ ble_adv_type

Type of advertising that can be created.

Enumerator
ADV_TYPE_LEGACY 

Legacy advertising.

ADV_TYPE_EXTENDED 

Extended advertising.

ADV_TYPE_PERIODIC 

Periodic advertising.

◆ ble_auth

enum ble_auth

Authentication Requirements.

Enumerator
AUTH_REQ_NO_MITM_NO_BOND 

No MITM No Bonding.

AUTH_REQ_NO_MITM_BOND 

No MITM Bonding.

AUTH_REQ_MITM_NO_BOND 

MITM No Bonding.

AUTH_REQ_MITM_BOND 

MITM and Bonding.

AUTH_REQ_SEC_CON_NO_BOND 

SEC_CON and No Bonding.

AUTH_REQ_SEC_CON_BOND 

SEC_CON and Bonding.

AUTH_REQ_SEC_CON_MITM_BOND 

SEC_CON , MITM and Bonding.

AUTH_REQ_MASK 

Mask of authentication features without reserved flag.

◆ ble_auth_mask

Authentication mask.

Enumerator
AUTH_NONE 

No Flag set.

AUTH_BOND 

Bond authentication.

AUTH_MITM 

Man In the middle protection.

AUTH_SEC_CON 

Secure Connection.

AUTH_KEY_NOTIF 

Key Notification.

◆ ble_bond

enum ble_bond

Bond request/event type.

Enumerator
PAIRING_REQ 

Bond Pairing request.

PAIRING_RSP 

Respond to Pairing request.

PAIRING_SUCCEED 

Pairing Finished information.

PAIRING_FAILED 

Pairing Failed information.

TK_EXCH 

Used to retrieve pairing Temporary Key.

IRK_EXCH 

Used for Identity Resolving Key exchange.

CSRK_EXCH 

Used for Connection Signature Resolving Key exchange.

LTK_EXCH 

Used for Long Term Key exchange.

REPEATED_ATTEMPT 

Bond Pairing request issue, Repeated attempt.

OOB_EXCH 

Out of Band - exchange of confirm and rand.

NC_EXCH 

Numeric Comparison - Exchange of Numeric Value -.

◆ ble_clk_acc

Clock accuracy values.

Enumerator
CLK_ACC_500 

500 ppm

CLK_ACC_250 

250 ppm

CLK_ACC_150 

150 ppm

CLK_ACC_100 

100 ppm

CLK_ACC_75 

75 ppm

CLK_ACC_50 

50 ppm

CLK_ACC_30 

30 ppm

CLK_ACC_20 

20 ppm

◆ ble_coded_phy_opt

LE CODED PHY option.

Enumerator
PHY_OPT_NO_CODED_TX_PREF 

The Host has no preferred coding when transmitting on the LE Coded PHY.

PHY_OPT_S2_CODED_TX_PREF 

The Host prefers that S=2 coding be used when transmitting on the LE Coded PHY.

PHY_OPT_S8_CODED_TX_PREF 

The Host prefers that S=8 coding be used when transmitting on the LE Coded PHY.

◆ ble_dev_info

List of device info that should be provided by application.

Enumerator
DEV_NAME 

Device Name.

DEV_APPEARANCE 

Device Appearance Icon.

DEV_SLV_PREF_PARAMS 

Device Slave preferred parameters.

DEV_CTL_ADDR_RESOL 

Device Central address resolution.

DEV_INFO_MAX 

maximum device info parameter

◆ ble_disc_reason

Disconnect reason code.

Enumerator
DISC_REASON_AUTH_FAILURE 

Pairing or authentication failed.

DISC_REASON_REMOTE_USER_TERM_CON 

User on the remote device terminated the connnection.

DISC_REASON_REMOTE_DEV_TERM_LOW_RESOURCES 

Low resources.

DISC_REASON_REMOTE_DEV_POWER_OFF 

Device is about to power off.

DISC_REASON_UNSUPPORTED_REMOTE_FEATURE 

Feature not supported.

DISC_REASON_PAIRING_WITH_UNIT_KEY_NOT_SUPP 

Not support key for pairing.

DISC_REASON_UNACCEPTABLE_CONN_INT 

Unacceptable connection interval.

◆ ble_get_dev_info_cmd

get device local info command.

Enumerator
GET_DEV_INFO_VERSION 

Get local device version.

GET_DEV_INFO_BDADDR 

Get local device BD Address.

GET_DEV_INFO_TX_POWER 

Get minimum and maximum transmit powers supported by the controller.

GET_DEV_INFO_ADV_TX_POWER 

Get device advertising power level.

GET_DEV_INFO_SUGG_DFT_DATA 

Get suggested default data.

GET_DEV_INFO_SUPP_DFT_DATA 

Get supported default data.

GET_DEV_INFO_MAX_ADV_DATA_LEN 

Get maximum advertising data length supported by the controller.

GET_DEV_INFO_WLIST_SIZE 

Get White List Size.

GET_DEV_INFO_RAL_SIZE 

Get resolving address list size.

GET_DEV_INFO_PAL_SIZE 

Get periodic advertiser list size.

GET_DEV_INFO_NB_ADV_SETS 

Get number of available advertising sets.

◆ ble_initiator_prop

Initiator Properties.

Enumerator
INIT_PROP_1M 

Scan connectable advertisements on the LE 1M PHY, Connection parameters for the LE 1M PHY are provided.

INIT_PROP_2M 

Scan connectable advertisements on the LE 2 M PHY, Connection parameters for the LE 2M PHY are provided.

INIT_PROP_CODED 

Scan connectable advertisements on the LE Coded PHY, Connection parameters for the LE Coded PHY are provided.

◆ ble_initiator_type

Initiator Types.

Enumerator
INIT_TYPE_DIRECT_CONN_EST 

Direct connection establishment, establish a connection with an indicated device.

INIT_TYPE_AUTO_CONN_EST 

Automatic connection establishment, establish a connection with all devices whose address is present in the white list.

INIT_TYPE_NAME_DISC 

Name discovery, Establish a connection with an indicated device in order to read content of its Device Name characteristic. Connection is closed once this operation is stopped.

◆ ble_io_cap

enum ble_io_cap

IO Capability Values.

Enumerator
IO_CAP_DISPLAY_ONLY 

Display Only.

IO_CAP_DISPLAY_YES_NO 

Display Yes No.

IO_CAP_KB_ONLY 

Keyboard Only.

IO_CAP_NO_INPUT_NO_OUTPUT 

No Input No Output.

IO_CAP_KB_DISPLAY 

Keyboard Display.

◆ ble_kdist

enum ble_kdist

Key Distribution Flags.

Enumerator
KDIST_NONE 

No Keys to distribute.

KDIST_ENCKEY 

Encryption key in distribution.

KDIST_IDKEY 

IRK (ID key)in distribution.

KDIST_SIGNKEY 

CSRK(Signature key) in distribution.

KDIST_LINKKEY 

LTK in distribution.

◆ ble_keypress_state

Keypress state.

Enumerator
PASSKEY_ENTRY_STARTED 

Passkey entry started,.

PASSKEY_DIGIT_ENTERED 

Passkey digit entered.

PASSKEY_DIGIT_ERASED 

Passkey digit erased.

PASSKEY_CLEARED 

Passkey cleared.

PASSKEY_ENTRY_COMPLETED 

Passkey entry completed.

◆ ble_lk_sec_lvl

Security Link Level.

Enumerator
LK_NO_AUTH 

No authentication.

LK_UNAUTH 

Unauthenticated link.

LK_AUTH 

Authenticated link.

LK_SEC_CON 

Secure Connection link.

◆ ble_modulation_idx

Modulation index.

Enumerator
MODULATION_STANDARD 

Assume transmitter will have a standard modulation index.

MODULATION_STABLE 

Assume transmitter will have a stable modulation index.

◆ ble_oob

enum ble_oob

OOB Data Present Flag Values.

Enumerator
OOB_AUTH_DATA_NOT_PRESENT 

OOB Data not present.

OOB_AUTH_DATA_PRESENT 

OOB data present.

◆ ble_pairing_mode

Pairing mode authorized on the device.

Enumerator
PAIRING_DISABLE 

No pairing authorized.

PAIRING_LEGACY 

Legacy pairing Authorized.

PAIRING_SEC_CON 

Secure Connection pairing Authorized.

PAIRING_FORCE_P256_KEY_GEN 

Force re-generation of P256 private and public keys.

◆ ble_per_sync_type

Periodic synchronization types.

Enumerator
PER_SYNC_TYPE_GENERAL 

Do not use periodic advertiser list for synchronization. Use advertiser information provided in the ACTIVITY_START_CMD.

PER_SYNC_TYPE_SELECTIVE 

Use periodic advertiser list for synchronization.

◆ ble_phy

enum ble_phy

Bit field use to select the preferred TX or RX LE PHY. 0 means no preferences.

Enumerator
PHY_ANY 

No preferred PHY.

PHY_LE_1MBPS 

LE 1M PHY preferred for an active link.

PHY_LE_2MBPS 

LE 2M PHY preferred for an active link.

PHY_LE_CODED 

LE Coded PHY preferred for an active link.

◆ ble_phy_value

PHY value return from the link layer.

Enumerator
PHY_UNDEF_LNK_VALUE 

Not defined.

PHY_1MBPS_LNK_VALUE 

LE 1M PHY Value.

PHY_2MBPS_LNK_VALUE 

LE 2M PHY Value.

PHY_CODED_LNK_VALUE 

LE CODED PHY Value.

◆ ble_pkt_pld_type

Packet Payload type for test mode.

Enumerator
PKT_PLD_PRBS9 

PRBS9 sequence "11111111100000111101..." (in transmission order)

PKT_PLD_REPEATED_11110000 

Repeated "11110000" (in transmission order)

PKT_PLD_REPEATED_10101010 

Repeated "10101010" (in transmission order)

PKT_PLD_PRBS15 

PRBS15 sequence.

PKT_PLD_REPEATED_11111111 

Repeated "11111111" (in transmission order) sequence.

PKT_PLD_REPEATED_00000000 

Repeated "00000000" (in transmission order) sequence.

PKT_PLD_REPEATED_00001111 

Repeated "00001111" (in transmission order) sequence.

PKT_PLD_REPEATED_01010101 

Repeated "01010101" (in transmission order) sequence.

◆ ble_priv_cfg

Privacy configuration.

Enumerator
PRIV_CFG_PRIV_ADDR_BIT 

Indicate if identity address is a public (0) or static private random (1) address.

PRIV_CFG_RSVD 

Reserved.

PRIV_CFG_PRIV_EN_BIT 

Indicate if controller privacy is enabled.

◆ ble_rnd_addr_type

Random Address type.

Enumerator
STATIC_ADDR 

Static random address - 11 (MSB->LSB)

NON_RSLV_ADDR 

Private non resolvable address - 01 (MSB->LSB)

RSLV_ADDR 

Private resolvable address - 01 (MSB->LSB)

◆ ble_role

enum ble_role

GAP Role.

Enumerator
ROLE_NONE 

No role set yet.

ROLE_OBSERVER 

Observer role.

ROLE_BROADCASTER 

Broadcaster role.

ROLE_CENTRAL 

Master/Central role.

ROLE_PERIPHERAL 

Peripheral/Slave role.

ROLE_ALL 

Device has all role, both peripheral and central.

◆ ble_scan_dup_filt

Scan Filter duplicates Policy.

Enumerator
DUPLIC_DIS 

Disable filtering of duplicate packets.

DUPLIC_EN 

Enable filtering of duplicate packets. */.

DUPLIC_EN_PER_PERIOD 

Enable filtering of duplicate packets per scan period.

◆ ble_scan_prop

Scan properties.

Enumerator
SCAN_PROP_PHY_1M 

Scan advertisement on the LE 1M PHY.

SCAN_PROP_PHY_CODED 

Scan advertisement on the LE Coded PHY.

SCAN_PROP_ACTIVE_1M 

Active scan on LE 1M PHY (Scan Request PDUs may be sent).

SCAN_PROP_ACTIVE_CODED 

Active scan on LE Coded PHY (Scan Request PDUs may be sent).

SCAN_PROP_ACCEPT_RPA 

Accept directed advertising packets if we use a RPA and target address cannot be solved by the controller.

SCAN_PROP_FILT_TRUNC 

Filter truncated advertising or scan response reports.

◆ ble_scan_type

Scanning Types.

Enumerator
GEN_DISC 

General discovery.

LIM_DISC 

Limited discovery.

OBSERVER 

Observer.

SEL_OBSERVER 

Selective observer.

CONN_DISC 

Connectable discovery.

SEL_CONN_DISC 

Selective connectable discovery, using white list.

◆ ble_sec_req

Security Defines.

Enumerator
NO_SEC 

No security (no authentication and encryption)

SEC1_NOAUTH_PAIR_ENC 

Unauthenticated pairing with encryption.

SEC1_AUTH_PAIR_ENC 

Authenticated pairing with encryption.

SEC2_NOAUTH_DATA_SGN 

Unauthenticated pairing with data signing.

SEC2_AUTH_DATA_SGN 

Authentication pairing with data signing.

SEC1_SEC_CON_PAIR_ENC 

Secure Connection pairing with encryption.

◆ ble_test_phy

Enumeration of TX/RX PHY used for Test Mode.

Enumerator
TEST_PHY_1MBPS 

LE 1M PHY (TX or RX)

TEST_PHY_2MBPS 

LE 2M PHY (TX or RX)

TEST_PHY_CODED 

LE Coded PHY (RX Only)

TEST_PHY_125KBPS 

LE Coded PHY with S=8 data coding (TX Only)

TEST_PHY_500KBPS 

LE Coded PHY with S=2 data coding (TX Only)

◆ ble_tk_type

TK Type.

Enumerator
TK_OOB 

TK get from out of band method.

TK_DISPLAY 

TK generated and shall be displayed by local device.

TK_KEY_ENTRY 

TK shall be entered by user using device keyboard.

◆ ble_write_att_perm

Device Attribute write permission requirement.

Enumerator
WRITE_DISABLE 

Disable write access.

WRITE_NO_AUTH 

Enable write access - no authentication required.

WRITE_UNAUTH 

Write access requires unauthenticated link.

WRITE_AUTH 

Write access requires authenticated link.

WRITE_SEC_CON 

Write access requires secure connected link.

Function Documentation

◆ in_ble_actv_create()

int in_ble_actv_create ( void *  hdl,
ble_actv_create_t p_act,
int *  p_actv_idx,
comp_cb  callback 
)

Create an advertising, a scanning, an initiating or a periodic synchronization activity.

Parameters
[in]p_actPointer to activity create structure,
[out]p_actv_idxPointer to return activity index,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_actv_data()

int in_ble_actv_data ( void *  hdl,
int  actv_idx,
int  option,
uint8_t *  data,
uint32_t  data_len,
comp_cb  callback 
)

Set an advertising, a periodic advertising, or a scan response data.

Note
  1. AD type flag must not be part of data. It will generate by stack
  2. Must be set before activity starts.
  3. Can be used even if the activity already starts.
Parameters
[in]actv_idxActivity index return from "Create" call,
[in]optionData options: 0 - advertising data, 1 - scan response data, 2 - periodic advertising data
[in]dataPointer to the data,
[in]data_lendata length.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_actv_del()

int in_ble_actv_del ( void *  hdl,
int  actv_idx,
comp_cb  callback 
)

Delete an activity or all activities.

Parameters
[in]actv_idxActivity index return from "Create" call, If 0, delete all activities
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_actv_start()

int in_ble_actv_start ( void *  hdl,
int  actv_idx,
ble_actv_start_t p_start,
comp_cb  callback 
)

Start an advertising, a scanning, an initiating or a periodic synchronization activity.

Note
  1. Several advertising can be started in parallel,
  2. Can't start multiple scaning and initiating activities.
  3. Periodic synchronization activity must be started in parallel with a scanning activity,
  4. Activity must be created and started for devices not in the Periodic Advertiser list
Parameters
[in]actv_idxActivity index return from "Create" call,
[in]p_startPointer to start activity data strucutre,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_actv_stop()

int in_ble_actv_stop ( void *  hdl,
int  actv_idx,
comp_cb  callback 
)

Stop an activity or all activities.

Parameters
[in]actv_idxActivity index return from "Create" call, If 0, stop all activities
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_aes_enc()

int in_ble_aes_enc ( void *  hdl,
ble_aes_enc_t p_enc,
uint8_t *  p_enc_res,
comp_cb  callback 
)

AES-128 calculation.

Parameters
[in]p_encPointer to the key and plain text structure.
[out]p_enc_res16 bytes array of calculated result,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_bond()

int in_ble_conn_bond ( void *  hdl,
int  conidx,
ble_pairing_t p_bond,
comp_cb  callback 
)

Initiate bond.

Note
This can only issue by master.
Parameters
[in]conidxConnection index
[in]p_bondPointer to pairing requirement of initiator.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_bond_cfm()

int in_ble_conn_bond_cfm ( void *  hdl,
int  conidx,
ble_bond_cfm_t p_cfm 
)

Confirm bond request.

Note
This is to respond to event "GAP_EVT_BOND_REQ".
Parameters
[in]conidxConnection index
[in]p_cfmPointer to bond confirm data structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_cfm()

int in_ble_conn_cfm ( void *  hdl,
int  conidx,
ble_conn_cfm_t p_cfm 
)

Confirm connection request.

Note
: This is to response to the event "GAP_EVT_CONN_REQ". Application can call this API in the call back.
Parameters
[in]conidxConnection index.
[in]p_cfmPointer to the confirm data structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_disconnect()

int in_ble_conn_disconnect ( void *  hdl,
int  conidx,
uint32_t  reason,
comp_cb  callback 
)

Disconnect a link.

Note
: Either master or slave can call this function.
Parameters
[in]conidxConnection index.
[in]reasonReason of disconnection,
See also
enum in_ble_disc_reason.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_get_dev_info_cfm()

int in_ble_conn_get_dev_info_cfm ( void *  hdl,
int  conidx,
ble_get_dev_info_cfm_t p_cfm 
)

Send requested info to peer device.

Parameters
[in]conidxConnection index
[in]p_cfmreq,
See also
struct in_ble_get_dev_info_cfm_t.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_get_peer_info()

int in_ble_conn_get_peer_info ( void *  hdl,
int  conidx,
int  option,
ble_conn_peer_info_t p_peer_info,
comp_cb  callback 
)

Retrieve connection information.

Parameters
[in]conidxConnection index
[in]optionOptions for connection information: 0 - Peer Name, 1 - Peer Version, 2 - Peer Features, 3 - Connection RSSI, 4 - Connection Channel Map, 5 - Peer Apperance, 6 - Peer Slaved Prefered Paramters, 7 - Address Resolution Supported (Central Only), 8 - LE Ping Time Out Value, 9 - Connection PHY, 10 - Connection Channel Selected algorithm,
[out]p_peer_infoPointer to union for different info.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_keypress_notify()

int in_ble_conn_keypress_notify ( void *  hdl,
int  conidx,
int  key_state,
comp_cb  callback 
)

Send a keypress to peer.

Parameters
[in]conidxConnection index
[in]key_stateKey state,
See also
enum ble_keypress_state.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_param_update()

int in_ble_conn_param_update ( void *  hdl,
int  conidx,
ble_conn_param_update_t p_upd,
comp_cb  callback 
)

Update connection paramters.

Note
: Can be used by both master and slave,
Parameters
[in]conidxConnection index
[in]p_updPointer to update parameters structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_param_update_cfm()

int in_ble_conn_param_update_cfm ( void *  hdl,
int  conidx,
bool  accept 
)

Confirm updated paramters.

Note
: This is only for master to accept or reject the new parameters proposed by slave,
Parameters
[in]conidxConnection index
[in]accepttrue: accept slave's connection parameters; false: otherwise.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_req_encrypt()

int in_ble_conn_req_encrypt ( void *  hdl,
int  conidx,
ble_ltk_t p_ltk,
comp_cb  callback 
)

Initiate encryption procedure.

Note
: This is only for master and have previous LTK,
Parameters
[in]conidxConnection index
[in]p_ltkPointer to LTK data structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_req_encrypt_cfm()

int in_ble_conn_req_encrypt_cfm ( void *  hdl,
int  conidx,
ble_conn_encrypt_cfm_t p_cfm 
)

Confirm master's encryption request.

Parameters
[in]conidxConnection index
[in]p_cfmPointer to LTK confirm data structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_req_security()

int in_ble_conn_req_security ( void *  hdl,
int  conidx,
int  auth,
comp_cb  callback 
)

Initiate security request procedure.

Note
This is used only by slave to initiate a security handshake.
Parameters
[in]conidxConnection index
[in]authAuthentication level requested,
See also
enum ble_auth.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_set_ping_tmo()

int in_ble_conn_set_ping_tmo ( void *  hdl,
int  conidx,
uint32_t  timeout,
comp_cb  callback 
)

Set LE ping time out value.

Parameters
[in]conidxConnection index
[in]timeoutAuthenticated payload time out value N, value time = N * 10ms.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_set_pkt_size()

int in_ble_conn_set_pkt_size ( void *  hdl,
uint8_t  conidx,
ble_pref_le_pkt_size_t p_pref_pkt_size,
ble_le_pkt_size_t p_pkt_size,
comp_cb  callback 
)

Change current LE packet size.

Parameters
[in]conidxConnection index
[in]p_pref_pkt_sizePointer to prefered packet size data structure.
[out]p_pkt_sizePointer to controller final packet size data structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_conn_set_pref_phy()

int in_ble_conn_set_pref_phy ( void *  hdl,
int  conidx,
ble_conn_pref_phy_t p_phy,
ble_phy_ind_t p_phy_ind,
comp_cb  callback 
)

Set prefered PHY.

Parameters
[in]conidxConnection index
[in]p_phyPointer to prefered PHY data structure.
[out]p_phy_indPointer to final PHY data structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_gen_random_addr()

int in_ble_gen_random_addr ( void *  hdl,
int  rnd_addr_type,
ble_bdaddr_t p_rnd_addr,
comp_cb  callback 
)

Generate random address.

Parameters
[in]rnd_addr_typerandom address type,
See also
enum ble_rnd_addr_type
Parameters
[out]p_rnd_addrPointer to the generated random address,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_gen_random_nb()

int in_ble_gen_random_nb ( void *  hdl,
ble_rnd_nb_t p_rnd_nb,
comp_cb  callback 
)

Generate a 8 bytes random number.

Parameters
[out]p_rnd_nb8 bytes array of calculated result,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_get_chn_assess()

int in_ble_get_chn_assess ( void *  hdl,
int  chn,
int8_t *  level,
uint32_t *  timestamp 
)

Get channel assess data.

Parameters
[in]chnData channel, from 0 to 36.
[out]levelLevel
[out]timestampTimestamp when update level
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_get_dev_info()

int in_ble_get_dev_info ( void *  hdl,
int  cmd,
ble_local_dev_info_t p_info,
comp_cb  callback 
)

Get local device informations.

Parameters
[in]cmdCommand for information,
See also
enum ble_get_dev_info_cmd
Parameters
[out]p_infoPointer to a union for different info,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_get_pub_key()

int in_ble_get_pub_key ( void *  hdl,
int  renew,
ble_pub_key_t p_pub_key,
comp_cb  callback 
)

get public key

Parameters
[in]renew1 to renew public/private key pair, 0 to read current value
[out]p_pub_keypublic key
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_get_ral_addr()

int in_ble_get_ral_addr ( void *  hdl,
ble_get_ral_addr_t p_ral_addr,
ble_bdaddr_t p_addr,
comp_cb  callback 
)

Get local or peer resolvable private address.

Parameters
[in]p_ral_addrPointer to peer device identity,
[out]p_addrPointer to the last resolvable private address,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_register_lepsm()

int in_ble_register_lepsm ( void *  hdl,
ble_lepsm_param_t p_psm,
comp_cb  callback 
)

Register a LE Protocol/Service Multiplexer identified.

Note
This has to be registered before LE Credit Based Connection established.
Parameters
[in]p_psmPointer to a LEPSM data structure,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_reset()

int in_ble_reset ( void *  hdl,
comp_cb  callback 
)

Reset BLE stack.

Parameters
[in]hdlBle stack handle; return from the stack initialization
[in]callbackAPI completed callback function; NUL means blocking call.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_resolve_addr()

int in_ble_resolve_addr ( void *  hdl,
ble_rnd_addr_resolve_t p_rnd_addr,
ble_rnd_addr_solved_t p_addr,
comp_cb  callback 
)

Resolve provided random address by usng array of IRK.

Parameters
[in]p_rnd_addrPointer to the random address and possible keys,
[out]p_addrPointer to the resolved random address and keys,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_set_chn_map()

int in_ble_set_chn_map ( void *  hdl,
ble_chnl_map_t p_chn_map,
comp_cb  callback 
)

Set channel map.

Note
This function is only for central device
Parameters
[in]p_chn_mapPointer to the channel map array.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_set_dev_config()

int in_ble_set_dev_config ( void *  hdl,
ble_set_dev_config_t p_cfg,
comp_cb  callback 
)

Set device configuration.

Parameters
[in]p_cfgPointer to the device configurtion structure.
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_set_irk()

int in_ble_set_irk ( void *  hdl,
ble_sec_key_t p_irk,
comp_cb  callback 
)

Change the current IRK for a renewed one.

Note
This can only be called during no air operation.
Parameters
[out]p_irkPointer to a security key data structure,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_set_pal_list()

int in_ble_set_pal_list ( void *  hdl,
ble_pal_param_t p_pal,
comp_cb  callback 
)

Set the peroidic advertiser list content.

Note
This will overwrite the current periodic advertiser list.
Parameters
[in]p_palPointer to periodic advertiser list data structure,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_set_ral_list()

int in_ble_set_ral_list ( void *  hdl,
ble_ral_param_t p_ral,
comp_cb  callback 
)

Set the resolving list content.

Note
This will overwrite the current resolving list.
Parameters
[in]p_ralPointer to resolving list data structure,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_set_white_list()

int in_ble_set_white_list ( void *  hdl,
ble_wl_param_t p_wlist,
comp_cb  callback 
)

Set the white list content.

Note
This will overwrite the current white list.
Parameters
[in]p_wlistPointer to white list data structure,
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_test()

int in_ble_test ( void *  hdl,
ble_test_mode_t p_test,
uint16_t *  nb_rx_packet,
comp_cb  callback 
)

Test BLE phy TX and RX.

Parameters
[in]p_testPointer to the test mode structure.
[out]nb_rx_packetPointer to the nb of packets receive for RX test operation
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t

◆ in_ble_unregister_lepsm()

int in_ble_unregister_lepsm ( void *  hdl,
uint32_t  psm,
comp_cb  callback 
)

Un-register a LE Protocol/Service Multiplexer identified.

Parameters
[in]psmLE Protoca/Service Multiplexer (16 bits),
Returns
IN_BLE_ERR_NO_ERROR if successful, otherwise failed.
See also
enum in_ble_err_t