BlueNRG-MS pack for STM32CubeMX: includes/hci_const.h Source File

STM32CubeMX BlueNRG-MS

BlueNRG-MS pack for STM32CubeMX  V4.4.0
The BlueNRG-MS pack is an additional software for STM32CubeMX.
hci_const.h
Go to the documentation of this file.
1 /******************************************************************************
2 *
3 * File Description
4 * ---------------------
5 * This file defines constants and functions for HCI layer.
6 * See Bluetooth Core v 4.0, Vol. 2, Part E.
7 *
8 *******************************************************************************/
9 
10 #ifndef __HCI_CONST_H_
11 #define __HCI_CONST_H_
12 
13 #include "link_layer.h"
14 #include "hci_tl.h"
15 #include "compiler.h"
16 
17 /* HCI Packet types */
18 #define HCI_COMMAND_PKT 0x01
19 #define HCI_ACLDATA_PKT 0x02
20 #define HCI_SCODATA_PKT 0x03
21 #define HCI_EVENT_PKT 0x04
22 #define HCI_VENDOR_PKT 0xff
23 
24 typedef __packed struct _hci_uart_pckt{
25  uint8_t type;
26  uint8_t data[VARIABLE_SIZE];
28 #define HCI_HDR_SIZE 1
29 
30 typedef __packed struct _hci_command_hdr{
31  uint16_t opcode; /* OCF & OGF */
32  uint8_t plen;
34 #define HCI_COMMAND_HDR_SIZE 3
35 
36 typedef __packed struct _hci_event_pckt{
37  uint8_t evt;
38  uint8_t plen;
39  uint8_t data[VARIABLE_SIZE];
41 #define HCI_EVENT_HDR_SIZE 2
42 
43 typedef __packed struct _hci_acl_hdr{
44  uint16_t handle; /* Handle & Flags(PB, BC) */
45  uint16_t dlen;
47 #define HCI_ACL_HDR_SIZE 4
48 
49 /* Link Control */
50 #define OGF_LINK_CTL 0x01
51 
52 #define OCF_DISCONNECT 0x0006
53 typedef __packed struct _disconnect_cp{
54  uint16_t handle;
55  uint8_t reason;
57 #define DISCONNECT_CP_SIZE 3
58 
59 /* Host Controller and Baseband */
60 #define OGF_HOST_CTL 0x03
61 
62 #define OCF_SET_EVENT_MASK 0x0001
63 #define OCF_RESET 0x0003
64 
65 #define OCF_READ_TRANSMIT_POWER_LEVEL 0x002D
66 typedef __packed struct _read_transmit_power_level_cp{
67  uint16_t handle;
68  uint8_t type;
70 #define READ_TRANSMIT_POWER_LEVEL_CP_SIZE 3
71 typedef __packed struct _read_transmit_power_level_rp{
72  uint8_t status;
73  uint16_t handle;
74  int8_t level;
76 #define READ_TRANSMIT_POWER_LEVEL_RP_SIZE 4
77 
78 #define OCF_SET_CONTROLLER_TO_HOST_FC 0x0031
79 #define OCF_HOST_BUFFER_SIZE 0x0033
80 #define OCF_HOST_NUM_COMP_PKTS 0x0035
81 
82 /* Informational Parameters */
83 #define OGF_INFO_PARAM 0x04
84 
85 #define OCF_READ_LOCAL_VERSION 0x0001
86 typedef __packed struct _read_local_version_rp{
87  uint8_t status;
88  uint8_t hci_version;
89  uint16_t hci_revision;
90  uint8_t lmp_pal_version;
94 #define READ_LOCAL_VERSION_RP_SIZE 9
95 
96 #define OCF_READ_LOCAL_COMMANDS 0x0002
97 #define OCF_READ_LOCAL_FEATURES 0x0003
98 
99 #define OCF_READ_BD_ADDR 0x0009
100 typedef __packed struct _read_bd_addr_rp{
101  uint8_t status;
104 #define READ_BD_ADDR_RP_SIZE 7
105 
106 /* Status params */
107 #define OGF_STATUS_PARAM 0x05
108 
109 #define OCF_READ_RSSI 0x0005
110 typedef __packed struct _read_rssi_cp{
111  uint16_t handle;
113 #define READ_RSSI_CP_SIZE 2
114 typedef __packed struct _read_rssi_rp{
115  uint8_t status;
116  uint16_t handle;
117  int8_t rssi;
119 #define READ_RSSI_RP_SIZE 4
120 
121 
122 /* LE commands */
123 #define OGF_LE_CTL 0x08
124 
125 #define OCF_LE_SET_EVENT_MASK 0x0001
126 typedef __packed struct _le_set_event_mask_cp{
127  uint8_t mask[8];
129 #define LE_SET_EVENT_MASK_CP_SIZE 8
130 
131 #define OCF_LE_READ_BUFFER_SIZE 0x0002
132 typedef __packed struct _le_read_buffer_size_rp{
133  uint8_t status;
134  uint16_t pkt_len;
135  uint8_t max_pkt;
137 #define LE_READ_BUFFER_SIZE_RP_SIZE 4
138 
139 #define OCF_LE_READ_LOCAL_SUPPORTED_FEATURES 0x0003
140 typedef __packed struct _le_read_local_supported_features_rp{
141  uint8_t status;
142  uint8_t features[8];
144 #define LE_READ_LOCAL_SUPPORTED_FEATURES_RP_SIZE 9
145 
146 #define OCF_LE_SET_RANDOM_ADDRESS 0x0005
147 typedef __packed struct _le_set_random_address_cp{
150 #define LE_SET_RANDOM_ADDRESS_CP_SIZE 6
151 
152 #define OCF_LE_SET_ADV_PARAMETERS 0x0006
153 typedef __packed struct _le_set_adv_parameters_cp{
154  uint16_t min_interval;
155  uint16_t max_interval;
156  uint8_t advtype;
160  uint8_t chan_map;
161  uint8_t filter;
163 #define LE_SET_ADV_PARAMETERS_CP_SIZE 15
164 
165 #define OCF_LE_READ_ADV_CHANNEL_TX_POWER 0x0007
166 typedef __packed struct _le_read_adv_channel_tx_power_rp{
167  uint8_t status;
168  int8_t level;
170 #define LE_READ_ADV_CHANNEL_TX_POWER_RP_SIZE 2
171 
172 #define OCF_LE_SET_ADV_DATA 0x0008
173 typedef __packed struct _le_set_adv_data_cp{
174  uint8_t length;
175  uint8_t data[31];
177 #define LE_SET_ADV_DATA_CP_SIZE 32
178 
179 #define OCF_LE_SET_SCAN_RESPONSE_DATA 0x0009
180 typedef __packed struct _le_set_scan_response_data_cp{
181  uint8_t length;
182  uint8_t data[31];
184 #define LE_SET_SCAN_RESPONSE_DATA_CP_SIZE 32
185 
186 #define OCF_LE_SET_ADVERTISE_ENABLE 0x000A
187 typedef __packed struct _le_set_advertise_enable_cp{
188  uint8_t enable;
190 #define LE_SET_ADVERTISE_ENABLE_CP_SIZE 1
191 
192 #define OCF_LE_SET_SCAN_PARAMETERS 0x000B
193 typedef __packed struct _le_set_scan_parameters_cp{
194  uint8_t type;
195  uint16_t interval;
196  uint16_t window;
198  uint8_t filter;
200 #define LE_SET_SCAN_PARAMETERS_CP_SIZE 7
201 
202 #define OCF_LE_SET_SCAN_ENABLE 0x000C
203 typedef __packed struct _le_set_scan_enable_cp{
204  uint8_t enable;
205  uint8_t filter_dup;
207 #define LE_SET_SCAN_ENABLE_CP_SIZE 2
208 
209 #define OCF_LE_CREATE_CONN 0x000D
210 typedef __packed struct _le_create_connection_cp{
211  uint16_t interval;
212  uint16_t window;
217  uint16_t min_interval;
218  uint16_t max_interval;
219  uint16_t latency;
221  uint16_t min_ce_length;
222  uint16_t max_ce_length;
224 #define LE_CREATE_CONN_CP_SIZE 25
225 
226 #define OCF_LE_CREATE_CONN_CANCEL 0x000E
227 
228 #define OCF_LE_READ_WHITE_LIST_SIZE 0x000F
229 typedef __packed struct _le_read_white_list_size_rp{
230  uint8_t status;
231  uint8_t size;
233 #define LE_READ_WHITE_LIST_SIZE_RP_SIZE 2
234 
235 #define OCF_LE_CLEAR_WHITE_LIST 0x0010
236 
237 #define OCF_LE_ADD_DEVICE_TO_WHITE_LIST 0x0011
238 typedef __packed struct _le_add_device_to_white_list_cp{
239  uint8_t bdaddr_type;
242 #define LE_ADD_DEVICE_TO_WHITE_LIST_CP_SIZE 7
243 
244 #define OCF_LE_REMOVE_DEVICE_FROM_WHITE_LIST 0x0012
245 typedef __packed struct _le_remove_device_from_white_list_cp{
246  uint8_t bdaddr_type;
249 #define LE_REMOVE_DEVICE_FROM_WHITE_LIST_CP_SIZE 7
250 
251 #define OCF_LE_CONN_UPDATE 0x0013
252 typedef __packed struct _le_connection_update_cp{
253  uint16_t handle;
254  uint16_t min_interval;
255  uint16_t max_interval;
256  uint16_t latency;
258  uint16_t min_ce_length;
259  uint16_t max_ce_length;
261 #define LE_CONN_UPDATE_CP_SIZE 14
262 
263 #define OCF_LE_SET_HOST_CHANNEL_CLASSIFICATION 0x0014
265  uint8_t map[5];
267 #define LE_SET_HOST_CHANNEL_CLASSIFICATION_CP_SIZE 5
268 
269 #define OCF_LE_READ_CHANNEL_MAP 0x0015
270 typedef __packed struct _le_read_channel_map_cp{
271  uint16_t handle;
273 #define LE_READ_CHANNEL_MAP_CP_SIZE 2
274 
275 typedef __packed struct _le_read_channel_map_rp{
276  uint8_t status;
277  uint16_t handle;
278  uint8_t map[5];
280 #define LE_READ_CHANNEL_MAP_RP_SIZE 8
281 
282 #define OCF_LE_READ_REMOTE_USED_FEATURES 0x0016
283 typedef __packed struct _le_read_remote_used_features_cp{
284  uint16_t handle;
286 #define LE_READ_REMOTE_USED_FEATURES_CP_SIZE 2
287 
288 #define OCF_LE_ENCRYPT 0x0017
289 typedef __packed struct _le_encrypt_cp{
290  uint8_t key[16];
291  uint8_t plaintext[16];
293 #define LE_ENCRYPT_CP_SIZE 32
294 
295 typedef __packed struct _le_encrypt_rp{
296  uint8_t status;
297  uint8_t encdata[16];
299 #define LE_ENCRYPT_RP_SIZE 17
300 
301 #define OCF_LE_RAND 0x0018
302 typedef __packed struct _le_rand_rp{
303  uint8_t status;
304  uint8_t random[8];
306 #define LE_RAND_RP_SIZE 9
307 
308 #define OCF_LE_START_ENCRYPTION 0x0019
309 typedef __packed struct _le_start_encryption_cp{
310  uint16_t handle;
311  uint8_t random[8];
312  uint16_t diversifier;
313  uint8_t key[16];
315 #define LE_START_ENCRYPTION_CP_SIZE 28
316 
317 #define OCF_LE_LTK_REPLY 0x001A
318 typedef __packed struct _le_ltk_reply_cp{
319  uint16_t handle;
320  uint8_t key[16];
322 #define LE_LTK_REPLY_CP_SIZE 18
323 
324 typedef __packed struct _le_ltk_reply_rp{
325  uint8_t status;
326  uint16_t handle;
328 #define LE_LTK_REPLY_RP_SIZE 3
329 
330 #define OCF_LE_LTK_NEG_REPLY 0x001B
331 typedef __packed struct _le_ltk_neg_reply_cp{
332  uint16_t handle;
334 #define LE_LTK_NEG_REPLY_CP_SIZE 2
335 
336 typedef __packed struct _le_ltk_neg_reply_rp{
337  uint8_t status;
338  uint16_t handle;
340 #define LE_LTK_NEG_REPLY_RP_SIZE 3
341 
342 #define OCF_LE_READ_SUPPORTED_STATES 0x001C
343 typedef __packed struct _le_read_supported_states_rp{
344  uint8_t status;
345  uint8_t states[8];
347 #define LE_READ_SUPPORTED_STATES_RP_SIZE 9
348 
349 #define OCF_LE_RECEIVER_TEST 0x001D
350 typedef __packed struct _le_receiver_test_cp{
351  uint8_t frequency;
353 #define LE_RECEIVER_TEST_CP_SIZE 1
354 
355 #define OCF_LE_TRANSMITTER_TEST 0x001E
356 typedef __packed struct _le_transmitter_test_cp{
357  uint8_t frequency;
358  uint8_t length;
359  uint8_t payload;
361 #define LE_TRANSMITTER_TEST_CP_SIZE 3
362 
363 #define OCF_LE_TEST_END 0x001F
364 typedef __packed struct _le_test_end_rp{
365  uint8_t status;
366  uint16_t num_pkts;
368 #define LE_TEST_END_RP_SIZE 3
369 
370 /* Vendor specific commands */
371 #define OGF_VENDOR_CMD 0x3f
372 
373 
374 /*------------- Events -------------*/
375 #define EVT_CONN_COMPLETE 0x03
376 typedef __packed struct _evt_conn_complete{
377  uint8_t status;
378  uint16_t handle;
380  uint8_t link_type;
381  uint8_t encr_mode;
383 #define EVT_CONN_COMPLETE_SIZE 13
384 
385 #define EVT_DISCONN_COMPLETE 0x05
386 typedef __packed struct _evt_disconn_complete{
387  uint8_t status;
388  uint16_t handle;
389  uint8_t reason;
391 #define EVT_DISCONN_COMPLETE_SIZE 4
392 
393 #define EVT_ENCRYPT_CHANGE 0x08
394 typedef __packed struct _evt_encrypt_change{
395  uint8_t status;
396  uint16_t handle;
397  uint8_t encrypt;
399 #define EVT_ENCRYPT_CHANGE_SIZE 5
400 
401 #define EVT_READ_REMOTE_VERSION_COMPLETE 0x0C
402 
403 #define EVT_CMD_COMPLETE 0x0E
404 typedef __packed struct _evt_cmd_complete{
405  uint8_t ncmd;
406  uint16_t opcode;
408 #define EVT_CMD_COMPLETE_SIZE 3
409 
410 #define EVT_CMD_STATUS 0x0F
411 typedef __packed struct _evt_cmd_status{
412  uint8_t status;
413  uint8_t ncmd;
414  uint16_t opcode;
416 #define EVT_CMD_STATUS_SIZE 4
417 
418 #define EVT_HARDWARE_ERROR 0x10
419 typedef __packed struct _evt_hardware_error{
420  uint8_t code;
422 #define EVT_HARDWARE_ERROR_SIZE 1
423 
424 #define EVT_NUM_COMP_PKTS 0x13
425 typedef __packed struct _evt_num_comp_pkts{
426  uint8_t num_hndl;
427  /* variable length part */
429 #define EVT_NUM_COMP_PKTS_SIZE 1
430 
431 /* variable length part of evt_num_comp_pkts. */
432 typedef __packed struct _evt_num_comp_pkts_param{
433  uint16_t hndl;
434  uint16_t num_comp_pkts;
436 #define EVT_NUM_COMP_PKTS_PARAM_SIZE 1
437 
438 #define EVT_DATA_BUFFER_OVERFLOW 0x1A
439 typedef __packed struct _evt_data_buffer_overflow{
440  uint8_t link_type;
442 #define EVT_DATA_BUFFER_OVERFLOW_SIZE 1
443 
444 #define EVT_ENCRYPTION_KEY_REFRESH_COMPLETE 0x30
445 typedef __packed struct _evt_encryption_key_refresh_complete{
446  uint8_t status;
447  uint16_t handle;
449 #define EVT_ENCRYPTION_KEY_REFRESH_COMPLETE_SIZE 3
450 
451 #define EVT_LE_META_EVENT 0x3E
452 typedef __packed struct _evt_le_meta_event{
453  uint8_t subevent;
454  uint8_t data[VARIABLE_SIZE];
456 #define EVT_LE_META_EVENT_SIZE 1
457 
458 #define EVT_LE_CONN_COMPLETE 0x01
459 typedef __packed struct _evt_le_connection_complete{
460  uint8_t status;
461  uint16_t handle;
462  uint8_t role;
465  uint16_t interval;
466  uint16_t latency;
470 #define EVT_LE_CONN_COMPLETE_SIZE 18
471 
472 #define EVT_LE_ADVERTISING_REPORT 0x02
473 typedef __packed struct _le_advertising_info{
474  uint8_t evt_type;
475  uint8_t bdaddr_type;
477  uint8_t data_length;
478  uint8_t data_RSSI[VARIABLE_SIZE]; // RSSI is last octect (signed integer).
480 #define LE_ADVERTISING_INFO_SIZE 9
481 
482 #define EVT_LE_CONN_UPDATE_COMPLETE 0x03
483 typedef __packed struct _evt_le_connection_update_complete{
484  uint8_t status;
485  uint16_t handle;
486  uint16_t interval;
487  uint16_t latency;
490 #define EVT_LE_CONN_UPDATE_COMPLETE_SIZE 9
491 
492 #define EVT_LE_READ_REMOTE_USED_FEATURES_COMPLETE 0x04
494  uint8_t status;
495  uint16_t handle;
496  uint8_t features[8];
498 #define EVT_LE_READ_REMOTE_USED_FEATURES_COMPLETE_SIZE 11
499 
500 #define EVT_LE_LTK_REQUEST 0x05
501 typedef __packed struct _evt_le_long_term_key_request{
502  uint16_t handle;
503  uint8_t random[8];
504  uint16_t ediv;
506 #define EVT_LE_LTK_REQUEST_SIZE 12
507 
512 #define EVT_VENDOR 0xFF
513 
514 
515 /* Command opcode pack/unpack */
516 #define cmd_opcode_pack(ogf, ocf) (uint16_t)((ocf & 0x03ff)|(ogf << 10))
517 #define cmd_opcode_ogf(op) (op >> 10)
518 #define cmd_opcode_ocf(op) (op & 0x03ff)
519 
520 typedef enum {
531 } hci_state;
532 
533 typedef void (*hci_packet_complete_callback)(void *pckt, uint16_t len);
534 
535 #endif /* __HCI_CONST_H_ */
uint16_t latency
Definition: hci_const.h:256
Definition: hci_const.h:289
__packed struct _le_connection_update_cp le_connection_update_cp
uint16_t opcode
Definition: hci_const.h:406
uint8_t status
Definition: hci_const.h:230
__packed struct _disconnect_cp disconnect_cp
uint8_t length
Definition: hci_const.h:181
uint8_t plen
Definition: hci_const.h:38
__packed struct _evt_data_buffer_overflow evt_data_buffer_overflow
uint8_t type
Definition: hci_const.h:194
uint16_t min_ce_length
Definition: hci_const.h:258
Definition: hci_const.h:166
Definition: hci_const.h:364
__packed struct _le_read_channel_map_cp le_read_channel_map_cp
tBDAddr peer_bdaddr
Definition: hci_const.h:215
uint16_t num_comp_pkts
Definition: hci_const.h:434
uint16_t hndl
Definition: hci_const.h:433
__packed struct _le_rand_rp le_rand_rp
Definition: hci_const.h:318
__packed struct _le_create_connection_cp le_create_connection_cp
Definition: hci_const.h:376
__packed struct _le_set_adv_data_cp le_set_adv_data_cp
__packed struct _le_add_device_to_white_list_cp le_add_device_to_white_list_cp
__packed struct _le_set_random_address_cp le_set_random_address_cp
Definition: hci_const.h:336
uint8_t status
Definition: hci_const.h:344
__packed struct _evt_cmd_complete evt_cmd_complete
tBDAddr direct_bdaddr
Definition: hci_const.h:159
uint16_t diversifier
Definition: hci_const.h:312
Definition: hci_const.h:173
uint16_t window
Definition: hci_const.h:196
uint8_t max_pkt
Definition: hci_const.h:135
Definition: hci_const.h:71
__packed struct _le_read_supported_states_rp le_read_supported_states_rp
uint8_t type
Definition: hci_const.h:68
uint8_t status
Definition: hci_const.h:460
int8_t level
Definition: hci_const.h:168
uint16_t handle
Definition: hci_const.h:310
uint16_t interval
Definition: hci_const.h:465
Definition: hci_const.h:525
Definition: hci_const.h:473
uint8_t status
Definition: hci_const.h:296
Definition: hci_const.h:43
uint16_t latency
Definition: hci_const.h:466
__packed struct _le_read_white_list_size_rp le_read_white_list_size_rp
uint8_t advtype
Definition: hci_const.h:156
uint16_t min_interval
Definition: hci_const.h:154
__packed struct _evt_conn_complete evt_conn_complete
uint8_t master_clock_accuracy
Definition: hci_const.h:468
uint16_t interval
Definition: hci_const.h:195
void(* hci_packet_complete_callback)(void *pckt, uint16_t len)
Definition: hci_const.h:533
__packed struct _evt_le_connection_update_complete evt_le_connection_update_complete
uint8_t enable
Definition: hci_const.h:204
uint16_t max_interval
Definition: hci_const.h:255
uint8_t status
Definition: hci_const.h:484
Definition: hci_const.h:356
__packed struct _le_remove_device_from_white_list_cp le_remove_device_from_white_list_cp
uint16_t latency
Definition: hci_const.h:487
Definition: hci_const.h:275
Definition: hci_const.h:238
uint8_t status
Definition: hci_const.h:325
uint8_t filter
Definition: hci_const.h:161
uint16_t handle
Definition: hci_const.h:378
tBDAddr bdaddr
Definition: hci_const.h:379
__packed struct _le_read_remote_used_features_cp le_read_remote_used_features_cp
Definition: hci_const.h:439
#define VARIABLE_SIZE
Definition: bluenrg_types.h:31
uint8_t num_hndl
Definition: hci_const.h:426
uint8_t own_bdaddr_type
Definition: hci_const.h:197
uint8_t peer_bdaddr_type
Definition: hci_const.h:214
uint16_t pkt_len
Definition: hci_const.h:134
uint16_t lmp_pal_subversion
Definition: hci_const.h:92
uint16_t supervision_timeout
Definition: hci_const.h:488
uint8_t length
Definition: hci_const.h:174
Definition: hci_const.h:529
__packed struct _le_set_advertise_enable_cp le_set_advertise_enable_cp
uint16_t supervision_timeout
Definition: hci_const.h:467
uint16_t min_interval
Definition: hci_const.h:217
uint16_t handle
Definition: hci_const.h:502
uint8_t frequency
Definition: hci_const.h:351
Definition: hci_const.h:524
Definition: hci_const.h:523
uint16_t handle
Definition: hci_const.h:447
Definition: hci_const.h:309
uint8_t evt_type
Definition: hci_const.h:474
__packed struct _le_advertising_info le_advertising_info
__packed struct _evt_cmd_status evt_cmd_status
uint8_t own_bdaddr_type
Definition: hci_const.h:157
uint16_t latency
Definition: hci_const.h:219
__packed struct _read_transmit_power_level_rp read_transmit_power_level_rp
uint8_t status
Definition: hci_const.h:387
__packed struct _evt_num_comp_pkts evt_num_comp_pkts
uint16_t handle
Definition: hci_const.h:54
__packed struct _evt_le_read_remote_used_features_complete evt_le_read_remote_used_features_complete
uint16_t opcode
Definition: hci_const.h:31
uint8_t status
Definition: hci_const.h:133
uint8_t ncmd
Definition: hci_const.h:405
__packed struct _le_ltk_reply_cp le_ltk_reply_cp
Definition: hci_const.h:527
Definition: hci_const.h:110
uint8_t status
Definition: hci_const.h:446
uint8_t tBDAddr[6]
Definition: link_layer.h:51
uint8_t status
Definition: hci_const.h:412
__packed struct _le_read_channel_map_rp le_read_channel_map_rp
uint16_t handle
Definition: hci_const.h:485
uint16_t interval
Definition: hci_const.h:486
uint16_t num_pkts
Definition: hci_const.h:366
uint16_t handle
Definition: hci_const.h:326
uint8_t status
Definition: hci_const.h:115
Definition: hci_const.h:432
__packed struct _hci_uart_pckt hci_uart_pckt
tBDAddr peer_bdaddr
Definition: hci_const.h:464
Definition: hci_const.h:530
uint16_t min_interval
Definition: hci_const.h:254
__packed struct _le_set_scan_enable_cp le_set_scan_enable_cp
uint8_t link_type
Definition: hci_const.h:380
uint8_t status
Definition: hci_const.h:337
uint16_t ediv
Definition: hci_const.h:504
Definition: hci_const.h:350
__packed struct _le_set_host_channel_classification_cp le_set_host_channel_classification_cp
Definition: hci_const.h:404
uint16_t handle
Definition: hci_const.h:284
uint8_t status
Definition: hci_const.h:395
__packed struct _evt_le_meta_event evt_le_meta_event
uint8_t hci_version
Definition: hci_const.h:88
uint8_t status
Definition: hci_const.h:276
__packed struct _le_read_adv_channel_tx_power_rp le_read_adv_channel_tx_power_rp
Definition: hci_const.h:126
Definition: hci_const.h:445
Definition: hci_const.h:295
uint16_t handle
Definition: hci_const.h:44
uint8_t status
Definition: hci_const.h:377
Definition: hci_const.h:132
int8_t level
Definition: hci_const.h:74
uint16_t opcode
Definition: hci_const.h:414
uint8_t reason
Definition: hci_const.h:55
Definition: hci_const.h:147
__packed struct _le_ltk_neg_reply_rp le_ltk_neg_reply_rp
uint8_t peer_bdaddr_type
Definition: hci_const.h:463
__packed struct _read_local_version_rp read_local_version_rp
uint16_t manufacturer_name
Definition: hci_const.h:91
uint8_t chan_map
Definition: hci_const.h:160
Definition: hci_const.h:501
__packed struct _le_read_local_supported_features_rp le_read_local_supported_features_rp
uint16_t handle
Definition: hci_const.h:388
Definition: hci_const.h:324
uint16_t interval
Definition: hci_const.h:211
Definition: hci_const.h:270
uint16_t hci_revision
Definition: hci_const.h:89
__packed struct _le_test_end_rp le_test_end_rp
Definition: hci_const.h:483
Definition: hci_const.h:252
Definition: hci_const.h:331
__packed struct _hci_acl_hdr hci_acl_hdr
uint8_t filter
Definition: hci_const.h:198
uint16_t window
Definition: hci_const.h:212
__packed struct _le_ltk_neg_reply_cp le_ltk_neg_reply_cp
Definition: hci_const.h:66
uint16_t handle
Definition: hci_const.h:277
Definition: hci_const.h:386
uint8_t type
Definition: hci_const.h:25
uint16_t supervision_timeout
Definition: hci_const.h:220
uint8_t plen
Definition: hci_const.h:32
Definition: hci_const.h:193
uint8_t status
Definition: hci_const.h:167
Definition: hci_const.h:245
uint16_t handle
Definition: hci_const.h:73
uint16_t handle
Definition: hci_const.h:271
tBDAddr bdaddr
Definition: hci_const.h:102
uint8_t evt
Definition: hci_const.h:37
Definition: hci_const.h:394
Definition: hci_const.h:140
uint16_t handle
Definition: hci_const.h:253
Definition: hci_const.h:459
__packed struct _read_rssi_rp read_rssi_rp
uint16_t handle
Definition: hci_const.h:461
Definition: hci_const.h:210
Definition: hci_const.h:343
uint8_t direct_bdaddr_type
Definition: hci_const.h:158
uint8_t status
Definition: hci_const.h:365
__packed struct _le_receiver_test_cp le_receiver_test_cp
uint16_t supervision_timeout
Definition: hci_const.h:257
uint8_t frequency
Definition: hci_const.h:357
uint16_t handle
Definition: hci_const.h:495
uint8_t status
Definition: hci_const.h:303
__packed struct _evt_hardware_error evt_hardware_error
uint8_t initiator_filter
Definition: hci_const.h:213
__packed struct _evt_encrypt_change evt_encrypt_change
uint16_t handle
Definition: hci_const.h:338
uint8_t role
Definition: hci_const.h:462
__packed struct _evt_num_comp_pkts_param evt_num_comp_pkts_param
__packed struct _hci_event_pckt hci_event_pckt
__packed struct _le_set_adv_parameters_cp le_set_adv_parameters_cp
__packed struct _le_read_buffer_size_rp le_read_buffer_size_rp
__packed struct _evt_le_connection_complete evt_le_connection_complete
uint8_t length
Definition: hci_const.h:358
uint16_t handle
Definition: hci_const.h:116
Definition: hci_const.h:521
__packed struct _evt_le_long_term_key_request evt_le_long_term_key_request
Definition: hci_const.h:24
Definition: hci_const.h:411
uint8_t status
Definition: hci_const.h:141
uint8_t status
Definition: hci_const.h:494
uint8_t enable
Definition: hci_const.h:188
Definition: hci_const.h:283
Definition: hci_const.h:264
uint8_t status
Definition: hci_const.h:87
#define PACKED
Definition: bluenrg_types.h:63
Definition: hci_const.h:452
__packed struct _le_set_event_mask_cp le_set_event_mask_cp
uint16_t max_ce_length
Definition: hci_const.h:259
Definition: hci_const.h:30
uint8_t bdaddr_type
Definition: hci_const.h:239
Definition: hci_const.h:302
uint8_t status
Definition: hci_const.h:101
Definition: hci_const.h:100
uint8_t data_length
Definition: hci_const.h:477
uint8_t reason
Definition: hci_const.h:389
Definition: hci_const.h:187
uint16_t handle
Definition: hci_const.h:332
__packed struct _le_encrypt_cp le_encrypt_cp
Definition: hci_const.h:114
Definition: hci_const.h:522
Definition: hci_const.h:153
uint16_t handle
Definition: hci_const.h:319
__packed struct _evt_disconn_complete evt_disconn_complete
uint16_t dlen
Definition: hci_const.h:45
Definition: hci_const.h:425
__packed struct _le_set_scan_parameters_cp le_set_scan_parameters_cp
uint8_t code
Definition: hci_const.h:420
Definition: hci_const.h:36
Definition: hci_const.h:53
tBDAddr bdaddr
Definition: hci_const.h:148
tBDAddr bdaddr
Definition: hci_const.h:247
uint8_t filter_dup
Definition: hci_const.h:205
uint16_t handle
Definition: hci_const.h:67
__packed struct _hci_command_hdr hci_command_hdr
uint16_t max_ce_length
Definition: hci_const.h:222
uint8_t own_bdaddr_type
Definition: hci_const.h:216
Definition: hci_const.h:528
__packed struct _read_rssi_cp read_rssi_cp
uint8_t payload
Definition: hci_const.h:359
hci_state
Definition: hci_const.h:520
__packed struct _read_transmit_power_level_cp read_transmit_power_level_cp
Definition: hci_const.h:526
uint16_t max_interval
Definition: hci_const.h:155
__packed struct _read_bd_addr_rp read_bd_addr_rp
uint8_t size
Definition: hci_const.h:231
uint16_t handle
Definition: hci_const.h:396
__packed struct _le_transmitter_test_cp le_transmitter_test_cp
uint16_t min_ce_length
Definition: hci_const.h:221
tBDAddr bdaddr
Definition: hci_const.h:476
uint8_t subevent
Definition: hci_const.h:453
uint16_t max_interval
Definition: hci_const.h:218
int8_t rssi
Definition: hci_const.h:117
uint16_t handle
Definition: hci_const.h:111
uint8_t bdaddr_type
Definition: hci_const.h:475
uint8_t status
Definition: hci_const.h:72
uint8_t ncmd
Definition: hci_const.h:413
Definition: hci_const.h:86
uint8_t lmp_pal_version
Definition: hci_const.h:90
tBDAddr bdaddr
Definition: hci_const.h:240
__packed struct _le_encrypt_rp le_encrypt_rp
uint8_t bdaddr_type
Definition: hci_const.h:246
Definition: hci_const.h:229
uint8_t encrypt
Definition: hci_const.h:397
__packed struct _le_set_scan_response_data_cp le_set_scan_response_data_cp
__packed struct _le_ltk_reply_rp le_ltk_reply_rp
Definition: hci_const.h:419
Definition: hci_const.h:203
uint8_t encr_mode
Definition: hci_const.h:381
uint8_t link_type
Definition: hci_const.h:440
__packed struct _evt_encryption_key_refresh_complete evt_encryption_key_refresh_complete
uint8_t data[VARIABLE_SIZE]
Definition: hci_const.h:26
__packed struct _le_start_encryption_cp le_start_encryption_cp
Definition: hci_const.h:180
Generated on Mon Apr 15 2019 18:10:39 for BlueNRG-MS pack for STM32CubeMX by   doxygen 1.8.13