1941b3855SMatthias Ringwald /* 2941b3855SMatthias Ringwald * Copyright (C) 2015 BlueKitchen GmbH 3941b3855SMatthias Ringwald * 4941b3855SMatthias Ringwald * Redistribution and use in source and binary forms, with or without 5941b3855SMatthias Ringwald * modification, are permitted provided that the following conditions 6941b3855SMatthias Ringwald * are met: 7941b3855SMatthias Ringwald * 8941b3855SMatthias Ringwald * 1. Redistributions of source code must retain the above copyright 9941b3855SMatthias Ringwald * notice, this list of conditions and the following disclaimer. 10941b3855SMatthias Ringwald * 2. Redistributions in binary form must reproduce the above copyright 11941b3855SMatthias Ringwald * notice, this list of conditions and the following disclaimer in the 12941b3855SMatthias Ringwald * documentation and/or other materials provided with the distribution. 13941b3855SMatthias Ringwald * 3. Neither the name of the copyright holders nor the names of 14941b3855SMatthias Ringwald * contributors may be used to endorse or promote products derived 15941b3855SMatthias Ringwald * from this software without specific prior written permission. 16941b3855SMatthias Ringwald * 4. Any redistribution, use, or modification is done solely for 17941b3855SMatthias Ringwald * personal benefit and not for any commercial purpose or for 18941b3855SMatthias Ringwald * monetary gain. 19941b3855SMatthias Ringwald * 20941b3855SMatthias Ringwald * THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS 21941b3855SMatthias Ringwald * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22941b3855SMatthias Ringwald * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 23941b3855SMatthias Ringwald * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS 24941b3855SMatthias Ringwald * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 25941b3855SMatthias Ringwald * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 26941b3855SMatthias Ringwald * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 27941b3855SMatthias Ringwald * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 28941b3855SMatthias Ringwald * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 29941b3855SMatthias Ringwald * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 30941b3855SMatthias Ringwald * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31941b3855SMatthias Ringwald * SUCH DAMAGE. 32941b3855SMatthias Ringwald * 33941b3855SMatthias Ringwald * Please inquire about commercial licensing options at 34941b3855SMatthias Ringwald * [email protected] 35941b3855SMatthias Ringwald * 36941b3855SMatthias Ringwald */ 37941b3855SMatthias Ringwald 38941b3855SMatthias Ringwald /* 39941b3855SMatthias Ringwald * btstack-defines.h 40941b3855SMatthias Ringwald * 41941b3855SMatthias Ringwald * BTstack definitions, events, and error codes */ 42941b3855SMatthias Ringwald 4380e33422SMatthias Ringwald #ifndef BTSTACK_DEFINES_H 4480e33422SMatthias Ringwald #define BTSTACK_DEFINES_H 45941b3855SMatthias Ringwald 468974fcd6SMatthias Ringwald #include <stdint.h> 478974fcd6SMatthias Ringwald #include "btstack_linked_list.h" 488974fcd6SMatthias Ringwald 49f3963406SMatthias Ringwald 50f3963406SMatthias Ringwald // UNUSED macro 516306068fSMatthias Ringwald #ifndef UNUSED 52f3963406SMatthias Ringwald #define UNUSED(x) (void)(sizeof(x)) 536306068fSMatthias Ringwald #endif 54f3963406SMatthias Ringwald 55*df4fb5acSMatthias Ringwald // 56*df4fb5acSMatthias Ringwald // Check for C99 57*df4fb5acSMatthias Ringwald // see: https://sourceforge.net/p/predef/wiki/Standards/ 58*df4fb5acSMatthias Ringwald // 59*df4fb5acSMatthias Ringwald #if defined(__STDC__) 60*df4fb5acSMatthias Ringwald # if defined(__STDC_VERSION__) 61*df4fb5acSMatthias Ringwald # if (__STDC_VERSION__ >= 199901L) 62*df4fb5acSMatthias Ringwald # define PREDEF_STANDARD_C_1999 63*df4fb5acSMatthias Ringwald # endif 64*df4fb5acSMatthias Ringwald # endif 65*df4fb5acSMatthias Ringwald #endif 66*df4fb5acSMatthias Ringwald 67*df4fb5acSMatthias Ringwald // define boolean type - required for MISRA-C 2012 Essential Type System 68*df4fb5acSMatthias Ringwald #ifdef PREDEF_STANDARD_C_1999 69*df4fb5acSMatthias Ringwald // use <stdbool.h> if C99 or higher 70*df4fb5acSMatthias Ringwald #include <stdbool.h> 71*df4fb5acSMatthias Ringwald #else 72*df4fb5acSMatthias Ringwald // backport for pre-c99 compilers 73*df4fb5acSMatthias Ringwald #define bool unsigned char 74*df4fb5acSMatthias Ringwald #define false 0 75*df4fb5acSMatthias Ringwald #define true 1 76*df4fb5acSMatthias Ringwald #endif 77*df4fb5acSMatthias Ringwald 788974fcd6SMatthias Ringwald // TYPES 798974fcd6SMatthias Ringwald 808974fcd6SMatthias Ringwald // packet handler 818974fcd6SMatthias Ringwald typedef void (*btstack_packet_handler_t) (uint8_t packet_type, uint16_t channel, uint8_t *packet, uint16_t size); 828974fcd6SMatthias Ringwald 838974fcd6SMatthias Ringwald // packet callback supporting multiple registrations 848974fcd6SMatthias Ringwald typedef struct { 858974fcd6SMatthias Ringwald btstack_linked_item_t item; 868974fcd6SMatthias Ringwald btstack_packet_handler_t callback; 878974fcd6SMatthias Ringwald } btstack_packet_callback_registration_t; 888974fcd6SMatthias Ringwald 89bb38f057SMatthias Ringwald // context callback supporting multiple registrations 90bb38f057SMatthias Ringwald typedef struct { 91bb38f057SMatthias Ringwald btstack_linked_item_t * item; 92bb38f057SMatthias Ringwald void (*callback)(void * context); 93bb38f057SMatthias Ringwald void * context; 94bb38f057SMatthias Ringwald } btstack_context_callback_registration_t; 95bb38f057SMatthias Ringwald 96f7a05cdaSMatthias Ringwald /** 978974fcd6SMatthias Ringwald * @brief 128 bit key used with AES128 in Security Manager 98f7a05cdaSMatthias Ringwald */ 998974fcd6SMatthias Ringwald typedef uint8_t sm_key_t[16]; 100f7a05cdaSMatthias Ringwald 101941b3855SMatthias Ringwald // DEFINES 102941b3855SMatthias Ringwald 1037149bde5SMatthias Ringwald // hci con handles (12 bit): 0x0000..0x0fff 1047149bde5SMatthias Ringwald #define HCI_CON_HANDLE_INVALID 0xffff 1057149bde5SMatthias Ringwald 1067149bde5SMatthias Ringwald 107941b3855SMatthias Ringwald #define DAEMON_EVENT_PACKET 0x05 108941b3855SMatthias Ringwald 109941b3855SMatthias Ringwald // L2CAP data 110941b3855SMatthias Ringwald #define L2CAP_DATA_PACKET 0x06 111941b3855SMatthias Ringwald 112941b3855SMatthias Ringwald // RFCOMM data 113941b3855SMatthias Ringwald #define RFCOMM_DATA_PACKET 0x07 114941b3855SMatthias Ringwald 115941b3855SMatthias Ringwald // Attribute protocol data 116941b3855SMatthias Ringwald #define ATT_DATA_PACKET 0x08 117941b3855SMatthias Ringwald 118941b3855SMatthias Ringwald // Security Manager protocol data 119941b3855SMatthias Ringwald #define SM_DATA_PACKET 0x09 120941b3855SMatthias Ringwald 121f1b34e8dSMatthias Ringwald // SDP query result - only used by daemon 122941b3855SMatthias Ringwald // format: type (8), record_id (16), attribute_id (16), attribute_length (16), attribute_value (max 1k) 123941b3855SMatthias Ringwald #define SDP_CLIENT_PACKET 0x0a 124941b3855SMatthias Ringwald 125941b3855SMatthias Ringwald // BNEP data 126941b3855SMatthias Ringwald #define BNEP_DATA_PACKET 0x0b 127941b3855SMatthias Ringwald 128941b3855SMatthias Ringwald // Unicast Connectionless Data 129941b3855SMatthias Ringwald #define UCD_DATA_PACKET 0x0c 130941b3855SMatthias Ringwald 131f1b34e8dSMatthias Ringwald // GOEP data 132f1b34e8dSMatthias Ringwald #define GOEP_DATA_PACKET 0x0d 133f1b34e8dSMatthias Ringwald 134f1b34e8dSMatthias Ringwald // PBAP data 135f1b34e8dSMatthias Ringwald #define PBAP_DATA_PACKET 0x0e 136f1b34e8dSMatthias Ringwald 137e30788a3SMilanka Ringwald // AVRCP browsing data 138e30788a3SMilanka Ringwald #define AVRCP_BROWSING_DATA_PACKET 0x0f 139e30788a3SMilanka Ringwald 1403eb02ce6SMilanka Ringwald // MAP data 1413eb02ce6SMilanka Ringwald #define MAP_DATA_PACKET 0x10 1423eb02ce6SMilanka Ringwald 1431fbe4564SMatthias Ringwald // Mesh Provisioning PDU 1441fbe4564SMatthias Ringwald #define PROVISIONING_DATA_PACKET 0x11 145e30788a3SMilanka Ringwald 146bf9b4b3bSMilanka Ringwald // Mesh Proxy PDU 147bf9b4b3bSMilanka Ringwald #define MESH_PROXY_DATA_PACKET 0x11 14814fe90b1SMatthias Ringwald 14914fe90b1SMatthias Ringwald // Mesh Network PDU 150bf9b4b3bSMilanka Ringwald #define MESH_NETWORK_PACKET 0x12 151bf9b4b3bSMilanka Ringwald 152bf9b4b3bSMilanka Ringwald // Mesh Network PDU 153bf9b4b3bSMilanka Ringwald #define MESH_BEACON_PACKET 0x13 15414fe90b1SMatthias Ringwald 155941b3855SMatthias Ringwald // debug log messages 156941b3855SMatthias Ringwald #define LOG_MESSAGE_PACKET 0xfc 157941b3855SMatthias Ringwald 158941b3855SMatthias Ringwald 15962c64df1SMatthias Ringwald // DAEMON COMMANDS 160b3f90e25SMatthias Ringwald 161b3f90e25SMatthias Ringwald #define OGF_BTSTACK 0x3d 162b3f90e25SMatthias Ringwald 163b3f90e25SMatthias Ringwald // cmds for BTstack 164b3f90e25SMatthias Ringwald // get state: @returns HCI_STATE 165b3f90e25SMatthias Ringwald #define BTSTACK_GET_STATE 0x01 166b3f90e25SMatthias Ringwald 167045013feSMatthias Ringwald // set power mode: param HCI_POWER_MODE 168b3f90e25SMatthias Ringwald #define BTSTACK_SET_POWER_MODE 0x02 169b3f90e25SMatthias Ringwald 170045013feSMatthias Ringwald // set capture mode: param on 171b3f90e25SMatthias Ringwald #define BTSTACK_SET_ACL_CAPTURE_MODE 0x03 172b3f90e25SMatthias Ringwald 173b3f90e25SMatthias Ringwald // get BTstack version 174b3f90e25SMatthias Ringwald #define BTSTACK_GET_VERSION 0x04 175b3f90e25SMatthias Ringwald 176b3f90e25SMatthias Ringwald // get system Bluetooth state 177b3f90e25SMatthias Ringwald #define BTSTACK_GET_SYSTEM_BLUETOOTH_ENABLED 0x05 178b3f90e25SMatthias Ringwald 179b3f90e25SMatthias Ringwald // set system Bluetooth state 180b3f90e25SMatthias Ringwald #define BTSTACK_SET_SYSTEM_BLUETOOTH_ENABLED 0x06 181b3f90e25SMatthias Ringwald 182b3f90e25SMatthias Ringwald // enable inquiry scan for this client 183b3f90e25SMatthias Ringwald #define BTSTACK_SET_DISCOVERABLE 0x07 184b3f90e25SMatthias Ringwald 185b3f90e25SMatthias Ringwald // set global Bluetooth state 186b3f90e25SMatthias Ringwald #define BTSTACK_SET_BLUETOOTH_ENABLED 0x08 187b3f90e25SMatthias Ringwald 188045013feSMatthias Ringwald // create l2cap channel: param bd_addr(48), psm (16) 189b3f90e25SMatthias Ringwald #define L2CAP_CREATE_CHANNEL 0x20 190b3f90e25SMatthias Ringwald 191045013feSMatthias Ringwald // disconnect l2cap disconnect, param channel(16), reason(8) 192b3f90e25SMatthias Ringwald #define L2CAP_DISCONNECT 0x21 193b3f90e25SMatthias Ringwald 194045013feSMatthias Ringwald // register l2cap service: param psm(16), mtu (16) 195b3f90e25SMatthias Ringwald #define L2CAP_REGISTER_SERVICE 0x22 196b3f90e25SMatthias Ringwald 197045013feSMatthias Ringwald // unregister l2cap disconnect, param psm(16) 198b3f90e25SMatthias Ringwald #define L2CAP_UNREGISTER_SERVICE 0x23 199b3f90e25SMatthias Ringwald 200045013feSMatthias Ringwald // accept connection param bd_addr(48), dest cid (16) 201b3f90e25SMatthias Ringwald #define L2CAP_ACCEPT_CONNECTION 0x24 202b3f90e25SMatthias Ringwald 203045013feSMatthias Ringwald // decline l2cap disconnect,param bd_addr(48), dest cid (16), reason(8) 204b3f90e25SMatthias Ringwald #define L2CAP_DECLINE_CONNECTION 0x25 205b3f90e25SMatthias Ringwald 206045013feSMatthias Ringwald // create l2cap channel: param bd_addr(48), psm (16), mtu (16) 207b3f90e25SMatthias Ringwald #define L2CAP_CREATE_CHANNEL_MTU 0x26 208b3f90e25SMatthias Ringwald 209b3f90e25SMatthias Ringwald // register SDP Service Record: service record (size) 210b3f90e25SMatthias Ringwald #define SDP_REGISTER_SERVICE_RECORD 0x30 211b3f90e25SMatthias Ringwald 212b3f90e25SMatthias Ringwald // unregister SDP Service Record 213b3f90e25SMatthias Ringwald #define SDP_UNREGISTER_SERVICE_RECORD 0x31 214b3f90e25SMatthias Ringwald 215b3f90e25SMatthias Ringwald // Get remote RFCOMM services 216b3f90e25SMatthias Ringwald #define SDP_CLIENT_QUERY_RFCOMM_SERVICES 0x32 217b3f90e25SMatthias Ringwald 218b3f90e25SMatthias Ringwald // Get remote SDP services 219b3f90e25SMatthias Ringwald #define SDP_CLIENT_QUERY_SERVICES 0x33 220b3f90e25SMatthias Ringwald 221b3f90e25SMatthias Ringwald // RFCOMM "HCI" Commands 222b3f90e25SMatthias Ringwald #define RFCOMM_CREATE_CHANNEL 0x40 223b3f90e25SMatthias Ringwald #define RFCOMM_DISCONNECT 0x41 224b3f90e25SMatthias Ringwald #define RFCOMM_REGISTER_SERVICE 0x42 225b3f90e25SMatthias Ringwald #define RFCOMM_UNREGISTER_SERVICE 0x43 226b3f90e25SMatthias Ringwald #define RFCOMM_ACCEPT_CONNECTION 0x44 227b3f90e25SMatthias Ringwald #define RFCOMM_DECLINE_CONNECTION 0x45 228b3f90e25SMatthias Ringwald #define RFCOMM_PERSISTENT_CHANNEL 0x46 229b3f90e25SMatthias Ringwald #define RFCOMM_CREATE_CHANNEL_WITH_CREDITS 0x47 230b3f90e25SMatthias Ringwald #define RFCOMM_REGISTER_SERVICE_WITH_CREDITS 0x48 231b3f90e25SMatthias Ringwald #define RFCOMM_GRANT_CREDITS 0x49 232b3f90e25SMatthias Ringwald 233b3f90e25SMatthias Ringwald // GAP Classic 0x50 234b3f90e25SMatthias Ringwald #define GAP_DISCONNECT 0x50 235b3f90e25SMatthias Ringwald 236b3f90e25SMatthias Ringwald // GAP LE 0x60 237b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_START 0x60 238b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_STOP 0x61 239b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT 0x62 240b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT_CANCEL 0x63 241b3f90e25SMatthias Ringwald #define GAP_LE_SET_SCAN_PARAMETERS 0x64 242b3f90e25SMatthias Ringwald 243b3f90e25SMatthias Ringwald // GATT (Client) 0x70 244b3f90e25SMatthias Ringwald #define GATT_DISCOVER_ALL_PRIMARY_SERVICES 0x70 245b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID16 0x71 246b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID128 0x72 247b3f90e25SMatthias Ringwald #define GATT_FIND_INCLUDED_SERVICES_FOR_SERVICE 0x73 248b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE 0x74 249b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE_BY_UUID128 0x75 250b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTIC_DESCRIPTORS 0x76 251b3f90e25SMatthias Ringwald #define GATT_READ_VALUE_OF_CHARACTERISTIC 0x77 252b3f90e25SMatthias Ringwald #define GATT_READ_LONG_VALUE_OF_CHARACTERISTIC 0x78 253b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC_WITHOUT_RESPONSE 0x79 254b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC 0x7A 255b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_VALUE_OF_CHARACTERISTIC 0x7B 256b3f90e25SMatthias Ringwald #define GATT_RELIABLE_WRITE_LONG_VALUE_OF_CHARACTERISTIC 0x7C 257b3f90e25SMatthias Ringwald #define GATT_READ_CHARACTERISTIC_DESCRIPTOR 0X7D 258b3f90e25SMatthias Ringwald #define GATT_READ_LONG_CHARACTERISTIC_DESCRIPTOR 0X7E 259b3f90e25SMatthias Ringwald #define GATT_WRITE_CHARACTERISTIC_DESCRIPTOR 0X7F 260b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_CHARACTERISTIC_DESCRIPTOR 0X80 261b3f90e25SMatthias Ringwald #define GATT_WRITE_CLIENT_CHARACTERISTIC_CONFIGURATION 0X81 262b3f90e25SMatthias Ringwald #define GATT_GET_MTU 0x82 263b3f90e25SMatthias Ringwald 2641edc4fc7SMatthias Ringwald // SM 0x90 2651edc4fc7SMatthias Ringwald #define SM_SET_AUTHENTICATION_REQUIREMENTS 0x90 2661edc4fc7SMatthias Ringwald #define SM_SET_IO_CAPABILITIES 0x92 2671edc4fc7SMatthias Ringwald #define SM_BONDING_DECLINE 0x93 2681edc4fc7SMatthias Ringwald #define SM_JUST_WORKS_CONFIRM 0x94 2691edc4fc7SMatthias Ringwald #define SM_NUMERIC_COMPARISON_CONFIRM 0x95 2701edc4fc7SMatthias Ringwald #define SM_PASSKEY_INPUT 0x96 2711edc4fc7SMatthias Ringwald 272eb6072adSMatthias Ringwald // ATT 273eb6072adSMatthias Ringwald 274eb6072adSMatthias Ringwald // .. 275eb6072adSMatthias Ringwald // Internal properties reuse some GATT Characteristic Properties fields 276fd1be25dSMatthias Ringwald #define ATT_DB_VERSION 0x01 27762c64df1SMatthias Ringwald 278941b3855SMatthias Ringwald // EVENTS 279941b3855SMatthias Ringwald 280ff3ef268SMilanka Ringwald // Events from host controller to host 281ff3ef268SMilanka Ringwald 282ff3ef268SMilanka Ringwald /** 283ff3ef268SMilanka Ringwald * @format 1 284ff3ef268SMilanka Ringwald * @param status 285ff3ef268SMilanka Ringwald */ 286ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_COMPLETE 0x01 287ff3ef268SMilanka Ringwald 288ff3ef268SMilanka Ringwald /** 289ff3ef268SMilanka Ringwald * @format 1B11132 290ff3ef268SMilanka Ringwald * @param num_responses 291ff3ef268SMilanka Ringwald * @param bd_addr 292ff3ef268SMilanka Ringwald * @param page_scan_repetition_mode 293ff3ef268SMilanka Ringwald * @param reserved1 294ff3ef268SMilanka Ringwald * @param reserved2 295ff3ef268SMilanka Ringwald * @param class_of_device 296ff3ef268SMilanka Ringwald * @param clock_offset 297ff3ef268SMilanka Ringwald */ 298ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT 0x02 299ff3ef268SMilanka Ringwald 300ff3ef268SMilanka Ringwald /** 301ff3ef268SMilanka Ringwald * @format 12B11 302ff3ef268SMilanka Ringwald * @param status 303ff3ef268SMilanka Ringwald * @param connection_handle 304ff3ef268SMilanka Ringwald * @param bd_addr 305ff3ef268SMilanka Ringwald * @param link_type 306ff3ef268SMilanka Ringwald * @param encryption_enabled 307ff3ef268SMilanka Ringwald */ 308ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_COMPLETE 0x03 309ff3ef268SMilanka Ringwald /** 310ff3ef268SMilanka Ringwald * @format B31 311ff3ef268SMilanka Ringwald * @param bd_addr 312ff3ef268SMilanka Ringwald * @param class_of_device 313ff3ef268SMilanka Ringwald * @param link_type 314ff3ef268SMilanka Ringwald */ 315ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_REQUEST 0x04 316ff3ef268SMilanka Ringwald /** 317ff3ef268SMilanka Ringwald * @format 121 318ff3ef268SMilanka Ringwald * @param status 319ff3ef268SMilanka Ringwald * @param connection_handle 320ff3ef268SMilanka Ringwald * @param reason 321ff3ef268SMilanka Ringwald */ 322ff3ef268SMilanka Ringwald #define HCI_EVENT_DISCONNECTION_COMPLETE 0x05 323ff3ef268SMilanka Ringwald /** 324ff3ef268SMilanka Ringwald * @format 12 325ff3ef268SMilanka Ringwald * @param status 326ff3ef268SMilanka Ringwald * @param connection_handle 327ff3ef268SMilanka Ringwald */ 328ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE 0x06 329ff3ef268SMilanka Ringwald 330ff3ef268SMilanka Ringwald // HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT is deprecated, use HCI_EVENT_AUTHENTICATION_COMPLETE instead 331ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT HCI_EVENT_AUTHENTICATION_COMPLETE 332ff3ef268SMilanka Ringwald 333ff3ef268SMilanka Ringwald /** 334ff3ef268SMilanka Ringwald * @format 1BN 335ff3ef268SMilanka Ringwald * @param status 336ff3ef268SMilanka Ringwald * @param bd_addr 337ff3ef268SMilanka Ringwald * @param remote_name 338ff3ef268SMilanka Ringwald */ 339ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE 0x07 340ff3ef268SMilanka Ringwald /** 341ff3ef268SMilanka Ringwald * @format 121 342ff3ef268SMilanka Ringwald * @param status 343ff3ef268SMilanka Ringwald * @param connection_handle 344ff3ef268SMilanka Ringwald * @param encryption_enabled 345ff3ef268SMilanka Ringwald */ 346ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_CHANGE 0x08 347ff3ef268SMilanka Ringwald /** 348ff3ef268SMilanka Ringwald * @format 12 349ff3ef268SMilanka Ringwald * @param status 350ff3ef268SMilanka Ringwald * @param connection_handle 351ff3ef268SMilanka Ringwald */ 352ff3ef268SMilanka Ringwald #define HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE 0x09 353ff3ef268SMilanka Ringwald /** 354ff3ef268SMilanka Ringwald * @format 121 355ff3ef268SMilanka Ringwald * @param status 356ff3ef268SMilanka Ringwald * @param connection_handle 357ff3ef268SMilanka Ringwald * @param key_flag 358ff3ef268SMilanka Ringwald */ 359ff3ef268SMilanka Ringwald #define HCI_EVENT_MASTER_LINK_KEY_COMPLETE 0x0A 360ff3ef268SMilanka Ringwald 361ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_SUPPORTED_FEATURES_COMPLETE 0x0B 362ff3ef268SMilanka Ringwald 363ff3ef268SMilanka Ringwald /** 364ff3ef268SMilanka Ringwald * @format 12122 365ff3ef268SMilanka Ringwald * @param status 366ff3ef268SMilanka Ringwald * @param connection_handle 367ff3ef268SMilanka Ringwald * @param version 368ff3ef268SMilanka Ringwald * @param manufacturer_name 369ff3ef268SMilanka Ringwald * @param subversion 370ff3ef268SMilanka Ringwald */ 371ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE 0x0C 372ff3ef268SMilanka Ringwald 373ff3ef268SMilanka Ringwald #define HCI_EVENT_QOS_SETUP_COMPLETE 0x0D 374ff3ef268SMilanka Ringwald 375ff3ef268SMilanka Ringwald /** 376ff3ef268SMilanka Ringwald * @format 12R 377ff3ef268SMilanka Ringwald * @param num_hci_command_packets 378ff3ef268SMilanka Ringwald * @param command_opcode 379ff3ef268SMilanka Ringwald * @param return_parameters 380ff3ef268SMilanka Ringwald */ 381ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_COMPLETE 0x0E 382ff3ef268SMilanka Ringwald /** 383ff3ef268SMilanka Ringwald * @format 112 384ff3ef268SMilanka Ringwald * @param status 385ff3ef268SMilanka Ringwald * @param num_hci_command_packets 386ff3ef268SMilanka Ringwald * @param command_opcode 387ff3ef268SMilanka Ringwald */ 388ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_STATUS 0x0F 389ff3ef268SMilanka Ringwald 390ff3ef268SMilanka Ringwald /** 391ff3ef268SMilanka Ringwald * @format 1 392ff3ef268SMilanka Ringwald * @param hardware_code 393ff3ef268SMilanka Ringwald */ 394ff3ef268SMilanka Ringwald #define HCI_EVENT_HARDWARE_ERROR 0x10 395ff3ef268SMilanka Ringwald 396ff3ef268SMilanka Ringwald #define HCI_EVENT_FLUSH_OCCURRED 0x11 397ff3ef268SMilanka Ringwald 398ff3ef268SMilanka Ringwald /** 399ff3ef268SMilanka Ringwald * @format 1B1 400ff3ef268SMilanka Ringwald * @param status 401ff3ef268SMilanka Ringwald * @param bd_addr 402ff3ef268SMilanka Ringwald * @param role 403ff3ef268SMilanka Ringwald */ 404ff3ef268SMilanka Ringwald #define HCI_EVENT_ROLE_CHANGE 0x12 405ff3ef268SMilanka Ringwald 406ff3ef268SMilanka Ringwald // TODO: number_of_handles 1, connection_handle[H*i], hc_num_of_completed_packets[2*i] 407ff3ef268SMilanka Ringwald #define HCI_EVENT_NUMBER_OF_COMPLETED_PACKETS 0x13 408ff3ef268SMilanka Ringwald 409ff3ef268SMilanka Ringwald /** 410ff3ef268SMilanka Ringwald * @format 1H12 411ff3ef268SMilanka Ringwald * @param status 412ff3ef268SMilanka Ringwald * @param handle 413ff3ef268SMilanka Ringwald * @param mode 414ff3ef268SMilanka Ringwald * @param interval 415ff3ef268SMilanka Ringwald */ 416ff3ef268SMilanka Ringwald #define HCI_EVENT_MODE_CHANGE 0x14 417ff3ef268SMilanka Ringwald 418ff3ef268SMilanka Ringwald // TODO: num_keys, bd_addr[B*i], link_key[16 octets * i] 419ff3ef268SMilanka Ringwald #define HCI_EVENT_RETURN_LINK_KEYS 0x15 420ff3ef268SMilanka Ringwald 421ff3ef268SMilanka Ringwald /** 422ff3ef268SMilanka Ringwald * @format B 423ff3ef268SMilanka Ringwald * @param bd_addr 424ff3ef268SMilanka Ringwald */ 425ff3ef268SMilanka Ringwald #define HCI_EVENT_PIN_CODE_REQUEST 0x16 426ff3ef268SMilanka Ringwald 427ff3ef268SMilanka Ringwald /** 428ff3ef268SMilanka Ringwald * @format B 429ff3ef268SMilanka Ringwald * @param bd_addr 430ff3ef268SMilanka Ringwald */ 431ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_REQUEST 0x17 432ff3ef268SMilanka Ringwald 433ff3ef268SMilanka Ringwald // TODO: bd_addr B, link_key 16octets, key_type 1 434ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_NOTIFICATION 0x18 435ff3ef268SMilanka Ringwald 436ff3ef268SMilanka Ringwald /** 437ff3ef268SMilanka Ringwald * @format 1 438ff3ef268SMilanka Ringwald * @param link_type 439ff3ef268SMilanka Ringwald */ 440ff3ef268SMilanka Ringwald #define HCI_EVENT_DATA_BUFFER_OVERFLOW 0x1A 441ff3ef268SMilanka Ringwald 442ff3ef268SMilanka Ringwald /** 443ff3ef268SMilanka Ringwald * @format H1 444ff3ef268SMilanka Ringwald * @param handle 445ff3ef268SMilanka Ringwald * @param lmp_max_slots 446ff3ef268SMilanka Ringwald */ 447ff3ef268SMilanka Ringwald #define HCI_EVENT_MAX_SLOTS_CHANGED 0x1B 448ff3ef268SMilanka Ringwald 449ff3ef268SMilanka Ringwald /** 450ff3ef268SMilanka Ringwald * @format 1H2 451ff3ef268SMilanka Ringwald * @param status 452ff3ef268SMilanka Ringwald * @param handle 453ff3ef268SMilanka Ringwald * @param clock_offset 454ff3ef268SMilanka Ringwald */ 455ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE 0x1C 456ff3ef268SMilanka Ringwald 457ff3ef268SMilanka Ringwald /** 458ff3ef268SMilanka Ringwald * @format 1H2 459ff3ef268SMilanka Ringwald * @param status 460ff3ef268SMilanka Ringwald * @param handle 461ff3ef268SMilanka Ringwald * @param packet_types 462ff3ef268SMilanka Ringwald * @pnote packet_type is in plural to avoid clash with Java binding Packet.getPacketType() 463ff3ef268SMilanka Ringwald */ 464ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED 0x1D 465ff3ef268SMilanka Ringwald 466ff3ef268SMilanka Ringwald /** 467ff3ef268SMilanka Ringwald * @format 1B11321 468ff3ef268SMilanka Ringwald * @param num_responses 469ff3ef268SMilanka Ringwald * @param bd_addr 470ff3ef268SMilanka Ringwald * @param page_scan_repetition_mode 471ff3ef268SMilanka Ringwald * @param reserved 472ff3ef268SMilanka Ringwald * @param class_of_device 473ff3ef268SMilanka Ringwald * @param clock_offset 474ff3ef268SMilanka Ringwald * @param rssi 475ff3ef268SMilanka Ringwald */ 476ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT_WITH_RSSI 0x22 477ff3ef268SMilanka Ringwald 478ff3ef268SMilanka Ringwald /** 479ff3ef268SMilanka Ringwald * @format 1HB111221 480ff3ef268SMilanka Ringwald * @param status 481ff3ef268SMilanka Ringwald * @param handle 482ff3ef268SMilanka Ringwald * @param bd_addr 483ff3ef268SMilanka Ringwald * @param link_type 484ff3ef268SMilanka Ringwald * @param transmission_interval 485ff3ef268SMilanka Ringwald * @param retransmission_interval 486ff3ef268SMilanka Ringwald * @param rx_packet_length 487ff3ef268SMilanka Ringwald * @param tx_packet_length 488ff3ef268SMilanka Ringwald * @param air_mode 489ff3ef268SMilanka Ringwald */ 490ff3ef268SMilanka Ringwald #define HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE 0x2C 491ff3ef268SMilanka Ringwald 492ff3ef268SMilanka Ringwald // TODO: serialize extended_inquiry_response and provide parser 493ff3ef268SMilanka Ringwald /** 494ff3ef268SMilanka Ringwald * @format 1B11321 495ff3ef268SMilanka Ringwald * @param num_responses 496ff3ef268SMilanka Ringwald * @param bd_addr 497ff3ef268SMilanka Ringwald * @param page_scan_repetition_mode 498ff3ef268SMilanka Ringwald * @param reserved 499ff3ef268SMilanka Ringwald * @param class_of_device 500ff3ef268SMilanka Ringwald * @param clock_offset 501ff3ef268SMilanka Ringwald * @param rssi 502ff3ef268SMilanka Ringwald */ 503ff3ef268SMilanka Ringwald #define HCI_EVENT_EXTENDED_INQUIRY_RESPONSE 0x2F 504ff3ef268SMilanka Ringwald 505ff3ef268SMilanka Ringwald /** 506ff3ef268SMilanka Ringwald * @format 1H 507ff3ef268SMilanka Ringwald * @param status 508ff3ef268SMilanka Ringwald * @param handle 509ff3ef268SMilanka Ringwald */ 510ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE 0x30 511ff3ef268SMilanka Ringwald 512ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_REQUEST 0x31 513ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_RESPONSE 0x32 514ff3ef268SMilanka Ringwald 515ff3ef268SMilanka Ringwald /** 516ff3ef268SMilanka Ringwald * @format B4 517ff3ef268SMilanka Ringwald * @param bd_addr 518ff3ef268SMilanka Ringwald * @param numeric_value 519ff3ef268SMilanka Ringwald */ 520ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_CONFIRMATION_REQUEST 0x33 521ff3ef268SMilanka Ringwald 522ff3ef268SMilanka Ringwald /** 523ff3ef268SMilanka Ringwald * @format B 524ff3ef268SMilanka Ringwald * @param bd_addr 525ff3ef268SMilanka Ringwald */ 526ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_PASSKEY_REQUEST 0x34 527ff3ef268SMilanka Ringwald 528ff3ef268SMilanka Ringwald /** 529ff3ef268SMilanka Ringwald * @format B 530ff3ef268SMilanka Ringwald * @param bd_addr 531ff3ef268SMilanka Ringwald */ 532ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_OOB_DATA_REQUEST 0x35 533ff3ef268SMilanka Ringwald 534ff3ef268SMilanka Ringwald /** 535ff3ef268SMilanka Ringwald * @format 1B 536ff3ef268SMilanka Ringwald * @param status 537ff3ef268SMilanka Ringwald * @param bd_addr 538ff3ef268SMilanka Ringwald */ 539ff3ef268SMilanka Ringwald #define HCI_EVENT_SIMPLE_PAIRING_COMPLETE 0x36 540ff3ef268SMilanka Ringwald 541ff3ef268SMilanka Ringwald #define HCI_EVENT_LE_META 0x3E 542ff3ef268SMilanka Ringwald 543ff3ef268SMilanka Ringwald // last used HCI_EVENT in 2.1 is 0x3d 544ff3ef268SMilanka Ringwald // last used HCI_EVENT in 4.1 is 0x57 545ff3ef268SMilanka Ringwald 546ff3ef268SMilanka Ringwald #define HCI_EVENT_VENDOR_SPECIFIC 0xFF 547ff3ef268SMilanka Ringwald 548ff3ef268SMilanka Ringwald /** 549ff3ef268SMilanka Ringwald * @format 11H11B2221 550ff3ef268SMilanka Ringwald * @param subevent_code 551ff3ef268SMilanka Ringwald * @param status 552ff3ef268SMilanka Ringwald * @param connection_handle 553ff3ef268SMilanka Ringwald * @param role 554ff3ef268SMilanka Ringwald * @param peer_address_type 555ff3ef268SMilanka Ringwald * @param peer_address 556ff3ef268SMilanka Ringwald * @param conn_interval 557ff3ef268SMilanka Ringwald * @param conn_latency 558ff3ef268SMilanka Ringwald * @param supervision_timeout 559ff3ef268SMilanka Ringwald * @param master_clock_accuracy 560ff3ef268SMilanka Ringwald */ 561ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_CONNECTION_COMPLETE 0x01 562ff3ef268SMilanka Ringwald 563ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator 564ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ADVERTISING_REPORT 0x02 565ff3ef268SMilanka Ringwald 566ff3ef268SMilanka Ringwald /** 567ff3ef268SMilanka Ringwald * @format 11H222 568ff3ef268SMilanka Ringwald * @param subevent_code 569ff3ef268SMilanka Ringwald * @param status 570ff3ef268SMilanka Ringwald * @param connection_handle 571ff3ef268SMilanka Ringwald * @param conn_interval 572ff3ef268SMilanka Ringwald * @param conn_latency 573ff3ef268SMilanka Ringwald * @param supervision_timeout 574ff3ef268SMilanka Ringwald */ 575ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE 0x03 576ff3ef268SMilanka Ringwald 577ff3ef268SMilanka Ringwald /** 578ff3ef268SMilanka Ringwald * @format 1HD2 579ff3ef268SMilanka Ringwald * @param subevent_code 580ff3ef268SMilanka Ringwald * @param connection_handle 581ff3ef268SMilanka Ringwald * @param random_number 582ff3ef268SMilanka Ringwald * @param encryption_diversifier 583ff3ef268SMilanka Ringwald */ 584ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_READ_REMOTE_USED_FEATURES_COMPLETE 0x04 585ff3ef268SMilanka Ringwald 586ff3ef268SMilanka Ringwald /** 587ff3ef268SMilanka Ringwald * @format 1HD2 588ff3ef268SMilanka Ringwald * @param subevent_code 589ff3ef268SMilanka Ringwald * @param connection_handle 590ff3ef268SMilanka Ringwald * @param random_number 591ff3ef268SMilanka Ringwald * @param encryption_diversifier 592ff3ef268SMilanka Ringwald */ 593ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST 0x05 594ff3ef268SMilanka Ringwald 595ff3ef268SMilanka Ringwald /** 596ff3ef268SMilanka Ringwald * @format 1H2222 597ff3ef268SMilanka Ringwald * @param subevent_code 598ff3ef268SMilanka Ringwald * @param connection_handle 599ff3ef268SMilanka Ringwald * @param interval_min 600ff3ef268SMilanka Ringwald * @param interval_max 601ff3ef268SMilanka Ringwald * @param latency 602ff3ef268SMilanka Ringwald * @param timeout 603ff3ef268SMilanka Ringwald */ 604ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST 0x06 605ff3ef268SMilanka Ringwald 606ff3ef268SMilanka Ringwald /** 607ff3ef268SMilanka Ringwald * @format 1H2222 608ff3ef268SMilanka Ringwald * @param subevent_code 609ff3ef268SMilanka Ringwald * @param connection_handle 610ff3ef268SMilanka Ringwald * @param max_tx_octets 611ff3ef268SMilanka Ringwald * @param max_tx_time 612ff3ef268SMilanka Ringwald * @param max_rx_octets 613ff3ef268SMilanka Ringwald * @param max_rx_time 614ff3ef268SMilanka Ringwald */ 615ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE 0x07 616ff3ef268SMilanka Ringwald 617ff3ef268SMilanka Ringwald /** 618ff3ef268SMilanka Ringwald * @format 11QQ 619ff3ef268SMilanka Ringwald * @param subevent_code 620ff3ef268SMilanka Ringwald * @param status 621ff3ef268SMilanka Ringwald * @param dhkey_x x coordinate of P256 public key 622ff3ef268SMilanka Ringwald * @param dhkey_y y coordinate of P256 public key 623ff3ef268SMilanka Ringwald */ 624ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE 0x08 625ff3ef268SMilanka Ringwald /** 626ff3ef268SMilanka Ringwald * @format 11Q 627ff3ef268SMilanka Ringwald * @param subevent_code 628ff3ef268SMilanka Ringwald * @param status 629ff3ef268SMilanka Ringwald * @param dhkey Diffie-Hellman key 630ff3ef268SMilanka Ringwald */ 631ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE 0x09 632ff3ef268SMilanka Ringwald 633ff3ef268SMilanka Ringwald /** 634ff3ef268SMilanka Ringwald * @format 11H11BBB2221 635ff3ef268SMilanka Ringwald * @param subevent_code 636ff3ef268SMilanka Ringwald * @param status 637ff3ef268SMilanka Ringwald * @param connection_handle 638ff3ef268SMilanka Ringwald * @param role 639ff3ef268SMilanka Ringwald * @param peer_address_type 640ff3ef268SMilanka Ringwald * @param perr_addresss 641ff3ef268SMilanka Ringwald * @param local_resolvable_private_addres 642ff3ef268SMilanka Ringwald * @param peer_resolvable_private_addres 643ff3ef268SMilanka Ringwald * @param conn_interval 644ff3ef268SMilanka Ringwald * @param conn_latency 645ff3ef268SMilanka Ringwald * @param supervision_timeout 646ff3ef268SMilanka Ringwald * @param master_clock_accuracy 647ff3ef268SMilanka Ringwald */ 648ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE 0x0A 649ff3ef268SMilanka Ringwald 650ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator 651ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DIRECT_ADVERTISING_REPORT 0x0B 652ff3ef268SMilanka Ringwald 653ff3ef268SMilanka Ringwald 654941b3855SMatthias Ringwald /** 655941b3855SMatthias Ringwald * @format 1 656941b3855SMatthias Ringwald * @param state 657941b3855SMatthias Ringwald */ 658941b3855SMatthias Ringwald #define BTSTACK_EVENT_STATE 0x60 659941b3855SMatthias Ringwald 66052aef63fSMatthias Ringwald /** 66152aef63fSMatthias Ringwald * @format 1 66252aef63fSMatthias Ringwald * @param number_connections 66352aef63fSMatthias Ringwald */ 664941b3855SMatthias Ringwald #define BTSTACK_EVENT_NR_CONNECTIONS_CHANGED 0x61 665941b3855SMatthias Ringwald 666941b3855SMatthias Ringwald /** 667941b3855SMatthias Ringwald * @format 668941b3855SMatthias Ringwald */ 669941b3855SMatthias Ringwald #define BTSTACK_EVENT_POWERON_FAILED 0x62 670941b3855SMatthias Ringwald 671941b3855SMatthias Ringwald /** 672827b1c43SMatthias Ringwald * @format 1 673827b1c43SMatthias Ringwald * @param discoverable 674827b1c43SMatthias Ringwald */ 675827b1c43SMatthias Ringwald #define BTSTACK_EVENT_DISCOVERABLE_ENABLED 0x66 676827b1c43SMatthias Ringwald 677827b1c43SMatthias Ringwald // Daemon Events 678827b1c43SMatthias Ringwald 679827b1c43SMatthias Ringwald /** 680941b3855SMatthias Ringwald * @format 112 681941b3855SMatthias Ringwald * @param major 682941b3855SMatthias Ringwald * @param minor 683941b3855SMatthias Ringwald @ @param revision 684941b3855SMatthias Ringwald */ 685827b1c43SMatthias Ringwald #define DAEMON_EVENT_VERSION 0x63 686941b3855SMatthias Ringwald 687941b3855SMatthias Ringwald // data: system bluetooth on/off (bool) 688e2334cdcSMatthias Ringwald /** 689e2334cdcSMatthias Ringwald * @format 1 690e2334cdcSMatthias Ringwald * param system_bluetooth_enabled 691e2334cdcSMatthias Ringwald */ 692827b1c43SMatthias Ringwald #define DAEMON_EVENT_SYSTEM_BLUETOOTH_ENABLED 0x64 693941b3855SMatthias Ringwald 694941b3855SMatthias Ringwald // data: event (8), len(8), status (8) == 0, address (48), name (1984 bits = 248 bytes) 695e2334cdcSMatthias Ringwald 696e2334cdcSMatthias Ringwald /* 697e2334cdcSMatthias Ringwald * @format 1BT 698e2334cdcSMatthias Ringwald * @param status == 0 to match read_remote_name_request 699e2334cdcSMatthias Ringwald * @param address 700e2334cdcSMatthias Ringwald * @param name 701e2334cdcSMatthias Ringwald */ 702827b1c43SMatthias Ringwald #define DAEMON_EVENT_REMOTE_NAME_CACHED 0x65 703941b3855SMatthias Ringwald 70462c64df1SMatthias Ringwald // internal - data: event(8) 705e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_OPENED 0x67 706941b3855SMatthias Ringwald 70762c64df1SMatthias Ringwald // internal - data: event(8) 708e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_CLOSED 0x68 709941b3855SMatthias Ringwald 71062c64df1SMatthias Ringwald // data: event(8), len(8), local_cid(16), credits(8) 71162c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_CREDITS 0x74 71262c64df1SMatthias Ringwald 71362c64df1SMatthias Ringwald /** 71462c64df1SMatthias Ringwald * @format 12 71562c64df1SMatthias Ringwald * @param status 71662c64df1SMatthias Ringwald * @param psm 71762c64df1SMatthias Ringwald */ 71862c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_SERVICE_REGISTERED 0x75 71962c64df1SMatthias Ringwald 72062c64df1SMatthias Ringwald /** 72162c64df1SMatthias Ringwald * @format 21 72262c64df1SMatthias Ringwald * @param rfcomm_cid 72362c64df1SMatthias Ringwald * @param credits 72462c64df1SMatthias Ringwald */ 72562c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_CREDITS 0x84 72662c64df1SMatthias Ringwald 72762c64df1SMatthias Ringwald /** 72862c64df1SMatthias Ringwald * @format 11 72962c64df1SMatthias Ringwald * @param status 73062c64df1SMatthias Ringwald * @param channel_id 73162c64df1SMatthias Ringwald */ 732fea5a680SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_SERVICE_REGISTERED 0x85 733fea5a680SMatthias Ringwald 73462c64df1SMatthias Ringwald /** 73562c64df1SMatthias Ringwald * @format 11 73662c64df1SMatthias Ringwald * @param status 73762c64df1SMatthias Ringwald * @param server_channel_id 73862c64df1SMatthias Ringwald */ 73962c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_PERSISTENT_CHANNEL 0x86 74062c64df1SMatthias Ringwald 74162c64df1SMatthias Ringwald /** 74262c64df1SMatthias Ringwald * @format 14 74362c64df1SMatthias Ringwald * @param status 74462c64df1SMatthias Ringwald * @param service_record_handle 74562c64df1SMatthias Ringwald */ 74662c64df1SMatthias Ringwald #define DAEMON_EVENT_SDP_SERVICE_REGISTERED 0x90 74762c64df1SMatthias Ringwald 74862c64df1SMatthias Ringwald 749827b1c43SMatthias Ringwald 7503bc639ceSMatthias Ringwald // additional HCI events 75163fa3374SMatthias Ringwald 75263fa3374SMatthias Ringwald /** 75362ca45d7SMatthias Ringwald * @brief Indicates HCI transport enters/exits Sleep mode 75462ca45d7SMatthias Ringwald * @format 1 75562ca45d7SMatthias Ringwald * @param active 75662ca45d7SMatthias Ringwald */ 757d16a0392SMatthias Ringwald #define HCI_EVENT_TRANSPORT_SLEEP_MODE 0x69 75862ca45d7SMatthias Ringwald 75962ca45d7SMatthias Ringwald /** 76063fa3374SMatthias Ringwald * @brief Outgoing packet 76163fa3374SMatthias Ringwald */ 76263fa3374SMatthias Ringwald #define HCI_EVENT_TRANSPORT_PACKET_SENT 0x6E 76363fa3374SMatthias Ringwald 7643bc639ceSMatthias Ringwald /** 7653bc639ceSMatthias Ringwald * @format B 7663bc639ceSMatthias Ringwald * @param handle 7673bc639ceSMatthias Ringwald */ 7683bc639ceSMatthias Ringwald #define HCI_EVENT_SCO_CAN_SEND_NOW 0x6F 7693bc639ceSMatthias Ringwald 77062c64df1SMatthias Ringwald 771941b3855SMatthias Ringwald // L2CAP EVENTS 772941b3855SMatthias Ringwald 773b072ba33SMatthias Ringwald /** 7747f1690cfSMatthias Ringwald * @format 1BH222222111 775b072ba33SMatthias Ringwald * @param status 776b072ba33SMatthias Ringwald * @param address 777b072ba33SMatthias Ringwald * @param handle 778b072ba33SMatthias Ringwald * @param psm 779b072ba33SMatthias Ringwald * @param local_cid 780b072ba33SMatthias Ringwald * @param remote_cid 781b072ba33SMatthias Ringwald * @param local_mtu 782b072ba33SMatthias Ringwald * @param remote_mtu 783b072ba33SMatthias Ringwald * @param flush_timeout 784bab5f4f0SMatthias Ringwald * @param incoming 7857f1690cfSMatthias Ringwald * @param mode 7867f1690cfSMatthias Ringwald * @param fcs 787b072ba33SMatthias Ringwald */ 788941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_OPENED 0x70 789941b3855SMatthias Ringwald 790b072ba33SMatthias Ringwald /* 791b072ba33SMatthias Ringwald * @format 2 792b072ba33SMatthias Ringwald * @param local_cid 793b072ba33SMatthias Ringwald */ 794941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_CLOSED 0x71 795941b3855SMatthias Ringwald 796b072ba33SMatthias Ringwald /** 7976d4269d3SMilanka Ringwald * @format BH222 798b072ba33SMatthias Ringwald * @param address 799b072ba33SMatthias Ringwald * @param handle 800b072ba33SMatthias Ringwald * @param psm 801b072ba33SMatthias Ringwald * @param local_cid 802b072ba33SMatthias Ringwald * @param remote_cid 803b072ba33SMatthias Ringwald */ 804941b3855SMatthias Ringwald #define L2CAP_EVENT_INCOMING_CONNECTION 0x72 805941b3855SMatthias Ringwald 806b072ba33SMatthias Ringwald // ?? 807941b3855SMatthias Ringwald // data: event(8), len(8), handle(16) 808941b3855SMatthias Ringwald #define L2CAP_EVENT_TIMEOUT_CHECK 0x73 809941b3855SMatthias Ringwald 810b072ba33SMatthias Ringwald /** 811b072ba33SMatthias Ringwald * @format H2222 812b072ba33SMatthias Ringwald * @param handle 813b072ba33SMatthias Ringwald * @param interval_min 814b072ba33SMatthias Ringwald * @param interval_max 815b072ba33SMatthias Ringwald * @param latencey 816b072ba33SMatthias Ringwald * @param timeout_multiplier 817b072ba33SMatthias Ringwald */ 818941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST 0x76 819941b3855SMatthias Ringwald 820941b3855SMatthias Ringwald // data: event(8), len(8), handle(16), result (16) (0 == ok, 1 == fail) 821b072ba33SMatthias Ringwald /** 822b072ba33SMatthias Ringwald * @format H2 823b072ba33SMatthias Ringwald * @param handle 8242c737695SMatthias Ringwald * @param result 825b072ba33SMatthias Ringwald */ 826941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE 0x77 827941b3855SMatthias Ringwald 828b072ba33SMatthias Ringwald /** 829b072ba33SMatthias Ringwald * @format 2 830b072ba33SMatthias Ringwald * @param local_cid 831b072ba33SMatthias Ringwald */ 832b072ba33SMatthias Ringwald #define L2CAP_EVENT_CAN_SEND_NOW 0x78 833b072ba33SMatthias Ringwald 83444276248SMatthias Ringwald // LE Data Channels 83544276248SMatthias Ringwald 83644276248SMatthias Ringwald /** 83744276248SMatthias Ringwald * @format 1BH2222 83844276248SMatthias Ringwald * @param address_type 83944276248SMatthias Ringwald * @param address 84044276248SMatthias Ringwald * @param handle 84144276248SMatthias Ringwald * @param psm 84244276248SMatthias Ringwald * @param local_cid 84344276248SMatthias Ringwald * @param remote_cid 84444276248SMatthias Ringwald * @param remote_mtu 84544276248SMatthias Ringwald */ 84644276248SMatthias Ringwald #define L2CAP_EVENT_LE_INCOMING_CONNECTION 0x79 84744276248SMatthias Ringwald 84844276248SMatthias Ringwald /** 84912242deaSMatthias Ringwald * @format 11BH122222 85044276248SMatthias Ringwald * @param status 85144276248SMatthias Ringwald * @param address_type 85244276248SMatthias Ringwald * @param address 85344276248SMatthias Ringwald * @param handle 85412242deaSMatthias Ringwald * @param incoming 85544276248SMatthias Ringwald * @param psm 85644276248SMatthias Ringwald * @param local_cid 85744276248SMatthias Ringwald * @param remote_cid 85844276248SMatthias Ringwald * @param local_mtu 85944276248SMatthias Ringwald * @param remote_mtu 86044276248SMatthias Ringwald */ 86144276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_OPENED 0x7a 86244276248SMatthias Ringwald 86344276248SMatthias Ringwald /* 86444276248SMatthias Ringwald * @format 2 86544276248SMatthias Ringwald * @param local_cid 86644276248SMatthias Ringwald */ 86744276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_CLOSED 0x7b 86844276248SMatthias Ringwald 86944276248SMatthias Ringwald /* 87044276248SMatthias Ringwald * @format 2 87144276248SMatthias Ringwald * @param local_cid 87244276248SMatthias Ringwald */ 87344276248SMatthias Ringwald #define L2CAP_EVENT_LE_CAN_SEND_NOW 0x7c 87444276248SMatthias Ringwald 87544276248SMatthias Ringwald /* 87644276248SMatthias Ringwald * @format 2 87744276248SMatthias Ringwald * @param local_cid 87844276248SMatthias Ringwald */ 87944276248SMatthias Ringwald #define L2CAP_EVENT_LE_PACKET_SENT 0x7d 88044276248SMatthias Ringwald 88166a72640SMatthias Ringwald /* 88266a72640SMatthias Ringwald * @format 2 88366a72640SMatthias Ringwald * @param local_cid 88466a72640SMatthias Ringwald */ 88566a72640SMatthias Ringwald #define L2CAP_EVENT_ERTM_BUFFER_RELEASED 0x7e 88666a72640SMatthias Ringwald 88744276248SMatthias Ringwald 888941b3855SMatthias Ringwald // RFCOMM EVENTS 889b072ba33SMatthias Ringwald 890941b3855SMatthias Ringwald /** 891bab5f4f0SMatthias Ringwald * @format 1B21221 892941b3855SMatthias Ringwald * @param status 893941b3855SMatthias Ringwald * @param bd_addr 894941b3855SMatthias Ringwald * @param con_handle 895941b3855SMatthias Ringwald * @param server_channel 896941b3855SMatthias Ringwald * @param rfcomm_cid 897941b3855SMatthias Ringwald * @param max_frame_size 898bab5f4f0SMatthias Ringwald * @param incoming 899941b3855SMatthias Ringwald */ 900f8f6a918SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_OPENED 0x80 901941b3855SMatthias Ringwald 902941b3855SMatthias Ringwald /** 903941b3855SMatthias Ringwald * @format 2 904941b3855SMatthias Ringwald * @param rfcomm_cid 905941b3855SMatthias Ringwald */ 906941b3855SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_CLOSED 0x81 907941b3855SMatthias Ringwald 908941b3855SMatthias Ringwald /** 909941b3855SMatthias Ringwald * @format B12 910941b3855SMatthias Ringwald * @param bd_addr 911941b3855SMatthias Ringwald * @param server_channel 912941b3855SMatthias Ringwald * @param rfcomm_cid 913941b3855SMatthias Ringwald */ 914941b3855SMatthias Ringwald #define RFCOMM_EVENT_INCOMING_CONNECTION 0x82 915941b3855SMatthias Ringwald 916941b3855SMatthias Ringwald /** 917941b3855SMatthias Ringwald * @format 21 918941b3855SMatthias Ringwald * @param rfcomm_cid 919941b3855SMatthias Ringwald * @param line_status 920941b3855SMatthias Ringwald */ 921941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_LINE_STATUS 0x83 922941b3855SMatthias Ringwald 923941b3855SMatthias Ringwald /** 924941b3855SMatthias Ringwald * @format 21 925941b3855SMatthias Ringwald * @param rfcomm_cid 926941b3855SMatthias Ringwald * @param modem_status 927941b3855SMatthias Ringwald */ 928941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_MODEM_STATUS 0x87 929941b3855SMatthias Ringwald 930941b3855SMatthias Ringwald /** 9317bd8e93bSMatthias Ringwald * TODO: format for variable data 2? 932045013feSMatthias Ringwald * param rfcomm_cid 933045013feSMatthias Ringwald * param rpn_data 934941b3855SMatthias Ringwald */ 935941b3855SMatthias Ringwald #define RFCOMM_EVENT_PORT_CONFIGURATION 0x88 936941b3855SMatthias Ringwald 937941b3855SMatthias Ringwald /** 938b072ba33SMatthias Ringwald * @format 2 93962c468cbSMatthias Ringwald * @param rfcomm_cid 940b072ba33SMatthias Ringwald */ 941b072ba33SMatthias Ringwald #define RFCOMM_EVENT_CAN_SEND_NOW 0x89 942b072ba33SMatthias Ringwald 943b072ba33SMatthias Ringwald 944b072ba33SMatthias Ringwald /** 945941b3855SMatthias Ringwald * @format 1 946941b3855SMatthias Ringwald * @param status 947941b3855SMatthias Ringwald */ 9485611a760SMatthias Ringwald #define SDP_EVENT_QUERY_COMPLETE 0x91 949941b3855SMatthias Ringwald 950941b3855SMatthias Ringwald /** 951941b3855SMatthias Ringwald * @format 1T 952941b3855SMatthias Ringwald * @param rfcomm_channel 953941b3855SMatthias Ringwald * @param name 954941b3855SMatthias Ringwald */ 9555611a760SMatthias Ringwald #define SDP_EVENT_QUERY_RFCOMM_SERVICE 0x92 956941b3855SMatthias Ringwald 957941b3855SMatthias Ringwald /** 9584225393cSMatthias Ringwald * @format 22221 9594225393cSMatthias Ringwald * @param record_id 960941b3855SMatthias Ringwald * @param attribute_id 9614225393cSMatthias Ringwald * @param attribute_length 9624225393cSMatthias Ringwald * @param data_offset 9634225393cSMatthias Ringwald * @param data 964941b3855SMatthias Ringwald */ 9655611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_BYTE 0x93 966941b3855SMatthias Ringwald 9674de250b4SMatthias Ringwald /** 9684de250b4SMatthias Ringwald * @format 22LV 9694de250b4SMatthias Ringwald * @param record_id 9704de250b4SMatthias Ringwald * @param attribute_id 9714de250b4SMatthias Ringwald * @param attribute_length 9724de250b4SMatthias Ringwald * @param attribute_value 9734de250b4SMatthias Ringwald */ 9745611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_VALUE 0x94 9754225393cSMatthias Ringwald 9764225393cSMatthias Ringwald /** 9774225393cSMatthias Ringwald * @format 224 9784225393cSMatthias Ringwald * @param total_count 9794225393cSMatthias Ringwald * @param record_index 9804225393cSMatthias Ringwald * @param record_handle 9814225393cSMatthias Ringwald * @note Not provided by daemon, only used for internal testing 9824225393cSMatthias Ringwald */ 9835611a760SMatthias Ringwald #define SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE 0x95 984941b3855SMatthias Ringwald 985941b3855SMatthias Ringwald /** 986941b3855SMatthias Ringwald * @format H1 987941b3855SMatthias Ringwald * @param handle 9889cb80b17SMilanka Ringwald * @param att_status see ATT errors in bluetooth.h 989941b3855SMatthias Ringwald */ 9905611a760SMatthias Ringwald #define GATT_EVENT_QUERY_COMPLETE 0xA0 991941b3855SMatthias Ringwald 992941b3855SMatthias Ringwald /** 993941b3855SMatthias Ringwald * @format HX 994941b3855SMatthias Ringwald * @param handle 995941b3855SMatthias Ringwald * @param service 996941b3855SMatthias Ringwald */ 9975611a760SMatthias Ringwald #define GATT_EVENT_SERVICE_QUERY_RESULT 0xA1 998941b3855SMatthias Ringwald 999941b3855SMatthias Ringwald /** 1000941b3855SMatthias Ringwald * @format HY 1001941b3855SMatthias Ringwald * @param handle 1002941b3855SMatthias Ringwald * @param characteristic 1003941b3855SMatthias Ringwald */ 10045611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_QUERY_RESULT 0xA2 1005941b3855SMatthias Ringwald 1006941b3855SMatthias Ringwald /** 1007941b3855SMatthias Ringwald * @format H2X 1008941b3855SMatthias Ringwald * @param handle 1009941b3855SMatthias Ringwald * @param include_handle 1010941b3855SMatthias Ringwald * @param service 1011941b3855SMatthias Ringwald */ 10125611a760SMatthias Ringwald #define GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT 0xA3 1013941b3855SMatthias Ringwald 1014941b3855SMatthias Ringwald /** 1015941b3855SMatthias Ringwald * @format HZ 1016941b3855SMatthias Ringwald * @param handle 1017941b3855SMatthias Ringwald * @param characteristic_descriptor 1018941b3855SMatthias Ringwald */ 10195611a760SMatthias Ringwald #define GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT 0xA4 1020941b3855SMatthias Ringwald 1021941b3855SMatthias Ringwald /** 1022941b3855SMatthias Ringwald * @format H2LV 1023941b3855SMatthias Ringwald * @param handle 1024941b3855SMatthias Ringwald * @param value_handle 1025941b3855SMatthias Ringwald * @param value_length 1026941b3855SMatthias Ringwald * @param value 1027941b3855SMatthias Ringwald */ 10285611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT 0xA5 1029941b3855SMatthias Ringwald 1030941b3855SMatthias Ringwald /** 1031941b3855SMatthias Ringwald * @format H22LV 1032941b3855SMatthias Ringwald * @param handle 1033941b3855SMatthias Ringwald * @param value_handle 1034941b3855SMatthias Ringwald * @param value_offset 1035941b3855SMatthias Ringwald * @param value_length 1036941b3855SMatthias Ringwald * @param value 1037941b3855SMatthias Ringwald */ 10385611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT 0xA6 1039941b3855SMatthias Ringwald 1040941b3855SMatthias Ringwald /** 1041941b3855SMatthias Ringwald * @format H2LV 1042941b3855SMatthias Ringwald * @param handle 1043941b3855SMatthias Ringwald * @param value_handle 1044941b3855SMatthias Ringwald * @param value_length 1045941b3855SMatthias Ringwald * @param value 1046941b3855SMatthias Ringwald */ 10475611a760SMatthias Ringwald #define GATT_EVENT_NOTIFICATION 0xA7 1048941b3855SMatthias Ringwald 1049941b3855SMatthias Ringwald /** 1050941b3855SMatthias Ringwald * @format H2LV 1051941b3855SMatthias Ringwald * @param handle 1052941b3855SMatthias Ringwald * @param value_handle 1053941b3855SMatthias Ringwald * @param value_length 1054941b3855SMatthias Ringwald * @param value 1055941b3855SMatthias Ringwald */ 10565611a760SMatthias Ringwald #define GATT_EVENT_INDICATION 0xA8 1057941b3855SMatthias Ringwald 1058941b3855SMatthias Ringwald /** 1059941b3855SMatthias Ringwald * @format H2LV 10602c737695SMatthias Ringwald * @param handle 1061941b3855SMatthias Ringwald * @param descriptor_handle 1062941b3855SMatthias Ringwald * @param descriptor_length 1063941b3855SMatthias Ringwald * @param descriptor 1064941b3855SMatthias Ringwald */ 10655611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT 0xA9 1066941b3855SMatthias Ringwald 1067941b3855SMatthias Ringwald /** 1068941b3855SMatthias Ringwald * @format H2LV 1069941b3855SMatthias Ringwald * @param handle 1070941b3855SMatthias Ringwald * @param descriptor_offset 1071941b3855SMatthias Ringwald * @param descriptor_length 1072941b3855SMatthias Ringwald * @param descriptor 1073941b3855SMatthias Ringwald */ 10745611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT 0xAA 1075941b3855SMatthias Ringwald 1076941b3855SMatthias Ringwald /** 1077941b3855SMatthias Ringwald * @format H2 1078941b3855SMatthias Ringwald * @param handle 1079941b3855SMatthias Ringwald * @param MTU 1080941b3855SMatthias Ringwald */ 10815611a760SMatthias Ringwald #define GATT_EVENT_MTU 0xAB 1082941b3855SMatthias Ringwald 1083941b3855SMatthias Ringwald /** 108471af96a1SMatthias Ringwald * @format H 108571af96a1SMatthias Ringwald * @param handle 108671af96a1SMatthias Ringwald */ 108771af96a1SMatthias Ringwald #define GATT_EVENT_CAN_WRITE_WITHOUT_RESPONSE 0xAC 108871af96a1SMatthias Ringwald 108971af96a1SMatthias Ringwald /** 10905d964c8bSMatthias Ringwald * @format 1BH 1091a43588baSMatthias Ringwald * @param address_type 1092a43588baSMatthias Ringwald * @param address 1093a43588baSMatthias Ringwald * @param handle 1094a43588baSMatthias Ringwald */ 1095a43588baSMatthias Ringwald #define ATT_EVENT_CONNECTED 0xB3 1096a43588baSMatthias Ringwald 1097a43588baSMatthias Ringwald /** 1098a43588baSMatthias Ringwald * @format H 1099a43588baSMatthias Ringwald * @param handle 1100a43588baSMatthias Ringwald */ 1101a43588baSMatthias Ringwald #define ATT_EVENT_DISCONNECTED 0xB4 1102a43588baSMatthias Ringwald 1103a43588baSMatthias Ringwald /** 1104941b3855SMatthias Ringwald * @format H2 1105941b3855SMatthias Ringwald * @param handle 1106941b3855SMatthias Ringwald * @param MTU 1107941b3855SMatthias Ringwald */ 11085611a760SMatthias Ringwald #define ATT_EVENT_MTU_EXCHANGE_COMPLETE 0xB5 1109941b3855SMatthias Ringwald 111049d18261SMatthias Ringwald /** 111149d18261SMatthias Ringwald * @format 1H2 111249d18261SMatthias Ringwald * @param status 111349d18261SMatthias Ringwald * @param conn_handle 111449d18261SMatthias Ringwald * @param attribute_handle 111549d18261SMatthias Ringwald */ 11165611a760SMatthias Ringwald #define ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE 0xB6 1117941b3855SMatthias Ringwald 111849d18261SMatthias Ringwald /** 111949d18261SMatthias Ringwald * @format 112049d18261SMatthias Ringwald */ 112149d18261SMatthias Ringwald #define ATT_EVENT_CAN_SEND_NOW 0xB7 1122941b3855SMatthias Ringwald 112349d18261SMatthias Ringwald // TODO: daemon only event 112449d18261SMatthias Ringwald 112549d18261SMatthias Ringwald /** 112649d18261SMatthias Ringwald * @format 12 112749d18261SMatthias Ringwald * @param status 112849d18261SMatthias Ringwald * @param service_uuid 112949d18261SMatthias Ringwald */ 1130941b3855SMatthias Ringwald #define BNEP_EVENT_SERVICE_REGISTERED 0xC0 1131941b3855SMatthias Ringwald 113249d18261SMatthias Ringwald /** 113332b46fecSMatthias Ringwald * @format 12222BH 113449d18261SMatthias Ringwald * @param status 1135423c667cSMatthias Ringwald * @param bnep_cid 113649d18261SMatthias Ringwald * @param source_uuid 113749d18261SMatthias Ringwald * @param destination_uuid 113849d18261SMatthias Ringwald * @param mtu 113949d18261SMatthias Ringwald * @param remote_address 114032b46fecSMatthias Ringwald * @param con_handle 114149d18261SMatthias Ringwald */ 1142423c667cSMatthias Ringwald #define BNEP_EVENT_CHANNEL_OPENED 0xC1 1143941b3855SMatthias Ringwald 114449d18261SMatthias Ringwald /** 1145423c667cSMatthias Ringwald * @format 222B 1146423c667cSMatthias Ringwald * @param bnep_cid 114749d18261SMatthias Ringwald * @param source_uuid 114849d18261SMatthias Ringwald * @param destination_uuid 114949d18261SMatthias Ringwald * @param remote_address 115049d18261SMatthias Ringwald */ 1151941b3855SMatthias Ringwald #define BNEP_EVENT_CHANNEL_CLOSED 0xC2 1152941b3855SMatthias Ringwald 115349d18261SMatthias Ringwald /** 1154423c667cSMatthias Ringwald * @format 222B1 1155423c667cSMatthias Ringwald * @param bnep_cid 115649d18261SMatthias Ringwald * @param source_uuid 115749d18261SMatthias Ringwald * @param destination_uuid 115849d18261SMatthias Ringwald * @param remote_address 115949d18261SMatthias Ringwald * @param channel_state 116049d18261SMatthias Ringwald */ 1161941b3855SMatthias Ringwald #define BNEP_EVENT_CHANNEL_TIMEOUT 0xC3 1162941b3855SMatthias Ringwald 116349d18261SMatthias Ringwald /** 1164423c667cSMatthias Ringwald * @format 222B 1165423c667cSMatthias Ringwald * @param bnep_cid 116649d18261SMatthias Ringwald * @param source_uuid 116749d18261SMatthias Ringwald * @param destination_uuid 116849d18261SMatthias Ringwald * @param remote_address 116949d18261SMatthias Ringwald */ 11702d4c8c04SMatthias Ringwald #define BNEP_EVENT_CAN_SEND_NOW 0xC4 1171941b3855SMatthias Ringwald 1172941b3855SMatthias Ringwald /** 1173941b3855SMatthias Ringwald * @format H1B 1174941b3855SMatthias Ringwald * @param handle 1175941b3855SMatthias Ringwald * @param addr_type 1176941b3855SMatthias Ringwald * @param address 1177941b3855SMatthias Ringwald */ 11785611a760SMatthias Ringwald #define SM_EVENT_JUST_WORKS_REQUEST 0xD0 1179941b3855SMatthias Ringwald 1180941b3855SMatthias Ringwald /** 1181941b3855SMatthias Ringwald * @format H1B 1182941b3855SMatthias Ringwald * @param handle 1183941b3855SMatthias Ringwald * @param addr_type 1184941b3855SMatthias Ringwald * @param address 1185941b3855SMatthias Ringwald */ 11865611a760SMatthias Ringwald #define SM_EVENT_JUST_WORKS_CANCEL 0xD1 1187941b3855SMatthias Ringwald 1188941b3855SMatthias Ringwald /** 1189941b3855SMatthias Ringwald * @format H1B4 1190941b3855SMatthias Ringwald * @param handle 1191941b3855SMatthias Ringwald * @param addr_type 1192941b3855SMatthias Ringwald * @param address 1193941b3855SMatthias Ringwald * @param passkey 1194941b3855SMatthias Ringwald */ 11955611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_NUMBER 0xD2 1196941b3855SMatthias Ringwald 1197941b3855SMatthias Ringwald /** 1198941b3855SMatthias Ringwald * @format H1B 1199941b3855SMatthias Ringwald * @param handle 1200941b3855SMatthias Ringwald * @param addr_type 1201941b3855SMatthias Ringwald * @param address 1202941b3855SMatthias Ringwald */ 12035611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_CANCEL 0xD3 1204941b3855SMatthias Ringwald 1205941b3855SMatthias Ringwald /** 12062c737695SMatthias Ringwald * @format H1B 1207941b3855SMatthias Ringwald * @param handle 1208941b3855SMatthias Ringwald * @param addr_type 1209941b3855SMatthias Ringwald * @param address 1210941b3855SMatthias Ringwald */ 12115611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_INPUT_NUMBER 0xD4 1212941b3855SMatthias Ringwald 1213941b3855SMatthias Ringwald /** 1214941b3855SMatthias Ringwald * @format H1B 1215941b3855SMatthias Ringwald * @param handle 1216941b3855SMatthias Ringwald * @param addr_type 1217941b3855SMatthias Ringwald * @param address 1218941b3855SMatthias Ringwald */ 12195611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_INPUT_CANCEL 0xD5 1220941b3855SMatthias Ringwald 1221941b3855SMatthias Ringwald /** 12228362d86aSMatthias Ringwald * @format H1B4 12238362d86aSMatthias Ringwald * @param handle 12248362d86aSMatthias Ringwald * @param addr_type 12258362d86aSMatthias Ringwald * @param address 12268362d86aSMatthias Ringwald * @param passkey 12278362d86aSMatthias Ringwald */ 12288362d86aSMatthias Ringwald #define SM_EVENT_NUMERIC_COMPARISON_REQUEST 0xD6 12298362d86aSMatthias Ringwald 12308362d86aSMatthias Ringwald /** 12312c737695SMatthias Ringwald * @format H1B 1232941b3855SMatthias Ringwald * @param handle 1233941b3855SMatthias Ringwald * @param addr_type 1234941b3855SMatthias Ringwald * @param address 1235941b3855SMatthias Ringwald */ 12368362d86aSMatthias Ringwald #define SM_EVENT_NUMERIC_COMPARISON_CANCEL 0xD7 1237941b3855SMatthias Ringwald 1238941b3855SMatthias Ringwald /** 1239941b3855SMatthias Ringwald * @format H1B 1240941b3855SMatthias Ringwald * @param handle 1241941b3855SMatthias Ringwald * @param addr_type 1242941b3855SMatthias Ringwald * @param address 1243941b3855SMatthias Ringwald */ 12448362d86aSMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_STARTED 0xD8 12458362d86aSMatthias Ringwald 12468362d86aSMatthias Ringwald /** 12478362d86aSMatthias Ringwald * @format H1B 12488362d86aSMatthias Ringwald * @param handle 12498362d86aSMatthias Ringwald * @param addr_type 12508362d86aSMatthias Ringwald * @param address 12518362d86aSMatthias Ringwald */ 12528362d86aSMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_FAILED 0xD9 1253941b3855SMatthias Ringwald 1254941b3855SMatthias Ringwald /** 125584182ed9SMatthias Ringwald * @brief Identify resolving succeeded 125684182ed9SMatthias Ringwald * 1257334126b3SMatthias Ringwald * @format H1B1B2 1258941b3855SMatthias Ringwald * @param handle 1259941b3855SMatthias Ringwald * @param addr_type 1260941b3855SMatthias Ringwald * @param address 126184182ed9SMatthias Ringwald * @param identity_addr_type 126284182ed9SMatthias Ringwald * @param identity_address 12636f8637a2SMatthias Ringwald * @param index 126484182ed9SMatthias Ringwald * 1265941b3855SMatthias Ringwald */ 12668362d86aSMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED 0xDA 1267941b3855SMatthias Ringwald 1268941b3855SMatthias Ringwald /** 1269941b3855SMatthias Ringwald * @format H1B 1270941b3855SMatthias Ringwald * @param handle 1271941b3855SMatthias Ringwald * @param addr_type 1272941b3855SMatthias Ringwald * @param address 1273941b3855SMatthias Ringwald */ 12748362d86aSMatthias Ringwald #define SM_EVENT_AUTHORIZATION_REQUEST 0xDB 1275941b3855SMatthias Ringwald 1276941b3855SMatthias Ringwald /** 1277941b3855SMatthias Ringwald * @format H1B1 1278941b3855SMatthias Ringwald * @param handle 1279941b3855SMatthias Ringwald * @param addr_type 1280941b3855SMatthias Ringwald * @param address 1281941b3855SMatthias Ringwald * @param authorization_result 1282941b3855SMatthias Ringwald */ 12838362d86aSMatthias Ringwald #define SM_EVENT_AUTHORIZATION_RESULT 0xDC 1284941b3855SMatthias Ringwald 12853d7fe1e9SMatthias Ringwald /** 12863d7fe1e9SMatthias Ringwald * @format H1 12873d7fe1e9SMatthias Ringwald * @param handle 12883d7fe1e9SMatthias Ringwald * @param action see SM_KEYPRESS_* 12893d7fe1e9SMatthias Ringwald */ 12903d7fe1e9SMatthias Ringwald #define SM_EVENT_KEYPRESS_NOTIFICATION 0xDD 12913d7fe1e9SMatthias Ringwald 129284182ed9SMatthias Ringwald /** 129384182ed9SMatthias Ringwald * @brief Emitted during pairing to inform app about address used as identity 129484182ed9SMatthias Ringwald * 1295fccb5f31SMatthias Ringwald * @format H1B1B2 129684182ed9SMatthias Ringwald * @param handle 129784182ed9SMatthias Ringwald * @param addr_type 129884182ed9SMatthias Ringwald * @param address 129984182ed9SMatthias Ringwald * @param identity_addr_type 130084182ed9SMatthias Ringwald * @param identity_address 13016f8637a2SMatthias Ringwald * @param index 130284182ed9SMatthias Ringwald */ 130384182ed9SMatthias Ringwald #define SM_EVENT_IDENTITY_CREATED 0xDE 13043d7fe1e9SMatthias Ringwald 130536c1abd2SMatthias Ringwald /** 130636c1abd2SMatthias Ringwald * @brief Emitted to inform app that pairing is complete. Possible status values: 130736c1abd2SMatthias Ringwald * ERROR_CODE_SUCCESS -> pairing success 130836c1abd2SMatthias Ringwald * ERROR_CODE_CONNECTION_TIMEOUT -> timeout 130936c1abd2SMatthias Ringwald * ERROR_CODE_REMOTE_USER_TERMINATED_CONNECTION -> disconnect 131036c1abd2SMatthias Ringwald * ERROR_CODE_AUTHENTICATION_FAILURE -> SM protocol error, see reason field with SM_REASON_* from bluetooth.h 131136c1abd2SMatthias Ringwald * 131236c1abd2SMatthias Ringwald * @format H1B11 131336c1abd2SMatthias Ringwald * @param handle 131436c1abd2SMatthias Ringwald * @param addr_type 131536c1abd2SMatthias Ringwald * @param address 131636c1abd2SMatthias Ringwald * @param status 131736c1abd2SMatthias Ringwald * @param reason if status == ERROR_CODE_AUTHENTICATION_FAILURE 131836c1abd2SMatthias Ringwald */ 131936c1abd2SMatthias Ringwald #define SM_EVENT_PAIRING_COMPLETE 0xDF 132036c1abd2SMatthias Ringwald 132136c1abd2SMatthias Ringwald 1322941b3855SMatthias Ringwald // GAP 1323941b3855SMatthias Ringwald 132446bc5396SMilanka Ringwald /** 132546bc5396SMilanka Ringwald * @format H1 132646bc5396SMilanka Ringwald * @param handle 132746bc5396SMilanka Ringwald * @param security_level 132846bc5396SMilanka Ringwald */ 13295611a760SMatthias Ringwald #define GAP_EVENT_SECURITY_LEVEL 0xE0 1330941b3855SMatthias Ringwald 133146bc5396SMilanka Ringwald /** 133246bc5396SMilanka Ringwald * @format 1B 133346bc5396SMilanka Ringwald * @param status 133446bc5396SMilanka Ringwald * @param address 133546bc5396SMilanka Ringwald */ 13365611a760SMatthias Ringwald #define GAP_EVENT_DEDICATED_BONDING_COMPLETED 0xE1 1337941b3855SMatthias Ringwald 1338941b3855SMatthias Ringwald /** 1339941b3855SMatthias Ringwald * @format 11B1JV 1340941b3855SMatthias Ringwald * @param advertising_event_type 1341941b3855SMatthias Ringwald * @param address_type 1342941b3855SMatthias Ringwald * @param address 1343941b3855SMatthias Ringwald * @param rssi 1344941b3855SMatthias Ringwald * @param data_length 1345941b3855SMatthias Ringwald * @param data 1346941b3855SMatthias Ringwald */ 1347045013feSMatthias Ringwald #define GAP_EVENT_ADVERTISING_REPORT 0xE2 1348941b3855SMatthias Ringwald 13491cfb383eSMatthias Ringwald /** 13501cfb383eSMatthias Ringwald * @format B132111JV 13511cfb383eSMatthias Ringwald * @param bd_addr 13521cfb383eSMatthias Ringwald * @param page_scan_repetition_mode 13531cfb383eSMatthias Ringwald * @param class_of_device 13541cfb383eSMatthias Ringwald * @param clock_offset 1355d79faacdSMatthias Ringwald * @param rssi_available 13561cfb383eSMatthias Ringwald * @param rssi 13571cfb383eSMatthias Ringwald * @param name_available 13581cfb383eSMatthias Ringwald * @param name_len 13591cfb383eSMatthias Ringwald * @param name 13601cfb383eSMatthias Ringwald */ 13611cfb383eSMatthias Ringwald #define GAP_EVENT_INQUIRY_RESULT 0xE3 13621cfb383eSMatthias Ringwald 13631cfb383eSMatthias Ringwald /** 13641cfb383eSMatthias Ringwald * @format 1 13651cfb383eSMatthias Ringwald * @param status 13661cfb383eSMatthias Ringwald */ 13671cfb383eSMatthias Ringwald #define GAP_EVENT_INQUIRY_COMPLETE 0xE4 13681cfb383eSMatthias Ringwald 1369891b9fc2SMatthias Ringwald /** 1370891b9fc2SMatthias Ringwald * @format H1 1371891b9fc2SMatthias Ringwald * @param con_handle 1372891b9fc2SMatthias Ringwald * @param rssi (signed integer -127..127) 1373891b9fc2SMatthias Ringwald * @note Classic: rssi is in dB relative to Golden Receive Power Range 1374891b9fc2SMatthias Ringwald * @note LE: rssi is absolute dBm 1375891b9fc2SMatthias Ringwald */ 1376891b9fc2SMatthias Ringwald #define GAP_EVENT_RSSI_MEASUREMENT 0xE5 1377827b1c43SMatthias Ringwald 1378e10ce426SMatthias Ringwald // Meta Events, see below for sub events 1379941b3855SMatthias Ringwald #define HCI_EVENT_HSP_META 0xE8 138039d235cbSMatthias Ringwald #define HCI_EVENT_HFP_META 0xE9 1381e10ce426SMatthias Ringwald #define HCI_EVENT_ANCS_META 0xEA 1382beaf082cSMatthias Ringwald #define HCI_EVENT_AVDTP_META 0xEB 1383decc740cSMilanka Ringwald #define HCI_EVENT_AVRCP_META 0xEC 1384f1b34e8dSMatthias Ringwald #define HCI_EVENT_GOEP_META 0xED 1385f1b34e8dSMatthias Ringwald #define HCI_EVENT_PBAP_META 0xEE 1386dd148ddbSMatthias Ringwald #define HCI_EVENT_HID_META 0xEF 13873e3fbf3dSMilanka Ringwald #define HCI_EVENT_A2DP_META 0xF0 1388a4bfc4feSMatthias Ringwald #define HCI_EVENT_HIDS_META 0xF1 138928e59789SMilanka Ringwald #define HCI_EVENT_GATTSERVICE_META 0xF2 1390ad58991cSMilanka Ringwald #define HCI_EVENT_BIP_META 0xF3 1391ad58991cSMilanka Ringwald #define HCI_EVENT_MAP_META 0xF4 13921fbe4564SMatthias Ringwald #define HCI_EVENT_MESH_META 0xF5 139339d235cbSMatthias Ringwald 1394e10ce426SMatthias Ringwald // Potential other meta groups 1395e10ce426SMatthias Ringwald // #define HCI_EVENT_BNEP_META 0xxx 1396e10ce426SMatthias Ringwald // #define HCI_EVENT_GAP_META 0xxx 1397e10ce426SMatthias Ringwald // #define HCI_EVENT_GATT_META 0xxx 1398e10ce426SMatthias Ringwald // #define HCI_EVENT_PAN_META 0xxx 1399e10ce426SMatthias Ringwald // #define HCI_EVENT_SDP_META 0xxx 1400e10ce426SMatthias Ringwald // #define HCI_EVENT_SM_META 0xxx 140139d235cbSMatthias Ringwald 1402d63c37a1SMatthias Ringwald 1403d63c37a1SMatthias Ringwald /** HSP Subevent */ 1404d63c37a1SMatthias Ringwald 1405827b1c43SMatthias Ringwald /** 140699a10067SMatthias Ringwald * @format 11 1407827b1c43SMatthias Ringwald * @param subevent_code 1408827b1c43SMatthias Ringwald * @param status 0 == OK 1409827b1c43SMatthias Ringwald */ 141099a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE 0x01 141199a10067SMatthias Ringwald 141299a10067SMatthias Ringwald /** 141399a10067SMatthias Ringwald * @format 11 141499a10067SMatthias Ringwald * @param subevent_code 141599a10067SMatthias Ringwald * @param status 0 == OK 141699a10067SMatthias Ringwald */ 141799a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_DISCONNECTION_COMPLETE 0x02 141899a10067SMatthias Ringwald 141999a10067SMatthias Ringwald 142099a10067SMatthias Ringwald /** 142162c468cbSMatthias Ringwald * @format 11H 142299a10067SMatthias Ringwald * @param subevent_code 142399a10067SMatthias Ringwald * @param status 0 == OK 142462c468cbSMatthias Ringwald * @param handle 142599a10067SMatthias Ringwald */ 142699a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE 0x03 1427827b1c43SMatthias Ringwald 1428827b1c43SMatthias Ringwald /** 1429827b1c43SMatthias Ringwald * @format 11 1430827b1c43SMatthias Ringwald * @param subevent_code 1431827b1c43SMatthias Ringwald * @param status 0 == OK 1432827b1c43SMatthias Ringwald */ 143399a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_DISCONNECTION_COMPLETE 0x04 1434827b1c43SMatthias Ringwald 1435827b1c43SMatthias Ringwald /** 1436827b1c43SMatthias Ringwald * @format 1 1437827b1c43SMatthias Ringwald * @param subevent_code 1438827b1c43SMatthias Ringwald */ 143999a10067SMatthias Ringwald #define HSP_SUBEVENT_RING 0x05 1440827b1c43SMatthias Ringwald 1441827b1c43SMatthias Ringwald /** 1442827b1c43SMatthias Ringwald * @format 11 1443827b1c43SMatthias Ringwald * @param subevent_code 1444827b1c43SMatthias Ringwald * @param gain Valid range: [0,15] 1445827b1c43SMatthias Ringwald */ 144699a10067SMatthias Ringwald #define HSP_SUBEVENT_MICROPHONE_GAIN_CHANGED 0x06 1447827b1c43SMatthias Ringwald 1448827b1c43SMatthias Ringwald /** 1449827b1c43SMatthias Ringwald * @format 11 1450827b1c43SMatthias Ringwald * @param subevent_code 1451827b1c43SMatthias Ringwald * @param gain Valid range: [0,15] 1452827b1c43SMatthias Ringwald */ 145399a10067SMatthias Ringwald #define HSP_SUBEVENT_SPEAKER_GAIN_CHANGED 0x07 1454827b1c43SMatthias Ringwald 1455827b1c43SMatthias Ringwald /** 1456827b1c43SMatthias Ringwald * @format 1JV 1457827b1c43SMatthias Ringwald * @param subevent_code 1458827b1c43SMatthias Ringwald * @param value_length 1459827b1c43SMatthias Ringwald * @param value 1460827b1c43SMatthias Ringwald */ 146199a10067SMatthias Ringwald #define HSP_SUBEVENT_HS_COMMAND 0x08 1462827b1c43SMatthias Ringwald 1463827b1c43SMatthias Ringwald /** 1464827b1c43SMatthias Ringwald * @format 1JV 1465827b1c43SMatthias Ringwald * @param subevent_code 1466827b1c43SMatthias Ringwald * @param value_length 1467827b1c43SMatthias Ringwald * @param value 1468827b1c43SMatthias Ringwald */ 146999a10067SMatthias Ringwald #define HSP_SUBEVENT_AG_INDICATION 0x09 1470827b1c43SMatthias Ringwald 1471941b3855SMatthias Ringwald 1472d63c37a1SMatthias Ringwald /** HFP Subevent */ 1473941b3855SMatthias Ringwald 1474d63c37a1SMatthias Ringwald /** 1475a23045e2SMilanka Ringwald * @format 11HB 1476d63c37a1SMatthias Ringwald * @param subevent_code 1477d63c37a1SMatthias Ringwald * @param status 0 == OK 1478a0653c3bSMilanka Ringwald * @param con_handle 14796a7f44bdSMilanka Ringwald * @param bd_addr 1480d63c37a1SMatthias Ringwald */ 1481941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED 0x01 1482d63c37a1SMatthias Ringwald 1483d63c37a1SMatthias Ringwald /** 1484d63c37a1SMatthias Ringwald * @format 1 1485d63c37a1SMatthias Ringwald * @param subevent_code 1486d63c37a1SMatthias Ringwald */ 1487941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_RELEASED 0x02 1488d63c37a1SMatthias Ringwald 1489d63c37a1SMatthias Ringwald /** 1490a23045e2SMilanka Ringwald * @format 11HB1 1491d63c37a1SMatthias Ringwald * @param subevent_code 1492d63c37a1SMatthias Ringwald * @param status 0 == OK 14936ff51cfdSMatthias Ringwald * @param handle 14946a7f44bdSMilanka Ringwald * @param bd_addr 1495d0c4aea6SMilanka Ringwald * @param negotiated_codec 1496d63c37a1SMatthias Ringwald */ 1497941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED 0x03 1498d63c37a1SMatthias Ringwald 1499d63c37a1SMatthias Ringwald /** 1500d63c37a1SMatthias Ringwald * @format 1 1501d63c37a1SMatthias Ringwald * @param subevent_code 1502d63c37a1SMatthias Ringwald */ 1503941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_RELEASED 0x04 1504d63c37a1SMatthias Ringwald 1505d63c37a1SMatthias Ringwald /** 1506d63c37a1SMatthias Ringwald * @format 11 1507d63c37a1SMatthias Ringwald * @param subevent_code 1508d63c37a1SMatthias Ringwald * @param status 0 == OK 1509d63c37a1SMatthias Ringwald */ 1510941b3855SMatthias Ringwald #define HFP_SUBEVENT_COMPLETE 0x05 1511d63c37a1SMatthias Ringwald 1512d63c37a1SMatthias Ringwald /** 1513c741b032SMilanka Ringwald * @format 11111111T 1514d63c37a1SMatthias Ringwald * @param subevent_code 1515d63c37a1SMatthias Ringwald * @param indicator_index 1516d63c37a1SMatthias Ringwald * @param indicator_status 1517c741b032SMilanka Ringwald * @param indicator_min_range 1518c741b032SMilanka Ringwald * @param indicator_max_range 1519c741b032SMilanka Ringwald * @param indicator_mandatory 1520c741b032SMilanka Ringwald * @param indicator_enabled 1521c741b032SMilanka Ringwald * @param indicator_status_changed 1522d63c37a1SMatthias Ringwald * @param indicator_name 1523d63c37a1SMatthias Ringwald */ 1524941b3855SMatthias Ringwald #define HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED 0x06 1525d63c37a1SMatthias Ringwald 1526d63c37a1SMatthias Ringwald /** 15272c737695SMatthias Ringwald * @format 111T 1528d63c37a1SMatthias Ringwald * @param subevent_code 1529d63c37a1SMatthias Ringwald * @param network_operator_mode 1530d63c37a1SMatthias Ringwald * @param network_operator_format 1531d63c37a1SMatthias Ringwald * @param network_operator_name 1532d63c37a1SMatthias Ringwald */ 1533941b3855SMatthias Ringwald #define HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED 0x07 1534d63c37a1SMatthias Ringwald 1535d63c37a1SMatthias Ringwald /** 1536d63c37a1SMatthias Ringwald * @format 11 1537d63c37a1SMatthias Ringwald * @param subevent_code 1538d63c37a1SMatthias Ringwald * @param error 1539d63c37a1SMatthias Ringwald */ 1540941b3855SMatthias Ringwald #define HFP_SUBEVENT_EXTENDED_AUDIO_GATEWAY_ERROR 0x08 1541d63c37a1SMatthias Ringwald 1542d63c37a1SMatthias Ringwald /** 1543d63c37a1SMatthias Ringwald * @format 1 1544d63c37a1SMatthias Ringwald * @param subevent_code 1545d63c37a1SMatthias Ringwald */ 1546aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_START_RINGINIG 0x0A 1547d63c37a1SMatthias Ringwald 1548d63c37a1SMatthias Ringwald /** 1549d63c37a1SMatthias Ringwald * @format 1 1550d63c37a1SMatthias Ringwald * @param subevent_code 1551d63c37a1SMatthias Ringwald */ 1552aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_STOP_RINGINIG 0x0B 1553d63c37a1SMatthias Ringwald 1554d63c37a1SMatthias Ringwald /** 1555d63c37a1SMatthias Ringwald * @format 1 1556d63c37a1SMatthias Ringwald * @param subevent_code 1557d63c37a1SMatthias Ringwald */ 1558aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_CALL_TERMINATED 0x0C 1559d63c37a1SMatthias Ringwald 1560d63c37a1SMatthias Ringwald /** 1561d63c37a1SMatthias Ringwald * @format 1T 1562d63c37a1SMatthias Ringwald * @param subevent_code 1563d63c37a1SMatthias Ringwald * @param number 1564d63c37a1SMatthias Ringwald */ 1565aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_PLACE_CALL_WITH_NUMBER 0x0D 1566d63c37a1SMatthias Ringwald 1567d63c37a1SMatthias Ringwald /** 1568d63c37a1SMatthias Ringwald * @format 1 1569d63c37a1SMatthias Ringwald * @param subevent_code 1570d63c37a1SMatthias Ringwald */ 1571d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ATTACH_NUMBER_TO_VOICE_TAG 0x0E 1572d63c37a1SMatthias Ringwald 1573d63c37a1SMatthias Ringwald /** 1574d63c37a1SMatthias Ringwald * @format 1T 1575d63c37a1SMatthias Ringwald * @param subevent_code 1576d63c37a1SMatthias Ringwald * @param number 1577d63c37a1SMatthias Ringwald */ 1578d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_NUMBER_FOR_VOICE_TAG 0x0F 1579d63c37a1SMatthias Ringwald 1580d63c37a1SMatthias Ringwald /** 1581d63c37a1SMatthias Ringwald * @format 1T 1582d63c37a1SMatthias Ringwald * @param subevent_code 1583d63c37a1SMatthias Ringwald * @param dtmf code 1584d63c37a1SMatthias Ringwald */ 1585d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_TRANSMIT_DTMF_CODES 0x10 1586d63c37a1SMatthias Ringwald 1587d63c37a1SMatthias Ringwald /** 1588d63c37a1SMatthias Ringwald * @format 1 1589d63c37a1SMatthias Ringwald * @param subevent_code 1590d63c37a1SMatthias Ringwald */ 1591d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CALL_ANSWERED 0x11 1592d63c37a1SMatthias Ringwald 1593d63c37a1SMatthias Ringwald /** 1594d63c37a1SMatthias Ringwald * @format 1 1595d63c37a1SMatthias Ringwald * @param subevent_code 1596d63c37a1SMatthias Ringwald */ 1597d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CONFERENCE_CALL 0x12 1598d63c37a1SMatthias Ringwald 1599d63c37a1SMatthias Ringwald /** 1600d63c37a1SMatthias Ringwald * @format 1 1601d63c37a1SMatthias Ringwald * @param subevent_code 1602d63c37a1SMatthias Ringwald */ 1603d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RING 0x13 1604d63c37a1SMatthias Ringwald 1605d63c37a1SMatthias Ringwald /** 1606d63c37a1SMatthias Ringwald * @format 111 1607d63c37a1SMatthias Ringwald * @param subevent_code 1608d63c37a1SMatthias Ringwald * @param status 1609d63c37a1SMatthias Ringwald * @param gain 1610d63c37a1SMatthias Ringwald */ 1611d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_SPEAKER_VOLUME 0x14 1612d63c37a1SMatthias Ringwald 1613d63c37a1SMatthias Ringwald /** 1614d63c37a1SMatthias Ringwald * @format 111 1615d63c37a1SMatthias Ringwald * @param subevent_code 1616d63c37a1SMatthias Ringwald * @param status 1617d63c37a1SMatthias Ringwald * @param gain 1618d63c37a1SMatthias Ringwald */ 1619d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_MICROPHONE_VOLUME 0x15 1620d63c37a1SMatthias Ringwald 1621d63c37a1SMatthias Ringwald /** 1622d63c37a1SMatthias Ringwald * @format 11T 1623d63c37a1SMatthias Ringwald * @param subevent_code 1624d63c37a1SMatthias Ringwald * @param type 1625d63c37a1SMatthias Ringwald * @param number 1626d63c37a1SMatthias Ringwald */ 1627d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CALL_WAITING_NOTIFICATION 0x16 1628d63c37a1SMatthias Ringwald 1629d63c37a1SMatthias Ringwald /** 1630d63c37a1SMatthias Ringwald * @format 11T 1631d63c37a1SMatthias Ringwald * @param subevent_code 1632d63c37a1SMatthias Ringwald * @param type 1633d63c37a1SMatthias Ringwald * @param number 1634d63c37a1SMatthias Ringwald */ 163589f1e358SMilanka Ringwald #define HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION 0x17 1636d63c37a1SMatthias Ringwald 1637d63c37a1SMatthias Ringwald /** 16380aee97efSMilanka Ringwald * @format 1111111T 1639d63c37a1SMatthias Ringwald * @param subevent_code 1640d63c37a1SMatthias Ringwald * @param clcc_idx 1641d63c37a1SMatthias Ringwald * @param clcc_dir 1642d63c37a1SMatthias Ringwald * @param clcc_status 16430aee97efSMilanka Ringwald * @param clcc_mode 1644d63c37a1SMatthias Ringwald * @param clcc_mpty 1645d63c37a1SMatthias Ringwald * @param bnip_type 1646d63c37a1SMatthias Ringwald * @param bnip_number 1647d63c37a1SMatthias Ringwald */ 1648d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ENHANCED_CALL_STATUS 0x18 1649d63c37a1SMatthias Ringwald 1650d63c37a1SMatthias Ringwald /** 1651d63c37a1SMatthias Ringwald * @format 111T 1652d63c37a1SMatthias Ringwald * @param subevent_code 1653d63c37a1SMatthias Ringwald * @param status 1654d63c37a1SMatthias Ringwald * @param bnip_type 1655d63c37a1SMatthias Ringwald * @param bnip_number 1656d63c37a1SMatthias Ringwald */ 1657d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION 0x19 1658d63c37a1SMatthias Ringwald 1659d63c37a1SMatthias Ringwald /** 1660d63c37a1SMatthias Ringwald * @format 1T 1661d63c37a1SMatthias Ringwald * @param subevent_code 1662d63c37a1SMatthias Ringwald * @param value 1663d63c37a1SMatthias Ringwald */ 1664d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RESPONSE_AND_HOLD_STATUS 0x1A 1665941b3855SMatthias Ringwald 1666941b3855SMatthias Ringwald // ANCS Client 1667a4815874SMatthias Ringwald 1668a4815874SMatthias Ringwald /** 1669e10ce426SMatthias Ringwald * @format 1H 1670e10ce426SMatthias Ringwald * @param subevent_code 1671a4815874SMatthias Ringwald * @param handle 1672a4815874SMatthias Ringwald */ 1673e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_CONNECTED 0xF0 1674a4815874SMatthias Ringwald 1675a4815874SMatthias Ringwald /** 1676e10ce426SMatthias Ringwald * @format 1H2T 1677e10ce426SMatthias Ringwald * @param subevent_code 1678a4815874SMatthias Ringwald * @param handle 1679a4815874SMatthias Ringwald * @param attribute_id 1680a4815874SMatthias Ringwald * @param text 1681a4815874SMatthias Ringwald */ 1682e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_NOTIFICATION 0xF1 1683a4815874SMatthias Ringwald 1684a4815874SMatthias Ringwald /** 1685e10ce426SMatthias Ringwald * @format 1H 1686e10ce426SMatthias Ringwald * @param subevent_code 1687a4815874SMatthias Ringwald * @param handle 1688a4815874SMatthias Ringwald */ 1689e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_DISCONNECTED 0xF2 1690941b3855SMatthias Ringwald 1691a23045e2SMilanka Ringwald 1692a23045e2SMilanka Ringwald /** AVDTP Subevent */ 1693a23045e2SMilanka Ringwald 16943338b9aeSMilanka Ringwald /** 1695f1042e9dSMilanka Ringwald * @format 1211 16962c708e8aSMilanka Ringwald * @param subevent_code 1697f9bca1f3SMilanka Ringwald * @param avdtp_cid 1698f1042e9dSMilanka Ringwald * @param local_seid 16992c708e8aSMilanka Ringwald * @param signal_identifier 17002c708e8aSMilanka Ringwald */ 17012c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_ACCEPT 0x01 17022c708e8aSMilanka Ringwald 17032c708e8aSMilanka Ringwald /** 17047050d2caSMilanka Ringwald * @format 1211 17052c708e8aSMilanka Ringwald * @param subevent_code 1706f9bca1f3SMilanka Ringwald * @param avdtp_cid 17074ccacc40SMilanka Ringwald * @param local_seid 17082c708e8aSMilanka Ringwald * @param signal_identifier 17092c708e8aSMilanka Ringwald */ 17102c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_REJECT 0x02 17112c708e8aSMilanka Ringwald 17122c708e8aSMilanka Ringwald /** 17137050d2caSMilanka Ringwald * @format 1211 17142c708e8aSMilanka Ringwald * @param subevent_code 1715f9bca1f3SMilanka Ringwald * @param avdtp_cid 17164ccacc40SMilanka Ringwald * @param local_seid 17172c708e8aSMilanka Ringwald * @param signal_identifier 17182c708e8aSMilanka Ringwald */ 17192c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT 0x03 17202c708e8aSMilanka Ringwald 17212c708e8aSMilanka Ringwald /** 17227050d2caSMilanka Ringwald * @format 12B1 17233338b9aeSMilanka Ringwald * @param subevent_code 1724f9bca1f3SMilanka Ringwald * @param avdtp_cid 17253338b9aeSMilanka Ringwald * @param bd_addr 17263338b9aeSMilanka Ringwald * @param status 0 == OK 17273338b9aeSMilanka Ringwald */ 17282c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED 0x04 1729a23045e2SMilanka Ringwald 17303338b9aeSMilanka Ringwald /** 17317050d2caSMilanka Ringwald * @format 12 17323338b9aeSMilanka Ringwald * @param subevent_code 1733f9bca1f3SMilanka Ringwald * @param avdtp_cid 17343338b9aeSMilanka Ringwald */ 17352c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_RELEASED 0x05 17363338b9aeSMilanka Ringwald 17373338b9aeSMilanka Ringwald /** 17387050d2caSMilanka Ringwald * @format 121111 17393338b9aeSMilanka Ringwald * @param subevent_code 1740f9bca1f3SMilanka Ringwald * @param avdtp_cid 17414ccacc40SMilanka Ringwald * @param remote_seid 0x01 – 0x3E 17423338b9aeSMilanka Ringwald * @param in_use 0-not in use, 1-in use 17433338b9aeSMilanka Ringwald * @param media_type 0-audio, 1-video, 2-multimedia 17443338b9aeSMilanka Ringwald * @param sep_type 0-source, 1-sink 17453338b9aeSMilanka Ringwald */ 17462c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_FOUND 0x06 17473338b9aeSMilanka Ringwald 17483338b9aeSMilanka Ringwald /** 17497050d2caSMilanka Ringwald * @format 121111111111 17503338b9aeSMilanka Ringwald * @param subevent_code 1751f9bca1f3SMilanka Ringwald * @param avdtp_cid 17524ccacc40SMilanka Ringwald * @param local_seid 17534ccacc40SMilanka Ringwald * @param remote_seid 17543338b9aeSMilanka Ringwald * @param media_type 1755ea7bd529SMilanka Ringwald * @param sampling_frequency_bitmap 1756ea7bd529SMilanka Ringwald * @param channel_mode_bitmap 1757ea7bd529SMilanka Ringwald * @param block_length_bitmap 1758ea7bd529SMilanka Ringwald * @param subbands_bitmap 1759ea7bd529SMilanka Ringwald * @param allocation_method_bitmap 17603338b9aeSMilanka Ringwald * @param min_bitpool_value 17613338b9aeSMilanka Ringwald * @param max_bitpool_value 17623338b9aeSMilanka Ringwald */ 17632c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY 0x07 17643338b9aeSMilanka Ringwald 17653338b9aeSMilanka Ringwald /** 17667050d2caSMilanka Ringwald * @format 121112LV 17673338b9aeSMilanka Ringwald * @param subevent_code 1768f9bca1f3SMilanka Ringwald * @param avdtp_cid 17694ccacc40SMilanka Ringwald * @param local_seid 17704ccacc40SMilanka Ringwald * @param remote_seid 17713338b9aeSMilanka Ringwald * @param media_type 17723338b9aeSMilanka Ringwald * @param media_codec_type 17733338b9aeSMilanka Ringwald * @param media_codec_information_len 17743338b9aeSMilanka Ringwald * @param media_codec_information 17753338b9aeSMilanka Ringwald */ 17762c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY 0x08 1777a23045e2SMilanka Ringwald 177867ae582dSMilanka Ringwald 177967ae582dSMilanka Ringwald /** 178067ae582dSMilanka Ringwald * @format 1211 178167ae582dSMilanka Ringwald * @param subevent_code 178267ae582dSMilanka Ringwald * @param avdtp_cid 178367ae582dSMilanka Ringwald * @param local_seid 178467ae582dSMilanka Ringwald * @param remote_seid 178567ae582dSMilanka Ringwald */ 178667ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY 0x09 178767ae582dSMilanka Ringwald 178867ae582dSMilanka Ringwald 178967ae582dSMilanka Ringwald /** 179067ae582dSMilanka Ringwald * @format 1211 179167ae582dSMilanka Ringwald * @param subevent_code 179267ae582dSMilanka Ringwald * @param avdtp_cid 179367ae582dSMilanka Ringwald * @param local_seid 179467ae582dSMilanka Ringwald * @param remote_seid 179567ae582dSMilanka Ringwald */ 179667ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY 0x0A 179767ae582dSMilanka Ringwald 179867ae582dSMilanka Ringwald 179967ae582dSMilanka Ringwald /** 180067ae582dSMilanka Ringwald * @format 1211111 180167ae582dSMilanka Ringwald * @param subevent_code 180267ae582dSMilanka Ringwald * @param avdtp_cid 180367ae582dSMilanka Ringwald * @param local_seid 180467ae582dSMilanka Ringwald * @param remote_seid 180567ae582dSMilanka Ringwald * @param recovery_type 180667ae582dSMilanka Ringwald * @param maximum_recovery_window_size 180767ae582dSMilanka Ringwald * @param maximum_number_media_packets 180867ae582dSMilanka Ringwald */ 180967ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY 0x0B 181067ae582dSMilanka Ringwald 181167ae582dSMilanka Ringwald 181267ae582dSMilanka Ringwald /** 181367ae582dSMilanka Ringwald * @format 12112LV 181467ae582dSMilanka Ringwald * @param subevent_code 181567ae582dSMilanka Ringwald * @param avdtp_cid 181667ae582dSMilanka Ringwald * @param local_seid 181767ae582dSMilanka Ringwald * @param remote_seid 181867ae582dSMilanka Ringwald * @param cp_type 181967ae582dSMilanka Ringwald * @param cp_type_value_len 182067ae582dSMilanka Ringwald * @param cp_type_value 182167ae582dSMilanka Ringwald */ 182267ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY 0x0C 182367ae582dSMilanka Ringwald 182467ae582dSMilanka Ringwald 182567ae582dSMilanka Ringwald /** 182667ae582dSMilanka Ringwald * @format 121111111111 182767ae582dSMilanka Ringwald * @param subevent_code 182867ae582dSMilanka Ringwald * @param avdtp_cid 182967ae582dSMilanka Ringwald * @param local_seid 183067ae582dSMilanka Ringwald * @param remote_seid 183167ae582dSMilanka Ringwald * @param fragmentation 183267ae582dSMilanka Ringwald * @param transport_identifiers_num 183367ae582dSMilanka Ringwald * @param transport_session_identifier_1 183467ae582dSMilanka Ringwald * @param transport_session_identifier_2 183567ae582dSMilanka Ringwald * @param transport_session_identifier_3 183667ae582dSMilanka Ringwald * @param tcid_1 183767ae582dSMilanka Ringwald * @param tcid_2 183867ae582dSMilanka Ringwald * @param tcid_3 183967ae582dSMilanka Ringwald */ 184067ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY 0x0D 184167ae582dSMilanka Ringwald 184267ae582dSMilanka Ringwald 184367ae582dSMilanka Ringwald /** 184467ae582dSMilanka Ringwald * @format 1211 184567ae582dSMilanka Ringwald * @param subevent_code 184667ae582dSMilanka Ringwald * @param avdtp_cid 184767ae582dSMilanka Ringwald * @param local_seid 184867ae582dSMilanka Ringwald * @param remote_seid 184967ae582dSMilanka Ringwald */ 185067ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY 0x0E 185167ae582dSMilanka Ringwald 185267ae582dSMilanka Ringwald 185367ae582dSMilanka Ringwald /** 185467ae582dSMilanka Ringwald * @format 1211111 185567ae582dSMilanka Ringwald * @param subevent_code 185667ae582dSMilanka Ringwald * @param avdtp_cid 185767ae582dSMilanka Ringwald * @param local_seid 185867ae582dSMilanka Ringwald * @param remote_seid 185967ae582dSMilanka Ringwald * @param back_ch 186067ae582dSMilanka Ringwald * @param media 186167ae582dSMilanka Ringwald * @param recovery 186267ae582dSMilanka Ringwald */ 186367ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY 0x0F 186467ae582dSMilanka Ringwald 186567ae582dSMilanka Ringwald 1866ea7bd529SMilanka Ringwald /** 18677050d2caSMilanka Ringwald * @format 12111121111111 1868ea7bd529SMilanka Ringwald * @param subevent_code 1869f9bca1f3SMilanka Ringwald * @param avdtp_cid 18704ccacc40SMilanka Ringwald * @param local_seid 18714ccacc40SMilanka Ringwald * @param remote_seid 1872ea7bd529SMilanka Ringwald * @param reconfigure 1873ea7bd529SMilanka Ringwald * @param media_type 1874ea7bd529SMilanka Ringwald * @param sampling_frequency 1875ea7bd529SMilanka Ringwald * @param channel_mode 1876ea7bd529SMilanka Ringwald * @param num_channels 1877ea7bd529SMilanka Ringwald * @param block_length 1878ea7bd529SMilanka Ringwald * @param subbands 1879ea7bd529SMilanka Ringwald * @param allocation_method 1880ea7bd529SMilanka Ringwald * @param min_bitpool_value 1881ea7bd529SMilanka Ringwald * @param max_bitpool_value 1882ea7bd529SMilanka Ringwald */ 188367ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION 0x10 1884ea7bd529SMilanka Ringwald 1885ea7bd529SMilanka Ringwald /** 18867050d2caSMilanka Ringwald * @format 1211112LV 1887ea7bd529SMilanka Ringwald * @param subevent_code 1888f9bca1f3SMilanka Ringwald * @param avdtp_cid 18894ccacc40SMilanka Ringwald * @param local_seid 18904ccacc40SMilanka Ringwald * @param remote_seid 1891ea7bd529SMilanka Ringwald * @param reconfigure 1892ea7bd529SMilanka Ringwald * @param media_type 1893ea7bd529SMilanka Ringwald * @param media_codec_type 1894ea7bd529SMilanka Ringwald * @param media_codec_information_len 1895ea7bd529SMilanka Ringwald * @param media_codec_information 1896ea7bd529SMilanka Ringwald */ 189767ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION 0x11 1898decc740cSMilanka Ringwald 189985a0c7cdSMilanka Ringwald /** 1900ef5ad9d6SMilanka Ringwald * @format 12B111 190185a0c7cdSMilanka Ringwald * @param subevent_code 1902f9bca1f3SMilanka Ringwald * @param avdtp_cid 1903ef5ad9d6SMilanka Ringwald * @param bd_addr 19044ccacc40SMilanka Ringwald * @param local_seid 19054ccacc40SMilanka Ringwald * @param remote_seid 190685a0c7cdSMilanka Ringwald * @param status 0 == OK 190785a0c7cdSMilanka Ringwald */ 190867ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED 0x12 190985a0c7cdSMilanka Ringwald 191085a0c7cdSMilanka Ringwald /** 191134b22aacSMilanka Ringwald * @format 121 191285a0c7cdSMilanka Ringwald * @param subevent_code 1913f9bca1f3SMilanka Ringwald * @param avdtp_cid 191434b22aacSMilanka Ringwald * @param local_seid 191585a0c7cdSMilanka Ringwald */ 191667ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED 0x13 191785a0c7cdSMilanka Ringwald 1918f7103c90SMilanka Ringwald /** 19197050d2caSMilanka Ringwald * @format 1212 1920f7103c90SMilanka Ringwald * @param subevent_code 1921f9bca1f3SMilanka Ringwald * @param avdtp_cid 19224ccacc40SMilanka Ringwald * @param local_seid 1923a04ed5e9SMilanka Ringwald * @param sequence_number 1924f7103c90SMilanka Ringwald */ 192567ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW 0x14 192685a0c7cdSMilanka Ringwald 1927578eda3eSMilanka Ringwald /** 1928578eda3eSMilanka Ringwald * @format 1211 1929578eda3eSMilanka Ringwald * @param subevent_code 1930578eda3eSMilanka Ringwald * @param avdtp_cid 1931578eda3eSMilanka Ringwald * @param local_seid 1932578eda3eSMilanka Ringwald * @param remote_seid 1933578eda3eSMilanka Ringwald */ 19340f5bb594SMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE 0x15 1935578eda3eSMilanka Ringwald 1936578eda3eSMilanka Ringwald 1937c0491de3SMilanka Ringwald /** 1938c0491de3SMilanka Ringwald * @format 12 1939c0491de3SMilanka Ringwald * @param subevent_code 1940c0491de3SMilanka Ringwald * @param avdtp_cid 1941c0491de3SMilanka Ringwald */ 1942c0491de3SMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_DICOVERY_DONE 0x16 1943c0491de3SMilanka Ringwald 1944ff6bc02cSMilanka Ringwald /** 1945ff6bc02cSMilanka Ringwald * @format 1212 1946ff6bc02cSMilanka Ringwald * @param subevent_code 1947ff6bc02cSMilanka Ringwald * @param avdtp_cid 1948ff6bc02cSMilanka Ringwald * @param local_seid 1949ff6bc02cSMilanka Ringwald * @param delay_100us 1950ff6bc02cSMilanka Ringwald */ 1951ff6bc02cSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT 0x17 1952decc740cSMilanka Ringwald 195346e6b063SMilanka Ringwald /** A2DP Subevent */ 19547050d2caSMilanka Ringwald /* Stream goes through following states: 19557050d2caSMilanka Ringwald * - OPEN - indicated with A2DP_SUBEVENT_STREAM_ESTABLISHED event 19567050d2caSMilanka Ringwald * - START - indicated with A2DP_SUBEVENT_STREAM_STARTED event 19577050d2caSMilanka Ringwald * - SUSPEND - indicated with A2DP_SUBEVENT_STREAM_SUSPENDED event 19587050d2caSMilanka Ringwald * - ABORT/STOP - indicated with A2DP_SUBEVENT_STREAM_RELEASED event 19597050d2caSMilanka Ringwald 19607050d2caSMilanka Ringwald OPEN state will be followed by ABORT/STOP. Stream is ready but media transfer is not started. 19617050d2caSMilanka Ringwald START can come only after the stream is OPENED, and indicates that media transfer is started. 19627050d2caSMilanka Ringwald SUSPEND is optional, it pauses the stream. 19637050d2caSMilanka Ringwald */ 196446e6b063SMilanka Ringwald 196546e6b063SMilanka Ringwald /** 19667050d2caSMilanka Ringwald * @format 121 Sent only by A2DP source. 19677050d2caSMilanka Ringwald * @param subevent_code 1968f1042e9dSMilanka Ringwald * @param a2dp_cid 19697050d2caSMilanka Ringwald * @param local_seid 19707050d2caSMilanka Ringwald */ 19717050d2caSMilanka Ringwald #define A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW 0x01 19727050d2caSMilanka Ringwald 19737050d2caSMilanka Ringwald /** 1974f1042e9dSMilanka Ringwald * @format 12111121111111 1975f1042e9dSMilanka Ringwald * @param subevent_code 1976f1042e9dSMilanka Ringwald * @param a2dp_cid 1977f1042e9dSMilanka Ringwald * @param int_seid 1978f1042e9dSMilanka Ringwald * @param acp_seid 1979f1042e9dSMilanka Ringwald * @param reconfigure 1980f1042e9dSMilanka Ringwald * @param media_type 1981f1042e9dSMilanka Ringwald * @param sampling_frequency 1982f1042e9dSMilanka Ringwald * @param channel_mode 1983f1042e9dSMilanka Ringwald * @param num_channels 1984f1042e9dSMilanka Ringwald * @param block_length 1985f1042e9dSMilanka Ringwald * @param subbands 1986f1042e9dSMilanka Ringwald * @param allocation_method 1987f1042e9dSMilanka Ringwald * @param min_bitpool_value 1988f1042e9dSMilanka Ringwald * @param max_bitpool_value 1989f1042e9dSMilanka Ringwald */ 1990f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION 0x02 1991f1042e9dSMilanka Ringwald 1992f1042e9dSMilanka Ringwald /** 1993f1042e9dSMilanka Ringwald * @format 1211112LV 1994f1042e9dSMilanka Ringwald * @param subevent_code 1995f1042e9dSMilanka Ringwald * @param a2dp_cid 1996f1042e9dSMilanka Ringwald * @param int_seid 1997f1042e9dSMilanka Ringwald * @param acp_seid 1998f1042e9dSMilanka Ringwald * @param reconfigure 1999f1042e9dSMilanka Ringwald * @param media_type 2000f1042e9dSMilanka Ringwald * @param media_codec_type 2001f1042e9dSMilanka Ringwald * @param media_codec_information_len 2002f1042e9dSMilanka Ringwald * @param media_codec_information 2003f1042e9dSMilanka Ringwald */ 2004f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION 0x03 2005f1042e9dSMilanka Ringwald 2006f1042e9dSMilanka Ringwald /** 2007ef5ad9d6SMilanka Ringwald * @format 12B111 Stream is opened byt not started. 200846e6b063SMilanka Ringwald * @param subevent_code 200946e6b063SMilanka Ringwald * @param a2dp_cid 2010ef5ad9d6SMilanka Ringwald * @param bd_addr 201146e6b063SMilanka Ringwald * @param local_seid 201246e6b063SMilanka Ringwald * @param remote_seid 201346e6b063SMilanka Ringwald * @param status 201446e6b063SMilanka Ringwald */ 2015f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_ESTABLISHED 0x04 201646e6b063SMilanka Ringwald 2017a42de583SMilanka Ringwald /** 201834b22aacSMilanka Ringwald * @format 121 Indicates that media transfer is started. 2019a42de583SMilanka Ringwald * @param subevent_code 202046e6b063SMilanka Ringwald * @param a2dp_cid 202146e6b063SMilanka Ringwald * @param local_seid 2022a42de583SMilanka Ringwald */ 2023f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_STARTED 0x05 202446e6b063SMilanka Ringwald 202546e6b063SMilanka Ringwald /** 202634b22aacSMilanka Ringwald * @format 121 Stream is paused. 202746e6b063SMilanka Ringwald * @param subevent_code 202846e6b063SMilanka Ringwald * @param a2dp_cid 202946e6b063SMilanka Ringwald * @param local_seid 203046e6b063SMilanka Ringwald */ 2031f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_SUSPENDED 0x06 2032a42de583SMilanka Ringwald 2033a42de583SMilanka Ringwald /** 2034133bececSMilanka Ringwald * @format 121 Stream is stoped or aborted. 2035133bececSMilanka Ringwald * @param subevent_code 2036133bececSMilanka Ringwald * @param a2dp_cid 2037133bececSMilanka Ringwald * @param local_seid 2038133bececSMilanka Ringwald */ 2039133bececSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_STOPPED 0x07 2040133bececSMilanka Ringwald 2041133bececSMilanka Ringwald /** 204234b22aacSMilanka Ringwald * @format 121 Stream is released. 204346e6b063SMilanka Ringwald * @param subevent_code 2044f1042e9dSMilanka Ringwald * @param a2dp_cid 204546e6b063SMilanka Ringwald * @param local_seid 204646e6b063SMilanka Ringwald */ 2047133bececSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_RELEASED 0x08 2048ba155c22SMilanka Ringwald 204934b22aacSMilanka Ringwald /** 205034b22aacSMilanka Ringwald * @format 1211 205134b22aacSMilanka Ringwald * @param subevent_code 205234b22aacSMilanka Ringwald * @param a2dp_cid 205334b22aacSMilanka Ringwald * @param local_seid 205434b22aacSMilanka Ringwald * @param signal_identifier 205534b22aacSMilanka Ringwald */ 2056133bececSMilanka Ringwald #define A2DP_SUBEVENT_COMMAND_ACCEPTED 0x09 20577050d2caSMilanka Ringwald 205834b22aacSMilanka Ringwald /** 205934b22aacSMilanka Ringwald * @format 1211 206034b22aacSMilanka Ringwald * @param subevent_code 206134b22aacSMilanka Ringwald * @param a2dp_cid 206234b22aacSMilanka Ringwald * @param local_seid 206334b22aacSMilanka Ringwald * @param signal_identifier 206434b22aacSMilanka Ringwald */ 2065133bececSMilanka Ringwald #define A2DP_SUBEVENT_COMMAND_REJECTED 0x0A 20667050d2caSMilanka Ringwald 20675448c259SMilanka Ringwald /** 206863331bf4SMilanka Ringwald * @format 12B1 20695448c259SMilanka Ringwald * @param subevent_code 20705448c259SMilanka Ringwald * @param a2dp_cid 20715448c259SMilanka Ringwald * @param bd_addr 207263331bf4SMilanka Ringwald * @param status 0 == OK 20735448c259SMilanka Ringwald */ 207463331bf4SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED 0x0B 20755448c259SMilanka Ringwald 207646c48853SMilanka Ringwald /** 2077a466d508SMilanka Ringwald * @format 12 Signaling channel is released. 207846c48853SMilanka Ringwald * @param subevent_code 207946c48853SMilanka Ringwald * @param a2dp_cid 208046c48853SMilanka Ringwald */ 2081133bececSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_RELEASED 0x0C 208246c48853SMilanka Ringwald 2083b8dffb25SMatthias Ringwald /** 2084b8dffb25SMatthias Ringwald * @format 1211 Stream was reconfigured 2085b8dffb25SMatthias Ringwald * @param subevent_code 2086b8dffb25SMatthias Ringwald * @param a2dp_cid 2087b8dffb25SMatthias Ringwald * @param local_seid 2088b8dffb25SMatthias Ringwald * @param status 2089b8dffb25SMatthias Ringwald */ 2090b8dffb25SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_RECONFIGURED 0x0D 209146c48853SMilanka Ringwald 2092ff6bc02cSMilanka Ringwald /** 20930f5bb594SMilanka Ringwald * @format 1211 20940f5bb594SMilanka Ringwald * @param subevent_code 20950f5bb594SMilanka Ringwald * @param avdtp_cid 20960f5bb594SMilanka Ringwald * @param local_seid 20970f5bb594SMilanka Ringwald * @param remote_seid 20980f5bb594SMilanka Ringwald */ 20990f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY 0x0E 21000f5bb594SMilanka Ringwald 21010f5bb594SMilanka Ringwald 21020f5bb594SMilanka Ringwald /** 2103ff6bc02cSMilanka Ringwald * @format 1212 2104ff6bc02cSMilanka Ringwald * @param subevent_code 2105ff6bc02cSMilanka Ringwald * @param avdtp_cid 2106ff6bc02cSMilanka Ringwald * @param local_seid 2107ff6bc02cSMilanka Ringwald * @param delay_100us 2108ff6bc02cSMilanka Ringwald */ 21090f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORT 0x0F 2110ff6bc02cSMilanka Ringwald 21110f5bb594SMilanka Ringwald /** 21120f5bb594SMilanka Ringwald * @format 1211 21130f5bb594SMilanka Ringwald * @param subevent_code 21140f5bb594SMilanka Ringwald * @param avdtp_cid 21150f5bb594SMilanka Ringwald * @param local_seid 21160f5bb594SMilanka Ringwald * @param remote_seid 21170f5bb594SMilanka Ringwald */ 21180f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE 0x10 2119ff6bc02cSMilanka Ringwald 2120decc740cSMilanka Ringwald /** AVRCP Subevent */ 2121decc740cSMilanka Ringwald 2122decc740cSMilanka Ringwald /** 21236086246cSMilanka Ringwald * @format 11B2 2124decc740cSMilanka Ringwald * @param subevent_code 21252a029560SMilanka Ringwald * @param status 0 == OK 2126decc740cSMilanka Ringwald * @param bd_addr 2127b193c45eSMilanka Ringwald * @param avrcp_cid 2128decc740cSMilanka Ringwald */ 2129decc740cSMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_ESTABLISHED 0x01 2130decc740cSMilanka Ringwald 2131decc740cSMilanka Ringwald /** 2132b193c45eSMilanka Ringwald * @format 12 2133decc740cSMilanka Ringwald * @param subevent_code 2134b193c45eSMilanka Ringwald * @param avrcp_cid 2135decc740cSMilanka Ringwald */ 21366eb7ba29SMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_RELEASED 0x02 2137decc740cSMilanka Ringwald 2138cd41da7eSMilanka Ringwald /** 2139b193c45eSMilanka Ringwald * @format 12111 21402a029560SMilanka Ringwald * @param subevent_code 2141b193c45eSMilanka Ringwald * @param avrcp_cid 2142d3b6a85eSMatthias Ringwald * @param command_type 21432a029560SMilanka Ringwald * @param repeat_mode 21442a029560SMilanka Ringwald * @param shuffle_mode 21452a029560SMilanka Ringwald */ 21461bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE 0x03 2147cd41da7eSMilanka Ringwald 21486eb7ba29SMilanka Ringwald /** 2149b193c45eSMilanka Ringwald * @format 121441 21506eb7ba29SMilanka Ringwald * @param subevent_code 2151b193c45eSMilanka Ringwald * @param avrcp_cid 2152d3b6a85eSMatthias Ringwald * @param command_type 21536eb7ba29SMilanka Ringwald * @param song_length 21546eb7ba29SMilanka Ringwald * @param song_position 21556eb7ba29SMilanka Ringwald * @param play_status 21566eb7ba29SMilanka Ringwald */ 21571bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_PLAY_STATUS 0x04 21586eb7ba29SMilanka Ringwald 21596eb7ba29SMilanka Ringwald /** 2160b193c45eSMilanka Ringwald * @format 1211 21616eb7ba29SMilanka Ringwald * @param subevent_code 2162b193c45eSMilanka Ringwald * @param avrcp_cid 2163d3b6a85eSMatthias Ringwald * @param command_type 21646aecb8a4SMatthias Ringwald * @param play_status 21656eb7ba29SMilanka Ringwald */ 21661bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED 0x05 21676eb7ba29SMilanka Ringwald 21686eb7ba29SMilanka Ringwald /** 2169ee6d17f2SMatthias Ringwald * @format 121 21706eb7ba29SMilanka Ringwald * @param subevent_code 2171b193c45eSMilanka Ringwald * @param avrcp_cid 2172d3b6a85eSMatthias Ringwald * @param command_type 21736eb7ba29SMilanka Ringwald */ 21741bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED 0x06 21756eb7ba29SMilanka Ringwald 21766eb7ba29SMilanka Ringwald /** 2177b193c45eSMilanka Ringwald * @format 121 21786eb7ba29SMilanka Ringwald * @param subevent_code 2179b193c45eSMilanka Ringwald * @param avrcp_cid 2180d3b6a85eSMatthias Ringwald * @param command_type 21816eb7ba29SMilanka Ringwald */ 21821bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED 0x07 21836eb7ba29SMilanka Ringwald 21846eb7ba29SMilanka Ringwald /** 2185b193c45eSMilanka Ringwald * @format 121 21866eb7ba29SMilanka Ringwald * @param subevent_code 2187b193c45eSMilanka Ringwald * @param avrcp_cid 2188d3b6a85eSMatthias Ringwald * @param command_type 21896eb7ba29SMilanka Ringwald */ 21901bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED 0x08 21916eb7ba29SMilanka Ringwald 21926eb7ba29SMilanka Ringwald /** 2193b193c45eSMilanka Ringwald * @format 1211 21946eb7ba29SMilanka Ringwald * @param subevent_code 2195b193c45eSMilanka Ringwald * @param avrcp_cid 2196d3b6a85eSMatthias Ringwald * @param command_type 21976eb7ba29SMilanka Ringwald * @param absolute_volume 21986eb7ba29SMilanka Ringwald */ 21991bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED 0x09 22006eb7ba29SMilanka Ringwald 22016eb7ba29SMilanka Ringwald /** 2202b193c45eSMilanka Ringwald * @format 1211 22036eb7ba29SMilanka Ringwald * @param subevent_code 2204b193c45eSMilanka Ringwald * @param avrcp_cid 2205d3b6a85eSMatthias Ringwald * @param command_type 22066eb7ba29SMilanka Ringwald * @param absolute_volume 22076eb7ba29SMilanka Ringwald */ 22081bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE 0x0A 22096eb7ba29SMilanka Ringwald 22106eb7ba29SMilanka Ringwald /** 2211b193c45eSMilanka Ringwald * @format 1211 22126eb7ba29SMilanka Ringwald * @param subevent_code 2213b193c45eSMilanka Ringwald * @param avrcp_cid 2214d3b6a85eSMatthias Ringwald * @param command_type 22156eb7ba29SMilanka Ringwald * @param notification_id 22166eb7ba29SMilanka Ringwald */ 22171bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_ENABLE_NOTIFICATION_COMPLETE 0x0B 22186eb7ba29SMilanka Ringwald 22196eb7ba29SMilanka Ringwald /** 2220b193c45eSMilanka Ringwald * @format 1211 22216eb7ba29SMilanka Ringwald * @param subevent_code 2222b193c45eSMilanka Ringwald * @param avrcp_cid 2223d3b6a85eSMatthias Ringwald * @param command_type 22246eb7ba29SMilanka Ringwald * @param operation_id 22256eb7ba29SMilanka Ringwald */ 22261bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_START 0x0C 22276eb7ba29SMilanka Ringwald 22286eb7ba29SMilanka Ringwald /** 2229b193c45eSMilanka Ringwald * @format 1211 22306eb7ba29SMilanka Ringwald * @param subevent_code 2231b193c45eSMilanka Ringwald * @param avrcp_cid 2232d3b6a85eSMatthias Ringwald * @param command_type 22336eb7ba29SMilanka Ringwald * @param operation_id 22346eb7ba29SMilanka Ringwald */ 22351bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_COMPLETE 0x0D 22366eb7ba29SMilanka Ringwald 22376eb7ba29SMilanka Ringwald /** 2238b193c45eSMilanka Ringwald * @format 121 22396eb7ba29SMilanka Ringwald * @param subevent_code 2240b193c45eSMilanka Ringwald * @param avrcp_cid 2241d3b6a85eSMatthias Ringwald * @param command_type 22426eb7ba29SMilanka Ringwald */ 22431bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE 0x0E 22446eb7ba29SMilanka Ringwald 2245f1b34e8dSMatthias Ringwald /** 22464b338011SMilanka Ringwald * @format 12 22474b338011SMilanka Ringwald * @param subevent_code 22484b338011SMilanka Ringwald * @param avrcp_cid 22494b338011SMilanka Ringwald */ 22501bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_COMPANY_IDS_QUERY 0x0F 2251e0bbf3edSMilanka Ringwald 2252e0bbf3edSMilanka Ringwald /** 2253e0bbf3edSMilanka Ringwald * @format 12 2254e0bbf3edSMilanka Ringwald * @param subevent_code 2255e0bbf3edSMilanka Ringwald * @param avrcp_cid 2256e0bbf3edSMilanka Ringwald */ 22571bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_EVENT_IDS_QUERY 0x10 2258c045af99SMilanka Ringwald 2259c045af99SMilanka Ringwald /** 2260c045af99SMilanka Ringwald * @format 12 2261c045af99SMilanka Ringwald * @param subevent_code 2262c045af99SMilanka Ringwald * @param avrcp_cid 2263c045af99SMilanka Ringwald */ 22641bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_PLAY_STATUS_QUERY 0x11 22654b338011SMilanka Ringwald 22664b338011SMilanka Ringwald /** 2267831d3fd5SMilanka Ringwald * @format 12111 2268831d3fd5SMilanka Ringwald * @param subevent_code 2269831d3fd5SMilanka Ringwald * @param avrcp_cid 2270831d3fd5SMilanka Ringwald * @param operation_id 2271831d3fd5SMilanka Ringwald * @param operands_length 2272831d3fd5SMilanka Ringwald * @param operand 2273831d3fd5SMilanka Ringwald */ 22741bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION 0x12 22751bf7a74fSMilanka Ringwald 22761bf7a74fSMilanka Ringwald /** 22771bf7a74fSMilanka Ringwald * @format 1211 22781bf7a74fSMilanka Ringwald * @param subevent_code 22791bf7a74fSMilanka Ringwald * @param avrcp_cid 22801bf7a74fSMilanka Ringwald * @param command_type 22811bf7a74fSMilanka Ringwald * @param track 22821bf7a74fSMilanka Ringwald */ 22831bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO 0x13 22841bf7a74fSMilanka Ringwald 22851bf7a74fSMilanka Ringwald /** 22861bf7a74fSMilanka Ringwald * @format 1211 22871bf7a74fSMilanka Ringwald * @param subevent_code 22881bf7a74fSMilanka Ringwald * @param avrcp_cid 22891bf7a74fSMilanka Ringwald * @param command_type 22901bf7a74fSMilanka Ringwald * @param total_tracks 22911bf7a74fSMilanka Ringwald */ 22921bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO 0x14 22931bf7a74fSMilanka Ringwald 22941bf7a74fSMilanka Ringwald /** 22951bf7a74fSMilanka Ringwald * @format 1214 22961bf7a74fSMilanka Ringwald * @param subevent_code 22971bf7a74fSMilanka Ringwald * @param avrcp_cid 22981bf7a74fSMilanka Ringwald * @param command_type 22991bf7a74fSMilanka Ringwald * @param song_length in ms 23001bf7a74fSMilanka Ringwald */ 23011bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO 0x15 23021bf7a74fSMilanka Ringwald 23031bf7a74fSMilanka Ringwald /** 23041bf7a74fSMilanka Ringwald * @format 121JV 23051bf7a74fSMilanka Ringwald * @param subevent_code 23061bf7a74fSMilanka Ringwald * @param avrcp_cid 23071bf7a74fSMilanka Ringwald * @param command_type 23081bf7a74fSMilanka Ringwald * @param value_len 23091bf7a74fSMilanka Ringwald * @param value 23101bf7a74fSMilanka Ringwald */ 23111bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO 0x16 23121bf7a74fSMilanka Ringwald 23131bf7a74fSMilanka Ringwald /* 23141bf7a74fSMilanka Ringwald * @format 121JV 23151bf7a74fSMilanka Ringwald * @param subevent_code 23161bf7a74fSMilanka Ringwald * @param avrcp_cid 23171bf7a74fSMilanka Ringwald * @param command_type 23181bf7a74fSMilanka Ringwald * @param value_len 23191bf7a74fSMilanka Ringwald * @param value 23201bf7a74fSMilanka Ringwald */ 23211bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO 0x17 23221bf7a74fSMilanka Ringwald 23231bf7a74fSMilanka Ringwald /* 23241bf7a74fSMilanka Ringwald * @format 121JV 23251bf7a74fSMilanka Ringwald * @param subevent_code 23261bf7a74fSMilanka Ringwald * @param avrcp_cid 23271bf7a74fSMilanka Ringwald * @param command_type 23281bf7a74fSMilanka Ringwald * @param value_len 23291bf7a74fSMilanka Ringwald * @param value 23301bf7a74fSMilanka Ringwald */ 23311bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO 0x18 23321bf7a74fSMilanka Ringwald 23331bf7a74fSMilanka Ringwald /* 23341bf7a74fSMilanka Ringwald * @format 121JV 23351bf7a74fSMilanka Ringwald * @param subevent_code 23361bf7a74fSMilanka Ringwald * @param avrcp_cid 23371bf7a74fSMilanka Ringwald * @param command_type 23381bf7a74fSMilanka Ringwald * @param value_len 23391bf7a74fSMilanka Ringwald * @param value 23401bf7a74fSMilanka Ringwald */ 23411bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO 0x19 23421bf7a74fSMilanka Ringwald 23431bf7a74fSMilanka Ringwald /* 23441bf7a74fSMilanka Ringwald * @format 1211 23451bf7a74fSMilanka Ringwald * @param subevent_code 23461bf7a74fSMilanka Ringwald * @param avrcp_cid 23471bf7a74fSMilanka Ringwald * @param command_type 23481bf7a74fSMilanka Ringwald * @param status 23491bf7a74fSMilanka Ringwald */ 23501bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE 0x1A 23511bf7a74fSMilanka Ringwald 2352c3fca900SMilanka Ringwald /** 2353576a1127SMilanka Ringwald * @format 1B2 2354576a1127SMilanka Ringwald * @param subevent_code 2355576a1127SMilanka Ringwald * @param bd_addr 2356576a1127SMilanka Ringwald * @param browsing_cid 2357576a1127SMilanka Ringwald */ 2358576a1127SMilanka Ringwald #define AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION 0x1B 2359576a1127SMilanka Ringwald 2360576a1127SMilanka Ringwald /** 2361c3fca900SMilanka Ringwald * @format 11B2 2362c3fca900SMilanka Ringwald * @param subevent_code 2363c3fca900SMilanka Ringwald * @param status 0 == OK 2364c3fca900SMilanka Ringwald * @param bd_addr 2365c3fca900SMilanka Ringwald * @param browsing_cid 2366c3fca900SMilanka Ringwald */ 2367576a1127SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED 0x1C 2368c3fca900SMilanka Ringwald 2369c3fca900SMilanka Ringwald /** 2370c3fca900SMilanka Ringwald * @format 12 2371c3fca900SMilanka Ringwald * @param subevent_code 2372c3fca900SMilanka Ringwald * @param browsing_cid 2373c3fca900SMilanka Ringwald */ 2374576a1127SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_RELEASED 0x1D 23754c954014SMilanka Ringwald 23763d49a24eSMilanka Ringwald /** 2377be65baf4SMilanka Ringwald * @format 12211 2378e30788a3SMilanka Ringwald * @param subevent_code 2379e30788a3SMilanka Ringwald * @param browsing_cid 2380be65baf4SMilanka Ringwald * @param uid_counter 2381954cc391SMilanka Ringwald * @param browsing_status 2382954cc391SMilanka Ringwald * @param bluetooth_status 2383e30788a3SMilanka Ringwald */ 2384be65baf4SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_DONE 0x1E 2385e30788a3SMilanka Ringwald 2386bd0f378aSMilanka Ringwald /** 2387bd0f378aSMilanka Ringwald * @format 1214 2388bd0f378aSMilanka Ringwald * @param subevent_code 2389bd0f378aSMilanka Ringwald * @param browsing_cid 2390bd0f378aSMilanka Ringwald * @param scope 2391bd0f378aSMilanka Ringwald * @param attr_bitmap 2392bd0f378aSMilanka Ringwald */ 2393bd0f378aSMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS 0x1F 2394bd0f378aSMilanka Ringwald 2395bd0f378aSMilanka Ringwald /** 2396bd0f378aSMilanka Ringwald * @format 121 2397bd0f378aSMilanka Ringwald * @param subevent_code 2398bd0f378aSMilanka Ringwald * @param browsing_cid 2399bd0f378aSMilanka Ringwald * @param scope 2400bd0f378aSMilanka Ringwald */ 2401bd0f378aSMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS 0x20 24026fa3dbf2SMilanka Ringwald 24036fa3dbf2SMilanka Ringwald /** 24046fa3dbf2SMilanka Ringwald * @format 1214 24056fa3dbf2SMilanka Ringwald * @param subevent_code 24066fa3dbf2SMilanka Ringwald * @param avrcp_cid 24076fa3dbf2SMilanka Ringwald * @param command_type 24086fa3dbf2SMilanka Ringwald * @param playback_position_ms 24096fa3dbf2SMilanka Ringwald */ 24106fa3dbf2SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED 0x21 24116fa3dbf2SMilanka Ringwald 2412e30788a3SMilanka Ringwald 24134c954014SMilanka Ringwald /** 2414f1b34e8dSMatthias Ringwald * @format 121BH1 2415f1b34e8dSMatthias Ringwald * @param subevent_code 2416f1b34e8dSMatthias Ringwald * @param goep_cid 2417f1b34e8dSMatthias Ringwald * @param status 2418f1b34e8dSMatthias Ringwald * @param bd_addr 2419f1b34e8dSMatthias Ringwald * @param con_handle 2420f1b34e8dSMatthias Ringwald * @param incoming 2421f1b34e8dSMatthias Ringwald */ 2422f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_OPENED 0x01 24236eb7ba29SMilanka Ringwald 2424f1b34e8dSMatthias Ringwald /** 2425f1b34e8dSMatthias Ringwald * @format 12 2426f1b34e8dSMatthias Ringwald * @param subevent_code 2427f1b34e8dSMatthias Ringwald * @param goep_cid 2428f1b34e8dSMatthias Ringwald */ 2429f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_CLOSED 0x02 2430f1b34e8dSMatthias Ringwald 2431f1b34e8dSMatthias Ringwald /** 2432f1b34e8dSMatthias Ringwald * @format 12 2433f1b34e8dSMatthias Ringwald * @param subevent_code 2434f1b34e8dSMatthias Ringwald * @param goep_cid 2435f1b34e8dSMatthias Ringwald */ 2436f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CAN_SEND_NOW 0x03 2437f1b34e8dSMatthias Ringwald 2438f1b34e8dSMatthias Ringwald /** 2439f1b34e8dSMatthias Ringwald * @format 121BH1 2440f1b34e8dSMatthias Ringwald * @param subevent_code 2441f1b34e8dSMatthias Ringwald * @param pbap_cid 2442f1b34e8dSMatthias Ringwald * @param status 2443f1b34e8dSMatthias Ringwald * @param bd_addr 2444f1b34e8dSMatthias Ringwald * @param con_handle 2445f1b34e8dSMatthias Ringwald * @param incoming 2446f1b34e8dSMatthias Ringwald */ 2447f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_OPENED 0x01 2448f1b34e8dSMatthias Ringwald 2449f1b34e8dSMatthias Ringwald /** 2450f1b34e8dSMatthias Ringwald * @format 12 2451f1b34e8dSMatthias Ringwald * @param subevent_code 2452f1b34e8dSMatthias Ringwald * @param goep_cid 2453f1b34e8dSMatthias Ringwald */ 2454f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_CLOSED 0x02 2455f1b34e8dSMatthias Ringwald 2456f1b34e8dSMatthias Ringwald /** 2457f1b34e8dSMatthias Ringwald * @format 121 2458f1b34e8dSMatthias Ringwald * @param subevent_code 2459f1b34e8dSMatthias Ringwald * @param goep_cid 2460f1b34e8dSMatthias Ringwald * @param status 2461f1b34e8dSMatthias Ringwald */ 2462f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_OPERATION_COMPLETED 0x03 24636eb7ba29SMilanka Ringwald 2464fafbca75SMatthias Ringwald /** 2465fafbca75SMatthias Ringwald * @format 1212 2466fafbca75SMatthias Ringwald * @param subevent_code 2467fafbca75SMatthias Ringwald * @param goep_cid 2468fafbca75SMatthias Ringwald * @param status 2469fafbca75SMatthias Ringwald * @param phoneboook_size 2470fafbca75SMatthias Ringwald */ 2471fafbca75SMatthias Ringwald #define PBAP_SUBEVENT_PHONEBOOK_SIZE 0x04 2472fafbca75SMatthias Ringwald 2473c1bc0b8eSMatthias Ringwald /** 2474c1bc0b8eSMatthias Ringwald * @format 1211 2475c1bc0b8eSMatthias Ringwald * @param subevent_code 2476c1bc0b8eSMatthias Ringwald * @param goep_cid 2477c1bc0b8eSMatthias Ringwald * @param user_id_required 2478c1bc0b8eSMatthias Ringwald * @param full_access 2479c1bc0b8eSMatthias Ringwald */ 2480c1bc0b8eSMatthias Ringwald #define PBAP_SUBEVENT_AUTHENTICATION_REQUEST 0x05 2481c1bc0b8eSMatthias Ringwald 2482ad514860SMatthias Ringwald /** 2483ad514860SMatthias Ringwald * @format 12JVJV 2484ad514860SMatthias Ringwald * @param subevent_code 2485ad514860SMatthias Ringwald * @param goep_cid 2486ad514860SMatthias Ringwald * @param name_len 2487ad514860SMatthias Ringwald * @param name 2488ad514860SMatthias Ringwald * @param handle_len 2489ad514860SMatthias Ringwald * @param handle 2490ad514860SMatthias Ringwald */ 2491ad514860SMatthias Ringwald #define PBAP_SUBEVENT_CARD_RESULT 0x06 2492ad514860SMatthias Ringwald 2493c1bc0b8eSMatthias Ringwald 2494a4bfc4feSMatthias Ringwald // HID Meta Event Group 2495a4bfc4feSMatthias Ringwald 2496dd148ddbSMatthias Ringwald /** 2497dd148ddbSMatthias Ringwald * @format 121BH1 2498dd148ddbSMatthias Ringwald * @param subevent_code 2499dd148ddbSMatthias Ringwald * @param hid_cid 2500dd148ddbSMatthias Ringwald * @param status 2501dd148ddbSMatthias Ringwald * @param bd_addr 2502dd148ddbSMatthias Ringwald * @param con_handle 2503dd148ddbSMatthias Ringwald * @param incoming 2504dd148ddbSMatthias Ringwald */ 2505dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CONNECTION_OPENED 0x01 2506dd148ddbSMatthias Ringwald 2507dd148ddbSMatthias Ringwald /** 2508dd148ddbSMatthias Ringwald * @format 12 2509dd148ddbSMatthias Ringwald * @param subevent_code 2510dd148ddbSMatthias Ringwald * @param hid_cid 2511dd148ddbSMatthias Ringwald */ 2512dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CONNECTION_CLOSED 0x02 2513dd148ddbSMatthias Ringwald 2514dd148ddbSMatthias Ringwald /** 2515dd148ddbSMatthias Ringwald * @format 12 2516dd148ddbSMatthias Ringwald * @param subevent_code 2517dd148ddbSMatthias Ringwald * @param hid_cid 2518dd148ddbSMatthias Ringwald */ 2519dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CAN_SEND_NOW 0x03 2520dd148ddbSMatthias Ringwald 25216510739bSMilanka Ringwald /** 25226510739bSMilanka Ringwald * @format 12 25236510739bSMilanka Ringwald * @param subevent_code 25246510739bSMilanka Ringwald * @param con_handle 25256510739bSMilanka Ringwald */ 25266510739bSMilanka Ringwald #define HID_SUBEVENT_SUSPEND 0x04 25276510739bSMilanka Ringwald 25286510739bSMilanka Ringwald /** 25296510739bSMilanka Ringwald * @format 12 25306510739bSMilanka Ringwald * @param subevent_code 25316510739bSMilanka Ringwald * @param con_handle 25326510739bSMilanka Ringwald */ 25336510739bSMilanka Ringwald #define HID_SUBEVENT_EXIT_SUSPEND 0x05 25346510739bSMilanka Ringwald 25356510739bSMilanka Ringwald 2536a4bfc4feSMatthias Ringwald // HIDS Meta Event Group 2537a4bfc4feSMatthias Ringwald 2538a4bfc4feSMatthias Ringwald /** 2539a4bfc4feSMatthias Ringwald * @format 12 2540a4bfc4feSMatthias Ringwald * @param subevent_code 2541a4bfc4feSMatthias Ringwald * @param con_handle 2542a4bfc4feSMatthias Ringwald */ 2543a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_CAN_SEND_NOW 0x01 2544a4bfc4feSMatthias Ringwald 2545a4bfc4feSMatthias Ringwald /** 2546a4bfc4feSMatthias Ringwald * @format 121 2547a4bfc4feSMatthias Ringwald * @param subevent_code 2548a4bfc4feSMatthias Ringwald * @param con_handle 2549a4bfc4feSMatthias Ringwald * @param protocol_mode 2550a4bfc4feSMatthias Ringwald */ 2551a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_PROTOCOL_MODE 0x02 2552a4bfc4feSMatthias Ringwald 2553a4bfc4feSMatthias Ringwald /** 2554a4bfc4feSMatthias Ringwald * @format 121 2555a4bfc4feSMatthias Ringwald * @param subevent_code 2556a4bfc4feSMatthias Ringwald * @param con_handle 2557a4bfc4feSMatthias Ringwald * @param enable 2558a4bfc4feSMatthias Ringwald */ 2559a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE 0x03 2560a4bfc4feSMatthias Ringwald 2561a4bfc4feSMatthias Ringwald /** 2562a4bfc4feSMatthias Ringwald * @format 121 2563a4bfc4feSMatthias Ringwald * @param subevent_code 2564a4bfc4feSMatthias Ringwald * @param con_handle 2565a4bfc4feSMatthias Ringwald * @param enable 2566a4bfc4feSMatthias Ringwald */ 2567a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE 0x04 2568a4bfc4feSMatthias Ringwald 2569a4bfc4feSMatthias Ringwald /** 2570a4bfc4feSMatthias Ringwald * @format 121 2571a4bfc4feSMatthias Ringwald * @param subevent_code 2572a4bfc4feSMatthias Ringwald * @param con_handle 2573a4bfc4feSMatthias Ringwald * @param enable 2574a4bfc4feSMatthias Ringwald */ 2575a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_INPUT_REPORT_ENABLE 0x05 2576a4bfc4feSMatthias Ringwald 25770235c9e5SMilanka Ringwald /** 25780235c9e5SMilanka Ringwald * @format 121 25790235c9e5SMilanka Ringwald * @param subevent_code 25800235c9e5SMilanka Ringwald * @param con_handle 25810235c9e5SMilanka Ringwald * @param enable 25820235c9e5SMilanka Ringwald */ 25830235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE 0x06 25840235c9e5SMilanka Ringwald 25850235c9e5SMilanka Ringwald /** 25860235c9e5SMilanka Ringwald * @format 121 25870235c9e5SMilanka Ringwald * @param subevent_code 25880235c9e5SMilanka Ringwald * @param con_handle 25890235c9e5SMilanka Ringwald * @param enable 25900235c9e5SMilanka Ringwald */ 25910235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_FEATURE_REPORT_ENABLE 0x07 25920235c9e5SMilanka Ringwald 25930235c9e5SMilanka Ringwald /** 25940235c9e5SMilanka Ringwald * @format 12 25950235c9e5SMilanka Ringwald * @param subevent_code 25960235c9e5SMilanka Ringwald * @param con_handle 25970235c9e5SMilanka Ringwald */ 25980235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_SUSPEND 0x08 25990235c9e5SMilanka Ringwald 26000235c9e5SMilanka Ringwald /** 26010235c9e5SMilanka Ringwald * @format 12 26020235c9e5SMilanka Ringwald * @param subevent_code 26030235c9e5SMilanka Ringwald * @param con_handle 26040235c9e5SMilanka Ringwald */ 26050235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_EXIT_SUSPEND 0x09 26069fe70df8SMilanka Ringwald 26079fe70df8SMilanka Ringwald /** 26089fe70df8SMilanka Ringwald * @format 1211 26099fe70df8SMilanka Ringwald * @param subevent_code 26109fe70df8SMilanka Ringwald * @param con_handle 26119fe70df8SMilanka Ringwald * @param measurement_type // 0 - force magnitude, 1 - torque magnitude, see cycling_power_sensor_measurement_context_t 26129fe70df8SMilanka Ringwald * @param is_enhanced 26139fe70df8SMilanka Ringwald */ 261428e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION 0x01 26159fe70df8SMilanka Ringwald 26169fe70df8SMilanka Ringwald /** 26179fe70df8SMilanka Ringwald * @format 12 26189fe70df8SMilanka Ringwald * @param subevent_code 26199fe70df8SMilanka Ringwald * @param con_handle 26209fe70df8SMilanka Ringwald */ 262128e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_START 0x02 26229fe70df8SMilanka Ringwald 26239fe70df8SMilanka Ringwald /** 26249fe70df8SMilanka Ringwald * @format 12 26259fe70df8SMilanka Ringwald * @param subevent_code 26269fe70df8SMilanka Ringwald * @param con_handle 26279fe70df8SMilanka Ringwald */ 262828e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_STOP 0x03 2629ad58991cSMilanka Ringwald 2630ad58991cSMilanka Ringwald 2631ad58991cSMilanka Ringwald // MAP Meta Event Group 2632ad58991cSMilanka Ringwald 2633ad58991cSMilanka Ringwald /** 2634ad58991cSMilanka Ringwald * @format 121BH1 2635ad58991cSMilanka Ringwald * @param subevent_code 2636ad58991cSMilanka Ringwald * @param map_cid 2637ad58991cSMilanka Ringwald * @param status 2638ad58991cSMilanka Ringwald * @param bd_addr 2639ad58991cSMilanka Ringwald * @param con_handle 2640ad58991cSMilanka Ringwald * @param incoming 2641ad58991cSMilanka Ringwald */ 2642ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_OPENED 0x01 2643ad58991cSMilanka Ringwald 2644ad58991cSMilanka Ringwald /** 2645ad58991cSMilanka Ringwald * @format 12 2646ad58991cSMilanka Ringwald * @param subevent_code 26475160ece6SMilanka Ringwald * @param map_cid 2648ad58991cSMilanka Ringwald */ 2649ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_CLOSED 0x02 2650ad58991cSMilanka Ringwald 2651ad58991cSMilanka Ringwald /** 2652ad58991cSMilanka Ringwald * @format 121 2653ad58991cSMilanka Ringwald * @param subevent_code 26545160ece6SMilanka Ringwald * @param map_cid 2655ad58991cSMilanka Ringwald * @param status 2656ad58991cSMilanka Ringwald */ 2657ad58991cSMilanka Ringwald #define MAP_SUBEVENT_OPERATION_COMPLETED 0x03 2658ad58991cSMilanka Ringwald 2659ad58991cSMilanka Ringwald 26605160ece6SMilanka Ringwald /** 26615160ece6SMilanka Ringwald * @format 12LV 26625160ece6SMilanka Ringwald * @param subevent_code 26635160ece6SMilanka Ringwald * @param map_cid 26645160ece6SMilanka Ringwald * @param name_len 26655160ece6SMilanka Ringwald * @param name 26665160ece6SMilanka Ringwald */ 26675160ece6SMilanka Ringwald #define MAP_SUBEVENT_FOLDER_LISTING_ITEM 0x04 26685160ece6SMilanka Ringwald 26695160ece6SMilanka Ringwald /** 26705160ece6SMilanka Ringwald * @format 12D 26715160ece6SMilanka Ringwald * @param subevent_code 26725160ece6SMilanka Ringwald * @param map_cid 26735160ece6SMilanka Ringwald * @param handle 26745160ece6SMilanka Ringwald 26755160ece6SMilanka Ringwald */ 26765160ece6SMilanka Ringwald #define MAP_SUBEVENT_MESSAGE_LISTING_ITEM 0x05 26775160ece6SMilanka Ringwald 26785160ece6SMilanka Ringwald /** 26795160ece6SMilanka Ringwald * @format 12 26805160ece6SMilanka Ringwald * @param subevent_code 26815160ece6SMilanka Ringwald * @param map_cid 26825160ece6SMilanka Ringwald */ 26835160ece6SMilanka Ringwald #define MAP_SUBEVENT_PARSING_DONE 0x06 26845160ece6SMilanka Ringwald 26855160ece6SMilanka Ringwald 26861fbe4564SMatthias Ringwald // MESH Meta Event Group 26875160ece6SMilanka Ringwald 26881fbe4564SMatthias Ringwald /** 26891fbe4564SMatthias Ringwald * @format 1 26901fbe4564SMatthias Ringwald * @param subevent_code 26911fbe4564SMatthias Ringwald */ 26921fbe4564SMatthias Ringwald #define MESH_SUBEVENT_CAN_SEND_NOW 0x01 26931fbe4564SMatthias Ringwald 26941fbe4564SMatthias Ringwald /** 26951fbe4564SMatthias Ringwald * @format 11 26961fbe4564SMatthias Ringwald * @param subevent_code 26971fbe4564SMatthias Ringwald * @param status 26981fbe4564SMatthias Ringwald */ 26997bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_PDU_SENT 0x02 270026ecb624SMilanka Ringwald 270126ecb624SMilanka Ringwald /** 270226ecb624SMilanka Ringwald * @format 1121 270326ecb624SMilanka Ringwald * @param subevent_code 270426ecb624SMilanka Ringwald * @param status 270526ecb624SMilanka Ringwald * @param pb_transport_cid 270626ecb624SMilanka Ringwald * @param pb_type 270726ecb624SMilanka Ringwald */ 27087bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN 0x03 27091fbe4564SMatthias Ringwald 27101fbe4564SMatthias Ringwald /** 27111fbe4564SMatthias Ringwald * @format 112 27121fbe4564SMatthias Ringwald * @param subevent_code 271326ecb624SMilanka Ringwald * @param pb_transport_cid 2714f8962c62SMatthias Ringwald * @param reason 27151fbe4564SMatthias Ringwald */ 27167bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED 0x04 27171fbe4564SMatthias Ringwald 27181fbe4564SMatthias Ringwald /** 27191fbe4564SMatthias Ringwald * @format 121 27201fbe4564SMatthias Ringwald * @param subevent_code 272126ecb624SMilanka Ringwald * @param pb_transport_cid 27221fbe4564SMatthias Ringwald * @param attention_time in seconds 27231fbe4564SMatthias Ringwald */ 27247bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER 0x10 27251fbe4564SMatthias Ringwald 27261fbe4564SMatthias Ringwald /** 27271fbe4564SMatthias Ringwald * Device Role 27281fbe4564SMatthias Ringwald * @format 12 27291fbe4564SMatthias Ringwald * @param subevent_code 273026ecb624SMilanka Ringwald * @param pb_transport_cid 27311fbe4564SMatthias Ringwald */ 27327bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_PUBLIC_KEY_OOB 0x11 27331fbe4564SMatthias Ringwald 27341fbe4564SMatthias Ringwald /** 27351fbe4564SMatthias Ringwald * Device Role 27361fbe4564SMatthias Ringwald * @format 12 27371fbe4564SMatthias Ringwald * @param subevent_code 273826ecb624SMilanka Ringwald * @param pb_transport_cid 27391fbe4564SMatthias Ringwald */ 27407bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_PUBLIC_KEY_OOB 0x12 27411fbe4564SMatthias Ringwald 27421fbe4564SMatthias Ringwald /** 27431fbe4564SMatthias Ringwald * Device Role 27441fbe4564SMatthias Ringwald * @format 12 27451fbe4564SMatthias Ringwald * @param subevent_code 274626ecb624SMilanka Ringwald * @param pb_transport_cid 27471fbe4564SMatthias Ringwald */ 27487bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_INPUT_OOB_REQUEST 0x13 27491fbe4564SMatthias Ringwald 27501fbe4564SMatthias Ringwald /** 27511fbe4564SMatthias Ringwald * Device Role 27521fbe4564SMatthias Ringwald * @format 124 27531fbe4564SMatthias Ringwald * @param subevent_code 275426ecb624SMilanka Ringwald * @param pb_transport_cid 27551fbe4564SMatthias Ringwald * @param output_oob number 27561fbe4564SMatthias Ringwald */ 27577bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB 0x15 27581fbe4564SMatthias Ringwald 27591fbe4564SMatthias Ringwald /** 27601fbe4564SMatthias Ringwald * Device Role 27611fbe4564SMatthias Ringwald * @format 12 27621fbe4564SMatthias Ringwald * @param subevent_code 276326ecb624SMilanka Ringwald * @param pb_transport_cid 27641fbe4564SMatthias Ringwald */ 27657bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_OUTPUT_OOB 0x16 27661fbe4564SMatthias Ringwald 27671fbe4564SMatthias Ringwald /** 27681fbe4564SMatthias Ringwald * Provisioner Role 27691fbe4564SMatthias Ringwald * @format 12 27701fbe4564SMatthias Ringwald * @param subevent_code 277126ecb624SMilanka Ringwald * @param pb_transport_cid 27721fbe4564SMatthias Ringwald */ 27737bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_RECEIVE_PUBLIC_KEY_OOB 0x17 27741fbe4564SMatthias Ringwald 27751fbe4564SMatthias Ringwald /** 27761fbe4564SMatthias Ringwald * Provisioner Role 27771fbe4564SMatthias Ringwald * @format 12 27781fbe4564SMatthias Ringwald * @param subevent_code 277926ecb624SMilanka Ringwald * @param pb_transport_cid 27801fbe4564SMatthias Ringwald */ 27817bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_RECEIVE_PUBLIC_KEY_OOB 0x18 27821fbe4564SMatthias Ringwald 27831fbe4564SMatthias Ringwald /** 27841fbe4564SMatthias Ringwald * Provisioner Role 27851fbe4564SMatthias Ringwald * @format 12 27861fbe4564SMatthias Ringwald * @param subevent_code 278726ecb624SMilanka Ringwald * @param pb_transport_cid 27881fbe4564SMatthias Ringwald */ 27897bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_OUTPUT_OOB_REQUEST 0x19 27901fbe4564SMatthias Ringwald 27911fbe4564SMatthias Ringwald /** 27921fbe4564SMatthias Ringwald * Provisioner Role 27931fbe4564SMatthias Ringwald * @format 124 27941fbe4564SMatthias Ringwald * @param subevent_code 279526ecb624SMilanka Ringwald * @param pb_transport_cid 27961fbe4564SMatthias Ringwald * @param output_oob number 27971fbe4564SMatthias Ringwald */ 27987bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB 0x1a 27991fbe4564SMatthias Ringwald 28001fbe4564SMatthias Ringwald /** 28011fbe4564SMatthias Ringwald * Provisioner Role 28021fbe4564SMatthias Ringwald * @format 12 28031fbe4564SMatthias Ringwald * @param subevent_code 280426ecb624SMilanka Ringwald * @param pb_transport_cid 28051fbe4564SMatthias Ringwald */ 28067bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_INPUT_OOB 0x1b 28071fbe4564SMatthias Ringwald 28081fbe4564SMatthias Ringwald /** 28091fbe4564SMatthias Ringwald * Provisioner Role 28101fbe4564SMatthias Ringwald * @format 1212111212 28111fbe4564SMatthias Ringwald * @param subevent_code 281226ecb624SMilanka Ringwald * @param pb_transport_cid 28131fbe4564SMatthias Ringwald * @param num_elements 28141fbe4564SMatthias Ringwald * @param algorithms 28151fbe4564SMatthias Ringwald * @param public_key 28161fbe4564SMatthias Ringwald * @param static_oob_type 28171fbe4564SMatthias Ringwald * @param output_oob_size 28181fbe4564SMatthias Ringwald * @param output_oob_action 28191fbe4564SMatthias Ringwald * @param input_oob_size 28201fbe4564SMatthias Ringwald * @param input_oob_action 28211fbe4564SMatthias Ringwald */ 28227bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_CAPABILITIES 0x1c 28231fbe4564SMatthias Ringwald 28241fbe4564SMatthias Ringwald /** 28251fbe4564SMatthias Ringwald * @format 12 28261fbe4564SMatthias Ringwald * @param subevent_code 282726ecb624SMilanka Ringwald * @param pb_transport_cid 28281fbe4564SMatthias Ringwald */ 28297bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_COMPLETE 0x1d 28305160ece6SMilanka Ringwald 283182b0bf42SMatthias Ringwald /** 283275c1e527SMatthias Ringwald * @format 11 283375c1e527SMatthias Ringwald * @param subevent_code 283475c1e527SMatthias Ringwald * @param attention_time in seconds 283575c1e527SMatthias Ringwald */ 283675c1e527SMatthias Ringwald #define MESH_SUBEVENT_ATTENTION_TIMER 0x1e 283775c1e527SMatthias Ringwald 283875c1e527SMatthias Ringwald /** 283982b0bf42SMatthias Ringwald * @format 11H 284082b0bf42SMatthias Ringwald * @param subevent_code 284182b0bf42SMatthias Ringwald * @param status 284282b0bf42SMatthias Ringwald * @param con_handle 284382b0bf42SMatthias Ringwald */ 28447bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_CONNECTED 0x20 284582b0bf42SMatthias Ringwald 284682b0bf42SMatthias Ringwald /** 284782b0bf42SMatthias Ringwald * @format 1H 284882b0bf42SMatthias Ringwald * @param subevent_code 284982b0bf42SMatthias Ringwald * @param con_handle 285082b0bf42SMatthias Ringwald */ 28517bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_PDU_SENT 0x21 285282b0bf42SMatthias Ringwald 285382b0bf42SMatthias Ringwald /** 285482b0bf42SMatthias Ringwald * @format 1H 285582b0bf42SMatthias Ringwald * @param subevent_code 285682b0bf42SMatthias Ringwald * @param con_handle 285782b0bf42SMatthias Ringwald */ 28587bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_DISCONNECTED 0x22 285982b0bf42SMatthias Ringwald 28601d2d76deSMilanka Ringwald /** 28611d2d76deSMilanka Ringwald * @format 1H 28621d2d76deSMilanka Ringwald * @param subevent_code 28631d2d76deSMilanka Ringwald * @param con_handle 28641d2d76deSMilanka Ringwald */ 28651d2d76deSMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_SENT 0x23 286681097db9SMilanka Ringwald 286781097db9SMilanka Ringwald /** 286881097db9SMilanka Ringwald * @format 114411 286981097db9SMilanka Ringwald * @param subevent_code 287081097db9SMilanka Ringwald * @param element_index 287181097db9SMilanka Ringwald * @param model_identifier 287281097db9SMilanka Ringwald * @param state_identifier 287381097db9SMilanka Ringwald * @param reason 287481097db9SMilanka Ringwald * @param value 287581097db9SMilanka Ringwald */ 287681097db9SMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_BOOL 0x24 28771d2d76deSMilanka Ringwald 287892c33ebfSMilanka Ringwald /** 287992c33ebfSMilanka Ringwald * @format 114412 288092c33ebfSMilanka Ringwald * @param subevent_code 288192c33ebfSMilanka Ringwald * @param element_index 288292c33ebfSMilanka Ringwald * @param model_identifier 288392c33ebfSMilanka Ringwald * @param state_identifier 288492c33ebfSMilanka Ringwald * @param reason 288592c33ebfSMilanka Ringwald * @param value 288692c33ebfSMilanka Ringwald */ 288792c33ebfSMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_INT16 0x25 288892c33ebfSMilanka Ringwald 288992c33ebfSMilanka Ringwald // Mesh Client Events 289092c33ebfSMilanka Ringwald /** 2891b7a54332SMilanka Ringwald * @format 11442 2892b7a54332SMilanka Ringwald * @param subevent_code 2893b7a54332SMilanka Ringwald * @param element_index 2894b7a54332SMilanka Ringwald * @param model_identifier 2895b7a54332SMilanka Ringwald * @param opcode 2896b7a54332SMilanka Ringwald * @param dest 2897b7a54332SMilanka Ringwald */ 2898b7a54332SMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED 0x30 2899b7a54332SMilanka Ringwald 2900b7a54332SMilanka Ringwald /** 290192c33ebfSMilanka Ringwald * @format 114114 290292c33ebfSMilanka Ringwald * @param subevent_code 290392c33ebfSMilanka Ringwald * @param element_index 290492c33ebfSMilanka Ringwald * @param model_identifier 290592c33ebfSMilanka Ringwald * @param present_value 290692c33ebfSMilanka Ringwald * @param target_value // optinal, if value > 0, than remaining_time_ms must be read 290792c33ebfSMilanka Ringwald * @param remaining_time_ms 290892c33ebfSMilanka Ringwald */ 2909b7a54332SMilanka Ringwald #define MESH_SUBEVENT_GENERIC_ON_OFF_STATUS 0x31 291092c33ebfSMilanka Ringwald 291187b3ac30SMilanka Ringwald /** 291287b3ac30SMilanka Ringwald * @format 114224 291387b3ac30SMilanka Ringwald * @param subevent_code 291487b3ac30SMilanka Ringwald * @param element_index 291587b3ac30SMilanka Ringwald * @param model_identifier 291687b3ac30SMilanka Ringwald * @param present_value 291787b3ac30SMilanka Ringwald * @param target_value // optinal, if value > 0, than remaining_time_ms must be read 291887b3ac30SMilanka Ringwald * @param remaining_time_ms 291987b3ac30SMilanka Ringwald */ 2920b7a54332SMilanka Ringwald #define MESH_SUBEVENT_GENERIC_LEVEL_STATUS 0x32 292192c33ebfSMilanka Ringwald 2922859ea319SMilanka Ringwald 2923859ea319SMilanka Ringwald /** 2924859ea319SMilanka Ringwald * @format 112 2925859ea319SMilanka Ringwald * @param subevent_code 2926859ea319SMilanka Ringwald * @param element_index 2927859ea319SMilanka Ringwald * @param company_id 2928859ea319SMilanka Ringwald */ 2929859ea319SMilanka Ringwald #define MESH_SUBEVENT_HEALTH_CLEAR_REGISTERED_FAULTS 0x33 2930859ea319SMilanka Ringwald 2931859ea319SMilanka Ringwald /** 2932859ea319SMilanka Ringwald * @format 11422221 2933859ea319SMilanka Ringwald * @param subevent_code 2934859ea319SMilanka Ringwald * @param element_index 2935859ea319SMilanka Ringwald * @param model_identifier 2936859ea319SMilanka Ringwald * @param dest 2937859ea319SMilanka Ringwald * @param netkey_index 2938859ea319SMilanka Ringwald * @param appkey_index 2939859ea319SMilanka Ringwald * @param company_id 2940859ea319SMilanka Ringwald * @param test_id 2941859ea319SMilanka Ringwald */ 2942859ea319SMilanka Ringwald #define MESH_SUBEVENT_HEALTH_PERFORM_TEST 0x34 2943859ea319SMilanka Ringwald 2944584bbe7dSMilanka Ringwald /** 2945584bbe7dSMilanka Ringwald * @format 111 2946584bbe7dSMilanka Ringwald * @param subevent_code 2947584bbe7dSMilanka Ringwald * @param element_index 2948584bbe7dSMilanka Ringwald * @param fast_period_divisor 2949584bbe7dSMilanka Ringwald */ 2950584bbe7dSMilanka Ringwald #define MESH_SUBEVENT_HEALTH_FAST_PERIOD_DIVISOR_CHANGED 0x35 2951859ea319SMilanka Ringwald 2952584bbe7dSMilanka Ringwald /** 2953584bbe7dSMilanka Ringwald * @format 11 2954584bbe7dSMilanka Ringwald * @param subevent_code 2955584bbe7dSMilanka Ringwald * @param element_index 2956584bbe7dSMilanka Ringwald */ 2957584bbe7dSMilanka Ringwald #define MESH_SUBEVENT_HEALTH_ATTENTION_TIMER_CHANGED 0x36 2958859ea319SMilanka Ringwald 2959941b3855SMatthias Ringwald #endif 2960