TI BLE5-Stack API Documentation
1.01.01.00
.build.ble5.cc26x2
api-sources
ble-core
source
ti
ble5stack
inc
bcomdef.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
18
#ifndef BCOMDEF_H
19
#define BCOMDEF_H
20
21
#ifdef __cplusplus
22
extern
"C"
23
{
24
#endif
25
26
27
/*********************************************************************
28
* INCLUDES
29
*/
30
31
#include "
comdef.h
"
32
33
/*********************************************************************
34
* CONSTANTS
35
*/
36
38
#if defined ( HOST_CONFIG )
39
// Set the Controller Configuration
40
#if ( HOST_CONFIG == ( CENTRAL_CFG | PERIPHERAL_CFG ) )
41
#define CTRL_CONFIG ( ADV_NCONN_CFG | ADV_CONN_CFG | SCAN_CFG | INIT_CFG )
42
#elif ( HOST_CONFIG == ( CENTRAL_CFG | BROADCASTER_CFG ) )
43
#define CTRL_CONFIG ( ADV_NCONN_CFG | SCAN_CFG | INIT_CFG )
44
#elif ( HOST_CONFIG == ( PERIPHERAL_CFG | OBSERVER_CFG ) )
45
#define CTRL_CONFIG ( ADV_NCONN_CFG | ADV_CONN_CFG | SCAN_CFG )
46
#elif ( HOST_CONFIG == ( BROADCASTER_CFG | OBSERVER_CFG ) )
47
#define CTRL_CONFIG ( ADV_NCONN_CFG | SCAN_CFG )
48
#elif ( HOST_CONFIG == CENTRAL_CFG )
49
#define CTRL_CONFIG ( SCAN_CFG | INIT_CFG )
50
#elif ( HOST_CONFIG == PERIPHERAL_CFG )
51
#define CTRL_CONFIG ( ADV_NCONN_CFG | ADV_CONN_CFG )
52
#elif ( HOST_CONFIG == OBSERVER_CFG )
53
#define CTRL_CONFIG SCAN_CFG
54
#elif ( HOST_CONFIG == BROADCASTER_CFG )
55
#define CTRL_CONFIG ADV_NCONN_CFG
56
#else
57
#if defined ( FLASH_ONLY_BUILD ) || defined ( FLASH_ROM_BUILD )
58
#error "Build Configuration Error: Invalid Host Role!"
59
#endif
60
#endif
61
#else
62
// Controller Sanity Check: Stop build when no configuration is defined.
63
#if !defined( CTRL_CONFIG ) || !( CTRL_CONFIG & ( ADV_NCONN_CFG | \
64
ADV_CONN_CFG | \
65
SCAN_CFG | \
66
INIT_CFG ) )
67
#if defined ( FLASH_ONLY_BUILD ) || defined ( FLASH_ROM_BUILD )
68
#error "Build Configuration Error: At least one Controller build component required!"
69
#endif
70
#endif // no Controller build components defined
71
#endif
72
73
// If BLE_V41_FEATURES is defined, map it to CTRL_V41_CONFIG
74
#if defined ( BLE_V41_FEATURES ) && !defined ( CTRL_V41_CONFIG )
75
#define CTRL_V41_CONFIG ( ( BLE_V41_FEATURES ) & CTRL_V41_MASK )
76
#elif defined ( BLE_V41_FEATURES ) && defined ( CTRL_V41_CONFIG )
77
#error "Build Configuration Error: Cannot define both BLE_V41_FEATURES and CTRL_V41_CONFIG!"
78
#endif // BLE_V41_FEATURES
79
80
// If BLE_V42_FEATURES is defined, map it to CTRL_V42_CONFIG
81
#if defined ( BLE_V42_FEATURES ) && !defined ( CTRL_V42_CONFIG )
82
#define CTRL_V42_CONFIG BLE_V42_FEATURES
83
#elif defined ( BLE_V42_FEATURES ) && defined ( CTRL_V42_CONFIG )
84
#error "Build Configuration Error: Cannot define both BLE_V42_FEATURES and CTRL_V42_CONFIG!"
85
#endif // BLE_V41_FEATURES
86
87
// If BLE_V50_FEATURES is defined, map it to CTRL_V50_CONFIG
88
#if defined ( BLE_V50_FEATURES ) && !defined ( CTRL_V50_CONFIG )
89
#define CTRL_V50_CONFIG BLE_V50_FEATURES
90
#elif defined ( BLE_V50_FEATURES ) && defined ( CTRL_V50_CONFIG )
91
#error "Build Configuration Error: Cannot define both BLE_V50_FEATURES and CTRL_V50_CONFIG!"
92
#endif // BLE_V41_FEATURES
93
94
// If L2CAP Connection Oriented Channels are not configured then do not
95
// configure GATT Service Changed characteristic
96
#if !defined ( BLE_V41_FEATURES ) || !( BLE_V41_FEATURES & L2CAP_COC_CFG )
97
#define GATT_NO_SERVICE_CHANGED
98
#endif // ! BLE_41_FEATURES || ! L2CAP_COC_CFG
99
100
#if defined(CC2540) || defined(CC2541) || defined(CC2541S)
101
#if !defined ( MAX_NUM_BLE_CONNS )
102
#if ( CTRL_CONFIG & INIT_CFG )
103
#define MAX_NUM_BLE_CONNS 3
104
#elif ( !( CTRL_CONFIG & INIT_CFG ) && ( CTRL_CONFIG & ADV_CONN_CFG ) )
105
#define MAX_NUM_BLE_CONNS 1
106
#else // no connection needed
107
#define MAX_NUM_BLE_CONNS 0
108
#endif // CTRL_CONFIG=INIT_CFG
109
#endif // !MAX_NUM_BLE_CONNS
110
#endif // CC2540 | CC2541 | CC2541S
111
113
115
#define B_ADDR_LEN 6
116
118
#define KEYLEN 16
119
121
#define B_CHANNEL_MAP_LEN 5
122
124
#define B_EVENT_MASK_LEN 8
125
127
#define B_LOCAL_NAME_LEN 248
128
130
#define B_MAX_ADV_LEN 31
131
133
#define B_RANDOM_NUM_SIZE 8
134
136
#define B_FEATURE_SUPPORT_LENGTH 8
137
139
#define B_RESOLVING_LIST_SIZE 10
140
142
#define B_APP_DEFAULT_PASSCODE 123456
143
144
#define bleInvalidTaskID INVALID_TASK
145
#define bleNotReady 0x10
146
#define bleAlreadyInRequestedMode 0x11
147
#define bleIncorrectMode 0x12
148
#define bleMemAllocError 0x13
149
#define bleNotConnected 0x14
150
#define bleNoResources 0x15
151
#define blePending 0x16
152
#define bleTimeout 0x17
153
#define bleInvalidRange 0x18
154
#define bleLinkEncrypted 0x19
155
#define bleProcedureComplete 0x1A
156
#define bleInvalidMtuSize 0x1B
157
#define blePairingTimedOut 0x1C
158
#define bleMemFreeError 0x1D
159
#define bleInternalError 0x1E
160
161
// GAP Status Return Values - returned as bStatus_t
162
#define bleGAPUserCanceled 0x30
163
#define bleGAPConnNotAcceptable 0x31
164
#define bleGAPBondRejected 0x32
165
#define bleGAPBufferInUse 0x33
166
#define bleGAPNotFound 0x34
167
#define bleGAPFilteredOut 0x35
168
169
// ATT Status Return Values - returned as bStatus_t
170
#define bleInvalidPDU 0x40
171
#define bleInsufficientAuthen 0x41
172
#define bleInsufficientEncrypt 0x42
173
#define bleInsufficientKeySize 0x43
174
175
// L2CAP Status Return Values - returned as bStatus_t
176
177
#define INVALID_TASK_ID 0xFF
178
179
// Device NV Items - Range 0 - 0x1F
180
#define BLE_NVID_IRK 0x02
181
#define BLE_NVID_CSRK 0x03
182
#define BLE_NVID_ADDR_MODE 0x04
183
#define BLE_LRU_BOND_LIST 0x05
184
#define BLE_NVID_RANDOM_ADDR 0x06
185
186
// Bonding NV Items - Range 0x20 - 0x5F - This allows for 10 bondings
187
#define BLE_NVID_GAP_BOND_START 0x20
188
#define BLE_NVID_GAP_BOND_END 0x5f
189
190
// GATT Configuration NV Items - Range 0x70 - 0x79 - This must match the number of Bonding entries
191
#define BLE_NVID_GATT_CFG_START 0x70
192
#define BLE_NVID_GATT_CFG_END 0x79
193
194
// Customer NV Items - Range 0x80 - 0x8F - This must match the number of Bonding entries
195
#define BLE_NVID_CUST_START 0x80
196
#define BLE_NVID_CUST_END 0x8F
197
198
/*********************************************************************
199
* BLE OSAL GAP GLOBAL Events
200
*/
201
#define GAP_EVENT_SIGN_COUNTER_CHANGED 0x4000
202
203
// GAP - Messages IDs (0xD0 - 0xDF)
204
#define GAP_MSG_EVENT 0xD0
205
206
// SM - Messages IDs (0xC1 - 0xCF)
207
#define SM_NEW_RAND_KEY_EVENT 0xC1
208
#define SM_MSG_EVENT 0xC2
209
210
// GATT - Messages IDs (0xB0 - 0xBF)
211
#define GATT_MSG_EVENT 0xB0
212
#define GATT_SERV_MSG_EVENT 0xB1
213
214
// L2CAP - Messages IDs (0xA0 - 0xAF)
215
#define L2CAP_DATA_EVENT 0xA0
216
#define L2CAP_SIGNAL_EVENT 0xA2
217
218
// HCI - Messages IDs (0x90 - 0x9F)
219
#define HCI_DATA_EVENT 0x90
220
#define HCI_GAP_EVENT_EVENT 0x91
221
#define HCI_SMP_EVENT_EVENT 0x92
222
#define HCI_EXT_CMD_EVENT 0x93
223
#define HCI_SMP_META_EVENT_EVENT 0x94
224
#define HCI_GAP_META_EVENT_EVENT 0x95
225
226
// ICall and Dispatch - Messages IDs (0x80 - 0x8F)
227
#define ICALL_EVENT_EVENT 0x80
228
#define ICALL_CMD_EVENT 0x81
229
#define DISPATCH_CMD_EVENT 0x82
230
231
#ifdef __TI_COMPILER_VERSION__
232
#define PRAGMA_OPTIMIZE_NONE
233
#elif defined(__IAR_SYSTEMS_ICC__)
234
#define PRAGMA_OPTIMIZE_NONE _Pragma("optimize=none")
235
#endif
236
237
/*********************************************************************
238
* TYPEDEFS
239
*/
240
242
typedef
Status_t
bStatus_t
;
243
244
245
/*********************************************************************
246
* System Events
247
*/
248
249
/*********************************************************************
250
* Global System Messages
251
*/
252
253
/*********************************************************************
254
* MACROS
255
*/
256
258
#define TI_BASE_UUID_128( uuid ) 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB0, \
259
0x00, 0x40, 0x51, 0x04, LO_UINT16( uuid ), HI_UINT16( uuid ), 0x00, 0xF0
260
261
/*********************************************************************
262
* GLOBAL VARIABLES
263
*/
264
265
/*********************************************************************
266
* FUNCTIONS
267
*/
268
269
/*********************************************************************
270
*********************************************************************/
271
272
#ifdef __cplusplus
273
}
274
#endif
275
276
#endif
/* BCOMDEF_H */
comdef.h
Common Defines.
bStatus_t
Status_t bStatus_t
BLE Generic Status return.
Definition:
bcomdef.h:242
Copyright 2018, Texas Instruments Incorporated