1 /****************************************************************************** 2 * @file ble_types.h 3 * @author MCD Application Team 4 * @date 27 May 2019 5 * @brief Auto-generated file: do not edit! 6 ****************************************************************************** 7 * @attention 8 * 9 * <h2><center>© Copyright (c) 2019 STMicroelectronics. 10 * All rights reserved.</center></h2> 11 * 12 * This software component is licensed by ST under Ultimate Liberty license 13 * SLA0044, the "License"; You may not use this file except in compliance with 14 * the License. You may obtain a copy of the License at: 15 * www.st.com/SLA0044 16 * 17 ****************************************************************************** 18 */ 19 20 #ifndef BLE_TYPES_H__ 21 #define BLE_TYPES_H__ 22 23 #include <stdint.h> 24 #include "compiler.h" 25 #include "ble_const.h" 26 27 typedef uint8_t tBleStatus; 28 29 /** Documentation for C struct Host_Nb_Of_Completed_Pkt_Pair_t */ 30 typedef PACKED(struct) 31 { 32 /** Connection_Handle[i] 33 * Values: 34 - 0x0000 ... 0x0EFF 35 */ 36 uint16_t Connection_Handle; 37 /** The number of HCI Data Packets [i] that have been completed for the associated 38 Connection_Handle since the previous time the event was 39 returned. 40 * Values: 41 - 0x0000 ... 0xFFFF 42 */ 43 uint16_t Host_Num_Of_Completed_Packets; 44 } Host_Nb_Of_Completed_Pkt_Pair_t; 45 46 47 /** Documentation for C struct Whitelist_Entry_t */ 48 typedef PACKED(struct) 49 { 50 /** Address type. 51 * Values: 52 - 0x00: Public Device Address 53 - 0x01: Random Device Address 54 */ 55 uint8_t Peer_Address_Type; 56 /** Public Device Address or Random Device Address of the device 57 to be added to the white list. 58 */ 59 uint8_t Peer_Address[6]; 60 } Whitelist_Entry_t; 61 62 63 /** Documentation for C struct Bonded_Device_Entry_t */ 64 typedef PACKED(struct) 65 { 66 /** Address type. 67 * Values: 68 - 0x00: Public Device Address 69 - 0x01: Random Device Address 70 */ 71 uint8_t Address_Type; 72 /** Public Device Address or Random Device Address of the device 73 to be added to the white list. 74 */ 75 uint8_t Address[6]; 76 } Bonded_Device_Entry_t; 77 78 79 /** Documentation for C struct Whitelist_Identity_Entry_t */ 80 typedef PACKED(struct) 81 { 82 /** Identity address type. 83 * Values: 84 - 0x00: Public Identity Address 85 - 0x01: Random (static) Identity Address 86 */ 87 uint8_t Peer_Identity_Address_Type; 88 /** Public or Random (static) Identity address of the peer device 89 */ 90 uint8_t Peer_Identity_Address[6]; 91 } Whitelist_Identity_Entry_t; 92 93 94 /** Documentation for C union Service_UUID_t */ 95 typedef PACKED(union) 96 { 97 /** 16-bit UUID 98 */ 99 uint16_t Service_UUID_16; 100 /** 128-bit UUID 101 */ 102 uint8_t Service_UUID_128[16]; 103 } Service_UUID_t; 104 105 106 /** Documentation for C union Include_UUID_t */ 107 typedef PACKED(union) 108 { 109 /** 16-bit UUID 110 */ 111 uint16_t Include_UUID_16; 112 /** 128-bit UUID 113 */ 114 uint8_t Include_UUID_128[16]; 115 } Include_UUID_t; 116 117 118 /** Documentation for C union Char_UUID_t */ 119 typedef PACKED(union) 120 { 121 /** 16-bit UUID 122 */ 123 uint16_t Char_UUID_16; 124 /** 128-bit UUID 125 */ 126 uint8_t Char_UUID_128[16]; 127 } Char_UUID_t; 128 129 130 /** Documentation for C union Char_Desc_Uuid_t */ 131 typedef PACKED(union) 132 { 133 /** 16-bit UUID 134 */ 135 uint16_t Char_UUID_16; 136 /** 128-bit UUID 137 */ 138 uint8_t Char_UUID_128[16]; 139 } Char_Desc_Uuid_t; 140 141 142 /** Documentation for C union UUID_t */ 143 typedef PACKED(union) 144 { 145 /** 16-bit UUID 146 */ 147 uint16_t UUID_16; 148 /** 128-bit UUID 149 */ 150 uint8_t UUID_128[16]; 151 } UUID_t; 152 153 154 /** Documentation for C struct Handle_Entry_t */ 155 typedef PACKED(struct) 156 { 157 /** The handles for which the attribute value has to be read 158 */ 159 uint16_t Handle; 160 } Handle_Entry_t; 161 162 163 /** Documentation for C struct Handle_Packets_Pair_Entry_t */ 164 typedef PACKED(struct) 165 { 166 /** Connection handle 167 */ 168 uint16_t Connection_Handle; 169 /** The number of HCI Data Packets that have been completed (transmitted 170 or flushed) for the associated Connection_Handle since the previous time 171 the event was returned. 172 */ 173 uint16_t HC_Num_Of_Completed_Packets; 174 } Handle_Packets_Pair_Entry_t; 175 176 177 /** Documentation for C struct Attribute_Group_Handle_Pair_t */ 178 typedef PACKED(struct) 179 { 180 /** Found Attribute handle 181 */ 182 uint16_t Found_Attribute_Handle; 183 /** Group End handle 184 */ 185 uint16_t Group_End_Handle; 186 } Attribute_Group_Handle_Pair_t; 187 188 189 /** Documentation for C struct Handle_Item_t */ 190 typedef PACKED(struct) 191 { 192 /** 193 */ 194 uint16_t Handle; 195 } Handle_Item_t; 196 197 198 199 /** Documentation for C struct Advertising_Report_t */ 200 typedef PACKED(struct) 201 { 202 /** Type of advertising report event: 203 ADV_IND: Connectable undirected advertising', 204 ADV_DIRECT_IND: Connectable directed advertising, 205 ADV_SCAN_IND: Scannable undirected advertising, 206 ADV_NONCONN_IND: Non connectable undirected advertising, 207 SCAN_RSP: Scan response. 208 * Values: 209 - 0x00: ADV_IND 210 - 0x01: ADV_DIRECT_IND 211 - 0x02: ADV_SCAN_IND 212 - 0x03: ADV_NONCONN_IND 213 - 0x04: SCAN_RSP 214 */ 215 uint8_t Event_Type; 216 /** 0x00 Public Device Address 217 0x01 Random Device Address 218 0x02 Public Identity Address (Corresponds to Resolved Private Address) 219 0x03 Random (Static) Identity Address (Corresponds to Resolved Private Address) 220 * Values: 221 - 0x00: Public Device Address 222 - 0x01: Random Device Address 223 - 0x02: Public Identity Address 224 - 0x03: Random (Static) Identity Address 225 */ 226 uint8_t Address_Type; 227 /** Public Device Address or Random Device Address of the device 228 to be connected. 229 */ 230 uint8_t Address[6]; 231 /** Length of the Data[i] field for each device which responded. 232 * Values: 233 - 0 ... 31 234 */ 235 uint8_t Length_Data; 236 /** Length_Data[i] octets of advertising or scan response data formatted 237 as defined in [Vol 3] Part C, Section 8. 238 */ 239 uint8_t *Data; 240 /** N Size: 1 Octet (signed integer) 241 Units: dBm 242 * Values: 243 - 127: RSSI not available 244 - -127 ... 20 245 */ 246 uint8_t RSSI; 247 } Advertising_Report_t; 248 249 250 /** Documentation for C struct Direct_Advertising_Report_t */ 251 typedef PACKED(struct) 252 { 253 /** Advertising type 254 * Values: 255 - 0x01: Connectable directed advertising (ADV_DIRECT_IND) 256 */ 257 uint8_t Event_Type; 258 /** 0x00 Public Device Address 259 0x01 Random Device Address 260 0x02 Public Identity Address (Corresponds to Resolved Private Address) 261 0x03 Random (Static) Identity Address (Corresponds to Resolved Private Address) 262 * Values: 263 - 0x00: Public Device Address 264 - 0x01: Random Device Address 265 - 0x02: Public Identity Address 266 - 0x03: Random (Static) Identity Address 267 */ 268 uint8_t Address_Type; 269 /** Public Device Address, Random Device Address, Public Identity 270 Address or Random (static) Identity Address of the advertising device. 271 */ 272 uint8_t Address[6]; 273 /** 0x01 Random Device Address 274 * Values: 275 - 0x01: Random Device Address 276 */ 277 uint8_t Direct_Address_Type; 278 /** Random Device Address 279 */ 280 uint8_t Direct_Address[6]; 281 /** N Size: 1 Octet (signed integer) 282 Units: dBm 283 * Values: 284 - 127: RSSI not available 285 - -127 ... 20 286 */ 287 uint8_t RSSI; 288 } Direct_Advertising_Report_t; 289 290 typedef PACKED(struct) 291 { 292 uint16_t Connection_Handle; 293 uint8_t Reason; 294 } hci_disconnect_cp0; 295 296 typedef PACKED(struct) 297 { 298 uint8_t Status; 299 } hci_disconnect_rp0; 300 301 typedef PACKED(struct) 302 { 303 uint16_t Connection_Handle; 304 } hci_read_remote_version_information_cp0; 305 306 typedef PACKED(struct) 307 { 308 uint8_t Status; 309 } hci_read_remote_version_information_rp0; 310 311 typedef PACKED(struct) 312 { 313 uint8_t Event_Mask[8]; 314 } hci_set_event_mask_cp0; 315 316 typedef PACKED(struct) 317 { 318 uint8_t Status; 319 } hci_set_event_mask_rp0; 320 321 typedef PACKED(struct) 322 { 323 uint8_t Status; 324 } hci_reset_rp0; 325 326 typedef PACKED(struct) 327 { 328 uint16_t Connection_Handle; 329 uint8_t Type; 330 } hci_read_transmit_power_level_cp0; 331 332 typedef PACKED(struct) 333 { 334 uint8_t Status; 335 uint16_t Connection_Handle; 336 uint8_t Transmit_Power_Level; 337 } hci_read_transmit_power_level_rp0; 338 339 typedef PACKED(struct) 340 { 341 uint8_t Flow_Control_Enable; 342 } hci_set_controller_to_host_flow_control_cp0; 343 344 typedef PACKED(struct) 345 { 346 uint8_t Status; 347 } hci_set_controller_to_host_flow_control_rp0; 348 349 typedef PACKED(struct) 350 { 351 uint16_t Host_ACL_Data_Packet_Length; 352 uint8_t Host_Synchronous_Data_Packet_Length; 353 uint16_t Host_Total_Num_ACL_Data_Packets; 354 uint16_t Host_Total_Num_Synchronous_Data_Packets; 355 } hci_host_buffer_size_cp0; 356 357 typedef PACKED(struct) 358 { 359 uint8_t Status; 360 } hci_host_buffer_size_rp0; 361 362 typedef PACKED(struct) 363 { 364 uint8_t Number_Of_Handles; 365 Host_Nb_Of_Completed_Pkt_Pair_t Host_Nb_Of_Completed_Pkt_Pair[(BLE_CMD_MAX_PARAM_LEN - 1)/sizeof(Host_Nb_Of_Completed_Pkt_Pair_t)]; 366 } hci_host_number_of_completed_packets_cp0; 367 368 typedef PACKED(struct) 369 { 370 uint8_t Status; 371 } hci_host_number_of_completed_packets_rp0; 372 373 typedef PACKED(struct) 374 { 375 uint8_t Status; 376 uint8_t HCI_Version; 377 uint16_t HCI_Revision; 378 uint8_t LMP_PAL_Version; 379 uint16_t Manufacturer_Name; 380 uint16_t LMP_PAL_Subversion; 381 } hci_read_local_version_information_rp0; 382 383 typedef PACKED(struct) 384 { 385 uint8_t Status; 386 uint8_t Supported_Commands[64]; 387 } hci_read_local_supported_commands_rp0; 388 389 typedef PACKED(struct) 390 { 391 uint8_t Status; 392 uint8_t LMP_Features[8]; 393 } hci_read_local_supported_features_rp0; 394 395 typedef PACKED(struct) 396 { 397 uint8_t Status; 398 uint8_t BD_ADDR[6]; 399 } hci_read_bd_addr_rp0; 400 401 typedef PACKED(struct) 402 { 403 uint16_t Connection_Handle; 404 } hci_read_rssi_cp0; 405 406 typedef PACKED(struct) 407 { 408 uint8_t Status; 409 uint16_t Connection_Handle; 410 uint8_t RSSI; 411 } hci_read_rssi_rp0; 412 413 typedef PACKED(struct) 414 { 415 uint8_t LE_Event_Mask[8]; 416 } hci_le_set_event_mask_cp0; 417 418 typedef PACKED(struct) 419 { 420 uint8_t Status; 421 } hci_le_set_event_mask_rp0; 422 423 typedef PACKED(struct) 424 { 425 uint8_t Status; 426 uint16_t HC_LE_ACL_Data_Packet_Length; 427 uint8_t HC_Total_Num_LE_ACL_Data_Packets; 428 } hci_le_read_buffer_size_rp0; 429 430 typedef PACKED(struct) 431 { 432 uint8_t Status; 433 uint8_t LE_Features[8]; 434 } hci_le_read_local_supported_features_rp0; 435 436 typedef PACKED(struct) 437 { 438 uint8_t Random_Address[6]; 439 } hci_le_set_random_address_cp0; 440 441 typedef PACKED(struct) 442 { 443 uint8_t Status; 444 } hci_le_set_random_address_rp0; 445 446 typedef PACKED(struct) 447 { 448 uint16_t Advertising_Interval_Min; 449 uint16_t Advertising_Interval_Max; 450 uint8_t Advertising_Type; 451 uint8_t Own_Address_Type; 452 uint8_t Peer_Address_Type; 453 uint8_t Peer_Address[6]; 454 uint8_t Advertising_Channel_Map; 455 uint8_t Advertising_Filter_Policy; 456 } hci_le_set_advertising_parameters_cp0; 457 458 typedef PACKED(struct) 459 { 460 uint8_t Status; 461 } hci_le_set_advertising_parameters_rp0; 462 463 typedef PACKED(struct) 464 { 465 uint8_t Status; 466 uint8_t Transmit_Power_Level; 467 } hci_le_read_advertising_channel_tx_power_rp0; 468 469 typedef PACKED(struct) 470 { 471 uint8_t Advertising_Data_Length; 472 uint8_t Advertising_Data[31]; 473 } hci_le_set_advertising_data_cp0; 474 475 typedef PACKED(struct) 476 { 477 uint8_t Status; 478 } hci_le_set_advertising_data_rp0; 479 480 typedef PACKED(struct) 481 { 482 uint8_t Scan_Response_Data_Length; 483 uint8_t Scan_Response_Data[31]; 484 } hci_le_set_scan_response_data_cp0; 485 486 typedef PACKED(struct) 487 { 488 uint8_t Status; 489 } hci_le_set_scan_response_data_rp0; 490 491 typedef PACKED(struct) 492 { 493 uint8_t Advertising_Enable; 494 } hci_le_set_advertise_enable_cp0; 495 496 typedef PACKED(struct) 497 { 498 uint8_t Status; 499 } hci_le_set_advertise_enable_rp0; 500 501 typedef PACKED(struct) 502 { 503 uint8_t LE_Scan_Type; 504 uint16_t LE_Scan_Interval; 505 uint16_t LE_Scan_Window; 506 uint8_t Own_Address_Type; 507 uint8_t Scanning_Filter_Policy; 508 } hci_le_set_scan_parameters_cp0; 509 510 typedef PACKED(struct) 511 { 512 uint8_t Status; 513 } hci_le_set_scan_parameters_rp0; 514 515 typedef PACKED(struct) 516 { 517 uint8_t LE_Scan_Enable; 518 uint8_t Filter_Duplicates; 519 } hci_le_set_scan_enable_cp0; 520 521 typedef PACKED(struct) 522 { 523 uint8_t Status; 524 } hci_le_set_scan_enable_rp0; 525 526 typedef PACKED(struct) 527 { 528 uint16_t LE_Scan_Interval; 529 uint16_t LE_Scan_Window; 530 uint8_t Initiator_Filter_Policy; 531 uint8_t Peer_Address_Type; 532 uint8_t Peer_Address[6]; 533 uint8_t Own_Address_Type; 534 uint16_t Conn_Interval_Min; 535 uint16_t Conn_Interval_Max; 536 uint16_t Conn_Latency; 537 uint16_t Supervision_Timeout; 538 uint16_t Minimum_CE_Length; 539 uint16_t Maximum_CE_Length; 540 } hci_le_create_connection_cp0; 541 542 typedef PACKED(struct) 543 { 544 uint8_t Status; 545 } hci_le_create_connection_rp0; 546 547 typedef PACKED(struct) 548 { 549 uint8_t Status; 550 } hci_le_create_connection_cancel_rp0; 551 552 typedef PACKED(struct) 553 { 554 uint8_t Status; 555 uint8_t White_List_Size; 556 } hci_le_read_white_list_size_rp0; 557 558 typedef PACKED(struct) 559 { 560 uint8_t Status; 561 } hci_le_clear_white_list_rp0; 562 563 typedef PACKED(struct) 564 { 565 uint8_t Address_Type; 566 uint8_t Address[6]; 567 } hci_le_add_device_to_white_list_cp0; 568 569 typedef PACKED(struct) 570 { 571 uint8_t Status; 572 } hci_le_add_device_to_white_list_rp0; 573 574 typedef PACKED(struct) 575 { 576 uint8_t Address_Type; 577 uint8_t Address[6]; 578 } hci_le_remove_device_from_white_list_cp0; 579 580 typedef PACKED(struct) 581 { 582 uint8_t Status; 583 } hci_le_remove_device_from_white_list_rp0; 584 585 typedef PACKED(struct) 586 { 587 uint16_t Connection_Handle; 588 uint16_t Conn_Interval_Min; 589 uint16_t Conn_Interval_Max; 590 uint16_t Conn_Latency; 591 uint16_t Supervision_Timeout; 592 uint16_t Minimum_CE_Length; 593 uint16_t Maximum_CE_Length; 594 } hci_le_connection_update_cp0; 595 596 typedef PACKED(struct) 597 { 598 uint8_t Status; 599 } hci_le_connection_update_rp0; 600 601 typedef PACKED(struct) 602 { 603 uint8_t LE_Channel_Map[5]; 604 } hci_le_set_host_channel_classification_cp0; 605 606 typedef PACKED(struct) 607 { 608 uint8_t Status; 609 } hci_le_set_host_channel_classification_rp0; 610 611 typedef PACKED(struct) 612 { 613 uint16_t Connection_Handle; 614 } hci_le_read_channel_map_cp0; 615 616 typedef PACKED(struct) 617 { 618 uint8_t Status; 619 uint16_t Connection_Handle; 620 uint8_t LE_Channel_Map[5]; 621 } hci_le_read_channel_map_rp0; 622 623 typedef PACKED(struct) 624 { 625 uint16_t Connection_Handle; 626 } hci_le_read_remote_used_features_cp0; 627 628 typedef PACKED(struct) 629 { 630 uint8_t Status; 631 } hci_le_read_remote_used_features_rp0; 632 633 typedef PACKED(struct) 634 { 635 uint8_t Key[16]; 636 uint8_t Plaintext_Data[16]; 637 } hci_le_encrypt_cp0; 638 639 typedef PACKED(struct) 640 { 641 uint8_t Status; 642 uint8_t Encrypted_Data[16]; 643 } hci_le_encrypt_rp0; 644 645 typedef PACKED(struct) 646 { 647 uint8_t Status; 648 uint8_t Random_Number[8]; 649 } hci_le_rand_rp0; 650 651 typedef PACKED(struct) 652 { 653 uint16_t Connection_Handle; 654 uint8_t Random_Number[8]; 655 uint16_t Encrypted_Diversifier; 656 uint8_t Long_Term_Key[16]; 657 } hci_le_start_encryption_cp0; 658 659 typedef PACKED(struct) 660 { 661 uint8_t Status; 662 } hci_le_start_encryption_rp0; 663 664 typedef PACKED(struct) 665 { 666 uint16_t Connection_Handle; 667 uint8_t Long_Term_Key[16]; 668 } hci_le_long_term_key_request_reply_cp0; 669 670 typedef PACKED(struct) 671 { 672 uint8_t Status; 673 uint16_t Connection_Handle; 674 } hci_le_long_term_key_request_reply_rp0; 675 676 typedef PACKED(struct) 677 { 678 uint16_t Connection_Handle; 679 } hci_le_long_term_key_requested_negative_reply_cp0; 680 681 typedef PACKED(struct) 682 { 683 uint8_t Status; 684 uint16_t Connection_Handle; 685 } hci_le_long_term_key_requested_negative_reply_rp0; 686 687 typedef PACKED(struct) 688 { 689 uint8_t Status; 690 uint8_t LE_States[8]; 691 } hci_le_read_supported_states_rp0; 692 693 typedef PACKED(struct) 694 { 695 uint8_t RX_Frequency; 696 } hci_le_receiver_test_cp0; 697 698 typedef PACKED(struct) 699 { 700 uint8_t Status; 701 } hci_le_receiver_test_rp0; 702 703 typedef PACKED(struct) 704 { 705 uint8_t TX_Frequency; 706 uint8_t Length_Of_Test_Data; 707 uint8_t Packet_Payload; 708 } hci_le_transmitter_test_cp0; 709 710 typedef PACKED(struct) 711 { 712 uint8_t Status; 713 } hci_le_transmitter_test_rp0; 714 715 typedef PACKED(struct) 716 { 717 uint8_t Status; 718 uint16_t Number_Of_Packets; 719 } hci_le_test_end_rp0; 720 721 typedef PACKED(struct) 722 { 723 uint16_t Connection_Handle; 724 uint16_t TxOctets; 725 uint16_t TxTime; 726 } hci_le_set_data_length_cp0; 727 728 typedef PACKED(struct) 729 { 730 uint8_t Status; 731 uint16_t Connection_Handle; 732 } hci_le_set_data_length_rp0; 733 734 typedef PACKED(struct) 735 { 736 uint8_t Status; 737 uint16_t SuggestedMaxTxOctets; 738 uint16_t SuggestedMaxTxTime; 739 } hci_le_read_suggested_default_data_length_rp0; 740 741 typedef PACKED(struct) 742 { 743 uint16_t SuggestedMaxTxOctets; 744 uint16_t SuggestedMaxTxTime; 745 } hci_le_write_suggested_default_data_length_cp0; 746 747 typedef PACKED(struct) 748 { 749 uint8_t Status; 750 } hci_le_write_suggested_default_data_length_rp0; 751 752 typedef PACKED(struct) 753 { 754 uint8_t Status; 755 } hci_le_read_local_p256_public_key_rp0; 756 757 typedef PACKED(struct) 758 { 759 uint8_t Remote_P256_Public_Key[64]; 760 } hci_le_generate_dhkey_cp0; 761 762 typedef PACKED(struct) 763 { 764 uint8_t Status; 765 } hci_le_generate_dhkey_rp0; 766 767 typedef PACKED(struct) 768 { 769 uint8_t Peer_Identity_Address_Type; 770 uint8_t Peer_Identity_Address[6]; 771 uint8_t Peer_IRK[16]; 772 uint8_t Local_IRK[16]; 773 } hci_le_add_device_to_resolving_list_cp0; 774 775 typedef PACKED(struct) 776 { 777 uint8_t Status; 778 } hci_le_add_device_to_resolving_list_rp0; 779 780 typedef PACKED(struct) 781 { 782 uint8_t Peer_Identity_Address_Type; 783 uint8_t Peer_Identity_Address[6]; 784 } hci_le_remove_device_from_resolving_list_cp0; 785 786 typedef PACKED(struct) 787 { 788 uint8_t Status; 789 } hci_le_remove_device_from_resolving_list_rp0; 790 791 typedef PACKED(struct) 792 { 793 uint8_t Status; 794 } hci_le_clear_resolving_list_rp0; 795 796 typedef PACKED(struct) 797 { 798 uint8_t Status; 799 uint8_t Resolving_List_Size; 800 } hci_le_read_resolving_list_size_rp0; 801 802 typedef PACKED(struct) 803 { 804 uint8_t Peer_Identity_Address_Type; 805 uint8_t Peer_Identity_Address[6]; 806 } hci_le_read_peer_resolvable_address_cp0; 807 808 typedef PACKED(struct) 809 { 810 uint8_t Status; 811 uint8_t Peer_Resolvable_Address[6]; 812 } hci_le_read_peer_resolvable_address_rp0; 813 814 typedef PACKED(struct) 815 { 816 uint8_t Peer_Identity_Address_Type; 817 uint8_t Peer_Identity_Address[6]; 818 } hci_le_read_local_resolvable_address_cp0; 819 820 typedef PACKED(struct) 821 { 822 uint8_t Status; 823 uint8_t Local_Resolvable_Address[6]; 824 } hci_le_read_local_resolvable_address_rp0; 825 826 typedef PACKED(struct) 827 { 828 uint8_t Address_Resolution_Enable; 829 } hci_le_set_address_resolution_enable_cp0; 830 831 typedef PACKED(struct) 832 { 833 uint8_t Status; 834 } hci_le_set_address_resolution_enable_rp0; 835 836 typedef PACKED(struct) 837 { 838 uint16_t RPA_Timeout; 839 } hci_le_set_resolvable_private_address_timeout_cp0; 840 841 typedef PACKED(struct) 842 { 843 uint8_t Status; 844 } hci_le_set_resolvable_private_address_timeout_rp0; 845 846 typedef PACKED(struct) 847 { 848 uint8_t Status; 849 uint16_t supportedMaxTxOctets; 850 uint16_t supportedMaxTxTime; 851 uint16_t supportedMaxRxOctets; 852 uint16_t supportedMaxRxTime; 853 } hci_le_read_maximum_data_length_rp0; 854 855 typedef PACKED(struct) 856 { 857 uint16_t Connection_Handle; 858 } hci_le_read_phy_cp0; 859 860 typedef PACKED(struct) 861 { 862 uint8_t Status; 863 uint16_t Connection_Handle; 864 uint8_t TX_PHY; 865 uint8_t RX_PHY; 866 } hci_le_read_phy_rp0; 867 868 typedef PACKED(struct) 869 { 870 uint8_t ALL_PHYS; 871 uint8_t TX_PHYS; 872 uint8_t RX_PHYS; 873 } hci_le_set_default_phy_cp0; 874 875 typedef PACKED(struct) 876 { 877 uint8_t Status; 878 } hci_le_set_default_phy_rp0; 879 880 typedef PACKED(struct) 881 { 882 uint16_t Connection_Handle; 883 uint8_t ALL_PHYS; 884 uint8_t TX_PHYS; 885 uint8_t RX_PHYS; 886 uint16_t PHY_options; 887 } hci_le_set_phy_cp0; 888 889 typedef PACKED(struct) 890 { 891 uint8_t Status; 892 } hci_le_set_phy_rp0; 893 894 typedef PACKED(struct) 895 { 896 uint8_t RX_Frequency; 897 uint8_t PHY; 898 uint8_t Modulation_Index; 899 } hci_le_enhanced_receiver_test_cp0; 900 901 typedef PACKED(struct) 902 { 903 uint8_t Status; 904 } hci_le_enhanced_receiver_test_rp0; 905 906 typedef PACKED(struct) 907 { 908 uint8_t TX_Frequency; 909 uint8_t Length_Of_Test_Data; 910 uint8_t Packet_Payload; 911 uint8_t PHY; 912 } hci_le_enhanced_transmitter_test_cp0; 913 914 typedef PACKED(struct) 915 { 916 uint8_t Status; 917 } hci_le_enhanced_transmitter_test_rp0; 918 919 typedef PACKED(struct) 920 { 921 uint8_t Status; 922 uint16_t Build_Number; 923 } aci_hal_get_fw_build_number_rp0; 924 925 typedef PACKED(struct) 926 { 927 uint8_t Offset; 928 uint8_t Length; 929 uint8_t Value[(BLE_CMD_MAX_PARAM_LEN - 2)/sizeof(uint8_t)]; 930 } aci_hal_write_config_data_cp0; 931 932 typedef PACKED(struct) 933 { 934 uint8_t Status; 935 } aci_hal_write_config_data_rp0; 936 937 typedef PACKED(struct) 938 { 939 uint8_t Offset; 940 } aci_hal_read_config_data_cp0; 941 942 typedef PACKED(struct) 943 { 944 uint8_t Status; 945 uint8_t Data_Length; 946 uint8_t Data[((BLE_EVT_MAX_PARAM_LEN - 3) - 2)/sizeof(uint8_t)]; 947 } aci_hal_read_config_data_rp0; 948 949 typedef PACKED(struct) 950 { 951 uint8_t En_High_Power; 952 uint8_t PA_Level; 953 } aci_hal_set_tx_power_level_cp0; 954 955 typedef PACKED(struct) 956 { 957 uint8_t Status; 958 } aci_hal_set_tx_power_level_rp0; 959 960 typedef PACKED(struct) 961 { 962 uint8_t Status; 963 uint32_t Number_Of_Packets; 964 } aci_hal_le_tx_test_packet_number_rp0; 965 966 typedef PACKED(struct) 967 { 968 uint8_t RF_Channel; 969 uint8_t Freq_offset; 970 } aci_hal_tone_start_cp0; 971 972 typedef PACKED(struct) 973 { 974 uint8_t Status; 975 } aci_hal_tone_start_rp0; 976 977 typedef PACKED(struct) 978 { 979 uint8_t Status; 980 } aci_hal_tone_stop_rp0; 981 982 typedef PACKED(struct) 983 { 984 uint8_t Status; 985 uint8_t Link_Status[8]; 986 uint16_t Link_Connection_Handle[16 / 2]; 987 } aci_hal_get_link_status_rp0; 988 989 typedef PACKED(struct) 990 { 991 uint16_t Radio_Activity_Mask; 992 } aci_hal_set_radio_activity_mask_cp0; 993 994 typedef PACKED(struct) 995 { 996 uint8_t Status; 997 } aci_hal_set_radio_activity_mask_rp0; 998 999 typedef PACKED(struct) 1000 { 1001 uint8_t Status; 1002 uint32_t Anchor_Period; 1003 uint32_t Max_Free_Slot; 1004 } aci_hal_get_anchor_period_rp0; 1005 1006 typedef PACKED(struct) 1007 { 1008 uint32_t Event_Mask; 1009 } aci_hal_set_event_mask_cp0; 1010 1011 typedef PACKED(struct) 1012 { 1013 uint8_t Status; 1014 } aci_hal_set_event_mask_rp0; 1015 1016 typedef PACKED(struct) 1017 { 1018 uint32_t SMP_Config; 1019 } aci_hal_set_smp_eng_config_cp0; 1020 1021 typedef PACKED(struct) 1022 { 1023 uint8_t Status; 1024 } aci_hal_set_smp_eng_config_rp0; 1025 1026 typedef PACKED(struct) 1027 { 1028 uint8_t Status; 1029 uint8_t Allocated_For_TX; 1030 uint8_t Allocated_For_RX; 1031 uint8_t Allocated_MBlocks; 1032 } aci_hal_get_pm_debug_info_rp0; 1033 1034 typedef PACKED(struct) 1035 { 1036 uint8_t Register_Address; 1037 } aci_hal_read_radio_reg_cp0; 1038 1039 typedef PACKED(struct) 1040 { 1041 uint8_t Status; 1042 uint8_t reg_val; 1043 } aci_hal_read_radio_reg_rp0; 1044 1045 typedef PACKED(struct) 1046 { 1047 uint8_t Register_Address; 1048 uint8_t Register_Value; 1049 } aci_hal_write_radio_reg_cp0; 1050 1051 typedef PACKED(struct) 1052 { 1053 uint8_t Status; 1054 } aci_hal_write_radio_reg_rp0; 1055 1056 typedef PACKED(struct) 1057 { 1058 uint8_t Status; 1059 uint8_t Value[3]; 1060 } aci_hal_read_raw_rssi_rp0; 1061 1062 typedef PACKED(struct) 1063 { 1064 uint8_t RF_Channel; 1065 } aci_hal_rx_start_cp0; 1066 1067 typedef PACKED(struct) 1068 { 1069 uint8_t Status; 1070 } aci_hal_rx_start_rp0; 1071 1072 typedef PACKED(struct) 1073 { 1074 uint8_t Status; 1075 } aci_hal_rx_stop_rp0; 1076 1077 typedef PACKED(struct) 1078 { 1079 uint8_t Status; 1080 } aci_hal_stack_reset_rp0; 1081 1082 typedef PACKED(struct) 1083 { 1084 uint8_t Status; 1085 } aci_gap_set_non_discoverable_rp0; 1086 1087 typedef PACKED(struct) 1088 { 1089 uint8_t Advertising_Type; 1090 uint16_t Advertising_Interval_Min; 1091 uint16_t Advertising_Interval_Max; 1092 uint8_t Own_Address_Type; 1093 uint8_t Advertising_Filter_Policy; 1094 uint8_t Local_Name_Length; 1095 uint8_t Local_Name[(BLE_CMD_MAX_PARAM_LEN - 8)/sizeof(uint8_t)]; 1096 } aci_gap_set_limited_discoverable_cp0; 1097 1098 typedef PACKED(struct) 1099 { 1100 uint8_t Service_Uuid_length; 1101 uint8_t Service_Uuid_List[(BLE_CMD_MAX_PARAM_LEN - 1)/sizeof(uint8_t)]; 1102 } aci_gap_set_limited_discoverable_cp1; 1103 1104 typedef PACKED(struct) 1105 { 1106 uint16_t Slave_Conn_Interval_Min; 1107 uint16_t Slave_Conn_Interval_Max; 1108 } aci_gap_set_limited_discoverable_cp2; 1109 1110 typedef PACKED(struct) 1111 { 1112 uint8_t Status; 1113 } aci_gap_set_limited_discoverable_rp0; 1114 1115 typedef PACKED(struct) 1116 { 1117 uint8_t Advertising_Type; 1118 uint16_t Advertising_Interval_Min; 1119 uint16_t Advertising_Interval_Max; 1120 uint8_t Own_Address_Type; 1121 uint8_t Advertising_Filter_Policy; 1122 uint8_t Local_Name_Length; 1123 uint8_t Local_Name[(BLE_CMD_MAX_PARAM_LEN - 8)/sizeof(uint8_t)]; 1124 } aci_gap_set_discoverable_cp0; 1125 1126 typedef PACKED(struct) 1127 { 1128 uint8_t Service_Uuid_length; 1129 uint8_t Service_Uuid_List[(BLE_CMD_MAX_PARAM_LEN - 1)/sizeof(uint8_t)]; 1130 } aci_gap_set_discoverable_cp1; 1131 1132 typedef PACKED(struct) 1133 { 1134 uint16_t Slave_Conn_Interval_Min; 1135 uint16_t Slave_Conn_Interval_Max; 1136 } aci_gap_set_discoverable_cp2; 1137 1138 typedef PACKED(struct) 1139 { 1140 uint8_t Status; 1141 } aci_gap_set_discoverable_rp0; 1142 1143 typedef PACKED(struct) 1144 { 1145 uint8_t Own_Address_Type; 1146 uint8_t Directed_Advertising_Type; 1147 uint8_t Direct_Address_Type; 1148 uint8_t Direct_Address[6]; 1149 uint16_t Advertising_Interval_Min; 1150 uint16_t Advertising_Interval_Max; 1151 } aci_gap_set_direct_connectable_cp0; 1152 1153 typedef PACKED(struct) 1154 { 1155 uint8_t Status; 1156 } aci_gap_set_direct_connectable_rp0; 1157 1158 typedef PACKED(struct) 1159 { 1160 uint8_t IO_Capability; 1161 } aci_gap_set_io_capability_cp0; 1162 1163 typedef PACKED(struct) 1164 { 1165 uint8_t Status; 1166 } aci_gap_set_io_capability_rp0; 1167 1168 typedef PACKED(struct) 1169 { 1170 uint8_t Bonding_Mode; 1171 uint8_t MITM_Mode; 1172 uint8_t SC_Support; 1173 uint8_t KeyPress_Notification_Support; 1174 uint8_t Min_Encryption_Key_Size; 1175 uint8_t Max_Encryption_Key_Size; 1176 uint8_t Use_Fixed_Pin; 1177 uint32_t Fixed_Pin; 1178 uint8_t Identity_Address_Type; 1179 } aci_gap_set_authentication_requirement_cp0; 1180 1181 typedef PACKED(struct) 1182 { 1183 uint8_t Status; 1184 } aci_gap_set_authentication_requirement_rp0; 1185 1186 typedef PACKED(struct) 1187 { 1188 uint16_t Connection_Handle; 1189 uint8_t Authorization_Enable; 1190 } aci_gap_set_authorization_requirement_cp0; 1191 1192 typedef PACKED(struct) 1193 { 1194 uint8_t Status; 1195 } aci_gap_set_authorization_requirement_rp0; 1196 1197 typedef PACKED(struct) 1198 { 1199 uint16_t Connection_Handle; 1200 uint32_t Pass_Key; 1201 } aci_gap_pass_key_resp_cp0; 1202 1203 typedef PACKED(struct) 1204 { 1205 uint8_t Status; 1206 } aci_gap_pass_key_resp_rp0; 1207 1208 typedef PACKED(struct) 1209 { 1210 uint16_t Connection_Handle; 1211 uint8_t Authorize; 1212 } aci_gap_authorization_resp_cp0; 1213 1214 typedef PACKED(struct) 1215 { 1216 uint8_t Status; 1217 } aci_gap_authorization_resp_rp0; 1218 1219 typedef PACKED(struct) 1220 { 1221 uint8_t Role; 1222 uint8_t privacy_enabled; 1223 uint8_t device_name_char_len; 1224 } aci_gap_init_cp0; 1225 1226 typedef PACKED(struct) 1227 { 1228 uint8_t Status; 1229 uint16_t Service_Handle; 1230 uint16_t Dev_Name_Char_Handle; 1231 uint16_t Appearance_Char_Handle; 1232 } aci_gap_init_rp0; 1233 1234 typedef PACKED(struct) 1235 { 1236 uint8_t Advertising_Event_Type; 1237 uint8_t Own_Address_Type; 1238 } aci_gap_set_non_connectable_cp0; 1239 1240 typedef PACKED(struct) 1241 { 1242 uint8_t Status; 1243 } aci_gap_set_non_connectable_rp0; 1244 1245 typedef PACKED(struct) 1246 { 1247 uint16_t Advertising_Interval_Min; 1248 uint16_t Advertising_Interval_Max; 1249 uint8_t Own_Address_Type; 1250 uint8_t Adv_Filter_Policy; 1251 } aci_gap_set_undirected_connectable_cp0; 1252 1253 typedef PACKED(struct) 1254 { 1255 uint8_t Status; 1256 } aci_gap_set_undirected_connectable_rp0; 1257 1258 typedef PACKED(struct) 1259 { 1260 uint16_t Connection_Handle; 1261 } aci_gap_slave_security_req_cp0; 1262 1263 typedef PACKED(struct) 1264 { 1265 uint8_t Status; 1266 } aci_gap_slave_security_req_rp0; 1267 1268 typedef PACKED(struct) 1269 { 1270 uint8_t AdvDataLen; 1271 uint8_t AdvData[(BLE_CMD_MAX_PARAM_LEN - 1)/sizeof(uint8_t)]; 1272 } aci_gap_update_adv_data_cp0; 1273 1274 typedef PACKED(struct) 1275 { 1276 uint8_t Status; 1277 } aci_gap_update_adv_data_rp0; 1278 1279 typedef PACKED(struct) 1280 { 1281 uint8_t ADType; 1282 } aci_gap_delete_ad_type_cp0; 1283 1284 typedef PACKED(struct) 1285 { 1286 uint8_t Status; 1287 } aci_gap_delete_ad_type_rp0; 1288 1289 typedef PACKED(struct) 1290 { 1291 uint16_t Connection_Handle; 1292 } aci_gap_get_security_level_cp0; 1293 1294 typedef PACKED(struct) 1295 { 1296 uint8_t Status; 1297 uint8_t Security_Mode; 1298 uint8_t Security_Level; 1299 } aci_gap_get_security_level_rp0; 1300 1301 typedef PACKED(struct) 1302 { 1303 uint16_t GAP_Evt_Mask; 1304 } aci_gap_set_event_mask_cp0; 1305 1306 typedef PACKED(struct) 1307 { 1308 uint8_t Status; 1309 } aci_gap_set_event_mask_rp0; 1310 1311 typedef PACKED(struct) 1312 { 1313 uint8_t Status; 1314 } aci_gap_configure_whitelist_rp0; 1315 1316 typedef PACKED(struct) 1317 { 1318 uint16_t Connection_Handle; 1319 uint8_t Reason; 1320 } aci_gap_terminate_cp0; 1321 1322 typedef PACKED(struct) 1323 { 1324 uint8_t Status; 1325 } aci_gap_terminate_rp0; 1326 1327 typedef PACKED(struct) 1328 { 1329 uint8_t Status; 1330 } aci_gap_clear_security_db_rp0; 1331 1332 typedef PACKED(struct) 1333 { 1334 uint16_t Connection_Handle; 1335 } aci_gap_allow_rebond_cp0; 1336 1337 typedef PACKED(struct) 1338 { 1339 uint8_t Status; 1340 } aci_gap_allow_rebond_rp0; 1341 1342 typedef PACKED(struct) 1343 { 1344 uint16_t LE_Scan_Interval; 1345 uint16_t LE_Scan_Window; 1346 uint8_t Own_Address_Type; 1347 uint8_t Filter_Duplicates; 1348 } aci_gap_start_limited_discovery_proc_cp0; 1349 1350 typedef PACKED(struct) 1351 { 1352 uint8_t Status; 1353 } aci_gap_start_limited_discovery_proc_rp0; 1354 1355 typedef PACKED(struct) 1356 { 1357 uint16_t LE_Scan_Interval; 1358 uint16_t LE_Scan_Window; 1359 uint8_t Own_Address_Type; 1360 uint8_t Filter_Duplicates; 1361 } aci_gap_start_general_discovery_proc_cp0; 1362 1363 typedef PACKED(struct) 1364 { 1365 uint8_t Status; 1366 } aci_gap_start_general_discovery_proc_rp0; 1367 1368 typedef PACKED(struct) 1369 { 1370 uint16_t LE_Scan_Interval; 1371 uint16_t LE_Scan_Window; 1372 uint8_t Peer_Address_Type; 1373 uint8_t Peer_Address[6]; 1374 uint8_t Own_Address_Type; 1375 uint16_t Conn_Interval_Min; 1376 uint16_t Conn_Interval_Max; 1377 uint16_t Conn_Latency; 1378 uint16_t Supervision_Timeout; 1379 uint16_t Minimum_CE_Length; 1380 uint16_t Maximum_CE_Length; 1381 } aci_gap_start_name_discovery_proc_cp0; 1382 1383 typedef PACKED(struct) 1384 { 1385 uint8_t Status; 1386 } aci_gap_start_name_discovery_proc_rp0; 1387 1388 typedef PACKED(struct) 1389 { 1390 uint16_t LE_Scan_Interval; 1391 uint16_t LE_Scan_Window; 1392 uint8_t Own_Address_Type; 1393 uint16_t Conn_Interval_Min; 1394 uint16_t Conn_Interval_Max; 1395 uint16_t Conn_Latency; 1396 uint16_t Supervision_Timeout; 1397 uint16_t Minimum_CE_Length; 1398 uint16_t Maximum_CE_Length; 1399 uint8_t Num_of_Whitelist_Entries; 1400 Whitelist_Entry_t Whitelist_Entry[(BLE_CMD_MAX_PARAM_LEN - 18)/sizeof(Whitelist_Entry_t)]; 1401 } aci_gap_start_auto_connection_establish_proc_cp0; 1402 1403 typedef PACKED(struct) 1404 { 1405 uint8_t Status; 1406 } aci_gap_start_auto_connection_establish_proc_rp0; 1407 1408 typedef PACKED(struct) 1409 { 1410 uint8_t LE_Scan_Type; 1411 uint16_t LE_Scan_Interval; 1412 uint16_t LE_Scan_Window; 1413 uint8_t Own_Address_Type; 1414 uint8_t Scanning_Filter_Policy; 1415 uint8_t Filter_Duplicates; 1416 } aci_gap_start_general_connection_establish_proc_cp0; 1417 1418 typedef PACKED(struct) 1419 { 1420 uint8_t Status; 1421 } aci_gap_start_general_connection_establish_proc_rp0; 1422 1423 typedef PACKED(struct) 1424 { 1425 uint8_t LE_Scan_Type; 1426 uint16_t LE_Scan_Interval; 1427 uint16_t LE_Scan_Window; 1428 uint8_t Own_Address_Type; 1429 uint8_t Scanning_Filter_Policy; 1430 uint8_t Filter_Duplicates; 1431 uint8_t Num_of_Whitelist_Entries; 1432 Whitelist_Entry_t Whitelist_Entry[(BLE_CMD_MAX_PARAM_LEN - 9)/sizeof(Whitelist_Entry_t)]; 1433 } aci_gap_start_selective_connection_establish_proc_cp0; 1434 1435 typedef PACKED(struct) 1436 { 1437 uint8_t Status; 1438 } aci_gap_start_selective_connection_establish_proc_rp0; 1439 1440 typedef PACKED(struct) 1441 { 1442 uint16_t LE_Scan_Interval; 1443 uint16_t LE_Scan_Window; 1444 uint8_t Peer_Address_Type; 1445 uint8_t Peer_Address[6]; 1446 uint8_t Own_Address_Type; 1447 uint16_t Conn_Interval_Min; 1448 uint16_t Conn_Interval_Max; 1449 uint16_t Conn_Latency; 1450 uint16_t Supervision_Timeout; 1451 uint16_t Minimum_CE_Length; 1452 uint16_t Maximum_CE_Length; 1453 } aci_gap_create_connection_cp0; 1454 1455 typedef PACKED(struct) 1456 { 1457 uint8_t Status; 1458 } aci_gap_create_connection_rp0; 1459 1460 typedef PACKED(struct) 1461 { 1462 uint8_t Procedure_Code; 1463 } aci_gap_terminate_gap_proc_cp0; 1464 1465 typedef PACKED(struct) 1466 { 1467 uint8_t Status; 1468 } aci_gap_terminate_gap_proc_rp0; 1469 1470 typedef PACKED(struct) 1471 { 1472 uint16_t Connection_Handle; 1473 uint16_t Conn_Interval_Min; 1474 uint16_t Conn_Interval_Max; 1475 uint16_t Conn_Latency; 1476 uint16_t Supervision_Timeout; 1477 uint16_t Minimum_CE_Length; 1478 uint16_t Maximum_CE_Length; 1479 } aci_gap_start_connection_update_cp0; 1480 1481 typedef PACKED(struct) 1482 { 1483 uint8_t Status; 1484 } aci_gap_start_connection_update_rp0; 1485 1486 typedef PACKED(struct) 1487 { 1488 uint16_t Connection_Handle; 1489 uint8_t Force_Rebond; 1490 } aci_gap_send_pairing_req_cp0; 1491 1492 typedef PACKED(struct) 1493 { 1494 uint8_t Status; 1495 } aci_gap_send_pairing_req_rp0; 1496 1497 typedef PACKED(struct) 1498 { 1499 uint8_t Address[6]; 1500 } aci_gap_resolve_private_addr_cp0; 1501 1502 typedef PACKED(struct) 1503 { 1504 uint8_t Status; 1505 uint8_t Actual_Address[6]; 1506 } aci_gap_resolve_private_addr_rp0; 1507 1508 typedef PACKED(struct) 1509 { 1510 uint16_t Advertising_Interval_Min; 1511 uint16_t Advertising_Interval_Max; 1512 uint8_t Advertising_Type; 1513 uint8_t Own_Address_Type; 1514 uint8_t Adv_Data_Length; 1515 uint8_t Adv_Data[(BLE_CMD_MAX_PARAM_LEN - 7)/sizeof(uint8_t)]; 1516 } aci_gap_set_broadcast_mode_cp0; 1517 1518 typedef PACKED(struct) 1519 { 1520 uint8_t Num_of_Whitelist_Entries; 1521 Whitelist_Entry_t Whitelist_Entry[(BLE_CMD_MAX_PARAM_LEN - 1)/sizeof(Whitelist_Entry_t)]; 1522 } aci_gap_set_broadcast_mode_cp1; 1523 1524 typedef PACKED(struct) 1525 { 1526 uint8_t Status; 1527 } aci_gap_set_broadcast_mode_rp0; 1528 1529 typedef PACKED(struct) 1530 { 1531 uint16_t LE_Scan_Interval; 1532 uint16_t LE_Scan_Window; 1533 uint8_t LE_Scan_Type; 1534 uint8_t Own_Address_Type; 1535 uint8_t Filter_Duplicates; 1536 uint8_t Scanning_Filter_Policy; 1537 } aci_gap_start_observation_proc_cp0; 1538 1539 typedef PACKED(struct) 1540 { 1541 uint8_t Status; 1542 } aci_gap_start_observation_proc_rp0; 1543 1544 typedef PACKED(struct) 1545 { 1546 uint8_t Status; 1547 uint8_t Num_of_Addresses; 1548 Bonded_Device_Entry_t Bonded_Device_Entry[((BLE_EVT_MAX_PARAM_LEN - 3) - 2)/sizeof(Bonded_Device_Entry_t)]; 1549 } aci_gap_get_bonded_devices_rp0; 1550 1551 typedef PACKED(struct) 1552 { 1553 uint8_t Peer_Address_Type; 1554 uint8_t Peer_Address[6]; 1555 } aci_gap_is_device_bonded_cp0; 1556 1557 typedef PACKED(struct) 1558 { 1559 uint8_t Status; 1560 } aci_gap_is_device_bonded_rp0; 1561 1562 typedef PACKED(struct) 1563 { 1564 uint16_t Connection_Handle; 1565 uint8_t Confirm_Yes_No; 1566 } aci_gap_numeric_comparison_value_confirm_yesno_cp0; 1567 1568 typedef PACKED(struct) 1569 { 1570 uint8_t Status; 1571 } aci_gap_numeric_comparison_value_confirm_yesno_rp0; 1572 1573 typedef PACKED(struct) 1574 { 1575 uint16_t Connection_Handle; 1576 uint8_t Input_Type; 1577 } aci_gap_passkey_input_cp0; 1578 1579 typedef PACKED(struct) 1580 { 1581 uint8_t Status; 1582 } aci_gap_passkey_input_rp0; 1583 1584 typedef PACKED(struct) 1585 { 1586 uint8_t OOB_Data_Type; 1587 } aci_gap_get_oob_data_cp0; 1588 1589 typedef PACKED(struct) 1590 { 1591 uint8_t Status; 1592 uint8_t Address_Type; 1593 uint8_t Address[6]; 1594 uint8_t OOB_Data_Type; 1595 uint8_t OOB_Data_Len; 1596 uint8_t OOB_Data[16]; 1597 } aci_gap_get_oob_data_rp0; 1598 1599 typedef PACKED(struct) 1600 { 1601 uint8_t Device_Type; 1602 uint8_t Address_Type; 1603 uint8_t Address[6]; 1604 uint8_t OOB_Data_Type; 1605 uint8_t OOB_Data_Len; 1606 uint8_t OOB_Data[16]; 1607 } aci_gap_set_oob_data_cp0; 1608 1609 typedef PACKED(struct) 1610 { 1611 uint8_t Status; 1612 } aci_gap_set_oob_data_rp0; 1613 1614 typedef PACKED(struct) 1615 { 1616 uint8_t Num_of_Resolving_list_Entries; 1617 Whitelist_Identity_Entry_t Whitelist_Identity_Entry[(BLE_CMD_MAX_PARAM_LEN - 1)/sizeof(Whitelist_Identity_Entry_t)]; 1618 } aci_gap_add_devices_to_resolving_list_cp0; 1619 1620 typedef PACKED(struct) 1621 { 1622 uint8_t Clear_Resolving_List; 1623 } aci_gap_add_devices_to_resolving_list_cp1; 1624 1625 typedef PACKED(struct) 1626 { 1627 uint8_t Status; 1628 } aci_gap_add_devices_to_resolving_list_rp0; 1629 1630 typedef PACKED(struct) 1631 { 1632 uint8_t Peer_Identity_Address_Type; 1633 uint8_t Peer_Identity_Address[6]; 1634 } aci_gap_remove_bonded_device_cp0; 1635 1636 typedef PACKED(struct) 1637 { 1638 uint8_t Status; 1639 } aci_gap_remove_bonded_device_rp0; 1640 1641 typedef PACKED(struct) 1642 { 1643 uint8_t Status; 1644 } aci_gatt_init_rp0; 1645 1646 typedef PACKED(struct) 1647 { 1648 uint8_t Service_UUID_Type; 1649 Service_UUID_t Service_UUID; 1650 } aci_gatt_add_service_cp0; 1651 1652 typedef PACKED(struct) 1653 { 1654 uint8_t Service_Type; 1655 uint8_t Max_Attribute_Records; 1656 } aci_gatt_add_service_cp1; 1657 1658 typedef PACKED(struct) 1659 { 1660 uint8_t Status; 1661 uint16_t Service_Handle; 1662 } aci_gatt_add_service_rp0; 1663 1664 typedef PACKED(struct) 1665 { 1666 uint16_t Service_Handle; 1667 uint16_t Include_Start_Handle; 1668 uint16_t Include_End_Handle; 1669 uint8_t Include_UUID_Type; 1670 Include_UUID_t Include_UUID; 1671 } aci_gatt_include_service_cp0; 1672 1673 typedef PACKED(struct) 1674 { 1675 uint8_t Status; 1676 uint16_t Include_Handle; 1677 } aci_gatt_include_service_rp0; 1678 1679 typedef PACKED(struct) 1680 { 1681 uint16_t Service_Handle; 1682 uint8_t Char_UUID_Type; 1683 Char_UUID_t Char_UUID; 1684 } aci_gatt_add_char_cp0; 1685 1686 typedef PACKED(struct) 1687 { 1688 uint16_t Char_Value_Length; 1689 uint8_t Char_Properties; 1690 uint8_t Security_Permissions; 1691 uint8_t GATT_Evt_Mask; 1692 uint8_t Enc_Key_Size; 1693 uint8_t Is_Variable; 1694 } aci_gatt_add_char_cp1; 1695 1696 typedef PACKED(struct) 1697 { 1698 uint8_t Status; 1699 uint16_t Char_Handle; 1700 } aci_gatt_add_char_rp0; 1701 1702 typedef PACKED(struct) 1703 { 1704 uint16_t Service_Handle; 1705 uint16_t Char_Handle; 1706 uint8_t Char_Desc_Uuid_Type; 1707 Char_Desc_Uuid_t Char_Desc_Uuid; 1708 } aci_gatt_add_char_desc_cp0; 1709 1710 typedef PACKED(struct) 1711 { 1712 uint8_t Char_Desc_Value_Max_Len; 1713 uint8_t Char_Desc_Value_Length; 1714 uint8_t Char_Desc_Value[(BLE_CMD_MAX_PARAM_LEN - 2)/sizeof(uint8_t)]; 1715 } aci_gatt_add_char_desc_cp1; 1716 1717 typedef PACKED(struct) 1718 { 1719 uint8_t Security_Permissions; 1720 uint8_t Access_Permissions; 1721 uint8_t GATT_Evt_Mask; 1722 uint8_t Enc_Key_Size; 1723 uint8_t Is_Variable; 1724 } aci_gatt_add_char_desc_cp2; 1725 1726 typedef PACKED(struct) 1727 { 1728 uint8_t Status; 1729 uint16_t Char_Desc_Handle; 1730 } aci_gatt_add_char_desc_rp0; 1731 1732 typedef PACKED(struct) 1733 { 1734 uint16_t Service_Handle; 1735 uint16_t Char_Handle; 1736 uint8_t Val_Offset; 1737 uint8_t Char_Value_Length; 1738 uint8_t Char_Value[(BLE_CMD_MAX_PARAM_LEN - 6)/sizeof(uint8_t)]; 1739 } aci_gatt_update_char_value_cp0; 1740 1741 typedef PACKED(struct) 1742 { 1743 uint8_t Status; 1744 } aci_gatt_update_char_value_rp0; 1745 1746 typedef PACKED(struct) 1747 { 1748 uint16_t Serv_Handle; 1749 uint16_t Char_Handle; 1750 } aci_gatt_del_char_cp0; 1751 1752 typedef PACKED(struct) 1753 { 1754 uint8_t Status; 1755 } aci_gatt_del_char_rp0; 1756 1757 typedef PACKED(struct) 1758 { 1759 uint16_t Serv_Handle; 1760 } aci_gatt_del_service_cp0; 1761 1762 typedef PACKED(struct) 1763 { 1764 uint8_t Status; 1765 } aci_gatt_del_service_rp0; 1766 1767 typedef PACKED(struct) 1768 { 1769 uint16_t Serv_Handle; 1770 uint16_t Include_Handle; 1771 } aci_gatt_del_include_service_cp0; 1772 1773 typedef PACKED(struct) 1774 { 1775 uint8_t Status; 1776 } aci_gatt_del_include_service_rp0; 1777 1778 typedef PACKED(struct) 1779 { 1780 uint32_t GATT_Evt_Mask; 1781 } aci_gatt_set_event_mask_cp0; 1782 1783 typedef PACKED(struct) 1784 { 1785 uint8_t Status; 1786 } aci_gatt_set_event_mask_rp0; 1787 1788 typedef PACKED(struct) 1789 { 1790 uint16_t Connection_Handle; 1791 } aci_gatt_exchange_config_cp0; 1792 1793 typedef PACKED(struct) 1794 { 1795 uint8_t Status; 1796 } aci_gatt_exchange_config_rp0; 1797 1798 typedef PACKED(struct) 1799 { 1800 uint16_t Connection_Handle; 1801 uint16_t Start_Handle; 1802 uint16_t End_Handle; 1803 } aci_att_find_info_req_cp0; 1804 1805 typedef PACKED(struct) 1806 { 1807 uint8_t Status; 1808 } aci_att_find_info_req_rp0; 1809 1810 typedef PACKED(struct) 1811 { 1812 uint16_t Connection_Handle; 1813 uint16_t Start_Handle; 1814 uint16_t End_Handle; 1815 uint16_t UUID; 1816 uint8_t Attribute_Val_Length; 1817 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 9)/sizeof(uint8_t)]; 1818 } aci_att_find_by_type_value_req_cp0; 1819 1820 typedef PACKED(struct) 1821 { 1822 uint8_t Status; 1823 } aci_att_find_by_type_value_req_rp0; 1824 1825 typedef PACKED(struct) 1826 { 1827 uint16_t Connection_Handle; 1828 uint16_t Start_Handle; 1829 uint16_t End_Handle; 1830 uint8_t UUID_Type; 1831 UUID_t UUID; 1832 } aci_att_read_by_type_req_cp0; 1833 1834 typedef PACKED(struct) 1835 { 1836 uint8_t Status; 1837 } aci_att_read_by_type_req_rp0; 1838 1839 typedef PACKED(struct) 1840 { 1841 uint16_t Connection_Handle; 1842 uint16_t Start_Handle; 1843 uint16_t End_Handle; 1844 uint8_t UUID_Type; 1845 UUID_t UUID; 1846 } aci_att_read_by_group_type_req_cp0; 1847 1848 typedef PACKED(struct) 1849 { 1850 uint8_t Status; 1851 } aci_att_read_by_group_type_req_rp0; 1852 1853 typedef PACKED(struct) 1854 { 1855 uint16_t Connection_Handle; 1856 uint16_t Attr_Handle; 1857 uint16_t Val_Offset; 1858 uint8_t Attribute_Val_Length; 1859 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 7)/sizeof(uint8_t)]; 1860 } aci_att_prepare_write_req_cp0; 1861 1862 typedef PACKED(struct) 1863 { 1864 uint8_t Status; 1865 } aci_att_prepare_write_req_rp0; 1866 1867 typedef PACKED(struct) 1868 { 1869 uint16_t Connection_Handle; 1870 uint8_t Execute; 1871 } aci_att_execute_write_req_cp0; 1872 1873 typedef PACKED(struct) 1874 { 1875 uint8_t Status; 1876 } aci_att_execute_write_req_rp0; 1877 1878 typedef PACKED(struct) 1879 { 1880 uint16_t Connection_Handle; 1881 } aci_gatt_disc_all_primary_services_cp0; 1882 1883 typedef PACKED(struct) 1884 { 1885 uint8_t Status; 1886 } aci_gatt_disc_all_primary_services_rp0; 1887 1888 typedef PACKED(struct) 1889 { 1890 uint16_t Connection_Handle; 1891 uint8_t UUID_Type; 1892 UUID_t UUID; 1893 } aci_gatt_disc_primary_service_by_uuid_cp0; 1894 1895 typedef PACKED(struct) 1896 { 1897 uint8_t Status; 1898 } aci_gatt_disc_primary_service_by_uuid_rp0; 1899 1900 typedef PACKED(struct) 1901 { 1902 uint16_t Connection_Handle; 1903 uint16_t Start_Handle; 1904 uint16_t End_Handle; 1905 } aci_gatt_find_included_services_cp0; 1906 1907 typedef PACKED(struct) 1908 { 1909 uint8_t Status; 1910 } aci_gatt_find_included_services_rp0; 1911 1912 typedef PACKED(struct) 1913 { 1914 uint16_t Connection_Handle; 1915 uint16_t Start_Handle; 1916 uint16_t End_Handle; 1917 } aci_gatt_disc_all_char_of_service_cp0; 1918 1919 typedef PACKED(struct) 1920 { 1921 uint8_t Status; 1922 } aci_gatt_disc_all_char_of_service_rp0; 1923 1924 typedef PACKED(struct) 1925 { 1926 uint16_t Connection_Handle; 1927 uint16_t Start_Handle; 1928 uint16_t End_Handle; 1929 uint8_t UUID_Type; 1930 UUID_t UUID; 1931 } aci_gatt_disc_char_by_uuid_cp0; 1932 1933 typedef PACKED(struct) 1934 { 1935 uint8_t Status; 1936 } aci_gatt_disc_char_by_uuid_rp0; 1937 1938 typedef PACKED(struct) 1939 { 1940 uint16_t Connection_Handle; 1941 uint16_t Char_Handle; 1942 uint16_t End_Handle; 1943 } aci_gatt_disc_all_char_desc_cp0; 1944 1945 typedef PACKED(struct) 1946 { 1947 uint8_t Status; 1948 } aci_gatt_disc_all_char_desc_rp0; 1949 1950 typedef PACKED(struct) 1951 { 1952 uint16_t Connection_Handle; 1953 uint16_t Attr_Handle; 1954 } aci_gatt_read_char_value_cp0; 1955 1956 typedef PACKED(struct) 1957 { 1958 uint8_t Status; 1959 } aci_gatt_read_char_value_rp0; 1960 1961 typedef PACKED(struct) 1962 { 1963 uint16_t Connection_Handle; 1964 uint16_t Start_Handle; 1965 uint16_t End_Handle; 1966 uint8_t UUID_Type; 1967 UUID_t UUID; 1968 } aci_gatt_read_using_char_uuid_cp0; 1969 1970 typedef PACKED(struct) 1971 { 1972 uint8_t Status; 1973 } aci_gatt_read_using_char_uuid_rp0; 1974 1975 typedef PACKED(struct) 1976 { 1977 uint16_t Connection_Handle; 1978 uint16_t Attr_Handle; 1979 uint16_t Val_Offset; 1980 } aci_gatt_read_long_char_value_cp0; 1981 1982 typedef PACKED(struct) 1983 { 1984 uint8_t Status; 1985 } aci_gatt_read_long_char_value_rp0; 1986 1987 typedef PACKED(struct) 1988 { 1989 uint16_t Connection_Handle; 1990 uint8_t Number_of_Handles; 1991 Handle_Entry_t Handle_Entry[(BLE_CMD_MAX_PARAM_LEN - 3)/sizeof(Handle_Entry_t)]; 1992 } aci_gatt_read_multiple_char_value_cp0; 1993 1994 typedef PACKED(struct) 1995 { 1996 uint8_t Status; 1997 } aci_gatt_read_multiple_char_value_rp0; 1998 1999 typedef PACKED(struct) 2000 { 2001 uint16_t Connection_Handle; 2002 uint16_t Attr_Handle; 2003 uint8_t Attribute_Val_Length; 2004 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 5)/sizeof(uint8_t)]; 2005 } aci_gatt_write_char_value_cp0; 2006 2007 typedef PACKED(struct) 2008 { 2009 uint8_t Status; 2010 } aci_gatt_write_char_value_rp0; 2011 2012 typedef PACKED(struct) 2013 { 2014 uint16_t Connection_Handle; 2015 uint16_t Attr_Handle; 2016 uint16_t Val_Offset; 2017 uint8_t Attribute_Val_Length; 2018 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 7)/sizeof(uint8_t)]; 2019 } aci_gatt_write_long_char_value_cp0; 2020 2021 typedef PACKED(struct) 2022 { 2023 uint8_t Status; 2024 } aci_gatt_write_long_char_value_rp0; 2025 2026 typedef PACKED(struct) 2027 { 2028 uint16_t Connection_Handle; 2029 uint16_t Attr_Handle; 2030 uint16_t Val_Offset; 2031 uint8_t Attribute_Val_Length; 2032 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 7)/sizeof(uint8_t)]; 2033 } aci_gatt_write_char_reliable_cp0; 2034 2035 typedef PACKED(struct) 2036 { 2037 uint8_t Status; 2038 } aci_gatt_write_char_reliable_rp0; 2039 2040 typedef PACKED(struct) 2041 { 2042 uint16_t Connection_Handle; 2043 uint16_t Attr_Handle; 2044 uint16_t Val_Offset; 2045 uint8_t Attribute_Val_Length; 2046 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 7)/sizeof(uint8_t)]; 2047 } aci_gatt_write_long_char_desc_cp0; 2048 2049 typedef PACKED(struct) 2050 { 2051 uint8_t Status; 2052 } aci_gatt_write_long_char_desc_rp0; 2053 2054 typedef PACKED(struct) 2055 { 2056 uint16_t Connection_Handle; 2057 uint16_t Attr_Handle; 2058 uint16_t Val_Offset; 2059 } aci_gatt_read_long_char_desc_cp0; 2060 2061 typedef PACKED(struct) 2062 { 2063 uint8_t Status; 2064 } aci_gatt_read_long_char_desc_rp0; 2065 2066 typedef PACKED(struct) 2067 { 2068 uint16_t Connection_Handle; 2069 uint16_t Attr_Handle; 2070 uint8_t Attribute_Val_Length; 2071 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 5)/sizeof(uint8_t)]; 2072 } aci_gatt_write_char_desc_cp0; 2073 2074 typedef PACKED(struct) 2075 { 2076 uint8_t Status; 2077 } aci_gatt_write_char_desc_rp0; 2078 2079 typedef PACKED(struct) 2080 { 2081 uint16_t Connection_Handle; 2082 uint16_t Attr_Handle; 2083 } aci_gatt_read_char_desc_cp0; 2084 2085 typedef PACKED(struct) 2086 { 2087 uint8_t Status; 2088 } aci_gatt_read_char_desc_rp0; 2089 2090 typedef PACKED(struct) 2091 { 2092 uint16_t Connection_Handle; 2093 uint16_t Attr_Handle; 2094 uint8_t Attribute_Val_Length; 2095 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 5)/sizeof(uint8_t)]; 2096 } aci_gatt_write_without_resp_cp0; 2097 2098 typedef PACKED(struct) 2099 { 2100 uint8_t Status; 2101 } aci_gatt_write_without_resp_rp0; 2102 2103 typedef PACKED(struct) 2104 { 2105 uint16_t Connection_Handle; 2106 uint16_t Attr_Handle; 2107 uint8_t Attribute_Val_Length; 2108 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 5)/sizeof(uint8_t)]; 2109 } aci_gatt_signed_write_without_resp_cp0; 2110 2111 typedef PACKED(struct) 2112 { 2113 uint8_t Status; 2114 } aci_gatt_signed_write_without_resp_rp0; 2115 2116 typedef PACKED(struct) 2117 { 2118 uint16_t Connection_Handle; 2119 } aci_gatt_confirm_indication_cp0; 2120 2121 typedef PACKED(struct) 2122 { 2123 uint8_t Status; 2124 } aci_gatt_confirm_indication_rp0; 2125 2126 typedef PACKED(struct) 2127 { 2128 uint16_t Connection_Handle; 2129 uint16_t Attr_Handle; 2130 uint8_t Write_status; 2131 uint8_t Error_Code; 2132 uint8_t Attribute_Val_Length; 2133 uint8_t Attribute_Val[(BLE_CMD_MAX_PARAM_LEN - 7)/sizeof(uint8_t)]; 2134 } aci_gatt_write_resp_cp0; 2135 2136 typedef PACKED(struct) 2137 { 2138 uint8_t Status; 2139 } aci_gatt_write_resp_rp0; 2140 2141 typedef PACKED(struct) 2142 { 2143 uint16_t Connection_Handle; 2144 } aci_gatt_allow_read_cp0; 2145 2146 typedef PACKED(struct) 2147 { 2148 uint8_t Status; 2149 } aci_gatt_allow_read_rp0; 2150 2151 typedef PACKED(struct) 2152 { 2153 uint16_t Serv_Handle; 2154 uint16_t Attr_Handle; 2155 uint8_t Security_Permissions; 2156 } aci_gatt_set_security_permission_cp0; 2157 2158 typedef PACKED(struct) 2159 { 2160 uint8_t Status; 2161 } aci_gatt_set_security_permission_rp0; 2162 2163 typedef PACKED(struct) 2164 { 2165 uint16_t Serv_Handle; 2166 uint16_t Char_Handle; 2167 uint16_t Char_Desc_Handle; 2168 uint16_t Val_Offset; 2169 uint8_t Char_Desc_Value_Length; 2170 uint8_t Char_Desc_Value[(BLE_CMD_MAX_PARAM_LEN - 9)/sizeof(uint8_t)]; 2171 } aci_gatt_set_desc_value_cp0; 2172 2173 typedef PACKED(struct) 2174 { 2175 uint8_t Status; 2176 } aci_gatt_set_desc_value_rp0; 2177 2178 typedef PACKED(struct) 2179 { 2180 uint16_t Attr_Handle; 2181 uint16_t Offset; 2182 uint16_t Value_Length_Requested; 2183 } aci_gatt_read_handle_value_cp0; 2184 2185 typedef PACKED(struct) 2186 { 2187 uint8_t Status; 2188 uint16_t Length; 2189 uint16_t Value_Length; 2190 uint8_t Value[((BLE_EVT_MAX_PARAM_LEN - 3) - 5)/sizeof(uint8_t)]; 2191 } aci_gatt_read_handle_value_rp0; 2192 2193 typedef PACKED(struct) 2194 { 2195 uint16_t Conn_Handle_To_Notify; 2196 uint16_t Service_Handle; 2197 uint16_t Char_Handle; 2198 uint8_t Update_Type; 2199 uint16_t Char_Length; 2200 uint16_t Value_Offset; 2201 uint8_t Value_Length; 2202 uint8_t Value[(BLE_CMD_MAX_PARAM_LEN - 12)/sizeof(uint8_t)]; 2203 } aci_gatt_update_char_value_ext_cp0; 2204 2205 typedef PACKED(struct) 2206 { 2207 uint8_t Status; 2208 } aci_gatt_update_char_value_ext_rp0; 2209 2210 typedef PACKED(struct) 2211 { 2212 uint16_t Connection_Handle; 2213 uint8_t Error_Code; 2214 } aci_gatt_deny_read_cp0; 2215 2216 typedef PACKED(struct) 2217 { 2218 uint8_t Status; 2219 } aci_gatt_deny_read_rp0; 2220 2221 typedef PACKED(struct) 2222 { 2223 uint16_t Serv_Handle; 2224 uint16_t Attr_Handle; 2225 uint8_t Access_Permissions; 2226 } aci_gatt_set_access_permission_cp0; 2227 2228 typedef PACKED(struct) 2229 { 2230 uint8_t Status; 2231 } aci_gatt_set_access_permission_rp0; 2232 2233 typedef PACKED(struct) 2234 { 2235 uint16_t Connection_Handle; 2236 uint16_t Conn_Interval_Min; 2237 uint16_t Conn_Interval_Max; 2238 uint16_t Slave_latency; 2239 uint16_t Timeout_Multiplier; 2240 } aci_l2cap_connection_parameter_update_req_cp0; 2241 2242 typedef PACKED(struct) 2243 { 2244 uint8_t Status; 2245 } aci_l2cap_connection_parameter_update_req_rp0; 2246 2247 typedef PACKED(struct) 2248 { 2249 uint16_t Connection_Handle; 2250 uint16_t Conn_Interval_Min; 2251 uint16_t Conn_Interval_Max; 2252 uint16_t Slave_latency; 2253 uint16_t Timeout_Multiplier; 2254 uint16_t Minimum_CE_Length; 2255 uint16_t Maximum_CE_Length; 2256 uint8_t Identifier; 2257 uint8_t Accept; 2258 } aci_l2cap_connection_parameter_update_resp_cp0; 2259 2260 typedef PACKED(struct) 2261 { 2262 uint8_t Status; 2263 } aci_l2cap_connection_parameter_update_resp_rp0; 2264 2265 typedef PACKED(struct) 2266 { 2267 uint8_t Status; 2268 uint16_t Connection_Handle; 2269 uint8_t Reason; 2270 } hci_disconnection_complete_event_rp0; 2271 2272 typedef PACKED(struct) 2273 { 2274 uint8_t Status; 2275 uint16_t Connection_Handle; 2276 uint8_t Encryption_Enabled; 2277 } hci_encryption_change_event_rp0; 2278 2279 typedef PACKED(struct) 2280 { 2281 uint8_t Status; 2282 uint16_t Connection_Handle; 2283 uint8_t Version; 2284 uint16_t Manufacturer_Name; 2285 uint16_t Subversion; 2286 } hci_read_remote_version_information_complete_event_rp0; 2287 2288 typedef PACKED(struct) 2289 { 2290 uint8_t Hardware_Code; 2291 } hci_hardware_error_event_rp0; 2292 2293 typedef PACKED(struct) 2294 { 2295 uint8_t Number_of_Handles; 2296 Handle_Packets_Pair_Entry_t Handle_Packets_Pair_Entry[(BLE_EVT_MAX_PARAM_LEN - 1)/sizeof(Handle_Packets_Pair_Entry_t)]; 2297 } hci_number_of_completed_packets_event_rp0; 2298 2299 typedef PACKED(struct) 2300 { 2301 uint8_t Link_Type; 2302 } hci_data_buffer_overflow_event_rp0; 2303 2304 typedef PACKED(struct) 2305 { 2306 uint8_t Status; 2307 uint16_t Connection_Handle; 2308 } hci_encryption_key_refresh_complete_event_rp0; 2309 2310 typedef PACKED(struct) 2311 { 2312 uint8_t Last_State; 2313 uint8_t Next_State; 2314 uint32_t Next_State_SysTime; 2315 } aci_hal_end_of_radio_activity_event_rp0; 2316 2317 typedef PACKED(struct) 2318 { 2319 uint8_t RSSI; 2320 uint8_t Peer_Address_Type; 2321 uint8_t Peer_Address[6]; 2322 } aci_hal_scan_req_report_event_rp0; 2323 2324 typedef PACKED(struct) 2325 { 2326 uint8_t FW_Error_Type; 2327 uint8_t Data_Length; 2328 uint8_t Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 2)/sizeof(uint8_t)]; 2329 } aci_hal_fw_error_event_rp0; 2330 2331 typedef PACKED(struct) 2332 { 2333 uint16_t Connection_Handle; 2334 uint8_t Status; 2335 uint8_t Reason; 2336 } aci_gap_pairing_complete_event_rp0; 2337 2338 typedef PACKED(struct) 2339 { 2340 uint16_t Connection_Handle; 2341 } aci_gap_pass_key_req_event_rp0; 2342 2343 typedef PACKED(struct) 2344 { 2345 uint16_t Connection_Handle; 2346 } aci_gap_authorization_req_event_rp0; 2347 2348 typedef PACKED(struct) 2349 { 2350 uint8_t Procedure_Code; 2351 uint8_t Status; 2352 uint8_t Data_Length; 2353 uint8_t Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 3)/sizeof(uint8_t)]; 2354 } aci_gap_proc_complete_event_rp0; 2355 2356 typedef PACKED(struct) 2357 { 2358 uint16_t Connection_Handle; 2359 } aci_gap_addr_not_resolved_event_rp0; 2360 2361 typedef PACKED(struct) 2362 { 2363 uint16_t Connection_Handle; 2364 uint32_t Numeric_Value; 2365 } aci_gap_numeric_comparison_value_event_rp0; 2366 2367 typedef PACKED(struct) 2368 { 2369 uint16_t Connection_Handle; 2370 uint8_t Notification_Type; 2371 } aci_gap_keypress_notification_event_rp0; 2372 2373 typedef PACKED(struct) 2374 { 2375 uint16_t Connection_Handle; 2376 uint16_t Result; 2377 } aci_l2cap_connection_update_resp_event_rp0; 2378 2379 typedef PACKED(struct) 2380 { 2381 uint16_t Connection_Handle; 2382 uint8_t Data_Length; 2383 uint8_t Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 3)/sizeof(uint8_t)]; 2384 } aci_l2cap_proc_timeout_event_rp0; 2385 2386 typedef PACKED(struct) 2387 { 2388 uint16_t Connection_Handle; 2389 uint8_t Identifier; 2390 uint16_t L2CAP_Length; 2391 uint16_t Interval_Min; 2392 uint16_t Interval_Max; 2393 uint16_t Slave_Latency; 2394 uint16_t Timeout_Multiplier; 2395 } aci_l2cap_connection_update_req_event_rp0; 2396 2397 typedef PACKED(struct) 2398 { 2399 uint16_t Connection_Handle; 2400 uint8_t Identifier; 2401 uint16_t Reason; 2402 uint8_t Data_Length; 2403 uint8_t Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 6)/sizeof(uint8_t)]; 2404 } aci_l2cap_command_reject_event_rp0; 2405 2406 typedef PACKED(struct) 2407 { 2408 uint16_t Connection_Handle; 2409 uint16_t Attr_Handle; 2410 uint16_t Offset; 2411 uint16_t Attr_Data_Length; 2412 uint8_t Attr_Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 8)/sizeof(uint8_t)]; 2413 } aci_gatt_attribute_modified_event_rp0; 2414 2415 typedef PACKED(struct) 2416 { 2417 uint16_t Connection_Handle; 2418 } aci_gatt_proc_timeout_event_rp0; 2419 2420 typedef PACKED(struct) 2421 { 2422 uint16_t Connection_Handle; 2423 uint16_t Server_RX_MTU; 2424 } aci_att_exchange_mtu_resp_event_rp0; 2425 2426 typedef PACKED(struct) 2427 { 2428 uint16_t Connection_Handle; 2429 uint8_t Format; 2430 uint8_t Event_Data_Length; 2431 uint8_t Handle_UUID_Pair[((BLE_EVT_MAX_PARAM_LEN - 2) - 4)/sizeof(uint8_t)]; 2432 } aci_att_find_info_resp_event_rp0; 2433 2434 typedef PACKED(struct) 2435 { 2436 uint16_t Connection_Handle; 2437 uint8_t Num_of_Handle_Pair; 2438 Attribute_Group_Handle_Pair_t Attribute_Group_Handle_Pair[((BLE_EVT_MAX_PARAM_LEN - 2) - 3)/sizeof(Attribute_Group_Handle_Pair_t)]; 2439 } aci_att_find_by_type_value_resp_event_rp0; 2440 2441 typedef PACKED(struct) 2442 { 2443 uint16_t Connection_Handle; 2444 uint8_t Handle_Value_Pair_Length; 2445 uint8_t Data_Length; 2446 uint8_t Handle_Value_Pair_Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 4)/sizeof(uint8_t)]; 2447 } aci_att_read_by_type_resp_event_rp0; 2448 2449 typedef PACKED(struct) 2450 { 2451 uint16_t Connection_Handle; 2452 uint8_t Event_Data_Length; 2453 uint8_t Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 3)/sizeof(uint8_t)]; 2454 } aci_att_read_resp_event_rp0; 2455 2456 typedef PACKED(struct) 2457 { 2458 uint16_t Connection_Handle; 2459 uint8_t Event_Data_Length; 2460 uint8_t Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 3)/sizeof(uint8_t)]; 2461 } aci_att_read_blob_resp_event_rp0; 2462 2463 typedef PACKED(struct) 2464 { 2465 uint16_t Connection_Handle; 2466 uint8_t Event_Data_Length; 2467 uint8_t Set_Of_Values[((BLE_EVT_MAX_PARAM_LEN - 2) - 3)/sizeof(uint8_t)]; 2468 } aci_att_read_multiple_resp_event_rp0; 2469 2470 typedef PACKED(struct) 2471 { 2472 uint16_t Connection_Handle; 2473 uint8_t Attribute_Data_Length; 2474 uint8_t Data_Length; 2475 uint8_t Attribute_Data_List[((BLE_EVT_MAX_PARAM_LEN - 2) - 4)/sizeof(uint8_t)]; 2476 } aci_att_read_by_group_type_resp_event_rp0; 2477 2478 typedef PACKED(struct) 2479 { 2480 uint16_t Connection_Handle; 2481 uint16_t Attribute_Handle; 2482 uint16_t Offset; 2483 uint8_t Part_Attribute_Value_Length; 2484 uint8_t Part_Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 7)/sizeof(uint8_t)]; 2485 } aci_att_prepare_write_resp_event_rp0; 2486 2487 typedef PACKED(struct) 2488 { 2489 uint16_t Connection_Handle; 2490 } aci_att_exec_write_resp_event_rp0; 2491 2492 typedef PACKED(struct) 2493 { 2494 uint16_t Connection_Handle; 2495 uint16_t Attribute_Handle; 2496 uint8_t Attribute_Value_Length; 2497 uint8_t Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 5)/sizeof(uint8_t)]; 2498 } aci_gatt_indication_event_rp0; 2499 2500 typedef PACKED(struct) 2501 { 2502 uint16_t Connection_Handle; 2503 uint16_t Attribute_Handle; 2504 uint8_t Attribute_Value_Length; 2505 uint8_t Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 5)/sizeof(uint8_t)]; 2506 } aci_gatt_notification_event_rp0; 2507 2508 typedef PACKED(struct) 2509 { 2510 uint16_t Connection_Handle; 2511 uint8_t Error_Code; 2512 } aci_gatt_proc_complete_event_rp0; 2513 2514 typedef PACKED(struct) 2515 { 2516 uint16_t Connection_Handle; 2517 uint8_t Req_Opcode; 2518 uint16_t Attribute_Handle; 2519 uint8_t Error_Code; 2520 } aci_gatt_error_resp_event_rp0; 2521 2522 typedef PACKED(struct) 2523 { 2524 uint16_t Connection_Handle; 2525 uint16_t Attribute_Handle; 2526 uint8_t Attribute_Value_Length; 2527 uint8_t Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 5)/sizeof(uint8_t)]; 2528 } aci_gatt_disc_read_char_by_uuid_resp_event_rp0; 2529 2530 typedef PACKED(struct) 2531 { 2532 uint16_t Connection_Handle; 2533 uint16_t Attribute_Handle; 2534 uint8_t Data_Length; 2535 uint8_t Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 5)/sizeof(uint8_t)]; 2536 } aci_gatt_write_permit_req_event_rp0; 2537 2538 typedef PACKED(struct) 2539 { 2540 uint16_t Connection_Handle; 2541 uint16_t Attribute_Handle; 2542 uint16_t Offset; 2543 } aci_gatt_read_permit_req_event_rp0; 2544 2545 typedef PACKED(struct) 2546 { 2547 uint16_t Connection_Handle; 2548 uint8_t Number_of_Handles; 2549 Handle_Item_t Handle_Item[((BLE_EVT_MAX_PARAM_LEN - 2) - 3)/sizeof(Handle_Item_t)]; 2550 } aci_gatt_read_multi_permit_req_event_rp0; 2551 2552 typedef PACKED(struct) 2553 { 2554 uint16_t Connection_Handle; 2555 uint16_t Available_Buffers; 2556 } aci_gatt_tx_pool_available_event_rp0; 2557 2558 typedef PACKED(struct) 2559 { 2560 uint16_t Connection_Handle; 2561 } aci_gatt_server_confirmation_event_rp0; 2562 2563 typedef PACKED(struct) 2564 { 2565 uint16_t Connection_Handle; 2566 uint16_t Attribute_Handle; 2567 uint16_t Offset; 2568 uint8_t Data_Length; 2569 uint8_t Data[((BLE_EVT_MAX_PARAM_LEN - 2) - 7)/sizeof(uint8_t)]; 2570 } aci_gatt_prepare_write_permit_req_event_rp0; 2571 2572 typedef PACKED(struct) 2573 { 2574 uint16_t Connection_Handle; 2575 uint16_t Attribute_Handle; 2576 uint16_t Offset; 2577 uint16_t Attribute_Value_Length; 2578 uint8_t Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 8)/sizeof(uint8_t)]; 2579 } aci_gatt_indication_ext_event_rp0; 2580 2581 typedef PACKED(struct) 2582 { 2583 uint16_t Connection_Handle; 2584 uint16_t Attribute_Handle; 2585 uint16_t Offset; 2586 uint16_t Attribute_Value_Length; 2587 uint8_t Attribute_Value[((BLE_EVT_MAX_PARAM_LEN - 2) - 8)/sizeof(uint8_t)]; 2588 } aci_gatt_notification_ext_event_rp0; 2589 2590 typedef PACKED(struct) 2591 { 2592 uint8_t Status; 2593 uint16_t Connection_Handle; 2594 uint8_t Role; 2595 uint8_t Peer_Address_Type; 2596 uint8_t Peer_Address[6]; 2597 uint16_t Conn_Interval; 2598 uint16_t Conn_Latency; 2599 uint16_t Supervision_Timeout; 2600 uint8_t Master_Clock_Accuracy; 2601 } hci_le_connection_complete_event_rp0; 2602 2603 typedef PACKED(struct) 2604 { 2605 uint8_t Num_Reports; 2606 Advertising_Report_t Advertising_Report[((BLE_EVT_MAX_PARAM_LEN - 1) - 1)/sizeof(Advertising_Report_t)]; 2607 } hci_le_advertising_report_event_rp0; 2608 2609 typedef PACKED(struct) 2610 { 2611 uint8_t Status; 2612 uint16_t Connection_Handle; 2613 uint16_t Conn_Interval; 2614 uint16_t Conn_Latency; 2615 uint16_t Supervision_Timeout; 2616 } hci_le_connection_update_complete_event_rp0; 2617 2618 typedef PACKED(struct) 2619 { 2620 uint8_t Status; 2621 uint16_t Connection_Handle; 2622 uint8_t LE_Features[8]; 2623 } hci_le_read_remote_used_features_complete_event_rp0; 2624 2625 typedef PACKED(struct) 2626 { 2627 uint16_t Connection_Handle; 2628 uint8_t Random_Number[8]; 2629 uint16_t Encrypted_Diversifier; 2630 } hci_le_long_term_key_request_event_rp0; 2631 2632 typedef PACKED(struct) 2633 { 2634 uint16_t Connection_Handle; 2635 uint16_t MaxTxOctets; 2636 uint16_t MaxTxTime; 2637 uint16_t MaxRxOctets; 2638 uint16_t MaxRxTime; 2639 } hci_le_data_length_change_event_rp0; 2640 2641 typedef PACKED(struct) 2642 { 2643 uint8_t Status; 2644 uint8_t Local_P256_Public_Key[64]; 2645 } hci_le_read_local_p256_public_key_complete_event_rp0; 2646 2647 typedef PACKED(struct) 2648 { 2649 uint8_t Status; 2650 uint8_t DHKey[32]; 2651 } hci_le_generate_dhkey_complete_event_rp0; 2652 2653 typedef PACKED(struct) 2654 { 2655 uint8_t Status; 2656 uint16_t Connection_Handle; 2657 uint8_t Role; 2658 uint8_t Peer_Address_Type; 2659 uint8_t Peer_Address[6]; 2660 uint8_t Local_Resolvable_Private_Address[6]; 2661 uint8_t Peer_Resolvable_Private_Address[6]; 2662 uint16_t Conn_Interval; 2663 uint16_t Conn_Latency; 2664 uint16_t Supervision_Timeout; 2665 uint8_t Master_Clock_Accuracy; 2666 } hci_le_enhanced_connection_complete_event_rp0; 2667 2668 typedef PACKED(struct) 2669 { 2670 uint8_t Num_Reports; 2671 Direct_Advertising_Report_t Direct_Advertising_Report[((BLE_EVT_MAX_PARAM_LEN - 1) - 1)/sizeof(Direct_Advertising_Report_t)]; 2672 } hci_le_direct_advertising_report_event_rp0; 2673 2674 typedef PACKED(struct) 2675 { 2676 uint8_t Status; 2677 uint16_t Connection_Handle; 2678 uint8_t TX_PHY; 2679 uint8_t RX_PHY; 2680 } hci_le_phy_update_complete_event_rp0; 2681 2682 2683 #endif /* ! BLE_TYPES_H__ */ 2684