TI BLE5-Stack API Documentation  2.01.00.00
gap.h
Go to the documentation of this file.
1 /******************************************************************************
2 
3  Group: WCS, BTS
4  $Target Device: DEVICES $
5 
6  ******************************************************************************
7  $License: TISD 2009 $
8  ******************************************************************************
9  $Release Name: PACKAGE NAME $
10  $Release Date: PACKAGE RELEASE DATE $
11  *****************************************************************************/
12 
21 #ifndef GAP_H
22 #define GAP_H
23 
24 #ifdef __cplusplus
25 extern "C"
26 {
27 #endif
28 
29 /*-------------------------------------------------------------------
30  * INCLUDES
31  */
32 #include <stdbool.h>
33 #include "bcomdef.h"
34 #include "osal.h"
35 #include "sm.h"
36 #include "ll_ae.h"
37 
38 /*-------------------------------------------------------------------
39  * MACROS
40  */
42 #ifndef status_t
43  #define status_t bStatus_t
44 #endif
45 
55 #define GAP_IS_ADDR_RPR(pAddr) ((pAddr[B_ADDR_LEN-1] & RANDOM_ADDR_HDR_MASK) \
56  == PRIVATE_RESOLVE_ADDR_HDR)
57 
66 #define GAP_IS_ADDR_RPN(pAddr) ((pAddr[B_ADDR_LEN-1] & RANDOM_ADDR_HDR_MASK) \
67  == PRIVATE_NON_RESOLVE_ADDR_HDR)
68 
77 #define GAP_IS_ADDR_RS(pAddr) ((pAddr[B_ADDR_LEN-1] & RANDOM_ADDR_HDR_MASK) \
78  == STATIC_ADDR_HDR)
79 
83 #define GAP_IS_ADDR_RAND(pAddr) (GAP_IS_ADDR_RPR(pAddr) | \
84  GAP_IS_ADDR_RPN(pAddr) | \
85  GAP_IS_ADDR_RS(pAddr))
86 
87 /*-------------------------------------------------------------------
88  * CONSTANTS
89  */
90 
107 #define GAP_DEVICE_INIT_DONE_EVENT 0x00
108 
111 #define GAP_LINK_ESTABLISHED_EVENT 0x05
112 
115 #define GAP_LINK_TERMINATED_EVENT 0x06
116 
121 #define GAP_LINK_PARAM_UPDATE_EVENT 0x07
122 
128 #define GAP_SIGNATURE_UPDATED_EVENT 0x09
129 
134 #define GAP_AUTHENTICATION_COMPLETE_EVENT 0x0A
135 
140 #define GAP_PASSKEY_NEEDED_EVENT 0x0B
141 
147 #define GAP_SLAVE_REQUESTED_SECURITY_EVENT 0x0C
148 
153 #define GAP_BOND_COMPLETE_EVENT 0x0E
154 
160 #define GAP_PAIRING_REQ_EVENT 0x0F
161 
167 #define GAP_AUTHENTICATION_FAILURE_EVT 0x10
168 
174 #define GAP_UPDATE_LINK_PARAM_REQ_EVENT 0x11
175 #define GAP_SCAN_SESSION_END_EVENT 0x12
177 #define GAP_ADV_REMOVE_SET_EVENT 0x13
179 
182 #define GAP_CONNECTING_CANCELLED_EVENT 0x15
183 
187 #define GAP_BOND_LOST_EVENT 0x17
188 
204 #define GAP_EVT_ADV_START_AFTER_ENABLE (uint32_t)BV(0)
205 
210 #define GAP_EVT_ADV_END_AFTER_DISABLE (uint32_t)BV(1)
211 
217 #define GAP_EVT_ADV_START (uint32_t)BV(2)
218 
224 #define GAP_EVT_ADV_END (uint32_t)BV(3)
225 
231 #define GAP_EVT_ADV_SET_TERMINATED (uint32_t)BV(4)
232 
237 #define GAP_EVT_SCAN_REQ_RECEIVED (uint32_t)BV(5)
238 
244 #define GAP_EVT_ADV_DATA_TRUNCATED (uint32_t)BV(6)
245 #define GAP_EVT_SCAN_ENABLED (uint32_t)BV(16)
247 
253 #define GAP_EVT_SCAN_DISABLED (uint32_t)BV(17)
254 
259 #define GAP_EVT_SCAN_PRD_ENDED (uint32_t)BV(18)
260 #define GAP_EVT_SCAN_DUR_ENDED (uint32_t)BV(19)
262 
267 #define GAP_EVT_SCAN_INT_ENDED (uint32_t)BV(20)
268 #define GAP_EVT_SCAN_WND_ENDED (uint32_t)BV(21)
270 
276 #define GAP_EVT_ADV_REPORT (uint32_t)BV(22)
277 
282 #define GAP_EVT_ADV_REPORT_FULL (uint32_t)BV(23)
283 
290 #define GAP_EVT_PRD_ADV_SYNC_ESTABLISHED (uint32_t)BV(24)
291 
297 #define GAP_EVT_PRD_ADV_REPORT (uint32_t)BV(25)
298 
304 #define GAP_EVT_PRD_ADV_SYNC_LOST (uint32_t)BV(26)
305 #define GAP_EVT_INSUFFICIENT_MEMORY (uint32_t)BV(31)
308 
310 #define GAP_EVT_ADV_EVT_MASK (GAP_EVT_ADV_START_AFTER_ENABLE | \
311  GAP_EVT_ADV_END_AFTER_DISABLE | \
312  GAP_EVT_ADV_START | \
313  GAP_EVT_ADV_END | \
314  GAP_EVT_ADV_SET_TERMINATED | \
315  GAP_EVT_SCAN_REQ_RECEIVED | \
316  GAP_EVT_ADV_DATA_TRUNCATED | \
317  GAP_EVT_INSUFFICIENT_MEMORY)
318 
320 #define GAP_EVT_SCAN_EVT_MASK (GAP_EVT_SCAN_ENABLED | \
321  GAP_EVT_SCAN_DISABLED | \
322  GAP_EVT_SCAN_PRD_ENDED | \
323  GAP_EVT_SCAN_DUR_ENDED | \
324  GAP_EVT_SCAN_INT_ENDED | \
325  GAP_EVT_SCAN_WND_ENDED | \
326  GAP_EVT_ADV_REPORT | \
327  GAP_EVT_ADV_REPORT_FULL | \
328  GAP_EVT_PRD_ADV_SYNC_ESTABLISHED | \
329  GAP_EVT_PRD_ADV_REPORT | \
330  GAP_EVT_PRD_ADV_SYNC_LOST | \
331  GAP_EVT_INSUFFICIENT_MEMORY)
332 
349 typedef enum
350 {
369 
388 
390  GAP_CONFIG_PARAM_COUNT
393 
400 {
409 
423 
435 
445 
454 
463 
465 
469  GAP_PARAM_AUTH_TASK_ID,
470 
475  GAP_PARAM_DEPRECATED,
476 
484  GAP_PARAM_GGS_PARAMS,
485 
486 #if defined ( TESTMODES )
487 
490  GAP_PARAM_GAP_TESTCODE,
491 
495  GAP_PARAM_SM_TESTCODE,
496 
500  GAP_PARAM_GATT_TESTCODE,
501 
505  GAP_PARAM_ATT_TESTCODE,
506 
511  GAP_PARAM_L2CAP_TESTCODE,
512 #endif // TESTMODES
513 
516  GAP_PARAMID_MAX
518 };
519 
533 #define GAP_PROFILE_BROADCASTER 0x01
535 #define GAP_PROFILE_OBSERVER 0x02
537 
541 #define GAP_PROFILE_PERIPHERAL 0x04
542 
546 #define GAP_PROFILE_CENTRAL 0x08
547 
554 typedef enum
555 {
558 
564 
566 typedef enum
567 {
575 
577 typedef enum
578 {
581  ADDRTYPE_PUBLIC_ID = 0x02,
589 
591 typedef enum
592 {
596 
601 #define SET_ADDRTYPE_ID 0x02
603 #define MASK_ADDRTYPE_ID 0x01
605 
611 #define RANDOM_ADDR_HDR_MASK 0xC0
613 #define STATIC_ADDR_HDR 0xC0
615 #define PRIVATE_NON_RESOLVE_ADDR_HDR 0x80
617 #define PRIVATE_RESOLVE_ADDR_HDR 0x40
619 
627 #define GAP_ADTYPE_FLAGS 0x01
629 #define GAP_ADTYPE_16BIT_MORE 0x02
631 #define GAP_ADTYPE_16BIT_COMPLETE 0x03
633 #define GAP_ADTYPE_32BIT_MORE 0x04
635 #define GAP_ADTYPE_32BIT_COMPLETE 0x05
637 #define GAP_ADTYPE_128BIT_MORE 0x06
639 #define GAP_ADTYPE_128BIT_COMPLETE 0x07
641 #define GAP_ADTYPE_LOCAL_NAME_SHORT 0x08
643 #define GAP_ADTYPE_LOCAL_NAME_COMPLETE 0x09
645 #define GAP_ADTYPE_POWER_LEVEL 0x0A
647 #define GAP_ADTYPE_OOB_CLASS_OF_DEVICE 0x0D
649 #define GAP_ADTYPE_OOB_SIMPLE_PAIRING_HASHC 0x0E
651 #define GAP_ADTYPE_OOB_SIMPLE_PAIRING_RANDR 0x0F
653 #define GAP_ADTYPE_SM_TK 0x10
655 #define GAP_ADTYPE_SM_OOB_FLAG 0x11
657 
661 #define GAP_ADTYPE_SLAVE_CONN_INTERVAL_RANGE 0x12
662 #define GAP_ADTYPE_SIGNED_DATA 0x13
664 #define GAP_ADTYPE_SERVICES_LIST_16BIT 0x14
666 #define GAP_ADTYPE_SERVICES_LIST_128BIT 0x15
668 #define GAP_ADTYPE_SERVICE_DATA 0x16
670 #define GAP_ADTYPE_PUBLIC_TARGET_ADDR 0x17
672 #define GAP_ADTYPE_RANDOM_TARGET_ADDR 0x18
674 #define GAP_ADTYPE_APPEARANCE 0x19
676 #define GAP_ADTYPE_ADV_INTERVAL 0x1A
678 #define GAP_ADTYPE_LE_BD_ADDR 0x1B
680 #define GAP_ADTYPE_LE_ROLE 0x1C
682 #define GAP_ADTYPE_SIMPLE_PAIRING_HASHC_256 0x1D
684 #define GAP_ADTYPE_SIMPLE_PAIRING_RANDR_256 0x1E
686 #define GAP_ADTYPE_SERVICE_DATA_32BIT 0x20
688 #define GAP_ADTYPE_SERVICE_DATA_128BIT 0x21
690 #define GAP_ADTYPE_3D_INFO_DATA 0x3D
692 
696 #define GAP_ADTYPE_MANUFACTURER_SPECIFIC 0xFF
697 #define GAP_ADTYPE_FLAGS_LIMITED 0x01
699 #define GAP_ADTYPE_FLAGS_GENERAL 0x02
701 #define GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED 0x04
703 
709 #define GAP_STATE_IDLE 0x00
710 #define GAP_STATE_ADV 0x01
711 #define GAP_STATE_SCAN 0x02
712 #define GAP_STATE_INIT 0x04
713 
719 #define GAP_APPEARE_UNKNOWN 0x0000
720 #define GAP_APPEARE_GENERIC_PHONE 0x0040
721 #define GAP_APPEARE_GENERIC_COMPUTER 0x0080
722 #define GAP_APPEARE_GENERIC_WATCH 0x00C0
723 #define GAP_APPEARE_WATCH_SPORTS 0x00C1
724 #define GAP_APPEARE_GENERIC_CLOCK 0x0100
725 #define GAP_APPEARE_GENERIC_DISPLAY 0x0140
726 #define GAP_APPEARE_GENERIC_RC 0x0180
727 #define GAP_APPEARE_GENERIC_EYE_GALSSES 0x01C0
728 #define GAP_APPEARE_GENERIC_TAG 0x0200
729 #define GAP_APPEARE_GENERIC_KEYRING 0x0240
730 #define GAP_APPEARE_GENERIC_MEDIA_PLAYER 0x0280
731 #define GAP_APPEARE_GENERIC_BARCODE_SCANNER 0x02C0
732 #define GAP_APPEARE_GENERIC_THERMOMETER 0x0300
733 #define GAP_APPEARE_GENERIC_THERMO_EAR 0x0301
734 #define GAP_APPEARE_GENERIC_HR_SENSOR 0x0340
735 #define GAP_APPEARE_GENERIC_HRS_BELT 0x0341
736 #define GAP_APPEARE_GENERIC_BLOOD_PRESSURE 0x0380
737 #define GAP_APPEARE_GENERIC_BP_ARM 0x0381
738 #define GAP_APPEARE_GENERIC_BP_WRIST 0x0382
739 #define GAP_APPEARE_GENERIC_HID 0x03C0
740 #define GAP_APPEARE_HID_KEYBOARD 0x03C1
741 #define GAP_APPEARE_HID_MOUSE 0x03C2
742 #define GAP_APPEARE_HID_JOYSTIC 0x03C3
743 #define GAP_APPEARE_HID_GAMEPAD 0x03C4
744 #define GAP_APPEARE_HID_DIGITIZER_TYABLET 0x03C5
745 #define GAP_APPEARE_HID_DIGITAL_CARDREADER 0x03C6
746 #define GAP_APPEARE_HID_DIGITAL_PEN 0x03C7
747 #define GAP_APPEARE_HID_BARCODE_SCANNER 0x03C8
748 
754 #define GAP_PRIVACY_MODE_NETWORK 0
755 #define GAP_PRIVACY_MODE_DEVICE 1
756 
761 typedef enum
762 {
767 
771 typedef enum
772 {
774  GAP_CONN_EVT_STAT_SUCCESS = LL_CONN_EVT_STAT_SUCCESS,
776  GAP_CONN_EVT_STAT_CRC_ERROR = LL_CONN_EVT_STAT_CRC_ERROR,
778  GAP_CONN_EVT_STAT_MISSED = LL_CONN_EVT_STAT_MISSED
780 
784 typedef enum
785 {
787  GAP_CONN_EVT_TASK_TYPE_ADV = LL_TASK_ID_ADVERTISER,
789  GAP_CONN_EVT_TASK_TYPE_INIT = LL_TASK_ID_INITIATOR,
791  GAP_CONN_EVT_TASK_TYPE_SLAVE = LL_TASK_ID_SLAVE,
793  GAP_CONN_EVT_TASK_TYPE_SCAN = LL_TASK_ID_SCANNER,
795  GAP_CONN_EVT_TASK_TYPE_MASTER = LL_TASK_ID_MASTER,
796  // No task
797  GAP_CONN_EVT_TASK_TYPE_NONE = LL_TASK_ID_NONE
799 
803 typedef enum
804 {
808 
811 /*-------------------------------------------------------------------
812  * TYPEDEFS
813  */
814 
820 typedef struct
822 {
824  uint8_t opcode;
825 } gapEventHdr_t;
826 
833 typedef struct
834 {
836  uint16_t intervalMin;
838  uint16_t intervalMax;
840  uint16_t latency;
842  uint16_t timeout;
844 
852 typedef struct
853 {
855  uint8_t opcode;
856  uint8_t numDataPkts;
857  uint16_t dataPktLen;
858  uint8_t devAddr[B_ADDR_LEN];
860 
873 typedef struct
874 {
876  uint8_t opcode;
877  uint8_t addrType;
878  uint8_t devAddr[B_ADDR_LEN];
879  uint32_t signCounter;
881 
887 typedef struct
888 {
889  uint16_t connectionHandle;
890  uint16_t intervalMin;
891  uint16_t intervalMax;
892  uint16_t connLatency;
893  uint16_t connTimeout;
896 
902 typedef struct
903 {
904  uint16_t connectionHandle;
905  uint16_t intervalMin;
906  uint16_t intervalMax;
907  uint16_t connLatency;
908  uint16_t connTimeout;
910  uint8_t accepted;
912 
919 typedef struct
920 {
922  uint8_t opcode;
925 
942 typedef struct
943 {
945  uint8_t opcode;
946  uint8_t devAddrType;
947  uint8_t devAddr[B_ADDR_LEN];
948  uint16_t connectionHandle;
949  uint8_t connRole;
950  uint16_t connInterval;
951  uint16_t connLatency;
952  uint16_t connTimeout;
953  uint8_t clockAccuracy;
955 
962 typedef struct
963 {
965  uint8_t opcode;
966  uint8_t status;
967  uint16_t connectionHandle;
968  uint16_t connInterval;
969  uint16_t connLatency;
970  uint16_t connTimeout;
972 
978 typedef struct
979 {
981  uint8_t opcode;
982  uint16_t connectionHandle;
983  uint8_t reason;
985 
994 typedef struct
995 {
997  uint8_t opcode;
998  uint8_t deviceAddr[B_ADDR_LEN];
999  uint16_t connectionHandle;
1000  uint8_t uiInputs;
1001  uint8_t uiOutputs;
1002  uint32_t numComparison;
1004 
1012 typedef struct
1013 {
1015  uint8_t opcode;
1016  uint16_t connectionHandle;
1017  uint8_t authState;
1023 
1028 typedef struct
1029 {
1030  uint16_t connectionHandle;
1032 } gapAuthParams_t;
1033 
1041 typedef struct
1042 {
1044  uint8_t opcode;
1045  uint16_t connectionHandle;
1046  uint8_t deviceAddr[B_ADDR_LEN];
1047 
1052  uint8_t authReq;
1054 
1063 typedef struct
1064 {
1066  uint8_t opcode;
1067  uint16_t connectionHandle;
1069 
1074 typedef struct
1075 {
1076  uint8_t ioCap;
1077  uint8_t oobDataFlag;
1078  uint8_t authReq;
1079  uint8_t maxEncKeySize;
1081 } gapPairingReq_t;
1082 
1094 typedef struct
1095 {
1097  uint8_t opcode;
1098  uint16_t connectionHandle;
1101 
1105 typedef struct
1106 {
1107  GAP_ConnEvtStat_t status;
1108  uint16_t handle;
1109  uint8_t channel;
1111  int8_t lastRssi;
1112  uint16_t packets;
1115  uint16_t errors;
1117  GAP_ConnEvtTaskType_t nextTaskType;
1119  uint32_t nextTaskTime;
1121 
1129 typedef struct
1130 {
1132  uint8_t opcode;
1133  uint16_t connectionHandle;
1134  uint8_t deviceAddr[B_ADDR_LEN];
1136 
1139 /*-------------------------------------------------------------------
1140  * CALLBACKS
1141  */
1142 
1148 typedef uint8_t(*pfnSuppCentAddrRes_t)
1151  uint8_t *deviceAddr,
1152  GAP_Peer_Addr_Types_t addrType
1153 );
1154 
1155 //TODO try to move these to gap_internal.h
1156 
1158 typedef void (*pfnGapIdleCB_t)();
1159 
1161 typedef uint8_t(*pfnGapDevPrivModeCB_t)
1163  GAP_Peer_Addr_Types_t addrType,
1164  uint8_t *pAddr
1165 );
1166 
1168 typedef struct
1169 {
1173 } gapBondMgrCBs_t;
1174 
1187 typedef void (*pfnGapCB_t)
1189  uint32_t event,
1190  void *pBuf,
1191  uintptr_t arg
1192 );
1193 
1208 typedef void (*pfnGapConnEvtCB_t)
1211  Gap_ConnEventRpt_t *pReport
1212 );
1213 
1216 /*-------------------------------------------------------------------
1217  * FUNCTIONS - Initialization and Configuration
1218  */
1219 
1250 extern bStatus_t GAP_DeviceInit(uint8_t profileRole, uint8_t taskID,
1251  GAP_Addr_Modes_t addrMode,
1252  uint8_t* pRandomAddr);
1253 
1284 extern bStatus_t GAP_DeviceInit_noGAPBondMgr(uint8_t profileRole, uint8_t taskID,
1285  GAP_Addr_Modes_t addrMode,
1286  uint8_t* pRandomAddr);
1287 
1299 extern bStatus_t GAP_SetParamValue(uint16_t paramID, uint16_t paramValue);
1300 
1309 extern uint16_t GAP_GetParamValue(uint16_t paramID);
1310 
1319 extern void GAP_RegisterForMsgs(uint8_t taskID);
1320 
1326 extern void GAP_RegisterBondMgrCBs(gapBondMgrCBs_t *pCBs);
1327 
1345  uint8_t *pAddr, uint8_t mode);
1346 
1347 /*-------------------------------------------------------------------
1348  * FUNCTIONS - Link Establishment
1349  */
1350 
1365 extern bStatus_t GAP_TerminateLinkReq(uint16_t connectionHandle, uint8_t reason);
1366 
1389 
1414  *pParams);
1415 
1421 extern uint8_t GAP_NumActiveConnections(void);
1422 
1449  GAP_CB_Action_t action,
1450  uint16_t connHandle);
1451 
1452 /*-------------------------------------------------------------------
1453  * FUNCTIONS - GAP Configuration
1454  */
1455 
1471 extern bStatus_t GapConfig_SetParameter(Gap_configParamIds_t param,
1472  void *pValue);
1473 
1483 extern uint8_t *GAP_GetDevAddress(uint8 wantIA);
1484 
1494 extern uint8_t *GAP_GetIRK(void);
1495 
1505 extern uint8_t *GAP_GetSRK(void);
1506 
1507 /*-------------------------------------------------------------------
1508  * FUNCTIONS - Pairing
1509  */
1510 
1542  gapPairingReq_t *pPairReq);
1543 
1553 extern uint8_t GAP_isPairing(void);
1554 
1572 extern bStatus_t GAP_TerminateAuth(uint16_t connectionHandle, uint8_t reason);
1573 
1595 extern bStatus_t GAP_PasskeyUpdate(uint8_t *pPasskey, uint16_t connectionHandle);
1596 
1614 extern bStatus_t GAP_PasscodeUpdate(uint32_t passcode, uint16_t connectionHandle);
1615 
1632 extern bStatus_t GAP_SendSlaveSecurityRequest(uint16_t connectionHandle,
1633  uint8_t authReq);
1634 
1652 extern bStatus_t GAP_Signable(uint16_t connectionHandle, uint8_t authenticated,
1653  smSigningInfo_t *pParams);
1654 
1677 extern bStatus_t GAP_Bond(uint16_t connectionHandle, uint8_t authenticated,
1678  uint8_t secureConnections, smSecurityInfo_t *pParams,
1679  uint8_t startEncryption);
1680 
1681 /*-------------------------------------------------------------------
1682  * TASK FUNCTIONS - To only be used in osal_icall_ble.c
1683  */
1684 
1692 extern void GAP_Init(uint8_t task_id);
1693 
1704 extern uint16_t GAP_ProcessEvent(uint8_t task_id, uint16_t events);
1705 
1706 /*-------------------------------------------------------------------
1707 -------------------------------------------------------------------*/
1708 
1709 #ifdef __cplusplus
1710 }
1711 #endif
1712 
1713 #endif /* GAP_H */
1714 
uint8_t(* pfnSuppCentAddrRes_t)(uint8_t *deviceAddr, GAP_Peer_Addr_Types_t addrType)
Central Address Resolution (CAR) Support Callback Function.
Definition: gap.h:1150
Definition: gap.h:422
bStatus_t Gap_RegisterConnEventCb(pfnGapConnEvtCB_t cb, GAP_CB_Action_t action, uint16_t connHandle)
GAP_Addr_Types_t
Address types used for identifying peer address type.
Definition: gap.h:577
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:875
uint8_t * GAP_GetDevAddress(uint8 wantIA)
This API allows the software components in the Z-Stack to be written independently of the specifics o...
GAP_Peer_Addr_Types_t
Address types used for specifying peer address type.
Definition: gap.h:591
uint8_t addrType
Device&#39;s address type for devAddr.
Definition: gap.h:877
void(* pfnGapConnEvtCB_t)(Gap_ConnEventRpt_t *pReport)
Definition: gap.h:1209
This file contains the interface to the SM.
No address provided.
Definition: gap.h:587
2 MBPS
Definition: gap.h:764
Definition: sm.h:194
Definition: gap.h:444
uint8_t opcode
GAP_BOND_COMPLETE_EVENT
Definition: gap.h:1066
smSecurityInfo_t * pSecurityInfo
security information from this device
Definition: gap.h:1018
Random (static) Identity Address (corresponds to peer&#39;s RPA)
Definition: gap.h:584
Definition: gap.h:1028
bStatus_t GAP_TerminateAuth(uint16_t connectionHandle, uint8_t reason)
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:1043
Connection event in slave role.
Definition: gap.h:791
smSigningInfo_t * pSigningInfo
Signing information.
Definition: gap.h:1019
uint16_t handle
connection handle
Definition: gap.h:1108
GAP_ConnEvtTaskType_t
Definition: gap.h:784
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:854
Definition: gap.h:580
Definition: gap.h:1129
Deny all parameter update requests.
Definition: gap.h:557
bStatus_t GAP_SetParamValue(uint16_t paramID, uint16_t paramValue)
Definition: gap.h:994
GAP_CB_Action_t
Definition: gap.h:803
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:823
Gap_configParamIds_t
Definition: gap.h:349
Definition: gap.h:833
Definition: gap.h:852
Definition: gap.h:1105
uint8_t maxEncKeySize
Pairing Request Maximum Encryption Key Size field.
Definition: gap.h:1079
Definition: gap.h:1041
uint8_t opcode
GAP_DEVICE_INIT_DONE_EVENT
Definition: gap.h:855
uint16_t connectionHandle
connection Handle
Definition: gap.h:1098
Register a callback.
Definition: gap.h:805
Connection event occurred successfully.
Definition: gap.h:774
GAP_ConnEvtStat_t status
status of connection event
Definition: gap.h:1107
GAP event header format.
Definition: gap.h:821
Definition: gap.h:1063
uint16_t timeout
Connection Timeout (0x000A - 0x0C80 * 10 ms)
Definition: gap.h:842
GAP_ConnEvtTaskType_t nextTaskType
Type of next BLE task.
Definition: gap.h:1117
Definition: gap.h:562
uint16_t dataPktLen
HC_LE_Data_Packet_Length.
Definition: gap.h:857
Definition: gap.h:569
Definition: gap.h:1094
int8_t lastRssi
Definition: gap.h:1111
uint16_t intervalMin
Minimum value for the connection event (interval. 0x0006 - 0x0C80 * 1.25 ms)
Definition: gap.h:836
1 MBPS
Definition: gap.h:763
uint8_t uiInputs
Pairing User Interface Inputs - Ask user to input passcode.
Definition: gap.h:1000
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:1065
GAP_ConnEvtStat_t
Definition: gap.h:771
bStatus_t GAP_TerminateLinkReq(uint16_t connectionHandle, uint8_t reason)
Random Device Address (controller unable to resolve)
Definition: gap.h:586
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:996
bStatus_t GAP_UpdateLinkParamReq(gapUpdateLinkParamReq_t *pParams)
void GAP_RegisterForMsgs(uint8_t taskID)
keyDist_t keyDist
Pairing Request Key Distribution field.
Definition: gap.h:1080
uint8_t channel
BLE RF channel index (0-39)
Definition: gap.h:1109
uint8_t ioCap
Pairing Request ioCap field.
Definition: gap.h:1076
uint16_t connectionHandle
connection Handle
Definition: gap.h:1067
GAP_ConnEvtPhy_t
Definition: gap.h:761
Definition: gap.h:873
Definition: sm.h:148
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:1131
Gap_updateDecision_t
Definition: gap.h:554
Public Identity Address (corresponds to peer&#39;s RPA)
Definition: gap.h:582
uint8_t opcode
GAP_SIGNATURE_UPDATED_EVENT
Definition: gap.h:876
void(* pfnGapCB_t)(uint32_t event, void *pBuf, uintptr_t arg)
Definition: gap.h:1188
smIdentityInfo_t * pIdentityInfo
identity information
Definition: gap.h:1021
uint8_t * GAP_GetIRK(void)
Definition: sm.h:205
uint8_t authReq
Definition: gap.h:1052
void GAP_RegisterBondMgrCBs(gapBondMgrCBs_t *pCBs)
bStatus_t GAP_Bond(uint16_t connectionHandle, uint8_t authenticated, uint8_t secureConnections, smSecurityInfo_t *pParams, uint8_t startEncryption)
uint8_t uiOutputs
Pairing User Interface Outputs - Display passcode.
Definition: gap.h:1001
uint16_t connectionHandle
Connection handle.
Definition: gap.h:999
uint16_t GAP_ProcessEvent(uint8_t task_id, uint16_t events)
Coded-S2 or Coded-S8.
Definition: gap.h:765
smLinkSecurityReq_t secReqs
Pairing Control info.
Definition: gap.h:1031
bStatus_t GAP_SendSlaveSecurityRequest(uint16_t connectionHandle, uint8_t authReq)
uint16_t GAP_GetParamValue(uint16_t paramID)
bStatus_t GAP_PasscodeUpdate(uint32_t passcode, uint16_t connectionHandle)
Always Use Resolvable Private Address with Random Identity Address.
Definition: gap.h:573
pfnSuppCentAddrRes_t suppCentAddrResCB
Supports Central Address Resolution.
Definition: gap.h:1170
Definition: gap.h:462
uint16_t errors
Total number of CRC errors for the entire connection.
Definition: gap.h:1115
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:1014
Type definitions and macros for BLE stack.
uint32_t numComparison
Numeric Comparison value to be displayed.
Definition: gap.h:1002
osal_event_hdr_t hdr
GAP_MSG_EVENT and status
Definition: gap.h:1096
uint16_t latency
Number of LL latency connection events (0x0000 - 0x03e8)
Definition: gap.h:840
uint8_t opcode
GAP_PAIRING_REQ_EVENT
Definition: gap.h:1097
No data was received during connection event.
Definition: gap.h:778
Public Device Address.
Definition: gap.h:579
smSecurityInfo_t * pDevSecInfo
security information from connected device
Definition: gap.h:1020
uint8_t GAP_NumActiveConnections(void)
Initiating a connection.
Definition: gap.h:789
void(* pfnGapIdleCB_t)()
GAP Idle Callback Function.
Definition: gap.h:1158
Definition: sm.h:215
uint8_t opcode
GAP_SLAVE_REQUESTED_SECURITY_EVENT
Definition: gap.h:1044
Definition: gap.h:434
Definition: gap.h:453
Can be used by the application to set the SRK.
Definition: gap.h:387
OSAL Event Header.
Definition: osal.h:92
Connection event failed because all packets had CRC errors.
Definition: gap.h:776
Gap_ParamIDs_t
Definition: gap.h:399
Always Use Public Address.
Definition: gap.h:568
bStatus_t GAP_UpdateLinkParamReqReply(gapUpdateLinkParamReqReply_t *pParams)
Can be used by the application to set the IRK.
Definition: gap.h:368
uint8_t opcode
GAP_PASSKEY_NEEDED_EVENT
Definition: gap.h:997
Advertiser.
Definition: gap.h:787
bStatus_t GAP_DeviceInit(uint8_t profileRole, uint8_t taskID, GAP_Addr_Modes_t addrMode, uint8_t *pRandomAddr)
Definition: gap.h:408
uint8_t(* pfnGapDevPrivModeCB_t)(GAP_Peer_Addr_Types_t addrType, uint8_t *pAddr)
GAP Device Privacy Mode Callback Function.
Definition: gap.h:1162
uint8_t authState
TRUE if the pairing was authenticated (MITM)
Definition: gap.h:1017
void GAP_Init(uint8_t task_id)
uint8_t opcode
GAP type of command. GAP Event IDs.
Definition: gap.h:824
#define B_ADDR_LEN
Default Public and Random Address Length.
Definition: bcomdef.h:108
uint8_t opcode
GAP_BOND_LOST_EVENT
Definition: gap.h:1132
uint8_t numDataPkts
HC_Total_Num_LE_Data_Packets.
Definition: gap.h:856
Definition: gap.h:1012
Callback Registration Structure.
Definition: gap.h:1168
uint8_t GAP_isPairing(void)
uint8_t authReq
Pairing Request Auth Req field.
Definition: gap.h:1078
uint32_t nextTaskTime
Time to next BLE task (in us). 0xFFFFFFFF if there is no next task.
Definition: gap.h:1119
uint8_t * GAP_GetSRK(void)
uint16_t intervalMax
Maximum value for the connection event (interval. 0x0006 - 0x0C80 * 1.25 ms)
Definition: gap.h:838
pfnGapIdleCB_t gapIdleCB
GAP Idle callback.
Definition: gap.h:1171
uint8_t opcode
GAP_AUTHENTICATION_COMPLETE_EVENT
Definition: gap.h:1015
GAP_ConnEvtPhy_t phy
PHY of connection event.
Definition: gap.h:1110
uint8_t oobDataFlag
Pairing Request OOB Data Flag field.
Definition: gap.h:1077
uint16_t connectionHandle
Connection Handle from controller used to ref the device.
Definition: gap.h:1016
Status_t bStatus_t
BLE Generic Status return.
Definition: bcomdef.h:246
Random or Random ID Address.
Definition: gap.h:594
Accept all parameter update requests.
Definition: gap.h:556
bStatus_t GAP_DeviceInit_noGAPBondMgr(uint8_t profileRole, uint8_t taskID, GAP_Addr_Modes_t addrMode, uint8_t *pRandomAddr)
uint16_t connectionHandle
Connection Handle.
Definition: gap.h:1133
bStatus_t GAP_SetPrivacyMode(GAP_Peer_Addr_Types_t addrType, uint8_t *pAddr, uint8_t mode)
Definition: gap.h:1074
bStatus_t GapConfig_SetParameter(Gap_configParamIds_t param, void *pValue)
bStatus_t GAP_Signable(uint16_t connectionHandle, uint8_t authenticated, smSigningInfo_t *pParams)
Connection event in master role.
Definition: gap.h:795
Always Use Resolvable Private Address with Public Identity Address.
Definition: gap.h:571
bStatus_t GAP_PasskeyUpdate(uint8_t *pPasskey, uint16_t connectionHandle)
gapPairingReq_t pairReq
The Pairing Request fields received.
Definition: gap.h:1099
Scanner.
Definition: gap.h:793
Public or Public ID Address.
Definition: gap.h:593
bStatus_t GAP_Authenticate(gapAuthParams_t *pParams, gapPairingReq_t *pPairReq)
uint32_t signCounter
new Signed Counter
Definition: gap.h:879
uint16_t connectionHandle
Connection Handle.
Definition: gap.h:1045
Unregister a callback
Definition: gap.h:806
GAP_Addr_Modes_t
Address modes to initialize the local device.
Definition: gap.h:566
pfnGapDevPrivModeCB_t gapDevPrivModeCB
GAP Device Privacy Mode callback.
Definition: gap.h:1172
uint16_t connectionHandle
Connection Handle from controller,.
Definition: gap.h:1030
© Copyright 1995-2019, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale