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 481c4468cfSMatthias Ringwald #include "btstack_linked_list.h" 49f3963406SMatthias Ringwald 50f3963406SMatthias Ringwald // UNUSED macro 516306068fSMatthias Ringwald #ifndef UNUSED 52f3963406SMatthias Ringwald #define UNUSED(x) (void)(sizeof(x)) 536306068fSMatthias Ringwald #endif 54f3963406SMatthias Ringwald 558974fcd6SMatthias Ringwald // TYPES 568974fcd6SMatthias Ringwald 578974fcd6SMatthias Ringwald // packet handler 588974fcd6SMatthias Ringwald typedef void (*btstack_packet_handler_t) (uint8_t packet_type, uint16_t channel, uint8_t *packet, uint16_t size); 598974fcd6SMatthias Ringwald 608974fcd6SMatthias Ringwald // packet callback supporting multiple registrations 618974fcd6SMatthias Ringwald typedef struct { 628974fcd6SMatthias Ringwald btstack_linked_item_t item; 638974fcd6SMatthias Ringwald btstack_packet_handler_t callback; 648974fcd6SMatthias Ringwald } btstack_packet_callback_registration_t; 658974fcd6SMatthias Ringwald 66bb38f057SMatthias Ringwald // context callback supporting multiple registrations 67bb38f057SMatthias Ringwald typedef struct { 68bb38f057SMatthias Ringwald btstack_linked_item_t * item; 69bb38f057SMatthias Ringwald void (*callback)(void * context); 70bb38f057SMatthias Ringwald void * context; 71bb38f057SMatthias Ringwald } btstack_context_callback_registration_t; 72bb38f057SMatthias Ringwald 73f7a05cdaSMatthias Ringwald /** 748974fcd6SMatthias Ringwald * @brief 128 bit key used with AES128 in Security Manager 75f7a05cdaSMatthias Ringwald */ 768974fcd6SMatthias Ringwald typedef uint8_t sm_key_t[16]; 77f7a05cdaSMatthias Ringwald 78941b3855SMatthias Ringwald // DEFINES 79941b3855SMatthias Ringwald 807149bde5SMatthias Ringwald // hci con handles (12 bit): 0x0000..0x0fff 817149bde5SMatthias Ringwald #define HCI_CON_HANDLE_INVALID 0xffff 827149bde5SMatthias Ringwald 837149bde5SMatthias Ringwald 84941b3855SMatthias Ringwald #define DAEMON_EVENT_PACKET 0x05 85941b3855SMatthias Ringwald 86941b3855SMatthias Ringwald // L2CAP data 87941b3855SMatthias Ringwald #define L2CAP_DATA_PACKET 0x06 88941b3855SMatthias Ringwald 89941b3855SMatthias Ringwald // RFCOMM data 90941b3855SMatthias Ringwald #define RFCOMM_DATA_PACKET 0x07 91941b3855SMatthias Ringwald 92941b3855SMatthias Ringwald // Attribute protocol data 93941b3855SMatthias Ringwald #define ATT_DATA_PACKET 0x08 94941b3855SMatthias Ringwald 95941b3855SMatthias Ringwald // Security Manager protocol data 96941b3855SMatthias Ringwald #define SM_DATA_PACKET 0x09 97941b3855SMatthias Ringwald 98f1b34e8dSMatthias Ringwald // SDP query result - only used by daemon 99941b3855SMatthias Ringwald // format: type (8), record_id (16), attribute_id (16), attribute_length (16), attribute_value (max 1k) 100941b3855SMatthias Ringwald #define SDP_CLIENT_PACKET 0x0a 101941b3855SMatthias Ringwald 102941b3855SMatthias Ringwald // BNEP data 103941b3855SMatthias Ringwald #define BNEP_DATA_PACKET 0x0b 104941b3855SMatthias Ringwald 105941b3855SMatthias Ringwald // Unicast Connectionless Data 106941b3855SMatthias Ringwald #define UCD_DATA_PACKET 0x0c 107941b3855SMatthias Ringwald 108f1b34e8dSMatthias Ringwald // GOEP data 109f1b34e8dSMatthias Ringwald #define GOEP_DATA_PACKET 0x0d 110f1b34e8dSMatthias Ringwald 111f1b34e8dSMatthias Ringwald // PBAP data 112f1b34e8dSMatthias Ringwald #define PBAP_DATA_PACKET 0x0e 113f1b34e8dSMatthias Ringwald 114e30788a3SMilanka Ringwald // AVRCP browsing data 115e30788a3SMilanka Ringwald #define AVRCP_BROWSING_DATA_PACKET 0x0f 116e30788a3SMilanka Ringwald 1173eb02ce6SMilanka Ringwald // MAP data 1183eb02ce6SMilanka Ringwald #define MAP_DATA_PACKET 0x10 1193eb02ce6SMilanka Ringwald 1201fbe4564SMatthias Ringwald // Mesh Provisioning PDU 1211fbe4564SMatthias Ringwald #define PROVISIONING_DATA_PACKET 0x11 122e30788a3SMilanka Ringwald 123bf9b4b3bSMilanka Ringwald // Mesh Proxy PDU 124bf9b4b3bSMilanka Ringwald #define MESH_PROXY_DATA_PACKET 0x11 12514fe90b1SMatthias Ringwald 12614fe90b1SMatthias Ringwald // Mesh Network PDU 127bf9b4b3bSMilanka Ringwald #define MESH_NETWORK_PACKET 0x12 128bf9b4b3bSMilanka Ringwald 129bf9b4b3bSMilanka Ringwald // Mesh Network PDU 130bf9b4b3bSMilanka Ringwald #define MESH_BEACON_PACKET 0x13 13114fe90b1SMatthias Ringwald 132941b3855SMatthias Ringwald // debug log messages 133941b3855SMatthias Ringwald #define LOG_MESSAGE_PACKET 0xfc 134941b3855SMatthias Ringwald 135941b3855SMatthias Ringwald 13662c64df1SMatthias Ringwald // DAEMON COMMANDS 137b3f90e25SMatthias Ringwald 138b3f90e25SMatthias Ringwald #define OGF_BTSTACK 0x3d 139b3f90e25SMatthias Ringwald 140b3f90e25SMatthias Ringwald // cmds for BTstack 141b3f90e25SMatthias Ringwald // get state: @returns HCI_STATE 142b3f90e25SMatthias Ringwald #define BTSTACK_GET_STATE 0x01 143b3f90e25SMatthias Ringwald 144045013feSMatthias Ringwald // set power mode: param HCI_POWER_MODE 145b3f90e25SMatthias Ringwald #define BTSTACK_SET_POWER_MODE 0x02 146b3f90e25SMatthias Ringwald 147045013feSMatthias Ringwald // set capture mode: param on 148b3f90e25SMatthias Ringwald #define BTSTACK_SET_ACL_CAPTURE_MODE 0x03 149b3f90e25SMatthias Ringwald 150b3f90e25SMatthias Ringwald // get BTstack version 151b3f90e25SMatthias Ringwald #define BTSTACK_GET_VERSION 0x04 152b3f90e25SMatthias Ringwald 153b3f90e25SMatthias Ringwald // get system Bluetooth state 154b3f90e25SMatthias Ringwald #define BTSTACK_GET_SYSTEM_BLUETOOTH_ENABLED 0x05 155b3f90e25SMatthias Ringwald 156b3f90e25SMatthias Ringwald // set system Bluetooth state 157b3f90e25SMatthias Ringwald #define BTSTACK_SET_SYSTEM_BLUETOOTH_ENABLED 0x06 158b3f90e25SMatthias Ringwald 159b3f90e25SMatthias Ringwald // enable inquiry scan for this client 160b3f90e25SMatthias Ringwald #define BTSTACK_SET_DISCOVERABLE 0x07 161b3f90e25SMatthias Ringwald 162b3f90e25SMatthias Ringwald // set global Bluetooth state 163b3f90e25SMatthias Ringwald #define BTSTACK_SET_BLUETOOTH_ENABLED 0x08 164b3f90e25SMatthias Ringwald 165045013feSMatthias Ringwald // create l2cap channel: param bd_addr(48), psm (16) 166b3f90e25SMatthias Ringwald #define L2CAP_CREATE_CHANNEL 0x20 167b3f90e25SMatthias Ringwald 168045013feSMatthias Ringwald // disconnect l2cap disconnect, param channel(16), reason(8) 169b3f90e25SMatthias Ringwald #define L2CAP_DISCONNECT 0x21 170b3f90e25SMatthias Ringwald 171045013feSMatthias Ringwald // register l2cap service: param psm(16), mtu (16) 172b3f90e25SMatthias Ringwald #define L2CAP_REGISTER_SERVICE 0x22 173b3f90e25SMatthias Ringwald 174045013feSMatthias Ringwald // unregister l2cap disconnect, param psm(16) 175b3f90e25SMatthias Ringwald #define L2CAP_UNREGISTER_SERVICE 0x23 176b3f90e25SMatthias Ringwald 177045013feSMatthias Ringwald // accept connection param bd_addr(48), dest cid (16) 178b3f90e25SMatthias Ringwald #define L2CAP_ACCEPT_CONNECTION 0x24 179b3f90e25SMatthias Ringwald 180045013feSMatthias Ringwald // decline l2cap disconnect,param bd_addr(48), dest cid (16), reason(8) 181b3f90e25SMatthias Ringwald #define L2CAP_DECLINE_CONNECTION 0x25 182b3f90e25SMatthias Ringwald 183045013feSMatthias Ringwald // create l2cap channel: param bd_addr(48), psm (16), mtu (16) 184b3f90e25SMatthias Ringwald #define L2CAP_CREATE_CHANNEL_MTU 0x26 185b3f90e25SMatthias Ringwald 186b3f90e25SMatthias Ringwald // register SDP Service Record: service record (size) 187b3f90e25SMatthias Ringwald #define SDP_REGISTER_SERVICE_RECORD 0x30 188b3f90e25SMatthias Ringwald 189b3f90e25SMatthias Ringwald // unregister SDP Service Record 190b3f90e25SMatthias Ringwald #define SDP_UNREGISTER_SERVICE_RECORD 0x31 191b3f90e25SMatthias Ringwald 192b3f90e25SMatthias Ringwald // Get remote RFCOMM services 193b3f90e25SMatthias Ringwald #define SDP_CLIENT_QUERY_RFCOMM_SERVICES 0x32 194b3f90e25SMatthias Ringwald 195b3f90e25SMatthias Ringwald // Get remote SDP services 196b3f90e25SMatthias Ringwald #define SDP_CLIENT_QUERY_SERVICES 0x33 197b3f90e25SMatthias Ringwald 198b3f90e25SMatthias Ringwald // RFCOMM "HCI" Commands 199b3f90e25SMatthias Ringwald #define RFCOMM_CREATE_CHANNEL 0x40 200b3f90e25SMatthias Ringwald #define RFCOMM_DISCONNECT 0x41 201b3f90e25SMatthias Ringwald #define RFCOMM_REGISTER_SERVICE 0x42 202b3f90e25SMatthias Ringwald #define RFCOMM_UNREGISTER_SERVICE 0x43 203b3f90e25SMatthias Ringwald #define RFCOMM_ACCEPT_CONNECTION 0x44 204b3f90e25SMatthias Ringwald #define RFCOMM_DECLINE_CONNECTION 0x45 205b3f90e25SMatthias Ringwald #define RFCOMM_PERSISTENT_CHANNEL 0x46 206b3f90e25SMatthias Ringwald #define RFCOMM_CREATE_CHANNEL_WITH_CREDITS 0x47 207b3f90e25SMatthias Ringwald #define RFCOMM_REGISTER_SERVICE_WITH_CREDITS 0x48 208b3f90e25SMatthias Ringwald #define RFCOMM_GRANT_CREDITS 0x49 209b3f90e25SMatthias Ringwald 210b3f90e25SMatthias Ringwald // GAP Classic 0x50 211b3f90e25SMatthias Ringwald #define GAP_DISCONNECT 0x50 212b3f90e25SMatthias Ringwald 213b3f90e25SMatthias Ringwald // GAP LE 0x60 214b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_START 0x60 215b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_STOP 0x61 216b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT 0x62 217b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT_CANCEL 0x63 218b3f90e25SMatthias Ringwald #define GAP_LE_SET_SCAN_PARAMETERS 0x64 219b3f90e25SMatthias Ringwald 220b3f90e25SMatthias Ringwald // GATT (Client) 0x70 221b3f90e25SMatthias Ringwald #define GATT_DISCOVER_ALL_PRIMARY_SERVICES 0x70 222b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID16 0x71 223b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID128 0x72 224b3f90e25SMatthias Ringwald #define GATT_FIND_INCLUDED_SERVICES_FOR_SERVICE 0x73 225b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE 0x74 226b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE_BY_UUID128 0x75 227b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTIC_DESCRIPTORS 0x76 228b3f90e25SMatthias Ringwald #define GATT_READ_VALUE_OF_CHARACTERISTIC 0x77 229b3f90e25SMatthias Ringwald #define GATT_READ_LONG_VALUE_OF_CHARACTERISTIC 0x78 230b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC_WITHOUT_RESPONSE 0x79 231b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC 0x7A 232b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_VALUE_OF_CHARACTERISTIC 0x7B 233b3f90e25SMatthias Ringwald #define GATT_RELIABLE_WRITE_LONG_VALUE_OF_CHARACTERISTIC 0x7C 234b3f90e25SMatthias Ringwald #define GATT_READ_CHARACTERISTIC_DESCRIPTOR 0X7D 235b3f90e25SMatthias Ringwald #define GATT_READ_LONG_CHARACTERISTIC_DESCRIPTOR 0X7E 236b3f90e25SMatthias Ringwald #define GATT_WRITE_CHARACTERISTIC_DESCRIPTOR 0X7F 237b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_CHARACTERISTIC_DESCRIPTOR 0X80 238b3f90e25SMatthias Ringwald #define GATT_WRITE_CLIENT_CHARACTERISTIC_CONFIGURATION 0X81 239b3f90e25SMatthias Ringwald #define GATT_GET_MTU 0x82 240b3f90e25SMatthias Ringwald 2411edc4fc7SMatthias Ringwald // SM 0x90 2421edc4fc7SMatthias Ringwald #define SM_SET_AUTHENTICATION_REQUIREMENTS 0x90 2431edc4fc7SMatthias Ringwald #define SM_SET_IO_CAPABILITIES 0x92 2441edc4fc7SMatthias Ringwald #define SM_BONDING_DECLINE 0x93 2451edc4fc7SMatthias Ringwald #define SM_JUST_WORKS_CONFIRM 0x94 2461edc4fc7SMatthias Ringwald #define SM_NUMERIC_COMPARISON_CONFIRM 0x95 2471edc4fc7SMatthias Ringwald #define SM_PASSKEY_INPUT 0x96 2481edc4fc7SMatthias Ringwald 249eb6072adSMatthias Ringwald // ATT 250eb6072adSMatthias Ringwald 251eb6072adSMatthias Ringwald // .. 252eb6072adSMatthias Ringwald // Internal properties reuse some GATT Characteristic Properties fields 253fd1be25dSMatthias Ringwald #define ATT_DB_VERSION 0x01 25462c64df1SMatthias Ringwald 255941b3855SMatthias Ringwald // EVENTS 256941b3855SMatthias Ringwald 257ff3ef268SMilanka Ringwald // Events from host controller to host 258ff3ef268SMilanka Ringwald 259ff3ef268SMilanka Ringwald /** 260ff3ef268SMilanka Ringwald * @format 1 261ff3ef268SMilanka Ringwald * @param status 262ff3ef268SMilanka Ringwald */ 263ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_COMPLETE 0x01 264ff3ef268SMilanka Ringwald 265ff3ef268SMilanka Ringwald /** 266ff3ef268SMilanka Ringwald * @format 1B11132 267ff3ef268SMilanka Ringwald * @param num_responses 268ff3ef268SMilanka Ringwald * @param bd_addr 269ff3ef268SMilanka Ringwald * @param page_scan_repetition_mode 270ff3ef268SMilanka Ringwald * @param reserved1 271ff3ef268SMilanka Ringwald * @param reserved2 272ff3ef268SMilanka Ringwald * @param class_of_device 273ff3ef268SMilanka Ringwald * @param clock_offset 274ff3ef268SMilanka Ringwald */ 275ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT 0x02 276ff3ef268SMilanka Ringwald 277ff3ef268SMilanka Ringwald /** 278ff3ef268SMilanka Ringwald * @format 12B11 279ff3ef268SMilanka Ringwald * @param status 280ff3ef268SMilanka Ringwald * @param connection_handle 281ff3ef268SMilanka Ringwald * @param bd_addr 282ff3ef268SMilanka Ringwald * @param link_type 283ff3ef268SMilanka Ringwald * @param encryption_enabled 284ff3ef268SMilanka Ringwald */ 285ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_COMPLETE 0x03 286ff3ef268SMilanka Ringwald /** 287ff3ef268SMilanka Ringwald * @format B31 288ff3ef268SMilanka Ringwald * @param bd_addr 289ff3ef268SMilanka Ringwald * @param class_of_device 290ff3ef268SMilanka Ringwald * @param link_type 291ff3ef268SMilanka Ringwald */ 292ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_REQUEST 0x04 293ff3ef268SMilanka Ringwald /** 294ff3ef268SMilanka Ringwald * @format 121 295ff3ef268SMilanka Ringwald * @param status 296ff3ef268SMilanka Ringwald * @param connection_handle 297ff3ef268SMilanka Ringwald * @param reason 298ff3ef268SMilanka Ringwald */ 299ff3ef268SMilanka Ringwald #define HCI_EVENT_DISCONNECTION_COMPLETE 0x05 300ff3ef268SMilanka Ringwald /** 301ff3ef268SMilanka Ringwald * @format 12 302ff3ef268SMilanka Ringwald * @param status 303ff3ef268SMilanka Ringwald * @param connection_handle 304ff3ef268SMilanka Ringwald */ 305ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE 0x06 306ff3ef268SMilanka Ringwald 307ff3ef268SMilanka Ringwald // HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT is deprecated, use HCI_EVENT_AUTHENTICATION_COMPLETE instead 308ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT HCI_EVENT_AUTHENTICATION_COMPLETE 309ff3ef268SMilanka Ringwald 310ff3ef268SMilanka Ringwald /** 311ff3ef268SMilanka Ringwald * @format 1BN 312ff3ef268SMilanka Ringwald * @param status 313ff3ef268SMilanka Ringwald * @param bd_addr 314ff3ef268SMilanka Ringwald * @param remote_name 315ff3ef268SMilanka Ringwald */ 316ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE 0x07 317ff3ef268SMilanka Ringwald /** 318ff3ef268SMilanka Ringwald * @format 121 319ff3ef268SMilanka Ringwald * @param status 320ff3ef268SMilanka Ringwald * @param connection_handle 321ff3ef268SMilanka Ringwald * @param encryption_enabled 322ff3ef268SMilanka Ringwald */ 323ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_CHANGE 0x08 324ff3ef268SMilanka Ringwald /** 325ff3ef268SMilanka Ringwald * @format 12 326ff3ef268SMilanka Ringwald * @param status 327ff3ef268SMilanka Ringwald * @param connection_handle 328ff3ef268SMilanka Ringwald */ 329ff3ef268SMilanka Ringwald #define HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE 0x09 330ff3ef268SMilanka Ringwald /** 331ff3ef268SMilanka Ringwald * @format 121 332ff3ef268SMilanka Ringwald * @param status 333ff3ef268SMilanka Ringwald * @param connection_handle 334ff3ef268SMilanka Ringwald * @param key_flag 335ff3ef268SMilanka Ringwald */ 336ff3ef268SMilanka Ringwald #define HCI_EVENT_MASTER_LINK_KEY_COMPLETE 0x0A 337ff3ef268SMilanka Ringwald 338ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_SUPPORTED_FEATURES_COMPLETE 0x0B 339ff3ef268SMilanka Ringwald 340ff3ef268SMilanka Ringwald /** 341ff3ef268SMilanka Ringwald * @format 12122 342ff3ef268SMilanka Ringwald * @param status 343ff3ef268SMilanka Ringwald * @param connection_handle 344ff3ef268SMilanka Ringwald * @param version 345ff3ef268SMilanka Ringwald * @param manufacturer_name 346ff3ef268SMilanka Ringwald * @param subversion 347ff3ef268SMilanka Ringwald */ 348ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE 0x0C 349ff3ef268SMilanka Ringwald 350ff3ef268SMilanka Ringwald #define HCI_EVENT_QOS_SETUP_COMPLETE 0x0D 351ff3ef268SMilanka Ringwald 352ff3ef268SMilanka Ringwald /** 353ff3ef268SMilanka Ringwald * @format 12R 354ff3ef268SMilanka Ringwald * @param num_hci_command_packets 355ff3ef268SMilanka Ringwald * @param command_opcode 356ff3ef268SMilanka Ringwald * @param return_parameters 357ff3ef268SMilanka Ringwald */ 358ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_COMPLETE 0x0E 359ff3ef268SMilanka Ringwald /** 360ff3ef268SMilanka Ringwald * @format 112 361ff3ef268SMilanka Ringwald * @param status 362ff3ef268SMilanka Ringwald * @param num_hci_command_packets 363ff3ef268SMilanka Ringwald * @param command_opcode 364ff3ef268SMilanka Ringwald */ 365ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_STATUS 0x0F 366ff3ef268SMilanka Ringwald 367ff3ef268SMilanka Ringwald /** 368ff3ef268SMilanka Ringwald * @format 1 369ff3ef268SMilanka Ringwald * @param hardware_code 370ff3ef268SMilanka Ringwald */ 371ff3ef268SMilanka Ringwald #define HCI_EVENT_HARDWARE_ERROR 0x10 372ff3ef268SMilanka Ringwald 373ff3ef268SMilanka Ringwald #define HCI_EVENT_FLUSH_OCCURRED 0x11 374ff3ef268SMilanka Ringwald 375ff3ef268SMilanka Ringwald /** 376ff3ef268SMilanka Ringwald * @format 1B1 377ff3ef268SMilanka Ringwald * @param status 378ff3ef268SMilanka Ringwald * @param bd_addr 379ff3ef268SMilanka Ringwald * @param role 380ff3ef268SMilanka Ringwald */ 381ff3ef268SMilanka Ringwald #define HCI_EVENT_ROLE_CHANGE 0x12 382ff3ef268SMilanka Ringwald 383ff3ef268SMilanka Ringwald // TODO: number_of_handles 1, connection_handle[H*i], hc_num_of_completed_packets[2*i] 384ff3ef268SMilanka Ringwald #define HCI_EVENT_NUMBER_OF_COMPLETED_PACKETS 0x13 385ff3ef268SMilanka Ringwald 386ff3ef268SMilanka Ringwald /** 387ff3ef268SMilanka Ringwald * @format 1H12 388ff3ef268SMilanka Ringwald * @param status 389ff3ef268SMilanka Ringwald * @param handle 390ff3ef268SMilanka Ringwald * @param mode 391ff3ef268SMilanka Ringwald * @param interval 392ff3ef268SMilanka Ringwald */ 393ff3ef268SMilanka Ringwald #define HCI_EVENT_MODE_CHANGE 0x14 394ff3ef268SMilanka Ringwald 395ff3ef268SMilanka Ringwald // TODO: num_keys, bd_addr[B*i], link_key[16 octets * i] 396ff3ef268SMilanka Ringwald #define HCI_EVENT_RETURN_LINK_KEYS 0x15 397ff3ef268SMilanka Ringwald 398ff3ef268SMilanka Ringwald /** 399ff3ef268SMilanka Ringwald * @format B 400ff3ef268SMilanka Ringwald * @param bd_addr 401ff3ef268SMilanka Ringwald */ 402ff3ef268SMilanka Ringwald #define HCI_EVENT_PIN_CODE_REQUEST 0x16 403ff3ef268SMilanka Ringwald 404ff3ef268SMilanka Ringwald /** 405ff3ef268SMilanka Ringwald * @format B 406ff3ef268SMilanka Ringwald * @param bd_addr 407ff3ef268SMilanka Ringwald */ 408ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_REQUEST 0x17 409ff3ef268SMilanka Ringwald 410ff3ef268SMilanka Ringwald // TODO: bd_addr B, link_key 16octets, key_type 1 411ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_NOTIFICATION 0x18 412ff3ef268SMilanka Ringwald 413ff3ef268SMilanka Ringwald /** 414ff3ef268SMilanka Ringwald * @format 1 415ff3ef268SMilanka Ringwald * @param link_type 416ff3ef268SMilanka Ringwald */ 417ff3ef268SMilanka Ringwald #define HCI_EVENT_DATA_BUFFER_OVERFLOW 0x1A 418ff3ef268SMilanka Ringwald 419ff3ef268SMilanka Ringwald /** 420ff3ef268SMilanka Ringwald * @format H1 421ff3ef268SMilanka Ringwald * @param handle 422ff3ef268SMilanka Ringwald * @param lmp_max_slots 423ff3ef268SMilanka Ringwald */ 424ff3ef268SMilanka Ringwald #define HCI_EVENT_MAX_SLOTS_CHANGED 0x1B 425ff3ef268SMilanka Ringwald 426ff3ef268SMilanka Ringwald /** 427ff3ef268SMilanka Ringwald * @format 1H2 428ff3ef268SMilanka Ringwald * @param status 429ff3ef268SMilanka Ringwald * @param handle 430ff3ef268SMilanka Ringwald * @param clock_offset 431ff3ef268SMilanka Ringwald */ 432ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE 0x1C 433ff3ef268SMilanka Ringwald 434ff3ef268SMilanka Ringwald /** 435ff3ef268SMilanka Ringwald * @format 1H2 436ff3ef268SMilanka Ringwald * @param status 437ff3ef268SMilanka Ringwald * @param handle 438ff3ef268SMilanka Ringwald * @param packet_types 439ff3ef268SMilanka Ringwald * @pnote packet_type is in plural to avoid clash with Java binding Packet.getPacketType() 440ff3ef268SMilanka Ringwald */ 441ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED 0x1D 442ff3ef268SMilanka Ringwald 443ff3ef268SMilanka Ringwald /** 444ff3ef268SMilanka Ringwald * @format 1B11321 445ff3ef268SMilanka Ringwald * @param num_responses 446ff3ef268SMilanka Ringwald * @param bd_addr 447ff3ef268SMilanka Ringwald * @param page_scan_repetition_mode 448ff3ef268SMilanka Ringwald * @param reserved 449ff3ef268SMilanka Ringwald * @param class_of_device 450ff3ef268SMilanka Ringwald * @param clock_offset 451ff3ef268SMilanka Ringwald * @param rssi 452ff3ef268SMilanka Ringwald */ 453ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT_WITH_RSSI 0x22 454ff3ef268SMilanka Ringwald 455ff3ef268SMilanka Ringwald /** 456ff3ef268SMilanka Ringwald * @format 1HB111221 457ff3ef268SMilanka Ringwald * @param status 458ff3ef268SMilanka Ringwald * @param handle 459ff3ef268SMilanka Ringwald * @param bd_addr 460ff3ef268SMilanka Ringwald * @param link_type 461ff3ef268SMilanka Ringwald * @param transmission_interval 462ff3ef268SMilanka Ringwald * @param retransmission_interval 463ff3ef268SMilanka Ringwald * @param rx_packet_length 464ff3ef268SMilanka Ringwald * @param tx_packet_length 465ff3ef268SMilanka Ringwald * @param air_mode 466ff3ef268SMilanka Ringwald */ 467ff3ef268SMilanka Ringwald #define HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE 0x2C 468ff3ef268SMilanka Ringwald 469ff3ef268SMilanka Ringwald // TODO: serialize extended_inquiry_response and provide parser 470ff3ef268SMilanka Ringwald /** 471ff3ef268SMilanka Ringwald * @format 1B11321 472ff3ef268SMilanka Ringwald * @param num_responses 473ff3ef268SMilanka Ringwald * @param bd_addr 474ff3ef268SMilanka Ringwald * @param page_scan_repetition_mode 475ff3ef268SMilanka Ringwald * @param reserved 476ff3ef268SMilanka Ringwald * @param class_of_device 477ff3ef268SMilanka Ringwald * @param clock_offset 478ff3ef268SMilanka Ringwald * @param rssi 479ff3ef268SMilanka Ringwald */ 480ff3ef268SMilanka Ringwald #define HCI_EVENT_EXTENDED_INQUIRY_RESPONSE 0x2F 481ff3ef268SMilanka Ringwald 482ff3ef268SMilanka Ringwald /** 483ff3ef268SMilanka Ringwald * @format 1H 484ff3ef268SMilanka Ringwald * @param status 485ff3ef268SMilanka Ringwald * @param handle 486ff3ef268SMilanka Ringwald */ 487ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE 0x30 488ff3ef268SMilanka Ringwald 489ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_REQUEST 0x31 490ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_RESPONSE 0x32 491ff3ef268SMilanka Ringwald 492ff3ef268SMilanka Ringwald /** 493ff3ef268SMilanka Ringwald * @format B4 494ff3ef268SMilanka Ringwald * @param bd_addr 495ff3ef268SMilanka Ringwald * @param numeric_value 496ff3ef268SMilanka Ringwald */ 497ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_CONFIRMATION_REQUEST 0x33 498ff3ef268SMilanka Ringwald 499ff3ef268SMilanka Ringwald /** 500ff3ef268SMilanka Ringwald * @format B 501ff3ef268SMilanka Ringwald * @param bd_addr 502ff3ef268SMilanka Ringwald */ 503ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_PASSKEY_REQUEST 0x34 504ff3ef268SMilanka Ringwald 505ff3ef268SMilanka Ringwald /** 506ff3ef268SMilanka Ringwald * @format B 507ff3ef268SMilanka Ringwald * @param bd_addr 508ff3ef268SMilanka Ringwald */ 509ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_OOB_DATA_REQUEST 0x35 510ff3ef268SMilanka Ringwald 511ff3ef268SMilanka Ringwald /** 512ff3ef268SMilanka Ringwald * @format 1B 513ff3ef268SMilanka Ringwald * @param status 514ff3ef268SMilanka Ringwald * @param bd_addr 515ff3ef268SMilanka Ringwald */ 516ff3ef268SMilanka Ringwald #define HCI_EVENT_SIMPLE_PAIRING_COMPLETE 0x36 517ff3ef268SMilanka Ringwald 518ff3ef268SMilanka Ringwald #define HCI_EVENT_LE_META 0x3E 519ff3ef268SMilanka Ringwald 520ff3ef268SMilanka Ringwald // last used HCI_EVENT in 2.1 is 0x3d 521ff3ef268SMilanka Ringwald // last used HCI_EVENT in 4.1 is 0x57 522ff3ef268SMilanka Ringwald 523ff3ef268SMilanka Ringwald #define HCI_EVENT_VENDOR_SPECIFIC 0xFF 524ff3ef268SMilanka Ringwald 525ff3ef268SMilanka Ringwald /** 526ff3ef268SMilanka Ringwald * @format 11H11B2221 527ff3ef268SMilanka Ringwald * @param subevent_code 528ff3ef268SMilanka Ringwald * @param status 529ff3ef268SMilanka Ringwald * @param connection_handle 530ff3ef268SMilanka Ringwald * @param role 531ff3ef268SMilanka Ringwald * @param peer_address_type 532ff3ef268SMilanka Ringwald * @param peer_address 533ff3ef268SMilanka Ringwald * @param conn_interval 534ff3ef268SMilanka Ringwald * @param conn_latency 535ff3ef268SMilanka Ringwald * @param supervision_timeout 536ff3ef268SMilanka Ringwald * @param master_clock_accuracy 537ff3ef268SMilanka Ringwald */ 538ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_CONNECTION_COMPLETE 0x01 539ff3ef268SMilanka Ringwald 540ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator 541ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ADVERTISING_REPORT 0x02 542ff3ef268SMilanka Ringwald 543ff3ef268SMilanka Ringwald /** 544ff3ef268SMilanka Ringwald * @format 11H222 545ff3ef268SMilanka Ringwald * @param subevent_code 546ff3ef268SMilanka Ringwald * @param status 547ff3ef268SMilanka Ringwald * @param connection_handle 548ff3ef268SMilanka Ringwald * @param conn_interval 549ff3ef268SMilanka Ringwald * @param conn_latency 550ff3ef268SMilanka Ringwald * @param supervision_timeout 551ff3ef268SMilanka Ringwald */ 552ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE 0x03 553ff3ef268SMilanka Ringwald 554ff3ef268SMilanka Ringwald /** 555ff3ef268SMilanka Ringwald * @format 1HD2 556ff3ef268SMilanka Ringwald * @param subevent_code 557ff3ef268SMilanka Ringwald * @param connection_handle 558ff3ef268SMilanka Ringwald * @param random_number 559ff3ef268SMilanka Ringwald * @param encryption_diversifier 560ff3ef268SMilanka Ringwald */ 561ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_READ_REMOTE_USED_FEATURES_COMPLETE 0x04 562ff3ef268SMilanka Ringwald 563ff3ef268SMilanka Ringwald /** 564ff3ef268SMilanka Ringwald * @format 1HD2 565ff3ef268SMilanka Ringwald * @param subevent_code 566ff3ef268SMilanka Ringwald * @param connection_handle 567ff3ef268SMilanka Ringwald * @param random_number 568ff3ef268SMilanka Ringwald * @param encryption_diversifier 569ff3ef268SMilanka Ringwald */ 570ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST 0x05 571ff3ef268SMilanka Ringwald 572ff3ef268SMilanka Ringwald /** 573ff3ef268SMilanka Ringwald * @format 1H2222 574ff3ef268SMilanka Ringwald * @param subevent_code 575ff3ef268SMilanka Ringwald * @param connection_handle 576ff3ef268SMilanka Ringwald * @param interval_min 577ff3ef268SMilanka Ringwald * @param interval_max 578ff3ef268SMilanka Ringwald * @param latency 579ff3ef268SMilanka Ringwald * @param timeout 580ff3ef268SMilanka Ringwald */ 581ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST 0x06 582ff3ef268SMilanka Ringwald 583ff3ef268SMilanka Ringwald /** 584ff3ef268SMilanka Ringwald * @format 1H2222 585ff3ef268SMilanka Ringwald * @param subevent_code 586ff3ef268SMilanka Ringwald * @param connection_handle 587ff3ef268SMilanka Ringwald * @param max_tx_octets 588ff3ef268SMilanka Ringwald * @param max_tx_time 589ff3ef268SMilanka Ringwald * @param max_rx_octets 590ff3ef268SMilanka Ringwald * @param max_rx_time 591ff3ef268SMilanka Ringwald */ 592ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE 0x07 593ff3ef268SMilanka Ringwald 594ff3ef268SMilanka Ringwald /** 595ff3ef268SMilanka Ringwald * @format 11QQ 596ff3ef268SMilanka Ringwald * @param subevent_code 597ff3ef268SMilanka Ringwald * @param status 598ff3ef268SMilanka Ringwald * @param dhkey_x x coordinate of P256 public key 599ff3ef268SMilanka Ringwald * @param dhkey_y y coordinate of P256 public key 600ff3ef268SMilanka Ringwald */ 601ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE 0x08 602ff3ef268SMilanka Ringwald /** 603ff3ef268SMilanka Ringwald * @format 11Q 604ff3ef268SMilanka Ringwald * @param subevent_code 605ff3ef268SMilanka Ringwald * @param status 606ff3ef268SMilanka Ringwald * @param dhkey Diffie-Hellman key 607ff3ef268SMilanka Ringwald */ 608ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE 0x09 609ff3ef268SMilanka Ringwald 610ff3ef268SMilanka Ringwald /** 611ff3ef268SMilanka Ringwald * @format 11H11BBB2221 612ff3ef268SMilanka Ringwald * @param subevent_code 613ff3ef268SMilanka Ringwald * @param status 614ff3ef268SMilanka Ringwald * @param connection_handle 615ff3ef268SMilanka Ringwald * @param role 616ff3ef268SMilanka Ringwald * @param peer_address_type 617ff3ef268SMilanka Ringwald * @param perr_addresss 618ff3ef268SMilanka Ringwald * @param local_resolvable_private_addres 619ff3ef268SMilanka Ringwald * @param peer_resolvable_private_addres 620ff3ef268SMilanka Ringwald * @param conn_interval 621ff3ef268SMilanka Ringwald * @param conn_latency 622ff3ef268SMilanka Ringwald * @param supervision_timeout 623ff3ef268SMilanka Ringwald * @param master_clock_accuracy 624ff3ef268SMilanka Ringwald */ 625ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE 0x0A 626ff3ef268SMilanka Ringwald 627ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator 628ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DIRECT_ADVERTISING_REPORT 0x0B 629ff3ef268SMilanka Ringwald 630ff3ef268SMilanka Ringwald 631941b3855SMatthias Ringwald /** 632941b3855SMatthias Ringwald * @format 1 633941b3855SMatthias Ringwald * @param state 634941b3855SMatthias Ringwald */ 635941b3855SMatthias Ringwald #define BTSTACK_EVENT_STATE 0x60 636941b3855SMatthias Ringwald 63752aef63fSMatthias Ringwald /** 63852aef63fSMatthias Ringwald * @format 1 63952aef63fSMatthias Ringwald * @param number_connections 64052aef63fSMatthias Ringwald */ 641941b3855SMatthias Ringwald #define BTSTACK_EVENT_NR_CONNECTIONS_CHANGED 0x61 642941b3855SMatthias Ringwald 643941b3855SMatthias Ringwald /** 644941b3855SMatthias Ringwald * @format 645941b3855SMatthias Ringwald */ 646941b3855SMatthias Ringwald #define BTSTACK_EVENT_POWERON_FAILED 0x62 647941b3855SMatthias Ringwald 648941b3855SMatthias Ringwald /** 649827b1c43SMatthias Ringwald * @format 1 650827b1c43SMatthias Ringwald * @param discoverable 651827b1c43SMatthias Ringwald */ 652827b1c43SMatthias Ringwald #define BTSTACK_EVENT_DISCOVERABLE_ENABLED 0x66 653827b1c43SMatthias Ringwald 654827b1c43SMatthias Ringwald // Daemon Events 655827b1c43SMatthias Ringwald 656827b1c43SMatthias Ringwald /** 657941b3855SMatthias Ringwald * @format 112 658941b3855SMatthias Ringwald * @param major 659941b3855SMatthias Ringwald * @param minor 660941b3855SMatthias Ringwald @ @param revision 661941b3855SMatthias Ringwald */ 662827b1c43SMatthias Ringwald #define DAEMON_EVENT_VERSION 0x63 663941b3855SMatthias Ringwald 664941b3855SMatthias Ringwald // data: system bluetooth on/off (bool) 665e2334cdcSMatthias Ringwald /** 666e2334cdcSMatthias Ringwald * @format 1 667e2334cdcSMatthias Ringwald * param system_bluetooth_enabled 668e2334cdcSMatthias Ringwald */ 669827b1c43SMatthias Ringwald #define DAEMON_EVENT_SYSTEM_BLUETOOTH_ENABLED 0x64 670941b3855SMatthias Ringwald 671941b3855SMatthias Ringwald // data: event (8), len(8), status (8) == 0, address (48), name (1984 bits = 248 bytes) 672e2334cdcSMatthias Ringwald 673e2334cdcSMatthias Ringwald /* 674e2334cdcSMatthias Ringwald * @format 1BT 675e2334cdcSMatthias Ringwald * @param status == 0 to match read_remote_name_request 676e2334cdcSMatthias Ringwald * @param address 677e2334cdcSMatthias Ringwald * @param name 678e2334cdcSMatthias Ringwald */ 679827b1c43SMatthias Ringwald #define DAEMON_EVENT_REMOTE_NAME_CACHED 0x65 680941b3855SMatthias Ringwald 68162c64df1SMatthias Ringwald // internal - data: event(8) 682e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_OPENED 0x67 683941b3855SMatthias Ringwald 68462c64df1SMatthias Ringwald // internal - data: event(8) 685e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_CLOSED 0x68 686941b3855SMatthias Ringwald 68762c64df1SMatthias Ringwald // data: event(8), len(8), local_cid(16), credits(8) 68862c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_CREDITS 0x74 68962c64df1SMatthias Ringwald 69062c64df1SMatthias Ringwald /** 69162c64df1SMatthias Ringwald * @format 12 69262c64df1SMatthias Ringwald * @param status 69362c64df1SMatthias Ringwald * @param psm 69462c64df1SMatthias Ringwald */ 69562c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_SERVICE_REGISTERED 0x75 69662c64df1SMatthias Ringwald 69762c64df1SMatthias Ringwald /** 69862c64df1SMatthias Ringwald * @format 21 69962c64df1SMatthias Ringwald * @param rfcomm_cid 70062c64df1SMatthias Ringwald * @param credits 70162c64df1SMatthias Ringwald */ 70262c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_CREDITS 0x84 70362c64df1SMatthias Ringwald 70462c64df1SMatthias Ringwald /** 70562c64df1SMatthias Ringwald * @format 11 70662c64df1SMatthias Ringwald * @param status 70762c64df1SMatthias Ringwald * @param channel_id 70862c64df1SMatthias Ringwald */ 709fea5a680SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_SERVICE_REGISTERED 0x85 710fea5a680SMatthias Ringwald 71162c64df1SMatthias Ringwald /** 71262c64df1SMatthias Ringwald * @format 11 71362c64df1SMatthias Ringwald * @param status 71462c64df1SMatthias Ringwald * @param server_channel_id 71562c64df1SMatthias Ringwald */ 71662c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_PERSISTENT_CHANNEL 0x86 71762c64df1SMatthias Ringwald 71862c64df1SMatthias Ringwald /** 71962c64df1SMatthias Ringwald * @format 14 72062c64df1SMatthias Ringwald * @param status 72162c64df1SMatthias Ringwald * @param service_record_handle 72262c64df1SMatthias Ringwald */ 72362c64df1SMatthias Ringwald #define DAEMON_EVENT_SDP_SERVICE_REGISTERED 0x90 72462c64df1SMatthias Ringwald 72562c64df1SMatthias Ringwald 726827b1c43SMatthias Ringwald 7273bc639ceSMatthias Ringwald // additional HCI events 72863fa3374SMatthias Ringwald 72963fa3374SMatthias Ringwald /** 73062ca45d7SMatthias Ringwald * @brief Indicates HCI transport enters/exits Sleep mode 73162ca45d7SMatthias Ringwald * @format 1 73262ca45d7SMatthias Ringwald * @param active 73362ca45d7SMatthias Ringwald */ 734d16a0392SMatthias Ringwald #define HCI_EVENT_TRANSPORT_SLEEP_MODE 0x69 73562ca45d7SMatthias Ringwald 73662ca45d7SMatthias Ringwald /** 737*0561b2d8STREFOU Felix * @brief Transport ready 738*0561b2d8STREFOU Felix */ 739*0561b2d8STREFOU Felix #define HCI_EVENT_TRANSPORT_READY 0x6D 740*0561b2d8STREFOU Felix 741*0561b2d8STREFOU Felix /** 74263fa3374SMatthias Ringwald * @brief Outgoing packet 74363fa3374SMatthias Ringwald */ 74463fa3374SMatthias Ringwald #define HCI_EVENT_TRANSPORT_PACKET_SENT 0x6E 74563fa3374SMatthias Ringwald 7463bc639ceSMatthias Ringwald /** 7473bc639ceSMatthias Ringwald * @format B 7483bc639ceSMatthias Ringwald * @param handle 7493bc639ceSMatthias Ringwald */ 7503bc639ceSMatthias Ringwald #define HCI_EVENT_SCO_CAN_SEND_NOW 0x6F 7513bc639ceSMatthias Ringwald 75262c64df1SMatthias Ringwald 753941b3855SMatthias Ringwald // L2CAP EVENTS 754941b3855SMatthias Ringwald 755b072ba33SMatthias Ringwald /** 7567f1690cfSMatthias Ringwald * @format 1BH222222111 757b072ba33SMatthias Ringwald * @param status 758b072ba33SMatthias Ringwald * @param address 759b072ba33SMatthias Ringwald * @param handle 760b072ba33SMatthias Ringwald * @param psm 761b072ba33SMatthias Ringwald * @param local_cid 762b072ba33SMatthias Ringwald * @param remote_cid 763b072ba33SMatthias Ringwald * @param local_mtu 764b072ba33SMatthias Ringwald * @param remote_mtu 765b072ba33SMatthias Ringwald * @param flush_timeout 766bab5f4f0SMatthias Ringwald * @param incoming 7677f1690cfSMatthias Ringwald * @param mode 7687f1690cfSMatthias Ringwald * @param fcs 769b072ba33SMatthias Ringwald */ 770941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_OPENED 0x70 771941b3855SMatthias Ringwald 772b072ba33SMatthias Ringwald /* 773b072ba33SMatthias Ringwald * @format 2 774b072ba33SMatthias Ringwald * @param local_cid 775b072ba33SMatthias Ringwald */ 776941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_CLOSED 0x71 777941b3855SMatthias Ringwald 778b072ba33SMatthias Ringwald /** 7796d4269d3SMilanka Ringwald * @format BH222 780b072ba33SMatthias Ringwald * @param address 781b072ba33SMatthias Ringwald * @param handle 782b072ba33SMatthias Ringwald * @param psm 783b072ba33SMatthias Ringwald * @param local_cid 784b072ba33SMatthias Ringwald * @param remote_cid 785b072ba33SMatthias Ringwald */ 786941b3855SMatthias Ringwald #define L2CAP_EVENT_INCOMING_CONNECTION 0x72 787941b3855SMatthias Ringwald 788b072ba33SMatthias Ringwald // ?? 789941b3855SMatthias Ringwald // data: event(8), len(8), handle(16) 790941b3855SMatthias Ringwald #define L2CAP_EVENT_TIMEOUT_CHECK 0x73 791941b3855SMatthias Ringwald 792b072ba33SMatthias Ringwald /** 793b072ba33SMatthias Ringwald * @format H2222 794b072ba33SMatthias Ringwald * @param handle 795b072ba33SMatthias Ringwald * @param interval_min 796b072ba33SMatthias Ringwald * @param interval_max 797b072ba33SMatthias Ringwald * @param latencey 798b072ba33SMatthias Ringwald * @param timeout_multiplier 799b072ba33SMatthias Ringwald */ 800941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST 0x76 801941b3855SMatthias Ringwald 802941b3855SMatthias Ringwald // data: event(8), len(8), handle(16), result (16) (0 == ok, 1 == fail) 803b072ba33SMatthias Ringwald /** 804b072ba33SMatthias Ringwald * @format H2 805b072ba33SMatthias Ringwald * @param handle 8062c737695SMatthias Ringwald * @param result 807b072ba33SMatthias Ringwald */ 808941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE 0x77 809941b3855SMatthias Ringwald 810b072ba33SMatthias Ringwald /** 811b072ba33SMatthias Ringwald * @format 2 812b072ba33SMatthias Ringwald * @param local_cid 813b072ba33SMatthias Ringwald */ 814b072ba33SMatthias Ringwald #define L2CAP_EVENT_CAN_SEND_NOW 0x78 815b072ba33SMatthias Ringwald 81644276248SMatthias Ringwald // LE Data Channels 81744276248SMatthias Ringwald 81844276248SMatthias Ringwald /** 81944276248SMatthias Ringwald * @format 1BH2222 82044276248SMatthias Ringwald * @param address_type 82144276248SMatthias Ringwald * @param address 82244276248SMatthias Ringwald * @param handle 82344276248SMatthias Ringwald * @param psm 82444276248SMatthias Ringwald * @param local_cid 82544276248SMatthias Ringwald * @param remote_cid 82644276248SMatthias Ringwald * @param remote_mtu 82744276248SMatthias Ringwald */ 82844276248SMatthias Ringwald #define L2CAP_EVENT_LE_INCOMING_CONNECTION 0x79 82944276248SMatthias Ringwald 83044276248SMatthias Ringwald /** 83112242deaSMatthias Ringwald * @format 11BH122222 83244276248SMatthias Ringwald * @param status 83344276248SMatthias Ringwald * @param address_type 83444276248SMatthias Ringwald * @param address 83544276248SMatthias Ringwald * @param handle 83612242deaSMatthias Ringwald * @param incoming 83744276248SMatthias Ringwald * @param psm 83844276248SMatthias Ringwald * @param local_cid 83944276248SMatthias Ringwald * @param remote_cid 84044276248SMatthias Ringwald * @param local_mtu 84144276248SMatthias Ringwald * @param remote_mtu 84244276248SMatthias Ringwald */ 84344276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_OPENED 0x7a 84444276248SMatthias Ringwald 84544276248SMatthias Ringwald /* 84644276248SMatthias Ringwald * @format 2 84744276248SMatthias Ringwald * @param local_cid 84844276248SMatthias Ringwald */ 84944276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_CLOSED 0x7b 85044276248SMatthias Ringwald 85144276248SMatthias Ringwald /* 85244276248SMatthias Ringwald * @format 2 85344276248SMatthias Ringwald * @param local_cid 85444276248SMatthias Ringwald */ 85544276248SMatthias Ringwald #define L2CAP_EVENT_LE_CAN_SEND_NOW 0x7c 85644276248SMatthias Ringwald 85744276248SMatthias Ringwald /* 85844276248SMatthias Ringwald * @format 2 85944276248SMatthias Ringwald * @param local_cid 86044276248SMatthias Ringwald */ 86144276248SMatthias Ringwald #define L2CAP_EVENT_LE_PACKET_SENT 0x7d 86244276248SMatthias Ringwald 86366a72640SMatthias Ringwald /* 86466a72640SMatthias Ringwald * @format 2 86566a72640SMatthias Ringwald * @param local_cid 86666a72640SMatthias Ringwald */ 86766a72640SMatthias Ringwald #define L2CAP_EVENT_ERTM_BUFFER_RELEASED 0x7e 86866a72640SMatthias Ringwald 86909c9c963SMatthias Ringwald /* 87009c9c963SMatthias Ringwald * @format 87109c9c963SMatthias Ringwald */ 872fa485b2bSMatthias Ringwald #define L2CAP_EVENT_TRIGGER_RUN 0x7f 87309c9c963SMatthias Ringwald 87444276248SMatthias Ringwald 875941b3855SMatthias Ringwald // RFCOMM EVENTS 876b072ba33SMatthias Ringwald 877941b3855SMatthias Ringwald /** 878bab5f4f0SMatthias Ringwald * @format 1B21221 879941b3855SMatthias Ringwald * @param status 880941b3855SMatthias Ringwald * @param bd_addr 881941b3855SMatthias Ringwald * @param con_handle 882941b3855SMatthias Ringwald * @param server_channel 883941b3855SMatthias Ringwald * @param rfcomm_cid 884941b3855SMatthias Ringwald * @param max_frame_size 885bab5f4f0SMatthias Ringwald * @param incoming 886941b3855SMatthias Ringwald */ 887f8f6a918SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_OPENED 0x80 888941b3855SMatthias Ringwald 889941b3855SMatthias Ringwald /** 890941b3855SMatthias Ringwald * @format 2 891941b3855SMatthias Ringwald * @param rfcomm_cid 892941b3855SMatthias Ringwald */ 893941b3855SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_CLOSED 0x81 894941b3855SMatthias Ringwald 895941b3855SMatthias Ringwald /** 896941b3855SMatthias Ringwald * @format B12 897941b3855SMatthias Ringwald * @param bd_addr 898941b3855SMatthias Ringwald * @param server_channel 899941b3855SMatthias Ringwald * @param rfcomm_cid 900941b3855SMatthias Ringwald */ 901941b3855SMatthias Ringwald #define RFCOMM_EVENT_INCOMING_CONNECTION 0x82 902941b3855SMatthias Ringwald 903941b3855SMatthias Ringwald /** 904941b3855SMatthias Ringwald * @format 21 905941b3855SMatthias Ringwald * @param rfcomm_cid 906941b3855SMatthias Ringwald * @param line_status 907941b3855SMatthias Ringwald */ 908941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_LINE_STATUS 0x83 909941b3855SMatthias Ringwald 910941b3855SMatthias Ringwald /** 911941b3855SMatthias Ringwald * @format 21 912941b3855SMatthias Ringwald * @param rfcomm_cid 913941b3855SMatthias Ringwald * @param modem_status 914941b3855SMatthias Ringwald */ 915941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_MODEM_STATUS 0x87 916941b3855SMatthias Ringwald 917941b3855SMatthias Ringwald /** 9187bd8e93bSMatthias Ringwald * TODO: format for variable data 2? 919045013feSMatthias Ringwald * param rfcomm_cid 920045013feSMatthias Ringwald * param rpn_data 921941b3855SMatthias Ringwald */ 922941b3855SMatthias Ringwald #define RFCOMM_EVENT_PORT_CONFIGURATION 0x88 923941b3855SMatthias Ringwald 924941b3855SMatthias Ringwald /** 925b072ba33SMatthias Ringwald * @format 2 92662c468cbSMatthias Ringwald * @param rfcomm_cid 927b072ba33SMatthias Ringwald */ 928b072ba33SMatthias Ringwald #define RFCOMM_EVENT_CAN_SEND_NOW 0x89 929b072ba33SMatthias Ringwald 930b072ba33SMatthias Ringwald 931b072ba33SMatthias Ringwald /** 932941b3855SMatthias Ringwald * @format 1 933941b3855SMatthias Ringwald * @param status 934941b3855SMatthias Ringwald */ 9355611a760SMatthias Ringwald #define SDP_EVENT_QUERY_COMPLETE 0x91 936941b3855SMatthias Ringwald 937941b3855SMatthias Ringwald /** 938941b3855SMatthias Ringwald * @format 1T 939941b3855SMatthias Ringwald * @param rfcomm_channel 940941b3855SMatthias Ringwald * @param name 941941b3855SMatthias Ringwald */ 9425611a760SMatthias Ringwald #define SDP_EVENT_QUERY_RFCOMM_SERVICE 0x92 943941b3855SMatthias Ringwald 944941b3855SMatthias Ringwald /** 9454225393cSMatthias Ringwald * @format 22221 9464225393cSMatthias Ringwald * @param record_id 947941b3855SMatthias Ringwald * @param attribute_id 9484225393cSMatthias Ringwald * @param attribute_length 9494225393cSMatthias Ringwald * @param data_offset 9504225393cSMatthias Ringwald * @param data 951941b3855SMatthias Ringwald */ 9525611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_BYTE 0x93 953941b3855SMatthias Ringwald 9544de250b4SMatthias Ringwald /** 9554de250b4SMatthias Ringwald * @format 22LV 9564de250b4SMatthias Ringwald * @param record_id 9574de250b4SMatthias Ringwald * @param attribute_id 9584de250b4SMatthias Ringwald * @param attribute_length 9594de250b4SMatthias Ringwald * @param attribute_value 9604de250b4SMatthias Ringwald */ 9615611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_VALUE 0x94 9624225393cSMatthias Ringwald 9634225393cSMatthias Ringwald /** 9644225393cSMatthias Ringwald * @format 224 9654225393cSMatthias Ringwald * @param total_count 9664225393cSMatthias Ringwald * @param record_index 9674225393cSMatthias Ringwald * @param record_handle 9684225393cSMatthias Ringwald * @note Not provided by daemon, only used for internal testing 9694225393cSMatthias Ringwald */ 9705611a760SMatthias Ringwald #define SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE 0x95 971941b3855SMatthias Ringwald 972941b3855SMatthias Ringwald /** 973941b3855SMatthias Ringwald * @format H1 974941b3855SMatthias Ringwald * @param handle 9759cb80b17SMilanka Ringwald * @param att_status see ATT errors in bluetooth.h 976941b3855SMatthias Ringwald */ 9775611a760SMatthias Ringwald #define GATT_EVENT_QUERY_COMPLETE 0xA0 978941b3855SMatthias Ringwald 979941b3855SMatthias Ringwald /** 980941b3855SMatthias Ringwald * @format HX 981941b3855SMatthias Ringwald * @param handle 982941b3855SMatthias Ringwald * @param service 983941b3855SMatthias Ringwald */ 9845611a760SMatthias Ringwald #define GATT_EVENT_SERVICE_QUERY_RESULT 0xA1 985941b3855SMatthias Ringwald 986941b3855SMatthias Ringwald /** 987941b3855SMatthias Ringwald * @format HY 988941b3855SMatthias Ringwald * @param handle 989941b3855SMatthias Ringwald * @param characteristic 990941b3855SMatthias Ringwald */ 9915611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_QUERY_RESULT 0xA2 992941b3855SMatthias Ringwald 993941b3855SMatthias Ringwald /** 994941b3855SMatthias Ringwald * @format H2X 995941b3855SMatthias Ringwald * @param handle 996941b3855SMatthias Ringwald * @param include_handle 997941b3855SMatthias Ringwald * @param service 998941b3855SMatthias Ringwald */ 9995611a760SMatthias Ringwald #define GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT 0xA3 1000941b3855SMatthias Ringwald 1001941b3855SMatthias Ringwald /** 1002941b3855SMatthias Ringwald * @format HZ 1003941b3855SMatthias Ringwald * @param handle 1004941b3855SMatthias Ringwald * @param characteristic_descriptor 1005941b3855SMatthias Ringwald */ 10065611a760SMatthias Ringwald #define GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT 0xA4 1007941b3855SMatthias Ringwald 1008941b3855SMatthias Ringwald /** 1009941b3855SMatthias Ringwald * @format H2LV 1010941b3855SMatthias Ringwald * @param handle 1011941b3855SMatthias Ringwald * @param value_handle 1012941b3855SMatthias Ringwald * @param value_length 1013941b3855SMatthias Ringwald * @param value 1014941b3855SMatthias Ringwald */ 10155611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT 0xA5 1016941b3855SMatthias Ringwald 1017941b3855SMatthias Ringwald /** 1018941b3855SMatthias Ringwald * @format H22LV 1019941b3855SMatthias Ringwald * @param handle 1020941b3855SMatthias Ringwald * @param value_handle 1021941b3855SMatthias Ringwald * @param value_offset 1022941b3855SMatthias Ringwald * @param value_length 1023941b3855SMatthias Ringwald * @param value 1024941b3855SMatthias Ringwald */ 10255611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT 0xA6 1026941b3855SMatthias Ringwald 1027941b3855SMatthias Ringwald /** 1028941b3855SMatthias Ringwald * @format H2LV 1029941b3855SMatthias Ringwald * @param handle 1030941b3855SMatthias Ringwald * @param value_handle 1031941b3855SMatthias Ringwald * @param value_length 1032941b3855SMatthias Ringwald * @param value 1033941b3855SMatthias Ringwald */ 10345611a760SMatthias Ringwald #define GATT_EVENT_NOTIFICATION 0xA7 1035941b3855SMatthias Ringwald 1036941b3855SMatthias Ringwald /** 1037941b3855SMatthias Ringwald * @format H2LV 1038941b3855SMatthias Ringwald * @param handle 1039941b3855SMatthias Ringwald * @param value_handle 1040941b3855SMatthias Ringwald * @param value_length 1041941b3855SMatthias Ringwald * @param value 1042941b3855SMatthias Ringwald */ 10435611a760SMatthias Ringwald #define GATT_EVENT_INDICATION 0xA8 1044941b3855SMatthias Ringwald 1045941b3855SMatthias Ringwald /** 1046941b3855SMatthias Ringwald * @format H2LV 10472c737695SMatthias Ringwald * @param handle 1048941b3855SMatthias Ringwald * @param descriptor_handle 1049941b3855SMatthias Ringwald * @param descriptor_length 1050941b3855SMatthias Ringwald * @param descriptor 1051941b3855SMatthias Ringwald */ 10525611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT 0xA9 1053941b3855SMatthias Ringwald 1054941b3855SMatthias Ringwald /** 1055941b3855SMatthias Ringwald * @format H2LV 1056941b3855SMatthias Ringwald * @param handle 1057941b3855SMatthias Ringwald * @param descriptor_offset 1058941b3855SMatthias Ringwald * @param descriptor_length 1059941b3855SMatthias Ringwald * @param descriptor 1060941b3855SMatthias Ringwald */ 10615611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT 0xAA 1062941b3855SMatthias Ringwald 1063941b3855SMatthias Ringwald /** 1064941b3855SMatthias Ringwald * @format H2 1065941b3855SMatthias Ringwald * @param handle 1066941b3855SMatthias Ringwald * @param MTU 1067941b3855SMatthias Ringwald */ 10685611a760SMatthias Ringwald #define GATT_EVENT_MTU 0xAB 1069941b3855SMatthias Ringwald 1070941b3855SMatthias Ringwald /** 107171af96a1SMatthias Ringwald * @format H 107271af96a1SMatthias Ringwald * @param handle 107371af96a1SMatthias Ringwald */ 107471af96a1SMatthias Ringwald #define GATT_EVENT_CAN_WRITE_WITHOUT_RESPONSE 0xAC 107571af96a1SMatthias Ringwald 107671af96a1SMatthias Ringwald /** 10775d964c8bSMatthias Ringwald * @format 1BH 1078a43588baSMatthias Ringwald * @param address_type 1079a43588baSMatthias Ringwald * @param address 1080a43588baSMatthias Ringwald * @param handle 1081a43588baSMatthias Ringwald */ 1082a43588baSMatthias Ringwald #define ATT_EVENT_CONNECTED 0xB3 1083a43588baSMatthias Ringwald 1084a43588baSMatthias Ringwald /** 1085a43588baSMatthias Ringwald * @format H 1086a43588baSMatthias Ringwald * @param handle 1087a43588baSMatthias Ringwald */ 1088a43588baSMatthias Ringwald #define ATT_EVENT_DISCONNECTED 0xB4 1089a43588baSMatthias Ringwald 1090a43588baSMatthias Ringwald /** 1091941b3855SMatthias Ringwald * @format H2 1092941b3855SMatthias Ringwald * @param handle 1093941b3855SMatthias Ringwald * @param MTU 1094941b3855SMatthias Ringwald */ 10955611a760SMatthias Ringwald #define ATT_EVENT_MTU_EXCHANGE_COMPLETE 0xB5 1096941b3855SMatthias Ringwald 109749d18261SMatthias Ringwald /** 109849d18261SMatthias Ringwald * @format 1H2 109949d18261SMatthias Ringwald * @param status 110049d18261SMatthias Ringwald * @param conn_handle 110149d18261SMatthias Ringwald * @param attribute_handle 110249d18261SMatthias Ringwald */ 11035611a760SMatthias Ringwald #define ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE 0xB6 1104941b3855SMatthias Ringwald 110549d18261SMatthias Ringwald /** 110649d18261SMatthias Ringwald * @format 110749d18261SMatthias Ringwald */ 110849d18261SMatthias Ringwald #define ATT_EVENT_CAN_SEND_NOW 0xB7 1109941b3855SMatthias Ringwald 111049d18261SMatthias Ringwald // TODO: daemon only event 111149d18261SMatthias Ringwald 111249d18261SMatthias Ringwald /** 111349d18261SMatthias Ringwald * @format 12 111449d18261SMatthias Ringwald * @param status 111549d18261SMatthias Ringwald * @param service_uuid 111649d18261SMatthias Ringwald */ 1117941b3855SMatthias Ringwald #define BNEP_EVENT_SERVICE_REGISTERED 0xC0 1118941b3855SMatthias Ringwald 111949d18261SMatthias Ringwald /** 112032b46fecSMatthias Ringwald * @format 12222BH 112149d18261SMatthias Ringwald * @param status 1122423c667cSMatthias Ringwald * @param bnep_cid 112349d18261SMatthias Ringwald * @param source_uuid 112449d18261SMatthias Ringwald * @param destination_uuid 112549d18261SMatthias Ringwald * @param mtu 112649d18261SMatthias Ringwald * @param remote_address 112732b46fecSMatthias Ringwald * @param con_handle 112849d18261SMatthias Ringwald */ 1129423c667cSMatthias Ringwald #define BNEP_EVENT_CHANNEL_OPENED 0xC1 1130941b3855SMatthias Ringwald 113149d18261SMatthias Ringwald /** 1132423c667cSMatthias Ringwald * @format 222B 1133423c667cSMatthias Ringwald * @param bnep_cid 113449d18261SMatthias Ringwald * @param source_uuid 113549d18261SMatthias Ringwald * @param destination_uuid 113649d18261SMatthias Ringwald * @param remote_address 113749d18261SMatthias Ringwald */ 1138941b3855SMatthias Ringwald #define BNEP_EVENT_CHANNEL_CLOSED 0xC2 1139941b3855SMatthias Ringwald 114049d18261SMatthias Ringwald /** 1141423c667cSMatthias Ringwald * @format 222B1 1142423c667cSMatthias Ringwald * @param bnep_cid 114349d18261SMatthias Ringwald * @param source_uuid 114449d18261SMatthias Ringwald * @param destination_uuid 114549d18261SMatthias Ringwald * @param remote_address 114649d18261SMatthias Ringwald * @param channel_state 114749d18261SMatthias Ringwald */ 1148941b3855SMatthias Ringwald #define BNEP_EVENT_CHANNEL_TIMEOUT 0xC3 1149941b3855SMatthias Ringwald 115049d18261SMatthias Ringwald /** 1151423c667cSMatthias Ringwald * @format 222B 1152423c667cSMatthias Ringwald * @param bnep_cid 115349d18261SMatthias Ringwald * @param source_uuid 115449d18261SMatthias Ringwald * @param destination_uuid 115549d18261SMatthias Ringwald * @param remote_address 115649d18261SMatthias Ringwald */ 11572d4c8c04SMatthias Ringwald #define BNEP_EVENT_CAN_SEND_NOW 0xC4 1158941b3855SMatthias Ringwald 1159941b3855SMatthias Ringwald /** 1160941b3855SMatthias Ringwald * @format H1B 1161941b3855SMatthias Ringwald * @param handle 1162941b3855SMatthias Ringwald * @param addr_type 1163941b3855SMatthias Ringwald * @param address 1164941b3855SMatthias Ringwald */ 11655611a760SMatthias Ringwald #define SM_EVENT_JUST_WORKS_REQUEST 0xD0 1166941b3855SMatthias Ringwald 1167941b3855SMatthias Ringwald /** 1168941b3855SMatthias Ringwald * @format H1B 1169941b3855SMatthias Ringwald * @param handle 1170941b3855SMatthias Ringwald * @param addr_type 1171941b3855SMatthias Ringwald * @param address 1172941b3855SMatthias Ringwald */ 11735611a760SMatthias Ringwald #define SM_EVENT_JUST_WORKS_CANCEL 0xD1 1174941b3855SMatthias Ringwald 1175941b3855SMatthias Ringwald /** 1176941b3855SMatthias Ringwald * @format H1B4 1177941b3855SMatthias Ringwald * @param handle 1178941b3855SMatthias Ringwald * @param addr_type 1179941b3855SMatthias Ringwald * @param address 1180941b3855SMatthias Ringwald * @param passkey 1181941b3855SMatthias Ringwald */ 11825611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_NUMBER 0xD2 1183941b3855SMatthias Ringwald 1184941b3855SMatthias Ringwald /** 1185941b3855SMatthias Ringwald * @format H1B 1186941b3855SMatthias Ringwald * @param handle 1187941b3855SMatthias Ringwald * @param addr_type 1188941b3855SMatthias Ringwald * @param address 1189941b3855SMatthias Ringwald */ 11905611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_CANCEL 0xD3 1191941b3855SMatthias Ringwald 1192941b3855SMatthias Ringwald /** 11932c737695SMatthias Ringwald * @format H1B 1194941b3855SMatthias Ringwald * @param handle 1195941b3855SMatthias Ringwald * @param addr_type 1196941b3855SMatthias Ringwald * @param address 1197941b3855SMatthias Ringwald */ 11985611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_INPUT_NUMBER 0xD4 1199941b3855SMatthias Ringwald 1200941b3855SMatthias Ringwald /** 1201941b3855SMatthias Ringwald * @format H1B 1202941b3855SMatthias Ringwald * @param handle 1203941b3855SMatthias Ringwald * @param addr_type 1204941b3855SMatthias Ringwald * @param address 1205941b3855SMatthias Ringwald */ 12065611a760SMatthias Ringwald #define SM_EVENT_PASSKEY_INPUT_CANCEL 0xD5 1207941b3855SMatthias Ringwald 1208941b3855SMatthias Ringwald /** 12098362d86aSMatthias Ringwald * @format H1B4 12108362d86aSMatthias Ringwald * @param handle 12118362d86aSMatthias Ringwald * @param addr_type 12128362d86aSMatthias Ringwald * @param address 12138362d86aSMatthias Ringwald * @param passkey 12148362d86aSMatthias Ringwald */ 12158362d86aSMatthias Ringwald #define SM_EVENT_NUMERIC_COMPARISON_REQUEST 0xD6 12168362d86aSMatthias Ringwald 12178362d86aSMatthias Ringwald /** 12182c737695SMatthias Ringwald * @format H1B 1219941b3855SMatthias Ringwald * @param handle 1220941b3855SMatthias Ringwald * @param addr_type 1221941b3855SMatthias Ringwald * @param address 1222941b3855SMatthias Ringwald */ 12238362d86aSMatthias Ringwald #define SM_EVENT_NUMERIC_COMPARISON_CANCEL 0xD7 1224941b3855SMatthias Ringwald 1225941b3855SMatthias Ringwald /** 1226941b3855SMatthias Ringwald * @format H1B 1227941b3855SMatthias Ringwald * @param handle 1228941b3855SMatthias Ringwald * @param addr_type 1229941b3855SMatthias Ringwald * @param address 1230941b3855SMatthias Ringwald */ 12318362d86aSMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_STARTED 0xD8 12328362d86aSMatthias Ringwald 12338362d86aSMatthias Ringwald /** 12348362d86aSMatthias Ringwald * @format H1B 12358362d86aSMatthias Ringwald * @param handle 12368362d86aSMatthias Ringwald * @param addr_type 12378362d86aSMatthias Ringwald * @param address 12388362d86aSMatthias Ringwald */ 12398362d86aSMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_FAILED 0xD9 1240941b3855SMatthias Ringwald 1241941b3855SMatthias Ringwald /** 124284182ed9SMatthias Ringwald * @brief Identify resolving succeeded 124384182ed9SMatthias Ringwald * 1244334126b3SMatthias Ringwald * @format H1B1B2 1245941b3855SMatthias Ringwald * @param handle 1246941b3855SMatthias Ringwald * @param addr_type 1247941b3855SMatthias Ringwald * @param address 124884182ed9SMatthias Ringwald * @param identity_addr_type 124984182ed9SMatthias Ringwald * @param identity_address 12506f8637a2SMatthias Ringwald * @param index 125184182ed9SMatthias Ringwald * 1252941b3855SMatthias Ringwald */ 12538362d86aSMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED 0xDA 1254941b3855SMatthias Ringwald 1255941b3855SMatthias Ringwald /** 1256941b3855SMatthias Ringwald * @format H1B 1257941b3855SMatthias Ringwald * @param handle 1258941b3855SMatthias Ringwald * @param addr_type 1259941b3855SMatthias Ringwald * @param address 1260941b3855SMatthias Ringwald */ 12618362d86aSMatthias Ringwald #define SM_EVENT_AUTHORIZATION_REQUEST 0xDB 1262941b3855SMatthias Ringwald 1263941b3855SMatthias Ringwald /** 1264941b3855SMatthias Ringwald * @format H1B1 1265941b3855SMatthias Ringwald * @param handle 1266941b3855SMatthias Ringwald * @param addr_type 1267941b3855SMatthias Ringwald * @param address 1268941b3855SMatthias Ringwald * @param authorization_result 1269941b3855SMatthias Ringwald */ 12708362d86aSMatthias Ringwald #define SM_EVENT_AUTHORIZATION_RESULT 0xDC 1271941b3855SMatthias Ringwald 12723d7fe1e9SMatthias Ringwald /** 12733d7fe1e9SMatthias Ringwald * @format H1 12743d7fe1e9SMatthias Ringwald * @param handle 12753d7fe1e9SMatthias Ringwald * @param action see SM_KEYPRESS_* 12763d7fe1e9SMatthias Ringwald */ 12773d7fe1e9SMatthias Ringwald #define SM_EVENT_KEYPRESS_NOTIFICATION 0xDD 12783d7fe1e9SMatthias Ringwald 127984182ed9SMatthias Ringwald /** 128084182ed9SMatthias Ringwald * @brief Emitted during pairing to inform app about address used as identity 128184182ed9SMatthias Ringwald * 1282fccb5f31SMatthias Ringwald * @format H1B1B2 128384182ed9SMatthias Ringwald * @param handle 128484182ed9SMatthias Ringwald * @param addr_type 128584182ed9SMatthias Ringwald * @param address 128684182ed9SMatthias Ringwald * @param identity_addr_type 128784182ed9SMatthias Ringwald * @param identity_address 12886f8637a2SMatthias Ringwald * @param index 128984182ed9SMatthias Ringwald */ 129084182ed9SMatthias Ringwald #define SM_EVENT_IDENTITY_CREATED 0xDE 12913d7fe1e9SMatthias Ringwald 129236c1abd2SMatthias Ringwald /** 129336c1abd2SMatthias Ringwald * @brief Emitted to inform app that pairing is complete. Possible status values: 129436c1abd2SMatthias Ringwald * ERROR_CODE_SUCCESS -> pairing success 129536c1abd2SMatthias Ringwald * ERROR_CODE_CONNECTION_TIMEOUT -> timeout 129636c1abd2SMatthias Ringwald * ERROR_CODE_REMOTE_USER_TERMINATED_CONNECTION -> disconnect 129736c1abd2SMatthias Ringwald * ERROR_CODE_AUTHENTICATION_FAILURE -> SM protocol error, see reason field with SM_REASON_* from bluetooth.h 129836c1abd2SMatthias Ringwald * 129936c1abd2SMatthias Ringwald * @format H1B11 130036c1abd2SMatthias Ringwald * @param handle 130136c1abd2SMatthias Ringwald * @param addr_type 130236c1abd2SMatthias Ringwald * @param address 130336c1abd2SMatthias Ringwald * @param status 130436c1abd2SMatthias Ringwald * @param reason if status == ERROR_CODE_AUTHENTICATION_FAILURE 130536c1abd2SMatthias Ringwald */ 130636c1abd2SMatthias Ringwald #define SM_EVENT_PAIRING_COMPLETE 0xDF 130736c1abd2SMatthias Ringwald 130836c1abd2SMatthias Ringwald 1309941b3855SMatthias Ringwald // GAP 1310941b3855SMatthias Ringwald 131146bc5396SMilanka Ringwald /** 131246bc5396SMilanka Ringwald * @format H1 131346bc5396SMilanka Ringwald * @param handle 131446bc5396SMilanka Ringwald * @param security_level 131546bc5396SMilanka Ringwald */ 13165611a760SMatthias Ringwald #define GAP_EVENT_SECURITY_LEVEL 0xE0 1317941b3855SMatthias Ringwald 131846bc5396SMilanka Ringwald /** 131946bc5396SMilanka Ringwald * @format 1B 132046bc5396SMilanka Ringwald * @param status 132146bc5396SMilanka Ringwald * @param address 132246bc5396SMilanka Ringwald */ 13235611a760SMatthias Ringwald #define GAP_EVENT_DEDICATED_BONDING_COMPLETED 0xE1 1324941b3855SMatthias Ringwald 1325941b3855SMatthias Ringwald /** 1326941b3855SMatthias Ringwald * @format 11B1JV 1327941b3855SMatthias Ringwald * @param advertising_event_type 1328941b3855SMatthias Ringwald * @param address_type 1329941b3855SMatthias Ringwald * @param address 1330941b3855SMatthias Ringwald * @param rssi 1331941b3855SMatthias Ringwald * @param data_length 1332941b3855SMatthias Ringwald * @param data 1333941b3855SMatthias Ringwald */ 1334045013feSMatthias Ringwald #define GAP_EVENT_ADVERTISING_REPORT 0xE2 1335941b3855SMatthias Ringwald 13361cfb383eSMatthias Ringwald /** 13371cfb383eSMatthias Ringwald * @format B132111JV 13381cfb383eSMatthias Ringwald * @param bd_addr 13391cfb383eSMatthias Ringwald * @param page_scan_repetition_mode 13401cfb383eSMatthias Ringwald * @param class_of_device 13411cfb383eSMatthias Ringwald * @param clock_offset 1342d79faacdSMatthias Ringwald * @param rssi_available 13431cfb383eSMatthias Ringwald * @param rssi 13441cfb383eSMatthias Ringwald * @param name_available 13451cfb383eSMatthias Ringwald * @param name_len 13461cfb383eSMatthias Ringwald * @param name 13471cfb383eSMatthias Ringwald */ 13481cfb383eSMatthias Ringwald #define GAP_EVENT_INQUIRY_RESULT 0xE3 13491cfb383eSMatthias Ringwald 13501cfb383eSMatthias Ringwald /** 13511cfb383eSMatthias Ringwald * @format 1 13521cfb383eSMatthias Ringwald * @param status 13531cfb383eSMatthias Ringwald */ 13541cfb383eSMatthias Ringwald #define GAP_EVENT_INQUIRY_COMPLETE 0xE4 13551cfb383eSMatthias Ringwald 1356891b9fc2SMatthias Ringwald /** 1357891b9fc2SMatthias Ringwald * @format H1 1358891b9fc2SMatthias Ringwald * @param con_handle 1359891b9fc2SMatthias Ringwald * @param rssi (signed integer -127..127) 1360891b9fc2SMatthias Ringwald * @note Classic: rssi is in dB relative to Golden Receive Power Range 1361891b9fc2SMatthias Ringwald * @note LE: rssi is absolute dBm 1362891b9fc2SMatthias Ringwald */ 1363891b9fc2SMatthias Ringwald #define GAP_EVENT_RSSI_MEASUREMENT 0xE5 1364827b1c43SMatthias Ringwald 1365e10ce426SMatthias Ringwald // Meta Events, see below for sub events 1366941b3855SMatthias Ringwald #define HCI_EVENT_HSP_META 0xE8 136739d235cbSMatthias Ringwald #define HCI_EVENT_HFP_META 0xE9 1368e10ce426SMatthias Ringwald #define HCI_EVENT_ANCS_META 0xEA 1369beaf082cSMatthias Ringwald #define HCI_EVENT_AVDTP_META 0xEB 1370decc740cSMilanka Ringwald #define HCI_EVENT_AVRCP_META 0xEC 1371f1b34e8dSMatthias Ringwald #define HCI_EVENT_GOEP_META 0xED 1372f1b34e8dSMatthias Ringwald #define HCI_EVENT_PBAP_META 0xEE 1373dd148ddbSMatthias Ringwald #define HCI_EVENT_HID_META 0xEF 13743e3fbf3dSMilanka Ringwald #define HCI_EVENT_A2DP_META 0xF0 1375a4bfc4feSMatthias Ringwald #define HCI_EVENT_HIDS_META 0xF1 137628e59789SMilanka Ringwald #define HCI_EVENT_GATTSERVICE_META 0xF2 1377ad58991cSMilanka Ringwald #define HCI_EVENT_BIP_META 0xF3 1378ad58991cSMilanka Ringwald #define HCI_EVENT_MAP_META 0xF4 13791fbe4564SMatthias Ringwald #define HCI_EVENT_MESH_META 0xF5 138039d235cbSMatthias Ringwald 1381e10ce426SMatthias Ringwald // Potential other meta groups 1382e10ce426SMatthias Ringwald // #define HCI_EVENT_BNEP_META 0xxx 1383e10ce426SMatthias Ringwald // #define HCI_EVENT_GAP_META 0xxx 1384e10ce426SMatthias Ringwald // #define HCI_EVENT_GATT_META 0xxx 1385e10ce426SMatthias Ringwald // #define HCI_EVENT_PAN_META 0xxx 1386e10ce426SMatthias Ringwald // #define HCI_EVENT_SDP_META 0xxx 1387e10ce426SMatthias Ringwald // #define HCI_EVENT_SM_META 0xxx 138839d235cbSMatthias Ringwald 1389d63c37a1SMatthias Ringwald 1390d63c37a1SMatthias Ringwald /** HSP Subevent */ 1391d63c37a1SMatthias Ringwald 1392827b1c43SMatthias Ringwald /** 139399a10067SMatthias Ringwald * @format 11 1394827b1c43SMatthias Ringwald * @param subevent_code 1395827b1c43SMatthias Ringwald * @param status 0 == OK 1396827b1c43SMatthias Ringwald */ 139799a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE 0x01 139899a10067SMatthias Ringwald 139999a10067SMatthias Ringwald /** 140099a10067SMatthias Ringwald * @format 11 140199a10067SMatthias Ringwald * @param subevent_code 140299a10067SMatthias Ringwald * @param status 0 == OK 140399a10067SMatthias Ringwald */ 140499a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_DISCONNECTION_COMPLETE 0x02 140599a10067SMatthias Ringwald 140699a10067SMatthias Ringwald 140799a10067SMatthias Ringwald /** 140862c468cbSMatthias Ringwald * @format 11H 140999a10067SMatthias Ringwald * @param subevent_code 141099a10067SMatthias Ringwald * @param status 0 == OK 141162c468cbSMatthias Ringwald * @param handle 141299a10067SMatthias Ringwald */ 141399a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE 0x03 1414827b1c43SMatthias Ringwald 1415827b1c43SMatthias Ringwald /** 1416827b1c43SMatthias Ringwald * @format 11 1417827b1c43SMatthias Ringwald * @param subevent_code 1418827b1c43SMatthias Ringwald * @param status 0 == OK 1419827b1c43SMatthias Ringwald */ 142099a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_DISCONNECTION_COMPLETE 0x04 1421827b1c43SMatthias Ringwald 1422827b1c43SMatthias Ringwald /** 1423827b1c43SMatthias Ringwald * @format 1 1424827b1c43SMatthias Ringwald * @param subevent_code 1425827b1c43SMatthias Ringwald */ 142699a10067SMatthias Ringwald #define HSP_SUBEVENT_RING 0x05 1427827b1c43SMatthias Ringwald 1428827b1c43SMatthias Ringwald /** 1429827b1c43SMatthias Ringwald * @format 11 1430827b1c43SMatthias Ringwald * @param subevent_code 1431827b1c43SMatthias Ringwald * @param gain Valid range: [0,15] 1432827b1c43SMatthias Ringwald */ 143399a10067SMatthias Ringwald #define HSP_SUBEVENT_MICROPHONE_GAIN_CHANGED 0x06 1434827b1c43SMatthias Ringwald 1435827b1c43SMatthias Ringwald /** 1436827b1c43SMatthias Ringwald * @format 11 1437827b1c43SMatthias Ringwald * @param subevent_code 1438827b1c43SMatthias Ringwald * @param gain Valid range: [0,15] 1439827b1c43SMatthias Ringwald */ 144099a10067SMatthias Ringwald #define HSP_SUBEVENT_SPEAKER_GAIN_CHANGED 0x07 1441827b1c43SMatthias Ringwald 1442827b1c43SMatthias Ringwald /** 1443827b1c43SMatthias Ringwald * @format 1JV 1444827b1c43SMatthias Ringwald * @param subevent_code 1445827b1c43SMatthias Ringwald * @param value_length 1446827b1c43SMatthias Ringwald * @param value 1447827b1c43SMatthias Ringwald */ 144899a10067SMatthias Ringwald #define HSP_SUBEVENT_HS_COMMAND 0x08 1449827b1c43SMatthias Ringwald 1450827b1c43SMatthias Ringwald /** 1451827b1c43SMatthias Ringwald * @format 1JV 1452827b1c43SMatthias Ringwald * @param subevent_code 1453827b1c43SMatthias Ringwald * @param value_length 1454827b1c43SMatthias Ringwald * @param value 1455827b1c43SMatthias Ringwald */ 145699a10067SMatthias Ringwald #define HSP_SUBEVENT_AG_INDICATION 0x09 1457827b1c43SMatthias Ringwald 1458941b3855SMatthias Ringwald 1459d63c37a1SMatthias Ringwald /** HFP Subevent */ 1460941b3855SMatthias Ringwald 1461d63c37a1SMatthias Ringwald /** 1462a23045e2SMilanka Ringwald * @format 11HB 1463d63c37a1SMatthias Ringwald * @param subevent_code 1464d63c37a1SMatthias Ringwald * @param status 0 == OK 1465a0653c3bSMilanka Ringwald * @param con_handle 14666a7f44bdSMilanka Ringwald * @param bd_addr 1467d63c37a1SMatthias Ringwald */ 1468941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED 0x01 1469d63c37a1SMatthias Ringwald 1470d63c37a1SMatthias Ringwald /** 1471d63c37a1SMatthias Ringwald * @format 1 1472d63c37a1SMatthias Ringwald * @param subevent_code 1473d63c37a1SMatthias Ringwald */ 1474941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_RELEASED 0x02 1475d63c37a1SMatthias Ringwald 1476d63c37a1SMatthias Ringwald /** 1477a23045e2SMilanka Ringwald * @format 11HB1 1478d63c37a1SMatthias Ringwald * @param subevent_code 1479d63c37a1SMatthias Ringwald * @param status 0 == OK 14806ff51cfdSMatthias Ringwald * @param handle 14816a7f44bdSMilanka Ringwald * @param bd_addr 1482d0c4aea6SMilanka Ringwald * @param negotiated_codec 1483d63c37a1SMatthias Ringwald */ 1484941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED 0x03 1485d63c37a1SMatthias Ringwald 1486d63c37a1SMatthias Ringwald /** 1487d63c37a1SMatthias Ringwald * @format 1 1488d63c37a1SMatthias Ringwald * @param subevent_code 1489d63c37a1SMatthias Ringwald */ 1490941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_RELEASED 0x04 1491d63c37a1SMatthias Ringwald 1492d63c37a1SMatthias Ringwald /** 1493d63c37a1SMatthias Ringwald * @format 11 1494d63c37a1SMatthias Ringwald * @param subevent_code 1495d63c37a1SMatthias Ringwald * @param status 0 == OK 1496d63c37a1SMatthias Ringwald */ 1497941b3855SMatthias Ringwald #define HFP_SUBEVENT_COMPLETE 0x05 1498d63c37a1SMatthias Ringwald 1499d63c37a1SMatthias Ringwald /** 1500c741b032SMilanka Ringwald * @format 11111111T 1501d63c37a1SMatthias Ringwald * @param subevent_code 1502d63c37a1SMatthias Ringwald * @param indicator_index 1503d63c37a1SMatthias Ringwald * @param indicator_status 1504c741b032SMilanka Ringwald * @param indicator_min_range 1505c741b032SMilanka Ringwald * @param indicator_max_range 1506c741b032SMilanka Ringwald * @param indicator_mandatory 1507c741b032SMilanka Ringwald * @param indicator_enabled 1508c741b032SMilanka Ringwald * @param indicator_status_changed 1509d63c37a1SMatthias Ringwald * @param indicator_name 1510d63c37a1SMatthias Ringwald */ 1511941b3855SMatthias Ringwald #define HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED 0x06 1512d63c37a1SMatthias Ringwald 1513d63c37a1SMatthias Ringwald /** 15142c737695SMatthias Ringwald * @format 111T 1515d63c37a1SMatthias Ringwald * @param subevent_code 1516d63c37a1SMatthias Ringwald * @param network_operator_mode 1517d63c37a1SMatthias Ringwald * @param network_operator_format 1518d63c37a1SMatthias Ringwald * @param network_operator_name 1519d63c37a1SMatthias Ringwald */ 1520941b3855SMatthias Ringwald #define HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED 0x07 1521d63c37a1SMatthias Ringwald 1522d63c37a1SMatthias Ringwald /** 1523d63c37a1SMatthias Ringwald * @format 11 1524d63c37a1SMatthias Ringwald * @param subevent_code 1525d63c37a1SMatthias Ringwald * @param error 1526d63c37a1SMatthias Ringwald */ 1527941b3855SMatthias Ringwald #define HFP_SUBEVENT_EXTENDED_AUDIO_GATEWAY_ERROR 0x08 1528d63c37a1SMatthias Ringwald 1529d63c37a1SMatthias Ringwald /** 1530d63c37a1SMatthias Ringwald * @format 1 1531d63c37a1SMatthias Ringwald * @param subevent_code 1532d63c37a1SMatthias Ringwald */ 1533aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_START_RINGINIG 0x0A 1534d63c37a1SMatthias Ringwald 1535d63c37a1SMatthias Ringwald /** 1536d63c37a1SMatthias Ringwald * @format 1 1537d63c37a1SMatthias Ringwald * @param subevent_code 1538d63c37a1SMatthias Ringwald */ 1539aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_STOP_RINGINIG 0x0B 1540d63c37a1SMatthias Ringwald 1541d63c37a1SMatthias Ringwald /** 1542d63c37a1SMatthias Ringwald * @format 1 1543d63c37a1SMatthias Ringwald * @param subevent_code 1544d63c37a1SMatthias Ringwald */ 1545aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_CALL_TERMINATED 0x0C 1546d63c37a1SMatthias Ringwald 1547d63c37a1SMatthias Ringwald /** 1548d63c37a1SMatthias Ringwald * @format 1T 1549d63c37a1SMatthias Ringwald * @param subevent_code 1550d63c37a1SMatthias Ringwald * @param number 1551d63c37a1SMatthias Ringwald */ 1552aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_PLACE_CALL_WITH_NUMBER 0x0D 1553d63c37a1SMatthias Ringwald 1554d63c37a1SMatthias Ringwald /** 1555d63c37a1SMatthias Ringwald * @format 1 1556d63c37a1SMatthias Ringwald * @param subevent_code 1557d63c37a1SMatthias Ringwald */ 1558d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ATTACH_NUMBER_TO_VOICE_TAG 0x0E 1559d63c37a1SMatthias Ringwald 1560d63c37a1SMatthias Ringwald /** 1561d63c37a1SMatthias Ringwald * @format 1T 1562d63c37a1SMatthias Ringwald * @param subevent_code 1563d63c37a1SMatthias Ringwald * @param number 1564d63c37a1SMatthias Ringwald */ 1565d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_NUMBER_FOR_VOICE_TAG 0x0F 1566d63c37a1SMatthias Ringwald 1567d63c37a1SMatthias Ringwald /** 1568d63c37a1SMatthias Ringwald * @format 1T 1569d63c37a1SMatthias Ringwald * @param subevent_code 1570d63c37a1SMatthias Ringwald * @param dtmf code 1571d63c37a1SMatthias Ringwald */ 1572d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_TRANSMIT_DTMF_CODES 0x10 1573d63c37a1SMatthias Ringwald 1574d63c37a1SMatthias Ringwald /** 1575d63c37a1SMatthias Ringwald * @format 1 1576d63c37a1SMatthias Ringwald * @param subevent_code 1577d63c37a1SMatthias Ringwald */ 1578d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CALL_ANSWERED 0x11 1579d63c37a1SMatthias Ringwald 1580d63c37a1SMatthias Ringwald /** 1581d63c37a1SMatthias Ringwald * @format 1 1582d63c37a1SMatthias Ringwald * @param subevent_code 1583d63c37a1SMatthias Ringwald */ 1584d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CONFERENCE_CALL 0x12 1585d63c37a1SMatthias Ringwald 1586d63c37a1SMatthias Ringwald /** 1587d63c37a1SMatthias Ringwald * @format 1 1588d63c37a1SMatthias Ringwald * @param subevent_code 1589d63c37a1SMatthias Ringwald */ 1590d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RING 0x13 1591d63c37a1SMatthias Ringwald 1592d63c37a1SMatthias Ringwald /** 1593d63c37a1SMatthias Ringwald * @format 111 1594d63c37a1SMatthias Ringwald * @param subevent_code 1595d63c37a1SMatthias Ringwald * @param status 1596d63c37a1SMatthias Ringwald * @param gain 1597d63c37a1SMatthias Ringwald */ 1598d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_SPEAKER_VOLUME 0x14 1599d63c37a1SMatthias Ringwald 1600d63c37a1SMatthias Ringwald /** 1601d63c37a1SMatthias Ringwald * @format 111 1602d63c37a1SMatthias Ringwald * @param subevent_code 1603d63c37a1SMatthias Ringwald * @param status 1604d63c37a1SMatthias Ringwald * @param gain 1605d63c37a1SMatthias Ringwald */ 1606d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_MICROPHONE_VOLUME 0x15 1607d63c37a1SMatthias Ringwald 1608d63c37a1SMatthias Ringwald /** 1609d63c37a1SMatthias Ringwald * @format 11T 1610d63c37a1SMatthias Ringwald * @param subevent_code 1611d63c37a1SMatthias Ringwald * @param type 1612d63c37a1SMatthias Ringwald * @param number 1613d63c37a1SMatthias Ringwald */ 1614d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CALL_WAITING_NOTIFICATION 0x16 1615d63c37a1SMatthias Ringwald 1616d63c37a1SMatthias Ringwald /** 1617d63c37a1SMatthias Ringwald * @format 11T 1618d63c37a1SMatthias Ringwald * @param subevent_code 1619d63c37a1SMatthias Ringwald * @param type 1620d63c37a1SMatthias Ringwald * @param number 1621d63c37a1SMatthias Ringwald */ 162289f1e358SMilanka Ringwald #define HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION 0x17 1623d63c37a1SMatthias Ringwald 1624d63c37a1SMatthias Ringwald /** 16250aee97efSMilanka Ringwald * @format 1111111T 1626d63c37a1SMatthias Ringwald * @param subevent_code 1627d63c37a1SMatthias Ringwald * @param clcc_idx 1628d63c37a1SMatthias Ringwald * @param clcc_dir 1629d63c37a1SMatthias Ringwald * @param clcc_status 16300aee97efSMilanka Ringwald * @param clcc_mode 1631d63c37a1SMatthias Ringwald * @param clcc_mpty 1632d63c37a1SMatthias Ringwald * @param bnip_type 1633d63c37a1SMatthias Ringwald * @param bnip_number 1634d63c37a1SMatthias Ringwald */ 1635d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ENHANCED_CALL_STATUS 0x18 1636d63c37a1SMatthias Ringwald 1637d63c37a1SMatthias Ringwald /** 1638d63c37a1SMatthias Ringwald * @format 111T 1639d63c37a1SMatthias Ringwald * @param subevent_code 1640d63c37a1SMatthias Ringwald * @param status 1641d63c37a1SMatthias Ringwald * @param bnip_type 1642d63c37a1SMatthias Ringwald * @param bnip_number 1643d63c37a1SMatthias Ringwald */ 1644d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION 0x19 1645d63c37a1SMatthias Ringwald 1646d63c37a1SMatthias Ringwald /** 1647d63c37a1SMatthias Ringwald * @format 1T 1648d63c37a1SMatthias Ringwald * @param subevent_code 1649d63c37a1SMatthias Ringwald * @param value 1650d63c37a1SMatthias Ringwald */ 1651d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RESPONSE_AND_HOLD_STATUS 0x1A 1652941b3855SMatthias Ringwald 1653941b3855SMatthias Ringwald // ANCS Client 1654a4815874SMatthias Ringwald 1655a4815874SMatthias Ringwald /** 1656e10ce426SMatthias Ringwald * @format 1H 1657e10ce426SMatthias Ringwald * @param subevent_code 1658a4815874SMatthias Ringwald * @param handle 1659a4815874SMatthias Ringwald */ 1660e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_CONNECTED 0xF0 1661a4815874SMatthias Ringwald 1662a4815874SMatthias Ringwald /** 1663e10ce426SMatthias Ringwald * @format 1H2T 1664e10ce426SMatthias Ringwald * @param subevent_code 1665a4815874SMatthias Ringwald * @param handle 1666a4815874SMatthias Ringwald * @param attribute_id 1667a4815874SMatthias Ringwald * @param text 1668a4815874SMatthias Ringwald */ 1669e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_NOTIFICATION 0xF1 1670a4815874SMatthias Ringwald 1671a4815874SMatthias Ringwald /** 1672e10ce426SMatthias Ringwald * @format 1H 1673e10ce426SMatthias Ringwald * @param subevent_code 1674a4815874SMatthias Ringwald * @param handle 1675a4815874SMatthias Ringwald */ 1676e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_DISCONNECTED 0xF2 1677941b3855SMatthias Ringwald 1678a23045e2SMilanka Ringwald 1679a23045e2SMilanka Ringwald /** AVDTP Subevent */ 1680a23045e2SMilanka Ringwald 16813338b9aeSMilanka Ringwald /** 168263274943SMilanka Ringwald * @format 12111 16832c708e8aSMilanka Ringwald * @param subevent_code 1684f9bca1f3SMilanka Ringwald * @param avdtp_cid 1685f1042e9dSMilanka Ringwald * @param local_seid 168663274943SMilanka Ringwald * @param is_initiator 16872c708e8aSMilanka Ringwald * @param signal_identifier 16882c708e8aSMilanka Ringwald */ 16892c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_ACCEPT 0x01 16902c708e8aSMilanka Ringwald 16912c708e8aSMilanka Ringwald /** 169263274943SMilanka Ringwald * @format 12111 16932c708e8aSMilanka Ringwald * @param subevent_code 1694f9bca1f3SMilanka Ringwald * @param avdtp_cid 16954ccacc40SMilanka Ringwald * @param local_seid 169663274943SMilanka Ringwald * @param is_initiator 16972c708e8aSMilanka Ringwald * @param signal_identifier 16982c708e8aSMilanka Ringwald */ 16992c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_REJECT 0x02 17002c708e8aSMilanka Ringwald 17012c708e8aSMilanka Ringwald /** 170263274943SMilanka Ringwald * @format 12111 17032c708e8aSMilanka Ringwald * @param subevent_code 1704f9bca1f3SMilanka Ringwald * @param avdtp_cid 17054ccacc40SMilanka Ringwald * @param local_seid 170663274943SMilanka Ringwald * @param is_initiator 17072c708e8aSMilanka Ringwald * @param signal_identifier 17082c708e8aSMilanka Ringwald */ 17092c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT 0x03 17102c708e8aSMilanka Ringwald 17112c708e8aSMilanka Ringwald /** 17127050d2caSMilanka Ringwald * @format 12B1 17133338b9aeSMilanka Ringwald * @param subevent_code 1714f9bca1f3SMilanka Ringwald * @param avdtp_cid 17153338b9aeSMilanka Ringwald * @param bd_addr 17163338b9aeSMilanka Ringwald * @param status 0 == OK 17173338b9aeSMilanka Ringwald */ 17182c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED 0x04 1719a23045e2SMilanka Ringwald 17203338b9aeSMilanka Ringwald /** 17217050d2caSMilanka Ringwald * @format 12 17223338b9aeSMilanka Ringwald * @param subevent_code 1723f9bca1f3SMilanka Ringwald * @param avdtp_cid 17243338b9aeSMilanka Ringwald */ 17252c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_RELEASED 0x05 17263338b9aeSMilanka Ringwald 17273338b9aeSMilanka Ringwald /** 17287050d2caSMilanka Ringwald * @format 121111 17293338b9aeSMilanka Ringwald * @param subevent_code 1730f9bca1f3SMilanka Ringwald * @param avdtp_cid 17314ccacc40SMilanka Ringwald * @param remote_seid 0x01 – 0x3E 17323338b9aeSMilanka Ringwald * @param in_use 0-not in use, 1-in use 17333338b9aeSMilanka Ringwald * @param media_type 0-audio, 1-video, 2-multimedia 17343338b9aeSMilanka Ringwald * @param sep_type 0-source, 1-sink 17353338b9aeSMilanka Ringwald */ 17362c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_FOUND 0x06 17373338b9aeSMilanka Ringwald 17383338b9aeSMilanka Ringwald /** 17397050d2caSMilanka Ringwald * @format 121111111111 17403338b9aeSMilanka Ringwald * @param subevent_code 1741f9bca1f3SMilanka Ringwald * @param avdtp_cid 17424ccacc40SMilanka Ringwald * @param local_seid 17434ccacc40SMilanka Ringwald * @param remote_seid 17443338b9aeSMilanka Ringwald * @param media_type 1745ea7bd529SMilanka Ringwald * @param sampling_frequency_bitmap 1746ea7bd529SMilanka Ringwald * @param channel_mode_bitmap 1747ea7bd529SMilanka Ringwald * @param block_length_bitmap 1748ea7bd529SMilanka Ringwald * @param subbands_bitmap 1749ea7bd529SMilanka Ringwald * @param allocation_method_bitmap 17503338b9aeSMilanka Ringwald * @param min_bitpool_value 17513338b9aeSMilanka Ringwald * @param max_bitpool_value 17523338b9aeSMilanka Ringwald */ 17532c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY 0x07 17543338b9aeSMilanka Ringwald 17553338b9aeSMilanka Ringwald /** 17567050d2caSMilanka Ringwald * @format 121112LV 17573338b9aeSMilanka Ringwald * @param subevent_code 1758f9bca1f3SMilanka Ringwald * @param avdtp_cid 17594ccacc40SMilanka Ringwald * @param local_seid 17604ccacc40SMilanka Ringwald * @param remote_seid 17613338b9aeSMilanka Ringwald * @param media_type 17623338b9aeSMilanka Ringwald * @param media_codec_type 17633338b9aeSMilanka Ringwald * @param media_codec_information_len 17643338b9aeSMilanka Ringwald * @param media_codec_information 17653338b9aeSMilanka Ringwald */ 17662c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY 0x08 1767a23045e2SMilanka Ringwald 176867ae582dSMilanka Ringwald 176967ae582dSMilanka Ringwald /** 177067ae582dSMilanka Ringwald * @format 1211 177167ae582dSMilanka Ringwald * @param subevent_code 177267ae582dSMilanka Ringwald * @param avdtp_cid 177367ae582dSMilanka Ringwald * @param local_seid 177467ae582dSMilanka Ringwald * @param remote_seid 177567ae582dSMilanka Ringwald */ 177667ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY 0x09 177767ae582dSMilanka 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_REPORTING_CAPABILITY 0x0A 178767ae582dSMilanka Ringwald 178867ae582dSMilanka Ringwald 178967ae582dSMilanka Ringwald /** 179067ae582dSMilanka Ringwald * @format 1211111 179167ae582dSMilanka Ringwald * @param subevent_code 179267ae582dSMilanka Ringwald * @param avdtp_cid 179367ae582dSMilanka Ringwald * @param local_seid 179467ae582dSMilanka Ringwald * @param remote_seid 179567ae582dSMilanka Ringwald * @param recovery_type 179667ae582dSMilanka Ringwald * @param maximum_recovery_window_size 179767ae582dSMilanka Ringwald * @param maximum_number_media_packets 179867ae582dSMilanka Ringwald */ 179967ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY 0x0B 180067ae582dSMilanka Ringwald 180167ae582dSMilanka Ringwald 180267ae582dSMilanka Ringwald /** 180367ae582dSMilanka Ringwald * @format 12112LV 180467ae582dSMilanka Ringwald * @param subevent_code 180567ae582dSMilanka Ringwald * @param avdtp_cid 180667ae582dSMilanka Ringwald * @param local_seid 180767ae582dSMilanka Ringwald * @param remote_seid 180867ae582dSMilanka Ringwald * @param cp_type 180967ae582dSMilanka Ringwald * @param cp_type_value_len 181067ae582dSMilanka Ringwald * @param cp_type_value 181167ae582dSMilanka Ringwald */ 181267ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY 0x0C 181367ae582dSMilanka Ringwald 181467ae582dSMilanka Ringwald 181567ae582dSMilanka Ringwald /** 181667ae582dSMilanka Ringwald * @format 121111111111 181767ae582dSMilanka Ringwald * @param subevent_code 181867ae582dSMilanka Ringwald * @param avdtp_cid 181967ae582dSMilanka Ringwald * @param local_seid 182067ae582dSMilanka Ringwald * @param remote_seid 182167ae582dSMilanka Ringwald * @param fragmentation 182267ae582dSMilanka Ringwald * @param transport_identifiers_num 182367ae582dSMilanka Ringwald * @param transport_session_identifier_1 182467ae582dSMilanka Ringwald * @param transport_session_identifier_2 182567ae582dSMilanka Ringwald * @param transport_session_identifier_3 182667ae582dSMilanka Ringwald * @param tcid_1 182767ae582dSMilanka Ringwald * @param tcid_2 182867ae582dSMilanka Ringwald * @param tcid_3 182967ae582dSMilanka Ringwald */ 183067ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY 0x0D 183167ae582dSMilanka Ringwald 183267ae582dSMilanka Ringwald 183367ae582dSMilanka Ringwald /** 183467ae582dSMilanka Ringwald * @format 1211 183567ae582dSMilanka Ringwald * @param subevent_code 183667ae582dSMilanka Ringwald * @param avdtp_cid 183767ae582dSMilanka Ringwald * @param local_seid 183867ae582dSMilanka Ringwald * @param remote_seid 183967ae582dSMilanka Ringwald */ 184067ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY 0x0E 184167ae582dSMilanka Ringwald 184267ae582dSMilanka Ringwald 184367ae582dSMilanka Ringwald /** 184467ae582dSMilanka Ringwald * @format 1211111 184567ae582dSMilanka Ringwald * @param subevent_code 184667ae582dSMilanka Ringwald * @param avdtp_cid 184767ae582dSMilanka Ringwald * @param local_seid 184867ae582dSMilanka Ringwald * @param remote_seid 184967ae582dSMilanka Ringwald * @param back_ch 185067ae582dSMilanka Ringwald * @param media 185167ae582dSMilanka Ringwald * @param recovery 185267ae582dSMilanka Ringwald */ 185367ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY 0x0F 185467ae582dSMilanka Ringwald 185567ae582dSMilanka Ringwald 1856ea7bd529SMilanka Ringwald /** 18577050d2caSMilanka Ringwald * @format 12111121111111 1858ea7bd529SMilanka Ringwald * @param subevent_code 1859f9bca1f3SMilanka Ringwald * @param avdtp_cid 18604ccacc40SMilanka Ringwald * @param local_seid 18614ccacc40SMilanka Ringwald * @param remote_seid 1862ea7bd529SMilanka Ringwald * @param reconfigure 1863ea7bd529SMilanka Ringwald * @param media_type 1864ea7bd529SMilanka Ringwald * @param sampling_frequency 1865ea7bd529SMilanka Ringwald * @param channel_mode 1866ea7bd529SMilanka Ringwald * @param num_channels 1867ea7bd529SMilanka Ringwald * @param block_length 1868ea7bd529SMilanka Ringwald * @param subbands 1869ea7bd529SMilanka Ringwald * @param allocation_method 1870ea7bd529SMilanka Ringwald * @param min_bitpool_value 1871ea7bd529SMilanka Ringwald * @param max_bitpool_value 1872ea7bd529SMilanka Ringwald */ 187367ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION 0x10 1874ea7bd529SMilanka Ringwald 1875ea7bd529SMilanka Ringwald /** 18767050d2caSMilanka Ringwald * @format 1211112LV 1877ea7bd529SMilanka Ringwald * @param subevent_code 1878f9bca1f3SMilanka Ringwald * @param avdtp_cid 18794ccacc40SMilanka Ringwald * @param local_seid 18804ccacc40SMilanka Ringwald * @param remote_seid 1881ea7bd529SMilanka Ringwald * @param reconfigure 1882ea7bd529SMilanka Ringwald * @param media_type 1883ea7bd529SMilanka Ringwald * @param media_codec_type 1884ea7bd529SMilanka Ringwald * @param media_codec_information_len 1885ea7bd529SMilanka Ringwald * @param media_codec_information 1886ea7bd529SMilanka Ringwald */ 188767ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION 0x11 1888decc740cSMilanka Ringwald 188985a0c7cdSMilanka Ringwald /** 1890ef5ad9d6SMilanka Ringwald * @format 12B111 189185a0c7cdSMilanka Ringwald * @param subevent_code 1892f9bca1f3SMilanka Ringwald * @param avdtp_cid 1893ef5ad9d6SMilanka Ringwald * @param bd_addr 18944ccacc40SMilanka Ringwald * @param local_seid 18954ccacc40SMilanka Ringwald * @param remote_seid 189685a0c7cdSMilanka Ringwald * @param status 0 == OK 189785a0c7cdSMilanka Ringwald */ 189867ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED 0x12 189985a0c7cdSMilanka Ringwald 190085a0c7cdSMilanka Ringwald /** 190134b22aacSMilanka Ringwald * @format 121 190285a0c7cdSMilanka Ringwald * @param subevent_code 1903f9bca1f3SMilanka Ringwald * @param avdtp_cid 190434b22aacSMilanka Ringwald * @param local_seid 190585a0c7cdSMilanka Ringwald */ 190667ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED 0x13 190785a0c7cdSMilanka Ringwald 1908f7103c90SMilanka Ringwald /** 19097050d2caSMilanka Ringwald * @format 1212 1910f7103c90SMilanka Ringwald * @param subevent_code 1911f9bca1f3SMilanka Ringwald * @param avdtp_cid 19124ccacc40SMilanka Ringwald * @param local_seid 1913a04ed5e9SMilanka Ringwald * @param sequence_number 1914f7103c90SMilanka Ringwald */ 191567ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW 0x14 191685a0c7cdSMilanka Ringwald 1917578eda3eSMilanka Ringwald /** 1918578eda3eSMilanka Ringwald * @format 1211 1919578eda3eSMilanka Ringwald * @param subevent_code 1920578eda3eSMilanka Ringwald * @param avdtp_cid 1921578eda3eSMilanka Ringwald * @param local_seid 1922578eda3eSMilanka Ringwald * @param remote_seid 1923578eda3eSMilanka Ringwald */ 19240f5bb594SMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE 0x15 1925578eda3eSMilanka Ringwald 1926578eda3eSMilanka Ringwald 1927c0491de3SMilanka Ringwald /** 1928c0491de3SMilanka Ringwald * @format 12 1929c0491de3SMilanka Ringwald * @param subevent_code 1930c0491de3SMilanka Ringwald * @param avdtp_cid 1931c0491de3SMilanka Ringwald */ 1932c0491de3SMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_DICOVERY_DONE 0x16 1933c0491de3SMilanka Ringwald 1934ff6bc02cSMilanka Ringwald /** 1935ff6bc02cSMilanka Ringwald * @format 1212 1936ff6bc02cSMilanka Ringwald * @param subevent_code 1937ff6bc02cSMilanka Ringwald * @param avdtp_cid 1938ff6bc02cSMilanka Ringwald * @param local_seid 1939ff6bc02cSMilanka Ringwald * @param delay_100us 1940ff6bc02cSMilanka Ringwald */ 1941ff6bc02cSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT 0x17 1942decc740cSMilanka Ringwald 194346e6b063SMilanka Ringwald /** A2DP Subevent */ 19447050d2caSMilanka Ringwald /* Stream goes through following states: 19457050d2caSMilanka Ringwald * - OPEN - indicated with A2DP_SUBEVENT_STREAM_ESTABLISHED event 19467050d2caSMilanka Ringwald * - START - indicated with A2DP_SUBEVENT_STREAM_STARTED event 19477050d2caSMilanka Ringwald * - SUSPEND - indicated with A2DP_SUBEVENT_STREAM_SUSPENDED event 19487050d2caSMilanka Ringwald * - ABORT/STOP - indicated with A2DP_SUBEVENT_STREAM_RELEASED event 19497050d2caSMilanka Ringwald 19507050d2caSMilanka Ringwald OPEN state will be followed by ABORT/STOP. Stream is ready but media transfer is not started. 19517050d2caSMilanka Ringwald START can come only after the stream is OPENED, and indicates that media transfer is started. 19527050d2caSMilanka Ringwald SUSPEND is optional, it pauses the stream. 19537050d2caSMilanka Ringwald */ 195446e6b063SMilanka Ringwald 195546e6b063SMilanka Ringwald /** 19567050d2caSMilanka Ringwald * @format 121 Sent only by A2DP source. 19577050d2caSMilanka Ringwald * @param subevent_code 1958f1042e9dSMilanka Ringwald * @param a2dp_cid 19597050d2caSMilanka Ringwald * @param local_seid 19607050d2caSMilanka Ringwald */ 19617050d2caSMilanka Ringwald #define A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW 0x01 19627050d2caSMilanka Ringwald 19637050d2caSMilanka Ringwald /** 1964f1042e9dSMilanka Ringwald * @format 12111121111111 1965f1042e9dSMilanka Ringwald * @param subevent_code 1966f1042e9dSMilanka Ringwald * @param a2dp_cid 1967f1042e9dSMilanka Ringwald * @param int_seid 1968f1042e9dSMilanka Ringwald * @param acp_seid 1969f1042e9dSMilanka Ringwald * @param reconfigure 1970f1042e9dSMilanka Ringwald * @param media_type 1971f1042e9dSMilanka Ringwald * @param sampling_frequency 1972f1042e9dSMilanka Ringwald * @param channel_mode 1973f1042e9dSMilanka Ringwald * @param num_channels 1974f1042e9dSMilanka Ringwald * @param block_length 1975f1042e9dSMilanka Ringwald * @param subbands 1976f1042e9dSMilanka Ringwald * @param allocation_method 1977f1042e9dSMilanka Ringwald * @param min_bitpool_value 1978f1042e9dSMilanka Ringwald * @param max_bitpool_value 1979f1042e9dSMilanka Ringwald */ 1980f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION 0x02 1981f1042e9dSMilanka Ringwald 1982f1042e9dSMilanka Ringwald /** 1983f1042e9dSMilanka Ringwald * @format 1211112LV 1984f1042e9dSMilanka Ringwald * @param subevent_code 1985f1042e9dSMilanka Ringwald * @param a2dp_cid 1986f1042e9dSMilanka Ringwald * @param int_seid 1987f1042e9dSMilanka Ringwald * @param acp_seid 1988f1042e9dSMilanka Ringwald * @param reconfigure 1989f1042e9dSMilanka Ringwald * @param media_type 1990f1042e9dSMilanka Ringwald * @param media_codec_type 1991f1042e9dSMilanka Ringwald * @param media_codec_information_len 1992f1042e9dSMilanka Ringwald * @param media_codec_information 1993f1042e9dSMilanka Ringwald */ 1994f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION 0x03 1995f1042e9dSMilanka Ringwald 1996f1042e9dSMilanka Ringwald /** 1997ef5ad9d6SMilanka Ringwald * @format 12B111 Stream is opened byt not started. 199846e6b063SMilanka Ringwald * @param subevent_code 199946e6b063SMilanka Ringwald * @param a2dp_cid 2000ef5ad9d6SMilanka Ringwald * @param bd_addr 200146e6b063SMilanka Ringwald * @param local_seid 200246e6b063SMilanka Ringwald * @param remote_seid 200346e6b063SMilanka Ringwald * @param status 200446e6b063SMilanka Ringwald */ 2005f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_ESTABLISHED 0x04 200646e6b063SMilanka Ringwald 2007a42de583SMilanka Ringwald /** 200834b22aacSMilanka Ringwald * @format 121 Indicates that media transfer is started. 2009a42de583SMilanka Ringwald * @param subevent_code 201046e6b063SMilanka Ringwald * @param a2dp_cid 201146e6b063SMilanka Ringwald * @param local_seid 2012a42de583SMilanka Ringwald */ 2013f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_STARTED 0x05 201446e6b063SMilanka Ringwald 201546e6b063SMilanka Ringwald /** 201634b22aacSMilanka Ringwald * @format 121 Stream is paused. 201746e6b063SMilanka Ringwald * @param subevent_code 201846e6b063SMilanka Ringwald * @param a2dp_cid 201946e6b063SMilanka Ringwald * @param local_seid 202046e6b063SMilanka Ringwald */ 2021f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_SUSPENDED 0x06 2022a42de583SMilanka Ringwald 2023a42de583SMilanka Ringwald /** 2024133bececSMilanka Ringwald * @format 121 Stream is stoped or aborted. 2025133bececSMilanka Ringwald * @param subevent_code 2026133bececSMilanka Ringwald * @param a2dp_cid 2027133bececSMilanka Ringwald * @param local_seid 2028133bececSMilanka Ringwald */ 2029133bececSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_STOPPED 0x07 2030133bececSMilanka Ringwald 2031133bececSMilanka Ringwald /** 203234b22aacSMilanka Ringwald * @format 121 Stream is released. 203346e6b063SMilanka Ringwald * @param subevent_code 2034f1042e9dSMilanka Ringwald * @param a2dp_cid 203546e6b063SMilanka Ringwald * @param local_seid 203646e6b063SMilanka Ringwald */ 2037133bececSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_RELEASED 0x08 2038ba155c22SMilanka Ringwald 203934b22aacSMilanka Ringwald /** 204034b22aacSMilanka Ringwald * @format 1211 204134b22aacSMilanka Ringwald * @param subevent_code 204234b22aacSMilanka Ringwald * @param a2dp_cid 204334b22aacSMilanka Ringwald * @param local_seid 204434b22aacSMilanka Ringwald * @param signal_identifier 204534b22aacSMilanka Ringwald */ 2046133bececSMilanka Ringwald #define A2DP_SUBEVENT_COMMAND_ACCEPTED 0x09 20477050d2caSMilanka Ringwald 204834b22aacSMilanka Ringwald /** 204934b22aacSMilanka Ringwald * @format 1211 205034b22aacSMilanka Ringwald * @param subevent_code 205134b22aacSMilanka Ringwald * @param a2dp_cid 205234b22aacSMilanka Ringwald * @param local_seid 205334b22aacSMilanka Ringwald * @param signal_identifier 205434b22aacSMilanka Ringwald */ 2055133bececSMilanka Ringwald #define A2DP_SUBEVENT_COMMAND_REJECTED 0x0A 20567050d2caSMilanka Ringwald 20575448c259SMilanka Ringwald /** 205863331bf4SMilanka Ringwald * @format 12B1 20595448c259SMilanka Ringwald * @param subevent_code 20605448c259SMilanka Ringwald * @param a2dp_cid 20615448c259SMilanka Ringwald * @param bd_addr 206263331bf4SMilanka Ringwald * @param status 0 == OK 20635448c259SMilanka Ringwald */ 206463331bf4SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED 0x0B 20655448c259SMilanka Ringwald 206646c48853SMilanka Ringwald /** 2067a466d508SMilanka Ringwald * @format 12 Signaling channel is released. 206846c48853SMilanka Ringwald * @param subevent_code 206946c48853SMilanka Ringwald * @param a2dp_cid 207046c48853SMilanka Ringwald */ 2071133bececSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_RELEASED 0x0C 207246c48853SMilanka Ringwald 2073b8dffb25SMatthias Ringwald /** 2074b8dffb25SMatthias Ringwald * @format 1211 Stream was reconfigured 2075b8dffb25SMatthias Ringwald * @param subevent_code 2076b8dffb25SMatthias Ringwald * @param a2dp_cid 2077b8dffb25SMatthias Ringwald * @param local_seid 2078b8dffb25SMatthias Ringwald * @param status 2079b8dffb25SMatthias Ringwald */ 2080b8dffb25SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_RECONFIGURED 0x0D 208146c48853SMilanka Ringwald 2082ff6bc02cSMilanka Ringwald /** 20830f5bb594SMilanka Ringwald * @format 1211 20840f5bb594SMilanka Ringwald * @param subevent_code 20850f5bb594SMilanka Ringwald * @param avdtp_cid 20860f5bb594SMilanka Ringwald * @param local_seid 20870f5bb594SMilanka Ringwald * @param remote_seid 20880f5bb594SMilanka Ringwald */ 20890f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY 0x0E 20900f5bb594SMilanka Ringwald 20910f5bb594SMilanka Ringwald 20920f5bb594SMilanka Ringwald /** 2093ff6bc02cSMilanka Ringwald * @format 1212 2094ff6bc02cSMilanka Ringwald * @param subevent_code 2095ff6bc02cSMilanka Ringwald * @param avdtp_cid 2096ff6bc02cSMilanka Ringwald * @param local_seid 2097ff6bc02cSMilanka Ringwald * @param delay_100us 2098ff6bc02cSMilanka Ringwald */ 20990f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORT 0x0F 2100ff6bc02cSMilanka Ringwald 21010f5bb594SMilanka Ringwald /** 21020f5bb594SMilanka Ringwald * @format 1211 21030f5bb594SMilanka Ringwald * @param subevent_code 21040f5bb594SMilanka Ringwald * @param avdtp_cid 21050f5bb594SMilanka Ringwald * @param local_seid 21060f5bb594SMilanka Ringwald * @param remote_seid 21070f5bb594SMilanka Ringwald */ 21080f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE 0x10 2109ff6bc02cSMilanka Ringwald 2110decc740cSMilanka Ringwald /** AVRCP Subevent */ 2111decc740cSMilanka Ringwald 2112decc740cSMilanka Ringwald /** 21136086246cSMilanka Ringwald * @format 11B2 2114decc740cSMilanka Ringwald * @param subevent_code 21152a029560SMilanka Ringwald * @param status 0 == OK 2116decc740cSMilanka Ringwald * @param bd_addr 2117b193c45eSMilanka Ringwald * @param avrcp_cid 2118decc740cSMilanka Ringwald */ 2119decc740cSMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_ESTABLISHED 0x01 2120decc740cSMilanka Ringwald 2121decc740cSMilanka Ringwald /** 2122b193c45eSMilanka Ringwald * @format 12 2123decc740cSMilanka Ringwald * @param subevent_code 2124b193c45eSMilanka Ringwald * @param avrcp_cid 2125decc740cSMilanka Ringwald */ 21266eb7ba29SMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_RELEASED 0x02 2127decc740cSMilanka Ringwald 2128cd41da7eSMilanka Ringwald /** 2129b193c45eSMilanka Ringwald * @format 12111 21302a029560SMilanka Ringwald * @param subevent_code 2131b193c45eSMilanka Ringwald * @param avrcp_cid 2132d3b6a85eSMatthias Ringwald * @param command_type 21332a029560SMilanka Ringwald * @param repeat_mode 21342a029560SMilanka Ringwald * @param shuffle_mode 21352a029560SMilanka Ringwald */ 21361bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE 0x03 2137cd41da7eSMilanka Ringwald 21386eb7ba29SMilanka Ringwald /** 2139b193c45eSMilanka Ringwald * @format 121441 21406eb7ba29SMilanka Ringwald * @param subevent_code 2141b193c45eSMilanka Ringwald * @param avrcp_cid 2142d3b6a85eSMatthias Ringwald * @param command_type 21436eb7ba29SMilanka Ringwald * @param song_length 21446eb7ba29SMilanka Ringwald * @param song_position 21456eb7ba29SMilanka Ringwald * @param play_status 21466eb7ba29SMilanka Ringwald */ 21471bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_PLAY_STATUS 0x04 21486eb7ba29SMilanka Ringwald 21496eb7ba29SMilanka Ringwald /** 2150b193c45eSMilanka Ringwald * @format 1211 21516eb7ba29SMilanka Ringwald * @param subevent_code 2152b193c45eSMilanka Ringwald * @param avrcp_cid 2153d3b6a85eSMatthias Ringwald * @param command_type 21546aecb8a4SMatthias Ringwald * @param play_status 21556eb7ba29SMilanka Ringwald */ 21561bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED 0x05 21576eb7ba29SMilanka Ringwald 21586eb7ba29SMilanka Ringwald /** 2159ee6d17f2SMatthias Ringwald * @format 121 21606eb7ba29SMilanka Ringwald * @param subevent_code 2161b193c45eSMilanka Ringwald * @param avrcp_cid 2162d3b6a85eSMatthias Ringwald * @param command_type 21636eb7ba29SMilanka Ringwald */ 21641bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED 0x06 21656eb7ba29SMilanka Ringwald 21666eb7ba29SMilanka Ringwald /** 2167b193c45eSMilanka Ringwald * @format 121 21686eb7ba29SMilanka Ringwald * @param subevent_code 2169b193c45eSMilanka Ringwald * @param avrcp_cid 2170d3b6a85eSMatthias Ringwald * @param command_type 21716eb7ba29SMilanka Ringwald */ 21721bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED 0x07 21736eb7ba29SMilanka Ringwald 21746eb7ba29SMilanka Ringwald /** 2175b193c45eSMilanka Ringwald * @format 121 21766eb7ba29SMilanka Ringwald * @param subevent_code 2177b193c45eSMilanka Ringwald * @param avrcp_cid 2178d3b6a85eSMatthias Ringwald * @param command_type 21796eb7ba29SMilanka Ringwald */ 21801bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED 0x08 21816eb7ba29SMilanka Ringwald 21826eb7ba29SMilanka Ringwald /** 2183b193c45eSMilanka Ringwald * @format 1211 21846eb7ba29SMilanka Ringwald * @param subevent_code 2185b193c45eSMilanka Ringwald * @param avrcp_cid 2186d3b6a85eSMatthias Ringwald * @param command_type 21876eb7ba29SMilanka Ringwald * @param absolute_volume 21886eb7ba29SMilanka Ringwald */ 21891bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED 0x09 21906eb7ba29SMilanka Ringwald 21916eb7ba29SMilanka Ringwald /** 2192b193c45eSMilanka Ringwald * @format 1211 21936eb7ba29SMilanka Ringwald * @param subevent_code 2194b193c45eSMilanka Ringwald * @param avrcp_cid 2195d3b6a85eSMatthias Ringwald * @param command_type 21966eb7ba29SMilanka Ringwald * @param absolute_volume 21976eb7ba29SMilanka Ringwald */ 21981bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE 0x0A 21996eb7ba29SMilanka Ringwald 22006eb7ba29SMilanka Ringwald /** 2201b193c45eSMilanka Ringwald * @format 1211 22026eb7ba29SMilanka Ringwald * @param subevent_code 2203b193c45eSMilanka Ringwald * @param avrcp_cid 2204d3b6a85eSMatthias Ringwald * @param command_type 22056eb7ba29SMilanka Ringwald * @param notification_id 22066eb7ba29SMilanka Ringwald */ 22071bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_ENABLE_NOTIFICATION_COMPLETE 0x0B 22086eb7ba29SMilanka Ringwald 22096eb7ba29SMilanka Ringwald /** 2210b193c45eSMilanka Ringwald * @format 1211 22116eb7ba29SMilanka Ringwald * @param subevent_code 2212b193c45eSMilanka Ringwald * @param avrcp_cid 2213d3b6a85eSMatthias Ringwald * @param command_type 22146eb7ba29SMilanka Ringwald * @param operation_id 22156eb7ba29SMilanka Ringwald */ 22161bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_START 0x0C 22176eb7ba29SMilanka Ringwald 22186eb7ba29SMilanka Ringwald /** 2219b193c45eSMilanka Ringwald * @format 1211 22206eb7ba29SMilanka Ringwald * @param subevent_code 2221b193c45eSMilanka Ringwald * @param avrcp_cid 2222d3b6a85eSMatthias Ringwald * @param command_type 22236eb7ba29SMilanka Ringwald * @param operation_id 22246eb7ba29SMilanka Ringwald */ 22251bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_COMPLETE 0x0D 22266eb7ba29SMilanka Ringwald 22276eb7ba29SMilanka Ringwald /** 2228b193c45eSMilanka Ringwald * @format 121 22296eb7ba29SMilanka Ringwald * @param subevent_code 2230b193c45eSMilanka Ringwald * @param avrcp_cid 2231d3b6a85eSMatthias Ringwald * @param command_type 22326eb7ba29SMilanka Ringwald */ 22331bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE 0x0E 22346eb7ba29SMilanka Ringwald 2235f1b34e8dSMatthias Ringwald /** 22364b338011SMilanka Ringwald * @format 12 22374b338011SMilanka Ringwald * @param subevent_code 22384b338011SMilanka Ringwald * @param avrcp_cid 22394b338011SMilanka Ringwald */ 22401bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_COMPANY_IDS_QUERY 0x0F 2241e0bbf3edSMilanka Ringwald 2242e0bbf3edSMilanka Ringwald /** 2243e0bbf3edSMilanka Ringwald * @format 12 2244e0bbf3edSMilanka Ringwald * @param subevent_code 2245e0bbf3edSMilanka Ringwald * @param avrcp_cid 2246e0bbf3edSMilanka Ringwald */ 22471bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_EVENT_IDS_QUERY 0x10 2248c045af99SMilanka Ringwald 2249c045af99SMilanka Ringwald /** 2250c045af99SMilanka Ringwald * @format 12 2251c045af99SMilanka Ringwald * @param subevent_code 2252c045af99SMilanka Ringwald * @param avrcp_cid 2253c045af99SMilanka Ringwald */ 22541bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_PLAY_STATUS_QUERY 0x11 22554b338011SMilanka Ringwald 22564b338011SMilanka Ringwald /** 2257831d3fd5SMilanka Ringwald * @format 12111 2258831d3fd5SMilanka Ringwald * @param subevent_code 2259831d3fd5SMilanka Ringwald * @param avrcp_cid 2260831d3fd5SMilanka Ringwald * @param operation_id 2261831d3fd5SMilanka Ringwald * @param operands_length 2262831d3fd5SMilanka Ringwald * @param operand 2263831d3fd5SMilanka Ringwald */ 22641bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION 0x12 22651bf7a74fSMilanka Ringwald 22661bf7a74fSMilanka Ringwald /** 22671bf7a74fSMilanka Ringwald * @format 1211 22681bf7a74fSMilanka Ringwald * @param subevent_code 22691bf7a74fSMilanka Ringwald * @param avrcp_cid 22701bf7a74fSMilanka Ringwald * @param command_type 22711bf7a74fSMilanka Ringwald * @param track 22721bf7a74fSMilanka Ringwald */ 22731bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO 0x13 22741bf7a74fSMilanka Ringwald 22751bf7a74fSMilanka Ringwald /** 22761bf7a74fSMilanka Ringwald * @format 1211 22771bf7a74fSMilanka Ringwald * @param subevent_code 22781bf7a74fSMilanka Ringwald * @param avrcp_cid 22791bf7a74fSMilanka Ringwald * @param command_type 22801bf7a74fSMilanka Ringwald * @param total_tracks 22811bf7a74fSMilanka Ringwald */ 22821bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO 0x14 22831bf7a74fSMilanka Ringwald 22841bf7a74fSMilanka Ringwald /** 22851bf7a74fSMilanka Ringwald * @format 1214 22861bf7a74fSMilanka Ringwald * @param subevent_code 22871bf7a74fSMilanka Ringwald * @param avrcp_cid 22881bf7a74fSMilanka Ringwald * @param command_type 22891bf7a74fSMilanka Ringwald * @param song_length in ms 22901bf7a74fSMilanka Ringwald */ 22911bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO 0x15 22921bf7a74fSMilanka Ringwald 22931bf7a74fSMilanka Ringwald /** 22941bf7a74fSMilanka Ringwald * @format 121JV 22951bf7a74fSMilanka Ringwald * @param subevent_code 22961bf7a74fSMilanka Ringwald * @param avrcp_cid 22971bf7a74fSMilanka Ringwald * @param command_type 22981bf7a74fSMilanka Ringwald * @param value_len 22991bf7a74fSMilanka Ringwald * @param value 23001bf7a74fSMilanka Ringwald */ 23011bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO 0x16 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_ARTIST_INFO 0x17 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_ALBUM_INFO 0x18 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_GENRE_INFO 0x19 23321bf7a74fSMilanka Ringwald 23331bf7a74fSMilanka Ringwald /* 23341bf7a74fSMilanka Ringwald * @format 1211 23351bf7a74fSMilanka Ringwald * @param subevent_code 23361bf7a74fSMilanka Ringwald * @param avrcp_cid 23371bf7a74fSMilanka Ringwald * @param command_type 23381bf7a74fSMilanka Ringwald * @param status 23391bf7a74fSMilanka Ringwald */ 23401bf7a74fSMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE 0x1A 23411bf7a74fSMilanka Ringwald 2342c3fca900SMilanka Ringwald /** 2343576a1127SMilanka Ringwald * @format 1B2 2344576a1127SMilanka Ringwald * @param subevent_code 2345576a1127SMilanka Ringwald * @param bd_addr 2346576a1127SMilanka Ringwald * @param browsing_cid 2347576a1127SMilanka Ringwald */ 2348576a1127SMilanka Ringwald #define AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION 0x1B 2349576a1127SMilanka Ringwald 2350576a1127SMilanka Ringwald /** 2351c3fca900SMilanka Ringwald * @format 11B2 2352c3fca900SMilanka Ringwald * @param subevent_code 2353c3fca900SMilanka Ringwald * @param status 0 == OK 2354c3fca900SMilanka Ringwald * @param bd_addr 2355c3fca900SMilanka Ringwald * @param browsing_cid 2356c3fca900SMilanka Ringwald */ 2357576a1127SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED 0x1C 2358c3fca900SMilanka Ringwald 2359c3fca900SMilanka Ringwald /** 2360c3fca900SMilanka Ringwald * @format 12 2361c3fca900SMilanka Ringwald * @param subevent_code 2362c3fca900SMilanka Ringwald * @param browsing_cid 2363c3fca900SMilanka Ringwald */ 2364576a1127SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_RELEASED 0x1D 23654c954014SMilanka Ringwald 23663d49a24eSMilanka Ringwald /** 2367be65baf4SMilanka Ringwald * @format 12211 2368e30788a3SMilanka Ringwald * @param subevent_code 2369e30788a3SMilanka Ringwald * @param browsing_cid 2370be65baf4SMilanka Ringwald * @param uid_counter 2371954cc391SMilanka Ringwald * @param browsing_status 2372954cc391SMilanka Ringwald * @param bluetooth_status 2373e30788a3SMilanka Ringwald */ 2374be65baf4SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_DONE 0x1E 2375e30788a3SMilanka Ringwald 2376bd0f378aSMilanka Ringwald /** 2377bd0f378aSMilanka Ringwald * @format 1214 2378bd0f378aSMilanka Ringwald * @param subevent_code 2379bd0f378aSMilanka Ringwald * @param browsing_cid 2380bd0f378aSMilanka Ringwald * @param scope 2381bd0f378aSMilanka Ringwald * @param attr_bitmap 2382bd0f378aSMilanka Ringwald */ 2383bd0f378aSMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS 0x1F 2384bd0f378aSMilanka Ringwald 2385bd0f378aSMilanka Ringwald /** 2386bd0f378aSMilanka Ringwald * @format 121 2387bd0f378aSMilanka Ringwald * @param subevent_code 2388bd0f378aSMilanka Ringwald * @param browsing_cid 2389bd0f378aSMilanka Ringwald * @param scope 2390bd0f378aSMilanka Ringwald */ 2391bd0f378aSMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS 0x20 23926fa3dbf2SMilanka Ringwald 23936fa3dbf2SMilanka Ringwald /** 23946fa3dbf2SMilanka Ringwald * @format 1214 23956fa3dbf2SMilanka Ringwald * @param subevent_code 23966fa3dbf2SMilanka Ringwald * @param avrcp_cid 23976fa3dbf2SMilanka Ringwald * @param command_type 23986fa3dbf2SMilanka Ringwald * @param playback_position_ms 23996fa3dbf2SMilanka Ringwald */ 24006fa3dbf2SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED 0x21 24016fa3dbf2SMilanka Ringwald 2402e30788a3SMilanka Ringwald 24034c954014SMilanka Ringwald /** 2404f1b34e8dSMatthias Ringwald * @format 121BH1 2405f1b34e8dSMatthias Ringwald * @param subevent_code 2406f1b34e8dSMatthias Ringwald * @param goep_cid 2407f1b34e8dSMatthias Ringwald * @param status 2408f1b34e8dSMatthias Ringwald * @param bd_addr 2409f1b34e8dSMatthias Ringwald * @param con_handle 2410f1b34e8dSMatthias Ringwald * @param incoming 2411f1b34e8dSMatthias Ringwald */ 2412f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_OPENED 0x01 24136eb7ba29SMilanka Ringwald 2414f1b34e8dSMatthias Ringwald /** 2415f1b34e8dSMatthias Ringwald * @format 12 2416f1b34e8dSMatthias Ringwald * @param subevent_code 2417f1b34e8dSMatthias Ringwald * @param goep_cid 2418f1b34e8dSMatthias Ringwald */ 2419f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_CLOSED 0x02 2420f1b34e8dSMatthias Ringwald 2421f1b34e8dSMatthias Ringwald /** 2422f1b34e8dSMatthias Ringwald * @format 12 2423f1b34e8dSMatthias Ringwald * @param subevent_code 2424f1b34e8dSMatthias Ringwald * @param goep_cid 2425f1b34e8dSMatthias Ringwald */ 2426f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CAN_SEND_NOW 0x03 2427f1b34e8dSMatthias Ringwald 2428f1b34e8dSMatthias Ringwald /** 2429f1b34e8dSMatthias Ringwald * @format 121BH1 2430f1b34e8dSMatthias Ringwald * @param subevent_code 2431f1b34e8dSMatthias Ringwald * @param pbap_cid 2432f1b34e8dSMatthias Ringwald * @param status 2433f1b34e8dSMatthias Ringwald * @param bd_addr 2434f1b34e8dSMatthias Ringwald * @param con_handle 2435f1b34e8dSMatthias Ringwald * @param incoming 2436f1b34e8dSMatthias Ringwald */ 2437f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_OPENED 0x01 2438f1b34e8dSMatthias Ringwald 2439f1b34e8dSMatthias Ringwald /** 2440f1b34e8dSMatthias Ringwald * @format 12 2441f1b34e8dSMatthias Ringwald * @param subevent_code 2442f1b34e8dSMatthias Ringwald * @param goep_cid 2443f1b34e8dSMatthias Ringwald */ 2444f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_CLOSED 0x02 2445f1b34e8dSMatthias Ringwald 2446f1b34e8dSMatthias Ringwald /** 2447f1b34e8dSMatthias Ringwald * @format 121 2448f1b34e8dSMatthias Ringwald * @param subevent_code 2449f1b34e8dSMatthias Ringwald * @param goep_cid 2450f1b34e8dSMatthias Ringwald * @param status 2451f1b34e8dSMatthias Ringwald */ 2452f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_OPERATION_COMPLETED 0x03 24536eb7ba29SMilanka Ringwald 2454fafbca75SMatthias Ringwald /** 2455fafbca75SMatthias Ringwald * @format 1212 2456fafbca75SMatthias Ringwald * @param subevent_code 2457fafbca75SMatthias Ringwald * @param goep_cid 2458fafbca75SMatthias Ringwald * @param status 2459fafbca75SMatthias Ringwald * @param phoneboook_size 2460fafbca75SMatthias Ringwald */ 2461fafbca75SMatthias Ringwald #define PBAP_SUBEVENT_PHONEBOOK_SIZE 0x04 2462fafbca75SMatthias Ringwald 2463c1bc0b8eSMatthias Ringwald /** 2464c1bc0b8eSMatthias Ringwald * @format 1211 2465c1bc0b8eSMatthias Ringwald * @param subevent_code 2466c1bc0b8eSMatthias Ringwald * @param goep_cid 2467c1bc0b8eSMatthias Ringwald * @param user_id_required 2468c1bc0b8eSMatthias Ringwald * @param full_access 2469c1bc0b8eSMatthias Ringwald */ 2470c1bc0b8eSMatthias Ringwald #define PBAP_SUBEVENT_AUTHENTICATION_REQUEST 0x05 2471c1bc0b8eSMatthias Ringwald 2472ad514860SMatthias Ringwald /** 2473ad514860SMatthias Ringwald * @format 12JVJV 2474ad514860SMatthias Ringwald * @param subevent_code 2475ad514860SMatthias Ringwald * @param goep_cid 2476ad514860SMatthias Ringwald * @param name_len 2477ad514860SMatthias Ringwald * @param name 2478ad514860SMatthias Ringwald * @param handle_len 2479ad514860SMatthias Ringwald * @param handle 2480ad514860SMatthias Ringwald */ 2481ad514860SMatthias Ringwald #define PBAP_SUBEVENT_CARD_RESULT 0x06 2482ad514860SMatthias Ringwald 2483c1bc0b8eSMatthias Ringwald 2484a4bfc4feSMatthias Ringwald // HID Meta Event Group 2485a4bfc4feSMatthias Ringwald 2486dd148ddbSMatthias Ringwald /** 2487dd148ddbSMatthias Ringwald * @format 121BH1 2488dd148ddbSMatthias Ringwald * @param subevent_code 2489dd148ddbSMatthias Ringwald * @param hid_cid 2490dd148ddbSMatthias Ringwald * @param status 2491dd148ddbSMatthias Ringwald * @param bd_addr 2492dd148ddbSMatthias Ringwald * @param con_handle 2493dd148ddbSMatthias Ringwald * @param incoming 2494dd148ddbSMatthias Ringwald */ 2495dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CONNECTION_OPENED 0x01 2496dd148ddbSMatthias Ringwald 2497dd148ddbSMatthias Ringwald /** 2498dd148ddbSMatthias Ringwald * @format 12 2499dd148ddbSMatthias Ringwald * @param subevent_code 2500dd148ddbSMatthias Ringwald * @param hid_cid 2501dd148ddbSMatthias Ringwald */ 2502dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CONNECTION_CLOSED 0x02 2503dd148ddbSMatthias Ringwald 2504dd148ddbSMatthias Ringwald /** 2505dd148ddbSMatthias Ringwald * @format 12 2506dd148ddbSMatthias Ringwald * @param subevent_code 2507dd148ddbSMatthias Ringwald * @param hid_cid 2508dd148ddbSMatthias Ringwald */ 2509dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CAN_SEND_NOW 0x03 2510dd148ddbSMatthias Ringwald 25116510739bSMilanka Ringwald /** 25126510739bSMilanka Ringwald * @format 12 25136510739bSMilanka Ringwald * @param subevent_code 25146510739bSMilanka Ringwald * @param con_handle 25156510739bSMilanka Ringwald */ 25166510739bSMilanka Ringwald #define HID_SUBEVENT_SUSPEND 0x04 25176510739bSMilanka Ringwald 25186510739bSMilanka Ringwald /** 25196510739bSMilanka Ringwald * @format 12 25206510739bSMilanka Ringwald * @param subevent_code 25216510739bSMilanka Ringwald * @param con_handle 25226510739bSMilanka Ringwald */ 25236510739bSMilanka Ringwald #define HID_SUBEVENT_EXIT_SUSPEND 0x05 25246510739bSMilanka Ringwald 25256510739bSMilanka Ringwald 2526a4bfc4feSMatthias Ringwald // HIDS Meta Event Group 2527a4bfc4feSMatthias Ringwald 2528a4bfc4feSMatthias Ringwald /** 2529a4bfc4feSMatthias Ringwald * @format 12 2530a4bfc4feSMatthias Ringwald * @param subevent_code 2531a4bfc4feSMatthias Ringwald * @param con_handle 2532a4bfc4feSMatthias Ringwald */ 2533a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_CAN_SEND_NOW 0x01 2534a4bfc4feSMatthias Ringwald 2535a4bfc4feSMatthias Ringwald /** 2536a4bfc4feSMatthias Ringwald * @format 121 2537a4bfc4feSMatthias Ringwald * @param subevent_code 2538a4bfc4feSMatthias Ringwald * @param con_handle 2539a4bfc4feSMatthias Ringwald * @param protocol_mode 2540a4bfc4feSMatthias Ringwald */ 2541a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_PROTOCOL_MODE 0x02 2542a4bfc4feSMatthias Ringwald 2543a4bfc4feSMatthias Ringwald /** 2544a4bfc4feSMatthias Ringwald * @format 121 2545a4bfc4feSMatthias Ringwald * @param subevent_code 2546a4bfc4feSMatthias Ringwald * @param con_handle 2547a4bfc4feSMatthias Ringwald * @param enable 2548a4bfc4feSMatthias Ringwald */ 2549a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE 0x03 2550a4bfc4feSMatthias Ringwald 2551a4bfc4feSMatthias Ringwald /** 2552a4bfc4feSMatthias Ringwald * @format 121 2553a4bfc4feSMatthias Ringwald * @param subevent_code 2554a4bfc4feSMatthias Ringwald * @param con_handle 2555a4bfc4feSMatthias Ringwald * @param enable 2556a4bfc4feSMatthias Ringwald */ 2557a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE 0x04 2558a4bfc4feSMatthias Ringwald 2559a4bfc4feSMatthias Ringwald /** 2560a4bfc4feSMatthias Ringwald * @format 121 2561a4bfc4feSMatthias Ringwald * @param subevent_code 2562a4bfc4feSMatthias Ringwald * @param con_handle 2563a4bfc4feSMatthias Ringwald * @param enable 2564a4bfc4feSMatthias Ringwald */ 2565a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_INPUT_REPORT_ENABLE 0x05 2566a4bfc4feSMatthias Ringwald 25670235c9e5SMilanka Ringwald /** 25680235c9e5SMilanka Ringwald * @format 121 25690235c9e5SMilanka Ringwald * @param subevent_code 25700235c9e5SMilanka Ringwald * @param con_handle 25710235c9e5SMilanka Ringwald * @param enable 25720235c9e5SMilanka Ringwald */ 25730235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE 0x06 25740235c9e5SMilanka Ringwald 25750235c9e5SMilanka Ringwald /** 25760235c9e5SMilanka Ringwald * @format 121 25770235c9e5SMilanka Ringwald * @param subevent_code 25780235c9e5SMilanka Ringwald * @param con_handle 25790235c9e5SMilanka Ringwald * @param enable 25800235c9e5SMilanka Ringwald */ 25810235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_FEATURE_REPORT_ENABLE 0x07 25820235c9e5SMilanka Ringwald 25830235c9e5SMilanka Ringwald /** 25840235c9e5SMilanka Ringwald * @format 12 25850235c9e5SMilanka Ringwald * @param subevent_code 25860235c9e5SMilanka Ringwald * @param con_handle 25870235c9e5SMilanka Ringwald */ 25880235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_SUSPEND 0x08 25890235c9e5SMilanka Ringwald 25900235c9e5SMilanka Ringwald /** 25910235c9e5SMilanka Ringwald * @format 12 25920235c9e5SMilanka Ringwald * @param subevent_code 25930235c9e5SMilanka Ringwald * @param con_handle 25940235c9e5SMilanka Ringwald */ 25950235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_EXIT_SUSPEND 0x09 25969fe70df8SMilanka Ringwald 25979fe70df8SMilanka Ringwald /** 25989fe70df8SMilanka Ringwald * @format 1211 25999fe70df8SMilanka Ringwald * @param subevent_code 26009fe70df8SMilanka Ringwald * @param con_handle 26016e084577SMatthias Ringwald * @param measurement_type 0 - force magnitude, 1 - torque magnitude, see cycling_power_sensor_measurement_context_t 26029fe70df8SMilanka Ringwald * @param is_enhanced 26039fe70df8SMilanka Ringwald */ 260428e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION 0x01 26059fe70df8SMilanka Ringwald 26069fe70df8SMilanka Ringwald /** 26079fe70df8SMilanka Ringwald * @format 12 26089fe70df8SMilanka Ringwald * @param subevent_code 26099fe70df8SMilanka Ringwald * @param con_handle 26109fe70df8SMilanka Ringwald */ 261128e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_START 0x02 26129fe70df8SMilanka Ringwald 26139fe70df8SMilanka Ringwald /** 26149fe70df8SMilanka Ringwald * @format 12 26159fe70df8SMilanka Ringwald * @param subevent_code 26169fe70df8SMilanka Ringwald * @param con_handle 26179fe70df8SMilanka Ringwald */ 261828e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_STOP 0x03 2619ad58991cSMilanka Ringwald 2620ad58991cSMilanka Ringwald 2621ad58991cSMilanka Ringwald // MAP Meta Event Group 2622ad58991cSMilanka Ringwald 2623ad58991cSMilanka Ringwald /** 2624ad58991cSMilanka Ringwald * @format 121BH1 2625ad58991cSMilanka Ringwald * @param subevent_code 2626ad58991cSMilanka Ringwald * @param map_cid 2627ad58991cSMilanka Ringwald * @param status 2628ad58991cSMilanka Ringwald * @param bd_addr 2629ad58991cSMilanka Ringwald * @param con_handle 2630ad58991cSMilanka Ringwald * @param incoming 2631ad58991cSMilanka Ringwald */ 2632ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_OPENED 0x01 2633ad58991cSMilanka Ringwald 2634ad58991cSMilanka Ringwald /** 2635ad58991cSMilanka Ringwald * @format 12 2636ad58991cSMilanka Ringwald * @param subevent_code 26375160ece6SMilanka Ringwald * @param map_cid 2638ad58991cSMilanka Ringwald */ 2639ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_CLOSED 0x02 2640ad58991cSMilanka Ringwald 2641ad58991cSMilanka Ringwald /** 2642ad58991cSMilanka Ringwald * @format 121 2643ad58991cSMilanka Ringwald * @param subevent_code 26445160ece6SMilanka Ringwald * @param map_cid 2645ad58991cSMilanka Ringwald * @param status 2646ad58991cSMilanka Ringwald */ 2647ad58991cSMilanka Ringwald #define MAP_SUBEVENT_OPERATION_COMPLETED 0x03 2648ad58991cSMilanka Ringwald 2649ad58991cSMilanka Ringwald 26505160ece6SMilanka Ringwald /** 26515160ece6SMilanka Ringwald * @format 12LV 26525160ece6SMilanka Ringwald * @param subevent_code 26535160ece6SMilanka Ringwald * @param map_cid 26545160ece6SMilanka Ringwald * @param name_len 26555160ece6SMilanka Ringwald * @param name 26565160ece6SMilanka Ringwald */ 26575160ece6SMilanka Ringwald #define MAP_SUBEVENT_FOLDER_LISTING_ITEM 0x04 26585160ece6SMilanka Ringwald 26595160ece6SMilanka Ringwald /** 26605160ece6SMilanka Ringwald * @format 12D 26615160ece6SMilanka Ringwald * @param subevent_code 26625160ece6SMilanka Ringwald * @param map_cid 26635160ece6SMilanka Ringwald * @param handle 26645160ece6SMilanka Ringwald 26655160ece6SMilanka Ringwald */ 26665160ece6SMilanka Ringwald #define MAP_SUBEVENT_MESSAGE_LISTING_ITEM 0x05 26675160ece6SMilanka Ringwald 26685160ece6SMilanka Ringwald /** 26695160ece6SMilanka Ringwald * @format 12 26705160ece6SMilanka Ringwald * @param subevent_code 26715160ece6SMilanka Ringwald * @param map_cid 26725160ece6SMilanka Ringwald */ 26735160ece6SMilanka Ringwald #define MAP_SUBEVENT_PARSING_DONE 0x06 26745160ece6SMilanka Ringwald 26755160ece6SMilanka Ringwald 26761fbe4564SMatthias Ringwald // MESH Meta Event Group 26775160ece6SMilanka Ringwald 26781fbe4564SMatthias Ringwald /** 26791fbe4564SMatthias Ringwald * @format 1 26801fbe4564SMatthias Ringwald * @param subevent_code 26811fbe4564SMatthias Ringwald */ 26821fbe4564SMatthias Ringwald #define MESH_SUBEVENT_CAN_SEND_NOW 0x01 26831fbe4564SMatthias Ringwald 26841fbe4564SMatthias Ringwald /** 26851fbe4564SMatthias Ringwald * @format 11 26861fbe4564SMatthias Ringwald * @param subevent_code 26871fbe4564SMatthias Ringwald * @param status 26881fbe4564SMatthias Ringwald */ 26897bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_PDU_SENT 0x02 269026ecb624SMilanka Ringwald 269126ecb624SMilanka Ringwald /** 269226ecb624SMilanka Ringwald * @format 1121 269326ecb624SMilanka Ringwald * @param subevent_code 269426ecb624SMilanka Ringwald * @param status 269526ecb624SMilanka Ringwald * @param pb_transport_cid 269626ecb624SMilanka Ringwald * @param pb_type 269726ecb624SMilanka Ringwald */ 26987bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN 0x03 26991fbe4564SMatthias Ringwald 27001fbe4564SMatthias Ringwald /** 27011fbe4564SMatthias Ringwald * @format 112 27021fbe4564SMatthias Ringwald * @param subevent_code 270326ecb624SMilanka Ringwald * @param pb_transport_cid 2704f8962c62SMatthias Ringwald * @param reason 27051fbe4564SMatthias Ringwald */ 27067bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED 0x04 27071fbe4564SMatthias Ringwald 27081fbe4564SMatthias Ringwald /** 27091fbe4564SMatthias Ringwald * @format 121 27101fbe4564SMatthias Ringwald * @param subevent_code 271126ecb624SMilanka Ringwald * @param pb_transport_cid 27121fbe4564SMatthias Ringwald * @param attention_time in seconds 27131fbe4564SMatthias Ringwald */ 27147bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER 0x10 27151fbe4564SMatthias Ringwald 27161fbe4564SMatthias Ringwald /** 27171fbe4564SMatthias Ringwald * Device Role 27181fbe4564SMatthias Ringwald * @format 12 27191fbe4564SMatthias Ringwald * @param subevent_code 272026ecb624SMilanka Ringwald * @param pb_transport_cid 27211fbe4564SMatthias Ringwald */ 27227bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_PUBLIC_KEY_OOB 0x11 27231fbe4564SMatthias Ringwald 27241fbe4564SMatthias Ringwald /** 27251fbe4564SMatthias Ringwald * Device Role 27261fbe4564SMatthias Ringwald * @format 12 27271fbe4564SMatthias Ringwald * @param subevent_code 272826ecb624SMilanka Ringwald * @param pb_transport_cid 27291fbe4564SMatthias Ringwald */ 27307bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_PUBLIC_KEY_OOB 0x12 27311fbe4564SMatthias Ringwald 27321fbe4564SMatthias Ringwald /** 27331fbe4564SMatthias Ringwald * Device Role 27341fbe4564SMatthias Ringwald * @format 12 27351fbe4564SMatthias Ringwald * @param subevent_code 273626ecb624SMilanka Ringwald * @param pb_transport_cid 27371fbe4564SMatthias Ringwald */ 27387bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_INPUT_OOB_REQUEST 0x13 27391fbe4564SMatthias Ringwald 27401fbe4564SMatthias Ringwald /** 27411fbe4564SMatthias Ringwald * Device Role 27421fbe4564SMatthias Ringwald * @format 124 27431fbe4564SMatthias Ringwald * @param subevent_code 274426ecb624SMilanka Ringwald * @param pb_transport_cid 27451fbe4564SMatthias Ringwald * @param output_oob number 27461fbe4564SMatthias Ringwald */ 27477bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB 0x15 27481fbe4564SMatthias Ringwald 27491fbe4564SMatthias Ringwald /** 27501fbe4564SMatthias Ringwald * Device Role 27511fbe4564SMatthias Ringwald * @format 12 27521fbe4564SMatthias Ringwald * @param subevent_code 275326ecb624SMilanka Ringwald * @param pb_transport_cid 27541fbe4564SMatthias Ringwald */ 27557bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_OUTPUT_OOB 0x16 27561fbe4564SMatthias Ringwald 27571fbe4564SMatthias Ringwald /** 27581fbe4564SMatthias Ringwald * Provisioner Role 27591fbe4564SMatthias Ringwald * @format 12 27601fbe4564SMatthias Ringwald * @param subevent_code 276126ecb624SMilanka Ringwald * @param pb_transport_cid 27621fbe4564SMatthias Ringwald */ 27637bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_RECEIVE_PUBLIC_KEY_OOB 0x17 27641fbe4564SMatthias Ringwald 27651fbe4564SMatthias Ringwald /** 27661fbe4564SMatthias Ringwald * Provisioner Role 27671fbe4564SMatthias Ringwald * @format 12 27681fbe4564SMatthias Ringwald * @param subevent_code 276926ecb624SMilanka Ringwald * @param pb_transport_cid 27701fbe4564SMatthias Ringwald */ 27717bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_RECEIVE_PUBLIC_KEY_OOB 0x18 27721fbe4564SMatthias Ringwald 27731fbe4564SMatthias Ringwald /** 27741fbe4564SMatthias Ringwald * Provisioner Role 27751fbe4564SMatthias Ringwald * @format 12 27761fbe4564SMatthias Ringwald * @param subevent_code 277726ecb624SMilanka Ringwald * @param pb_transport_cid 27781fbe4564SMatthias Ringwald */ 27797bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_OUTPUT_OOB_REQUEST 0x19 27801fbe4564SMatthias Ringwald 27811fbe4564SMatthias Ringwald /** 27821fbe4564SMatthias Ringwald * Provisioner Role 27831fbe4564SMatthias Ringwald * @format 124 27841fbe4564SMatthias Ringwald * @param subevent_code 278526ecb624SMilanka Ringwald * @param pb_transport_cid 27861fbe4564SMatthias Ringwald * @param output_oob number 27871fbe4564SMatthias Ringwald */ 27887bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB 0x1a 27891fbe4564SMatthias Ringwald 27901fbe4564SMatthias Ringwald /** 27911fbe4564SMatthias Ringwald * Provisioner Role 27921fbe4564SMatthias Ringwald * @format 12 27931fbe4564SMatthias Ringwald * @param subevent_code 279426ecb624SMilanka Ringwald * @param pb_transport_cid 27951fbe4564SMatthias Ringwald */ 27967bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_INPUT_OOB 0x1b 27971fbe4564SMatthias Ringwald 27981fbe4564SMatthias Ringwald /** 27991fbe4564SMatthias Ringwald * Provisioner Role 28001fbe4564SMatthias Ringwald * @format 1212111212 28011fbe4564SMatthias Ringwald * @param subevent_code 280226ecb624SMilanka Ringwald * @param pb_transport_cid 28031fbe4564SMatthias Ringwald * @param num_elements 28041fbe4564SMatthias Ringwald * @param algorithms 28051fbe4564SMatthias Ringwald * @param public_key 28061fbe4564SMatthias Ringwald * @param static_oob_type 28071fbe4564SMatthias Ringwald * @param output_oob_size 28081fbe4564SMatthias Ringwald * @param output_oob_action 28091fbe4564SMatthias Ringwald * @param input_oob_size 28101fbe4564SMatthias Ringwald * @param input_oob_action 28111fbe4564SMatthias Ringwald */ 28127bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_CAPABILITIES 0x1c 28131fbe4564SMatthias Ringwald 28141fbe4564SMatthias Ringwald /** 28151fbe4564SMatthias Ringwald * @format 12 28161fbe4564SMatthias Ringwald * @param subevent_code 281726ecb624SMilanka Ringwald * @param pb_transport_cid 28181fbe4564SMatthias Ringwald */ 28197bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_COMPLETE 0x1d 28205160ece6SMilanka Ringwald 282182b0bf42SMatthias Ringwald /** 282275c1e527SMatthias Ringwald * @format 11 282375c1e527SMatthias Ringwald * @param subevent_code 282475c1e527SMatthias Ringwald * @param attention_time in seconds 282575c1e527SMatthias Ringwald */ 282675c1e527SMatthias Ringwald #define MESH_SUBEVENT_ATTENTION_TIMER 0x1e 282775c1e527SMatthias Ringwald 282875c1e527SMatthias Ringwald /** 282982b0bf42SMatthias Ringwald * @format 11H 283082b0bf42SMatthias Ringwald * @param subevent_code 283182b0bf42SMatthias Ringwald * @param status 283282b0bf42SMatthias Ringwald * @param con_handle 283382b0bf42SMatthias Ringwald */ 28347bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_CONNECTED 0x20 283582b0bf42SMatthias Ringwald 283682b0bf42SMatthias Ringwald /** 283782b0bf42SMatthias Ringwald * @format 1H 283882b0bf42SMatthias Ringwald * @param subevent_code 283982b0bf42SMatthias Ringwald * @param con_handle 284082b0bf42SMatthias Ringwald */ 28417bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_PDU_SENT 0x21 284282b0bf42SMatthias Ringwald 284382b0bf42SMatthias Ringwald /** 284482b0bf42SMatthias Ringwald * @format 1H 284582b0bf42SMatthias Ringwald * @param subevent_code 284682b0bf42SMatthias Ringwald * @param con_handle 284782b0bf42SMatthias Ringwald */ 28487bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_DISCONNECTED 0x22 284982b0bf42SMatthias Ringwald 28501d2d76deSMilanka Ringwald /** 28511d2d76deSMilanka Ringwald * @format 1H 28521d2d76deSMilanka Ringwald * @param subevent_code 28531d2d76deSMilanka Ringwald * @param con_handle 28541d2d76deSMilanka Ringwald */ 28551d2d76deSMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_SENT 0x23 285681097db9SMilanka Ringwald 285781097db9SMilanka Ringwald /** 285881097db9SMilanka Ringwald * @format 114411 285981097db9SMilanka Ringwald * @param subevent_code 286081097db9SMilanka Ringwald * @param element_index 286181097db9SMilanka Ringwald * @param model_identifier 286281097db9SMilanka Ringwald * @param state_identifier 286381097db9SMilanka Ringwald * @param reason 286481097db9SMilanka Ringwald * @param value 286581097db9SMilanka Ringwald */ 286681097db9SMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_BOOL 0x24 28671d2d76deSMilanka Ringwald 286892c33ebfSMilanka Ringwald /** 286992c33ebfSMilanka Ringwald * @format 114412 287092c33ebfSMilanka Ringwald * @param subevent_code 287192c33ebfSMilanka Ringwald * @param element_index 287292c33ebfSMilanka Ringwald * @param model_identifier 287392c33ebfSMilanka Ringwald * @param state_identifier 287492c33ebfSMilanka Ringwald * @param reason 287592c33ebfSMilanka Ringwald * @param value 287692c33ebfSMilanka Ringwald */ 287792c33ebfSMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_INT16 0x25 287892c33ebfSMilanka Ringwald 287992c33ebfSMilanka Ringwald // Mesh Client Events 288092c33ebfSMilanka Ringwald /** 2881b7a54332SMilanka Ringwald * @format 11442 2882b7a54332SMilanka Ringwald * @param subevent_code 2883b7a54332SMilanka Ringwald * @param element_index 2884b7a54332SMilanka Ringwald * @param model_identifier 2885b7a54332SMilanka Ringwald * @param opcode 2886b7a54332SMilanka Ringwald * @param dest 2887b7a54332SMilanka Ringwald */ 2888b7a54332SMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED 0x30 2889b7a54332SMilanka Ringwald 2890b7a54332SMilanka Ringwald /** 28915c1e046aSMilanka Ringwald * @format 121114 289292c33ebfSMilanka Ringwald * @param subevent_code 28935c1e046aSMilanka Ringwald * @param dest 28945c1e046aSMilanka Ringwald * @param status 289592c33ebfSMilanka Ringwald * @param present_value 28966e084577SMatthias Ringwald * @param target_value optional, if value > 0, than remaining_time_ms must be read 289792c33ebfSMilanka Ringwald * @param remaining_time_ms 289892c33ebfSMilanka Ringwald */ 2899b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_ON_OFF 0x31 290092c33ebfSMilanka Ringwald 290187b3ac30SMilanka Ringwald /** 29025c1e046aSMilanka Ringwald * @format 121224 290387b3ac30SMilanka Ringwald * @param subevent_code 29045c1e046aSMilanka Ringwald * @param dest 29055c1e046aSMilanka Ringwald * @param status 290687b3ac30SMilanka Ringwald * @param present_value 29076e084577SMatthias Ringwald * @param target_value optional, if value > 0, than remaining_time_ms must be read 290887b3ac30SMilanka Ringwald * @param remaining_time_ms 290987b3ac30SMilanka Ringwald */ 2910b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_LEVEL 0x32 291192c33ebfSMilanka Ringwald 2912859ea319SMilanka Ringwald /** 291345f04363SMatthias Ringwald * @format 1222211 2914859ea319SMilanka Ringwald * @param subevent_code 2915859ea319SMilanka Ringwald * @param dest 2916859ea319SMilanka Ringwald * @param netkey_index 2917859ea319SMilanka Ringwald * @param appkey_index 2918859ea319SMilanka Ringwald * @param company_id 2919859ea319SMilanka Ringwald * @param test_id 292045f04363SMatthias Ringwald * @param acknowledged 2921859ea319SMilanka Ringwald */ 2922204019bbSMatthias Ringwald #define MESH_SUBEVENT_HEALTH_PERFORM_TEST 0x33 2923859ea319SMilanka Ringwald 2924584bbe7dSMilanka Ringwald /** 2925584bbe7dSMilanka Ringwald * @format 11 2926584bbe7dSMilanka Ringwald * @param subevent_code 2927584bbe7dSMilanka Ringwald * @param element_index 2928584bbe7dSMilanka Ringwald */ 2929204019bbSMatthias Ringwald #define MESH_SUBEVENT_HEALTH_ATTENTION_TIMER_CHANGED 0x34 2930859ea319SMilanka Ringwald 29315c1e046aSMilanka Ringwald /** 29325c1e046aSMilanka Ringwald * @format 1211 29335c1e046aSMilanka Ringwald * @param subevent_code 29345c1e046aSMilanka Ringwald * @param dest 29355c1e046aSMilanka Ringwald * @param status 29365c1e046aSMilanka Ringwald * @param transition_time_gdtt 29375c1e046aSMilanka Ringwald */ 2938b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME 0x35 2939699be93dSMilanka Ringwald 2940699be93dSMilanka Ringwald /** 2941699be93dSMilanka Ringwald * @format 1211 2942699be93dSMilanka Ringwald * @param subevent_code 2943699be93dSMilanka Ringwald * @param dest 2944699be93dSMilanka Ringwald * @param foundation_status 2945699be93dSMilanka Ringwald * @param secure_network_beacon_state 2946699be93dSMilanka Ringwald */ 2947b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_BEACON 0x36 2948699be93dSMilanka Ringwald 2949b0e589acSMilanka Ringwald // Composition Data has variable of element descriptions, with two lists of model lists 2950b0e589acSMilanka Ringwald // Use .. getters to access data 2951b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_COMPOSITION_DATA 0x37 2952344d6549SMilanka Ringwald 2953344d6549SMilanka Ringwald /** 2954344d6549SMilanka Ringwald * @format 1211 2955344d6549SMilanka Ringwald * @param subevent_code 2956344d6549SMilanka Ringwald * @param dest 2957344d6549SMilanka Ringwald * @param foundation_status 2958344d6549SMilanka Ringwald * @param default_ttl 2959344d6549SMilanka Ringwald */ 2960b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL 0x38 2961344d6549SMilanka Ringwald 2962e38651d8SMilanka Ringwald /** 2963e38651d8SMilanka Ringwald * @format 1211 2964e38651d8SMilanka Ringwald * @param subevent_code 2965e38651d8SMilanka Ringwald * @param dest 2966e38651d8SMilanka Ringwald * @param foundation_status 2967e38651d8SMilanka Ringwald * @param gatt_proxy_state 2968e38651d8SMilanka Ringwald */ 2969b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_GATT_PROXY 0x39 2970e38651d8SMilanka Ringwald 29711937dd52SMilanka Ringwald /** 29721937dd52SMilanka Ringwald * @format 121111 29731937dd52SMilanka Ringwald * @param subevent_code 29741937dd52SMilanka Ringwald * @param dest 29751937dd52SMilanka Ringwald * @param foundation_status 29761937dd52SMilanka Ringwald * @param relay 29771937dd52SMilanka Ringwald * @param retransmit_count the number of times that packet is transmitted for each packet that is relayed. 29781937dd52SMilanka Ringwald * @param retransmit_interval_ms retransmission interval in ms 29791937dd52SMilanka Ringwald */ 2980b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_RELAY 0x40 29811937dd52SMilanka Ringwald 2982941b3855SMatthias Ringwald #endif 2983