xref: /btstack/src/btstack_defines.h (revision bb2a499a758e2a4b4fd9e758a91760071f77c055)
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 
38fe5a6c4eSMilanka Ringwald /**
39941b3855SMatthias Ringwald  *
40fe5a6c4eSMilanka Ringwald  * BTstack definitions, events, and error codes
41fe5a6c4eSMilanka Ringwald  *
42fe5a6c4eSMilanka Ringwald  */
43941b3855SMatthias Ringwald 
4480e33422SMatthias Ringwald #ifndef BTSTACK_DEFINES_H
4580e33422SMatthias Ringwald #define BTSTACK_DEFINES_H
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
212a512b228SMatthias Ringwald #define GAP_INQUIRY_START             0x51
213a512b228SMatthias Ringwald #define GAP_INQUIRY_STOP              0x52
214a512b228SMatthias Ringwald #define GAP_REMOTE_NAME_REQUEST       0x53
215a512b228SMatthias Ringwald #define GAP_DROP_LINK_KEY_FOR_BD_ADDR 0x54
216a512b228SMatthias Ringwald #define GAP_DELETE_ALL_LINK_KEYS      0x55
217*bb2a499aSMatthias Ringwald #define GAP_PIN_CODE_RESPONSE         0x56
218*bb2a499aSMatthias Ringwald #define GAP_PIN_CODE_NEGATIVE         0x57
219b3f90e25SMatthias Ringwald 
220b3f90e25SMatthias Ringwald // GAP LE      0x60
221b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_START           0x60
222b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_STOP            0x61
223b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT              0x62
224b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT_CANCEL       0x63
225b3f90e25SMatthias Ringwald #define GAP_LE_SET_SCAN_PARAMETERS  0x64
226b3f90e25SMatthias Ringwald 
227b3f90e25SMatthias Ringwald // GATT (Client) 0x70
228b3f90e25SMatthias Ringwald #define GATT_DISCOVER_ALL_PRIMARY_SERVICES                       0x70
229b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID16                 0x71
230b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID128                0x72
231b3f90e25SMatthias Ringwald #define GATT_FIND_INCLUDED_SERVICES_FOR_SERVICE                  0x73
232b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE                0x74
233b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE_BY_UUID128     0x75
234b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTIC_DESCRIPTORS                 0x76
235b3f90e25SMatthias Ringwald #define GATT_READ_VALUE_OF_CHARACTERISTIC                        0x77
236b3f90e25SMatthias Ringwald #define GATT_READ_LONG_VALUE_OF_CHARACTERISTIC                   0x78
237b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC_WITHOUT_RESPONSE      0x79
238b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC                       0x7A
239b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_VALUE_OF_CHARACTERISTIC                  0x7B
240b3f90e25SMatthias Ringwald #define GATT_RELIABLE_WRITE_LONG_VALUE_OF_CHARACTERISTIC         0x7C
241b3f90e25SMatthias Ringwald #define GATT_READ_CHARACTERISTIC_DESCRIPTOR                      0X7D
242b3f90e25SMatthias Ringwald #define GATT_READ_LONG_CHARACTERISTIC_DESCRIPTOR                 0X7E
243b3f90e25SMatthias Ringwald #define GATT_WRITE_CHARACTERISTIC_DESCRIPTOR                     0X7F
244b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_CHARACTERISTIC_DESCRIPTOR                0X80
245b3f90e25SMatthias Ringwald #define GATT_WRITE_CLIENT_CHARACTERISTIC_CONFIGURATION           0X81
246b3f90e25SMatthias Ringwald #define GATT_GET_MTU                                             0x82
247b3f90e25SMatthias Ringwald 
2481edc4fc7SMatthias Ringwald // SM 0x90
2491edc4fc7SMatthias Ringwald #define SM_SET_AUTHENTICATION_REQUIREMENTS 0x90
2501edc4fc7SMatthias Ringwald #define SM_SET_IO_CAPABILITIES             0x92
2511edc4fc7SMatthias Ringwald #define SM_BONDING_DECLINE                 0x93
2521edc4fc7SMatthias Ringwald #define SM_JUST_WORKS_CONFIRM              0x94
2531edc4fc7SMatthias Ringwald #define SM_NUMERIC_COMPARISON_CONFIRM      0x95
2541edc4fc7SMatthias Ringwald #define SM_PASSKEY_INPUT                   0x96
2551edc4fc7SMatthias Ringwald 
256eb6072adSMatthias Ringwald // ATT
257eb6072adSMatthias Ringwald 
258eb6072adSMatthias Ringwald // ..
259eb6072adSMatthias Ringwald // Internal properties reuse some GATT Characteristic Properties fields
260fd1be25dSMatthias Ringwald #define ATT_DB_VERSION                                     0x01
26162c64df1SMatthias Ringwald 
262941b3855SMatthias Ringwald // EVENTS
263941b3855SMatthias Ringwald 
264ff3ef268SMilanka Ringwald // Events from host controller to host
265ff3ef268SMilanka Ringwald 
266ff3ef268SMilanka Ringwald /**
267ff3ef268SMilanka Ringwald  * @format 1
268ff3ef268SMilanka Ringwald  * @param status
269ff3ef268SMilanka Ringwald  */
270ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_COMPLETE                         0x01
271ff3ef268SMilanka Ringwald 
272ff3ef268SMilanka Ringwald /**
273ff3ef268SMilanka Ringwald  * @format 1B11132
274ff3ef268SMilanka Ringwald  * @param num_responses
275ff3ef268SMilanka Ringwald  * @param bd_addr
276ff3ef268SMilanka Ringwald  * @param page_scan_repetition_mode
277ff3ef268SMilanka Ringwald  * @param reserved1
278ff3ef268SMilanka Ringwald  * @param reserved2
279ff3ef268SMilanka Ringwald  * @param class_of_device
280ff3ef268SMilanka Ringwald  * @param clock_offset
281ff3ef268SMilanka Ringwald  */
282ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT                           0x02
283ff3ef268SMilanka Ringwald 
284ff3ef268SMilanka Ringwald /**
285ff3ef268SMilanka Ringwald  * @format 12B11
286ff3ef268SMilanka Ringwald  * @param status
287ff3ef268SMilanka Ringwald  * @param connection_handle
288ff3ef268SMilanka Ringwald  * @param bd_addr
289ff3ef268SMilanka Ringwald  * @param link_type
290ff3ef268SMilanka Ringwald  * @param encryption_enabled
291ff3ef268SMilanka Ringwald  */
292ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_COMPLETE                      0x03
293ff3ef268SMilanka Ringwald /**
294ff3ef268SMilanka Ringwald  * @format B31
295ff3ef268SMilanka Ringwald  * @param bd_addr
296ff3ef268SMilanka Ringwald  * @param class_of_device
297ff3ef268SMilanka Ringwald  * @param link_type
298ff3ef268SMilanka Ringwald  */
299ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_REQUEST                       0x04
300ff3ef268SMilanka Ringwald /**
301ff3ef268SMilanka Ringwald  * @format 121
302ff3ef268SMilanka Ringwald  * @param status
303ff3ef268SMilanka Ringwald  * @param connection_handle
304ff3ef268SMilanka Ringwald  * @param reason
305ff3ef268SMilanka Ringwald  */
306ff3ef268SMilanka Ringwald #define HCI_EVENT_DISCONNECTION_COMPLETE                   0x05
307ff3ef268SMilanka Ringwald /**
308ff3ef268SMilanka Ringwald  * @format 12
309ff3ef268SMilanka Ringwald  * @param status
310ff3ef268SMilanka Ringwald  * @param connection_handle
311ff3ef268SMilanka Ringwald  */
312ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE                 0x06
313ff3ef268SMilanka Ringwald 
314ff3ef268SMilanka Ringwald // HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT is deprecated, use HCI_EVENT_AUTHENTICATION_COMPLETE instead
315ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT HCI_EVENT_AUTHENTICATION_COMPLETE
316ff3ef268SMilanka Ringwald 
317ff3ef268SMilanka Ringwald /**
318ff3ef268SMilanka Ringwald  * @format 1BN
319ff3ef268SMilanka Ringwald  * @param status
320ff3ef268SMilanka Ringwald  * @param bd_addr
321ff3ef268SMilanka Ringwald  * @param remote_name
322ff3ef268SMilanka Ringwald  */
323ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE             0x07
324ff3ef268SMilanka Ringwald /**
325ff3ef268SMilanka Ringwald  * @format 121
326ff3ef268SMilanka Ringwald  * @param status
327ff3ef268SMilanka Ringwald  * @param connection_handle
328ff3ef268SMilanka Ringwald  * @param encryption_enabled
329ff3ef268SMilanka Ringwald  */
330ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_CHANGE                        0x08
331ff3ef268SMilanka Ringwald /**
332ff3ef268SMilanka Ringwald  * @format 12
333ff3ef268SMilanka Ringwald  * @param status
334ff3ef268SMilanka Ringwald  * @param connection_handle
335ff3ef268SMilanka Ringwald  */
336ff3ef268SMilanka Ringwald #define HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE      0x09
337ff3ef268SMilanka Ringwald /**
338ff3ef268SMilanka Ringwald  * @format 121
339ff3ef268SMilanka Ringwald  * @param status
340ff3ef268SMilanka Ringwald  * @param connection_handle
341ff3ef268SMilanka Ringwald  * @param key_flag
342ff3ef268SMilanka Ringwald  */
343ff3ef268SMilanka Ringwald #define HCI_EVENT_MASTER_LINK_KEY_COMPLETE                 0x0A
344ff3ef268SMilanka Ringwald 
345ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_SUPPORTED_FEATURES_COMPLETE  0x0B
346ff3ef268SMilanka Ringwald 
347ff3ef268SMilanka Ringwald /**
348ff3ef268SMilanka Ringwald  * @format 12122
349ff3ef268SMilanka Ringwald  * @param status
350ff3ef268SMilanka Ringwald  * @param connection_handle
351ff3ef268SMilanka Ringwald  * @param version
352ff3ef268SMilanka Ringwald  * @param manufacturer_name
353ff3ef268SMilanka Ringwald  * @param subversion
354ff3ef268SMilanka Ringwald  */
355ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE 0x0C
356ff3ef268SMilanka Ringwald 
357ff3ef268SMilanka Ringwald #define HCI_EVENT_QOS_SETUP_COMPLETE                       0x0D
358ff3ef268SMilanka Ringwald 
359ff3ef268SMilanka Ringwald /**
360ff3ef268SMilanka Ringwald  * @format 12R
361ff3ef268SMilanka Ringwald  * @param num_hci_command_packets
362ff3ef268SMilanka Ringwald  * @param command_opcode
363ff3ef268SMilanka Ringwald  * @param return_parameters
364ff3ef268SMilanka Ringwald  */
365ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_COMPLETE                         0x0E
366ff3ef268SMilanka Ringwald /**
367ff3ef268SMilanka Ringwald  * @format 112
368ff3ef268SMilanka Ringwald  * @param status
369ff3ef268SMilanka Ringwald  * @param num_hci_command_packets
370ff3ef268SMilanka Ringwald  * @param command_opcode
371ff3ef268SMilanka Ringwald  */
372ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_STATUS                           0x0F
373ff3ef268SMilanka Ringwald 
374ff3ef268SMilanka Ringwald /**
375ff3ef268SMilanka Ringwald  * @format 1
376ff3ef268SMilanka Ringwald  * @param hardware_code
377ff3ef268SMilanka Ringwald  */
378ff3ef268SMilanka Ringwald #define HCI_EVENT_HARDWARE_ERROR                           0x10
379ff3ef268SMilanka Ringwald 
380ff3ef268SMilanka Ringwald #define HCI_EVENT_FLUSH_OCCURRED                           0x11
381ff3ef268SMilanka Ringwald 
382ff3ef268SMilanka Ringwald /**
383ff3ef268SMilanka Ringwald  * @format 1B1
384ff3ef268SMilanka Ringwald  * @param status
385ff3ef268SMilanka Ringwald  * @param bd_addr
386ff3ef268SMilanka Ringwald  * @param role
387ff3ef268SMilanka Ringwald  */
388ff3ef268SMilanka Ringwald #define HCI_EVENT_ROLE_CHANGE                              0x12
389ff3ef268SMilanka Ringwald 
390ff3ef268SMilanka Ringwald // TODO: number_of_handles 1, connection_handle[H*i], hc_num_of_completed_packets[2*i]
391ff3ef268SMilanka Ringwald #define HCI_EVENT_NUMBER_OF_COMPLETED_PACKETS              0x13
392ff3ef268SMilanka Ringwald 
393ff3ef268SMilanka Ringwald /**
394ff3ef268SMilanka Ringwald  * @format 1H12
395ff3ef268SMilanka Ringwald  * @param status
396ff3ef268SMilanka Ringwald  * @param handle
397ff3ef268SMilanka Ringwald  * @param mode
398ff3ef268SMilanka Ringwald  * @param interval
399ff3ef268SMilanka Ringwald  */
400ff3ef268SMilanka Ringwald #define HCI_EVENT_MODE_CHANGE                              0x14
401ff3ef268SMilanka Ringwald 
402ff3ef268SMilanka Ringwald // TODO: num_keys, bd_addr[B*i], link_key[16 octets * i]
403ff3ef268SMilanka Ringwald #define HCI_EVENT_RETURN_LINK_KEYS                         0x15
404ff3ef268SMilanka Ringwald 
405ff3ef268SMilanka Ringwald /**
406ff3ef268SMilanka Ringwald  * @format B
407ff3ef268SMilanka Ringwald  * @param bd_addr
408ff3ef268SMilanka Ringwald  */
409ff3ef268SMilanka Ringwald #define HCI_EVENT_PIN_CODE_REQUEST                         0x16
410ff3ef268SMilanka Ringwald 
411ff3ef268SMilanka Ringwald /**
412ff3ef268SMilanka Ringwald  * @format B
413ff3ef268SMilanka Ringwald  * @param bd_addr
414ff3ef268SMilanka Ringwald  */
415ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_REQUEST                         0x17
416ff3ef268SMilanka Ringwald 
417ff3ef268SMilanka Ringwald // TODO: bd_addr B, link_key 16octets, key_type 1
418ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_NOTIFICATION                    0x18
419ff3ef268SMilanka Ringwald 
420ff3ef268SMilanka Ringwald /**
421ff3ef268SMilanka Ringwald  * @format 1
422ff3ef268SMilanka Ringwald  * @param link_type
423ff3ef268SMilanka Ringwald  */
424ff3ef268SMilanka Ringwald #define HCI_EVENT_DATA_BUFFER_OVERFLOW                     0x1A
425ff3ef268SMilanka Ringwald 
426ff3ef268SMilanka Ringwald /**
427ff3ef268SMilanka Ringwald  * @format H1
428ff3ef268SMilanka Ringwald  * @param handle
429ff3ef268SMilanka Ringwald  * @param lmp_max_slots
430ff3ef268SMilanka Ringwald  */
431ff3ef268SMilanka Ringwald #define HCI_EVENT_MAX_SLOTS_CHANGED                        0x1B
432ff3ef268SMilanka Ringwald 
433ff3ef268SMilanka Ringwald /**
434ff3ef268SMilanka Ringwald  * @format 1H2
435ff3ef268SMilanka Ringwald  * @param status
436ff3ef268SMilanka Ringwald  * @param handle
437ff3ef268SMilanka Ringwald  * @param clock_offset
438ff3ef268SMilanka Ringwald  */
439ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE               0x1C
440ff3ef268SMilanka Ringwald 
441ff3ef268SMilanka Ringwald /**
442ff3ef268SMilanka Ringwald  * @format 1H2
443ff3ef268SMilanka Ringwald  * @param status
444ff3ef268SMilanka Ringwald  * @param handle
445ff3ef268SMilanka Ringwald  * @param packet_types
446ff3ef268SMilanka Ringwald  * @pnote packet_type is in plural to avoid clash with Java binding Packet.getPacketType()
447ff3ef268SMilanka Ringwald  */
448ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED           0x1D
449ff3ef268SMilanka Ringwald 
450ff3ef268SMilanka Ringwald /**
451ff3ef268SMilanka Ringwald  * @format 1B11321
452ff3ef268SMilanka Ringwald  * @param num_responses
453ff3ef268SMilanka Ringwald  * @param bd_addr
454ff3ef268SMilanka Ringwald  * @param page_scan_repetition_mode
455ff3ef268SMilanka Ringwald  * @param reserved
456ff3ef268SMilanka Ringwald  * @param class_of_device
457ff3ef268SMilanka Ringwald  * @param clock_offset
458ff3ef268SMilanka Ringwald  * @param rssi
459ff3ef268SMilanka Ringwald  */
460ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT_WITH_RSSI                 0x22
461ff3ef268SMilanka Ringwald 
462d5057706SMatthias Ringwald #define HCI_EVENT_READ_REMOTE_EXTENDED_FEATURES_COMPLETE   0x23
463d5057706SMatthias Ringwald 
464ff3ef268SMilanka Ringwald /**
465ff3ef268SMilanka Ringwald  * @format 1HB111221
466ff3ef268SMilanka Ringwald  * @param status
467ff3ef268SMilanka Ringwald  * @param handle
468ff3ef268SMilanka Ringwald  * @param bd_addr
469ff3ef268SMilanka Ringwald  * @param link_type
470ff3ef268SMilanka Ringwald  * @param transmission_interval
471ff3ef268SMilanka Ringwald  * @param retransmission_interval
472ff3ef268SMilanka Ringwald  * @param rx_packet_length
473ff3ef268SMilanka Ringwald  * @param tx_packet_length
474ff3ef268SMilanka Ringwald  * @param air_mode
475ff3ef268SMilanka Ringwald  */
476ff3ef268SMilanka Ringwald #define HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE          0x2C
477ff3ef268SMilanka Ringwald 
478ff3ef268SMilanka Ringwald // TODO: serialize extended_inquiry_response and provide parser
479ff3ef268SMilanka Ringwald /**
480ff3ef268SMilanka Ringwald  * @format 1B11321
481ff3ef268SMilanka Ringwald  * @param num_responses
482ff3ef268SMilanka Ringwald  * @param bd_addr
483ff3ef268SMilanka Ringwald  * @param page_scan_repetition_mode
484ff3ef268SMilanka Ringwald  * @param reserved
485ff3ef268SMilanka Ringwald  * @param class_of_device
486ff3ef268SMilanka Ringwald  * @param clock_offset
487ff3ef268SMilanka Ringwald  * @param rssi
488ff3ef268SMilanka Ringwald  */
489ff3ef268SMilanka Ringwald #define HCI_EVENT_EXTENDED_INQUIRY_RESPONSE                0x2F
490ff3ef268SMilanka Ringwald 
491ff3ef268SMilanka Ringwald  /**
492ff3ef268SMilanka Ringwald   * @format 1H
493ff3ef268SMilanka Ringwald   * @param status
494ff3ef268SMilanka Ringwald   * @param handle
495ff3ef268SMilanka Ringwald   */
496ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE          0x30
497ff3ef268SMilanka Ringwald 
4989c2de2bcSMatthias Ringwald  /**
4999c2de2bcSMatthias Ringwald   * @format B
5009c2de2bcSMatthias Ringwald   * @param bd_addr
5019c2de2bcSMatthias Ringwald   */
502ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_REQUEST                    0x31
5039c2de2bcSMatthias Ringwald 
5049c2de2bcSMatthias Ringwald /**
5059c2de2bcSMatthias Ringwald  * @format B111
5069c2de2bcSMatthias Ringwald  * @param bd_addr
5079c2de2bcSMatthias Ringwald  * @param io_capability
5089c2de2bcSMatthias Ringwald  * @param oob_data_present
5099c2de2bcSMatthias Ringwald  * @param authentication_requirements
5109c2de2bcSMatthias Ringwald  */
511ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_RESPONSE                   0x32
512ff3ef268SMilanka Ringwald 
513ff3ef268SMilanka Ringwald /**
514ff3ef268SMilanka Ringwald  * @format B4
515ff3ef268SMilanka Ringwald  * @param bd_addr
516ff3ef268SMilanka Ringwald  * @param numeric_value
517ff3ef268SMilanka Ringwald  */
518ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_CONFIRMATION_REQUEST                0x33
519ff3ef268SMilanka Ringwald 
520ff3ef268SMilanka Ringwald /**
521ff3ef268SMilanka Ringwald  * @format B
522ff3ef268SMilanka Ringwald  * @param bd_addr
523ff3ef268SMilanka Ringwald  */
524ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_PASSKEY_REQUEST                     0x34
525ff3ef268SMilanka Ringwald 
526ff3ef268SMilanka Ringwald /**
527ff3ef268SMilanka Ringwald  * @format B
528ff3ef268SMilanka Ringwald  * @param bd_addr
529ff3ef268SMilanka Ringwald  */
530ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_OOB_DATA_REQUEST                  0x35
531ff3ef268SMilanka Ringwald 
532ff3ef268SMilanka Ringwald /**
533ff3ef268SMilanka Ringwald  * @format 1B
534ff3ef268SMilanka Ringwald  * @param status
535ff3ef268SMilanka Ringwald  * @param bd_addr
536ff3ef268SMilanka Ringwald  */
537ff3ef268SMilanka Ringwald #define HCI_EVENT_SIMPLE_PAIRING_COMPLETE                  0x36
538ff3ef268SMilanka Ringwald 
5397b73c5a9SMatthias Ringwald /**
5407b73c5a9SMatthias Ringwald  * @format B4
5417b73c5a9SMatthias Ringwald  * @param bd_addr
5427b73c5a9SMatthias Ringwald  * @param numeric_value
5437b73c5a9SMatthias Ringwald  */
5447b73c5a9SMatthias Ringwald #define HCI_EVENT_USER_PASSKEY_NOTIFICATION                0x3B
5457b73c5a9SMatthias Ringwald 
5467b73c5a9SMatthias Ringwald /**
5477b73c5a9SMatthias Ringwald  * @format B1
5487b73c5a9SMatthias Ringwald  * @param bd_addr
5497b73c5a9SMatthias Ringwald  * @param notification_type
5507b73c5a9SMatthias Ringwald  */
5517b73c5a9SMatthias Ringwald #define HCI_EVENT_KEYPRESS_NOTIFICATION                    0x3C
5527b73c5a9SMatthias Ringwald 
553ff3ef268SMilanka Ringwald #define HCI_EVENT_LE_META                                  0x3E
554ff3ef268SMilanka Ringwald 
555ff3ef268SMilanka Ringwald // last used HCI_EVENT in 2.1 is 0x3d
556ff3ef268SMilanka Ringwald // last used HCI_EVENT in 4.1 is 0x57
5577b73c5a9SMatthias Ringwald // last used HCI_EVENT in 5.2 is 0x58
558ff3ef268SMilanka Ringwald 
559ff3ef268SMilanka Ringwald #define HCI_EVENT_VENDOR_SPECIFIC                          0xFF
560ff3ef268SMilanka Ringwald 
561ff3ef268SMilanka Ringwald /**
562ff3ef268SMilanka Ringwald  * @format 11H11B2221
563ff3ef268SMilanka Ringwald  * @param subevent_code
564ff3ef268SMilanka Ringwald  * @param status
565ff3ef268SMilanka Ringwald  * @param connection_handle
566ff3ef268SMilanka Ringwald  * @param role
567ff3ef268SMilanka Ringwald  * @param peer_address_type
568ff3ef268SMilanka Ringwald  * @param peer_address
569ff3ef268SMilanka Ringwald  * @param conn_interval
570ff3ef268SMilanka Ringwald  * @param conn_latency
571ff3ef268SMilanka Ringwald  * @param supervision_timeout
572ff3ef268SMilanka Ringwald  * @param master_clock_accuracy
573ff3ef268SMilanka Ringwald  */
574ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_CONNECTION_COMPLETE                0x01
575ff3ef268SMilanka Ringwald 
576ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator
577ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ADVERTISING_REPORT                 0x02
578ff3ef268SMilanka Ringwald 
579ff3ef268SMilanka Ringwald /**
580ff3ef268SMilanka Ringwald  * @format 11H222
581ff3ef268SMilanka Ringwald  * @param subevent_code
582ff3ef268SMilanka Ringwald  * @param status
583ff3ef268SMilanka Ringwald  * @param connection_handle
584ff3ef268SMilanka Ringwald  * @param conn_interval
585ff3ef268SMilanka Ringwald  * @param conn_latency
586ff3ef268SMilanka Ringwald  * @param supervision_timeout
587ff3ef268SMilanka Ringwald  */
588ff3ef268SMilanka Ringwald  #define HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE         0x03
589ff3ef268SMilanka Ringwald 
590ff3ef268SMilanka Ringwald /**
591638cc6b8SMatthias Ringwald  * @format 1HD
592ff3ef268SMilanka Ringwald  * @param subevent_code
593ff3ef268SMilanka Ringwald  * @param connection_handle
594638cc6b8SMatthias Ringwald  * @param le_features
595ff3ef268SMilanka Ringwald  */
596638cc6b8SMatthias Ringwald #define HCI_SUBEVENT_LE_READ_REMOTE_FEATURES_COMPLETE 0x04
597ff3ef268SMilanka Ringwald 
598ff3ef268SMilanka Ringwald /**
599ff3ef268SMilanka Ringwald  * @format 1HD2
600ff3ef268SMilanka Ringwald  * @param subevent_code
601ff3ef268SMilanka Ringwald  * @param connection_handle
602ff3ef268SMilanka Ringwald  * @param random_number
603ff3ef268SMilanka Ringwald  * @param encryption_diversifier
604ff3ef268SMilanka Ringwald  */
605ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST              0x05
606ff3ef268SMilanka Ringwald 
607ff3ef268SMilanka Ringwald /**
608ff3ef268SMilanka Ringwald  * @format 1H2222
609ff3ef268SMilanka Ringwald  * @param subevent_code
610ff3ef268SMilanka Ringwald  * @param connection_handle
611ff3ef268SMilanka Ringwald  * @param interval_min
612ff3ef268SMilanka Ringwald  * @param interval_max
613ff3ef268SMilanka Ringwald  * @param latency
614ff3ef268SMilanka Ringwald  * @param timeout
615ff3ef268SMilanka Ringwald  */
616ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST 0x06
617ff3ef268SMilanka Ringwald 
618ff3ef268SMilanka Ringwald /**
619ff3ef268SMilanka Ringwald  * @format 1H2222
620ff3ef268SMilanka Ringwald  * @param subevent_code
621ff3ef268SMilanka Ringwald  * @param connection_handle
622ff3ef268SMilanka Ringwald  * @param max_tx_octets
623ff3ef268SMilanka Ringwald  * @param max_tx_time
624ff3ef268SMilanka Ringwald  * @param max_rx_octets
625ff3ef268SMilanka Ringwald  * @param max_rx_time
626ff3ef268SMilanka Ringwald  */
627ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE 0x07
628ff3ef268SMilanka Ringwald 
629ff3ef268SMilanka Ringwald /**
630ff3ef268SMilanka Ringwald  * @format 11QQ
631ff3ef268SMilanka Ringwald  * @param subevent_code
632ff3ef268SMilanka Ringwald  * @param status
633ff3ef268SMilanka Ringwald  * @param dhkey_x x coordinate of P256 public key
634ff3ef268SMilanka Ringwald  * @param dhkey_y y coordinate of P256 public key
635ff3ef268SMilanka Ringwald  */
636ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE 0x08
637ff3ef268SMilanka Ringwald  /**
638ff3ef268SMilanka Ringwald  * @format 11Q
639ff3ef268SMilanka Ringwald  * @param subevent_code
640ff3ef268SMilanka Ringwald  * @param status
641ff3ef268SMilanka Ringwald  * @param dhkey Diffie-Hellman key
642ff3ef268SMilanka Ringwald  */
643ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE            0x09
644ff3ef268SMilanka Ringwald 
645ff3ef268SMilanka Ringwald /**
646ff3ef268SMilanka Ringwald  * @format 11H11BBB2221
647ff3ef268SMilanka Ringwald  * @param subevent_code
648ff3ef268SMilanka Ringwald  * @param status
649ff3ef268SMilanka Ringwald  * @param connection_handle
650ff3ef268SMilanka Ringwald  * @param role
651ff3ef268SMilanka Ringwald  * @param peer_address_type
652ff3ef268SMilanka Ringwald  * @param perr_addresss
653ff3ef268SMilanka Ringwald  * @param local_resolvable_private_addres
654ff3ef268SMilanka Ringwald  * @param peer_resolvable_private_addres
655ff3ef268SMilanka Ringwald  * @param conn_interval
656ff3ef268SMilanka Ringwald  * @param conn_latency
657ff3ef268SMilanka Ringwald  * @param supervision_timeout
658ff3ef268SMilanka Ringwald  * @param master_clock_accuracy
659ff3ef268SMilanka Ringwald  */
660ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE       0x0A
661ff3ef268SMilanka Ringwald 
662ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator
663ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DIRECT_ADVERTISING_REPORT          0x0B
664ff3ef268SMilanka Ringwald 
665ff3ef268SMilanka Ringwald 
666941b3855SMatthias Ringwald /**
667941b3855SMatthias Ringwald  * @format 1
668941b3855SMatthias Ringwald  * @param state
669941b3855SMatthias Ringwald  */
670941b3855SMatthias Ringwald #define BTSTACK_EVENT_STATE                                0x60
671941b3855SMatthias Ringwald 
67252aef63fSMatthias Ringwald /**
67352aef63fSMatthias Ringwald  * @format 1
67452aef63fSMatthias Ringwald  * @param number_connections
67552aef63fSMatthias Ringwald  */
676941b3855SMatthias Ringwald #define BTSTACK_EVENT_NR_CONNECTIONS_CHANGED               0x61
677941b3855SMatthias Ringwald 
678941b3855SMatthias Ringwald /**
679941b3855SMatthias Ringwald  * @format
680941b3855SMatthias Ringwald  */
681941b3855SMatthias Ringwald #define BTSTACK_EVENT_POWERON_FAILED                       0x62
682941b3855SMatthias Ringwald 
683941b3855SMatthias Ringwald /**
684827b1c43SMatthias Ringwald  * @format 1
685827b1c43SMatthias Ringwald  * @param discoverable
686827b1c43SMatthias Ringwald  */
687827b1c43SMatthias Ringwald #define BTSTACK_EVENT_DISCOVERABLE_ENABLED                 0x66
688827b1c43SMatthias Ringwald 
689827b1c43SMatthias Ringwald // Daemon Events
690827b1c43SMatthias Ringwald 
691827b1c43SMatthias Ringwald /**
692941b3855SMatthias Ringwald  * @format 112
693941b3855SMatthias Ringwald  * @param major
694941b3855SMatthias Ringwald  * @param minor
695941b3855SMatthias Ringwald  @ @param revision
696941b3855SMatthias Ringwald  */
697827b1c43SMatthias Ringwald #define DAEMON_EVENT_VERSION                               0x63
698941b3855SMatthias Ringwald 
699941b3855SMatthias Ringwald // data: system bluetooth on/off (bool)
700e2334cdcSMatthias Ringwald /**
701e2334cdcSMatthias Ringwald  * @format 1
702e2334cdcSMatthias Ringwald  * param system_bluetooth_enabled
703e2334cdcSMatthias Ringwald  */
704827b1c43SMatthias Ringwald #define DAEMON_EVENT_SYSTEM_BLUETOOTH_ENABLED              0x64
705941b3855SMatthias Ringwald 
706941b3855SMatthias Ringwald // data: event (8), len(8), status (8) == 0, address (48), name (1984 bits = 248 bytes)
707e2334cdcSMatthias Ringwald 
708e2334cdcSMatthias Ringwald /*
709e2334cdcSMatthias Ringwald  * @format 1BT
710e2334cdcSMatthias Ringwald  * @param status == 0 to match read_remote_name_request
711e2334cdcSMatthias Ringwald  * @param address
712e2334cdcSMatthias Ringwald  * @param name
713e2334cdcSMatthias Ringwald  */
714827b1c43SMatthias Ringwald #define DAEMON_EVENT_REMOTE_NAME_CACHED                    0x65
715941b3855SMatthias Ringwald 
71662c64df1SMatthias Ringwald // internal - data: event(8)
717e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_OPENED                     0x67
718941b3855SMatthias Ringwald 
71962c64df1SMatthias Ringwald // internal - data: event(8)
720e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_CLOSED                     0x68
721941b3855SMatthias Ringwald 
72262c64df1SMatthias Ringwald // data: event(8), len(8), local_cid(16), credits(8)
72362c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_CREDITS                         0x74
72462c64df1SMatthias Ringwald 
72562c64df1SMatthias Ringwald /**
72662c64df1SMatthias Ringwald  * @format 12
72762c64df1SMatthias Ringwald  * @param status
72862c64df1SMatthias Ringwald  * @param psm
72962c64df1SMatthias Ringwald  */
73062c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_SERVICE_REGISTERED              0x75
73162c64df1SMatthias Ringwald 
73262c64df1SMatthias Ringwald /**
73362c64df1SMatthias Ringwald  * @format 21
73462c64df1SMatthias Ringwald  * @param rfcomm_cid
73562c64df1SMatthias Ringwald  * @param credits
73662c64df1SMatthias Ringwald  */
73762c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_CREDITS                        0x84
73862c64df1SMatthias Ringwald 
73962c64df1SMatthias Ringwald /**
74062c64df1SMatthias Ringwald  * @format 11
74162c64df1SMatthias Ringwald  * @param status
74262c64df1SMatthias Ringwald  * @param channel_id
74362c64df1SMatthias Ringwald  */
744fea5a680SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_SERVICE_REGISTERED             0x85
745fea5a680SMatthias Ringwald 
74662c64df1SMatthias Ringwald /**
74762c64df1SMatthias Ringwald  * @format 11
74862c64df1SMatthias Ringwald  * @param status
74962c64df1SMatthias Ringwald  * @param server_channel_id
75062c64df1SMatthias Ringwald  */
75162c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_PERSISTENT_CHANNEL             0x86
75262c64df1SMatthias Ringwald 
75362c64df1SMatthias Ringwald /**
75462c64df1SMatthias Ringwald   * @format 14
75562c64df1SMatthias Ringwald   * @param status
75662c64df1SMatthias Ringwald   * @param service_record_handle
75762c64df1SMatthias Ringwald   */
75862c64df1SMatthias Ringwald #define DAEMON_EVENT_SDP_SERVICE_REGISTERED                0x90
75962c64df1SMatthias Ringwald 
76062c64df1SMatthias Ringwald 
761827b1c43SMatthias Ringwald 
7623bc639ceSMatthias Ringwald // additional HCI events
76363fa3374SMatthias Ringwald 
76463fa3374SMatthias Ringwald /**
76562ca45d7SMatthias Ringwald  * @brief Indicates HCI transport enters/exits Sleep mode
76662ca45d7SMatthias Ringwald  * @format 1
76762ca45d7SMatthias Ringwald  * @param active
76862ca45d7SMatthias Ringwald  */
769d16a0392SMatthias Ringwald #define HCI_EVENT_TRANSPORT_SLEEP_MODE                     0x69
77062ca45d7SMatthias Ringwald 
77162ca45d7SMatthias Ringwald /**
7720561b2d8STREFOU Felix  * @brief Transport ready
7730561b2d8STREFOU Felix  */
7740561b2d8STREFOU Felix #define HCI_EVENT_TRANSPORT_READY                          0x6D
7750561b2d8STREFOU Felix 
7760561b2d8STREFOU Felix /**
77763fa3374SMatthias Ringwald  * @brief Outgoing packet
77863fa3374SMatthias Ringwald  */
77963fa3374SMatthias Ringwald #define HCI_EVENT_TRANSPORT_PACKET_SENT                    0x6E
78063fa3374SMatthias Ringwald 
7813bc639ceSMatthias Ringwald /**
7823bc639ceSMatthias Ringwald  * @format B
7833bc639ceSMatthias Ringwald  * @param handle
7843bc639ceSMatthias Ringwald  */
7853bc639ceSMatthias Ringwald #define HCI_EVENT_SCO_CAN_SEND_NOW                         0x6F
7863bc639ceSMatthias Ringwald 
78762c64df1SMatthias Ringwald 
788941b3855SMatthias Ringwald // L2CAP EVENTS
789941b3855SMatthias Ringwald 
790b072ba33SMatthias Ringwald /**
7917f1690cfSMatthias Ringwald  * @format 1BH222222111
792b072ba33SMatthias Ringwald  * @param status
793b072ba33SMatthias Ringwald  * @param address
794b072ba33SMatthias Ringwald  * @param handle
795b072ba33SMatthias Ringwald  * @param psm
796b072ba33SMatthias Ringwald  * @param local_cid
797b072ba33SMatthias Ringwald  * @param remote_cid
798b072ba33SMatthias Ringwald  * @param local_mtu
799b072ba33SMatthias Ringwald  * @param remote_mtu
800b072ba33SMatthias Ringwald  * @param flush_timeout
801bab5f4f0SMatthias Ringwald  * @param incoming
8027f1690cfSMatthias Ringwald  * @param mode
8037f1690cfSMatthias Ringwald  * @param fcs
804b072ba33SMatthias Ringwald  */
805941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_OPENED                         0x70
806941b3855SMatthias Ringwald 
807b072ba33SMatthias Ringwald /*
808b072ba33SMatthias Ringwald  * @format 2
809b072ba33SMatthias Ringwald  * @param local_cid
810b072ba33SMatthias Ringwald  */
811941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_CLOSED                         0x71
812941b3855SMatthias Ringwald 
813b072ba33SMatthias Ringwald /**
8146d4269d3SMilanka Ringwald  * @format BH222
815b072ba33SMatthias Ringwald  * @param address
816b072ba33SMatthias Ringwald  * @param handle
817b072ba33SMatthias Ringwald  * @param psm
818b072ba33SMatthias Ringwald  * @param local_cid
819b072ba33SMatthias Ringwald  * @param remote_cid
820b072ba33SMatthias Ringwald  */
821941b3855SMatthias Ringwald #define L2CAP_EVENT_INCOMING_CONNECTION                    0x72
822941b3855SMatthias Ringwald 
823b072ba33SMatthias Ringwald // ??
824941b3855SMatthias Ringwald // data: event(8), len(8), handle(16)
825941b3855SMatthias Ringwald #define L2CAP_EVENT_TIMEOUT_CHECK                          0x73
826941b3855SMatthias Ringwald 
827b072ba33SMatthias Ringwald /**
828b072ba33SMatthias Ringwald  * @format H2222
829b072ba33SMatthias Ringwald  * @param handle
830b072ba33SMatthias Ringwald  * @param interval_min
831b072ba33SMatthias Ringwald  * @param interval_max
832b072ba33SMatthias Ringwald  * @param latencey
833b072ba33SMatthias Ringwald  * @param timeout_multiplier
834b072ba33SMatthias Ringwald  */
835941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST    0x76
836941b3855SMatthias Ringwald 
837941b3855SMatthias Ringwald // data: event(8), len(8), handle(16), result (16) (0 == ok, 1 == fail)
838b072ba33SMatthias Ringwald  /**
839b072ba33SMatthias Ringwald   * @format H2
840b072ba33SMatthias Ringwald   * @param handle
8412c737695SMatthias Ringwald   * @param result
842b072ba33SMatthias Ringwald   */
843941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE   0x77
844941b3855SMatthias Ringwald 
845b072ba33SMatthias Ringwald /**
846b072ba33SMatthias Ringwald  * @format 2
847b072ba33SMatthias Ringwald  * @param local_cid
848b072ba33SMatthias Ringwald  */
849b072ba33SMatthias Ringwald #define L2CAP_EVENT_CAN_SEND_NOW                           0x78
850b072ba33SMatthias Ringwald 
85144276248SMatthias Ringwald // LE Data Channels
85244276248SMatthias Ringwald 
85344276248SMatthias Ringwald /**
85444276248SMatthias Ringwald  * @format 1BH2222
85544276248SMatthias Ringwald  * @param address_type
85644276248SMatthias Ringwald  * @param address
85744276248SMatthias Ringwald  * @param handle
85844276248SMatthias Ringwald  * @param psm
85944276248SMatthias Ringwald  * @param local_cid
86044276248SMatthias Ringwald  * @param remote_cid
86144276248SMatthias Ringwald  * @param remote_mtu
86244276248SMatthias Ringwald  */
86344276248SMatthias Ringwald #define L2CAP_EVENT_LE_INCOMING_CONNECTION                 0x79
86444276248SMatthias Ringwald 
86544276248SMatthias Ringwald /**
86612242deaSMatthias Ringwald  * @format 11BH122222
86744276248SMatthias Ringwald  * @param status
86844276248SMatthias Ringwald  * @param address_type
86944276248SMatthias Ringwald  * @param address
87044276248SMatthias Ringwald  * @param handle
87112242deaSMatthias Ringwald  * @param incoming
87244276248SMatthias Ringwald  * @param psm
87344276248SMatthias Ringwald  * @param local_cid
87444276248SMatthias Ringwald  * @param remote_cid
87544276248SMatthias Ringwald  * @param local_mtu
87644276248SMatthias Ringwald  * @param remote_mtu
87744276248SMatthias Ringwald  */
87844276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_OPENED                      0x7a
87944276248SMatthias Ringwald 
88044276248SMatthias Ringwald /*
88144276248SMatthias Ringwald  * @format 2
88244276248SMatthias Ringwald  * @param local_cid
88344276248SMatthias Ringwald  */
88444276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_CLOSED                      0x7b
88544276248SMatthias Ringwald 
88644276248SMatthias Ringwald /*
88744276248SMatthias Ringwald  * @format 2
88844276248SMatthias Ringwald  * @param local_cid
88944276248SMatthias Ringwald  */
89044276248SMatthias Ringwald #define L2CAP_EVENT_LE_CAN_SEND_NOW                        0x7c
89144276248SMatthias Ringwald 
89244276248SMatthias Ringwald /*
89344276248SMatthias Ringwald  * @format 2
89444276248SMatthias Ringwald  * @param local_cid
89544276248SMatthias Ringwald  */
89644276248SMatthias Ringwald #define L2CAP_EVENT_LE_PACKET_SENT                         0x7d
89744276248SMatthias Ringwald 
89866a72640SMatthias Ringwald /*
89966a72640SMatthias Ringwald  * @format 2
90066a72640SMatthias Ringwald  * @param local_cid
90166a72640SMatthias Ringwald  */
90266a72640SMatthias Ringwald #define L2CAP_EVENT_ERTM_BUFFER_RELEASED                   0x7e
90366a72640SMatthias Ringwald 
90409c9c963SMatthias Ringwald /*
90509c9c963SMatthias Ringwald  * @format
90609c9c963SMatthias Ringwald  */
907fa485b2bSMatthias Ringwald #define L2CAP_EVENT_TRIGGER_RUN                            0x7f
90809c9c963SMatthias Ringwald 
90944276248SMatthias Ringwald 
910941b3855SMatthias Ringwald // RFCOMM EVENTS
911b072ba33SMatthias Ringwald 
912941b3855SMatthias Ringwald /**
913bab5f4f0SMatthias Ringwald  * @format 1B21221
914941b3855SMatthias Ringwald  * @param status
915941b3855SMatthias Ringwald  * @param bd_addr
916941b3855SMatthias Ringwald  * @param con_handle
917941b3855SMatthias Ringwald  * @param server_channel
918941b3855SMatthias Ringwald  * @param rfcomm_cid
919941b3855SMatthias Ringwald  * @param max_frame_size
920bab5f4f0SMatthias Ringwald  * @param incoming
921941b3855SMatthias Ringwald  */
922f8f6a918SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_OPENED                        0x80
923941b3855SMatthias Ringwald 
924941b3855SMatthias Ringwald /**
925941b3855SMatthias Ringwald  * @format 2
926941b3855SMatthias Ringwald  * @param rfcomm_cid
927941b3855SMatthias Ringwald  */
928941b3855SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_CLOSED                        0x81
929941b3855SMatthias Ringwald 
930941b3855SMatthias Ringwald /**
931941b3855SMatthias Ringwald  * @format B12
932941b3855SMatthias Ringwald  * @param bd_addr
933941b3855SMatthias Ringwald  * @param server_channel
934941b3855SMatthias Ringwald  * @param rfcomm_cid
935941b3855SMatthias Ringwald  */
936941b3855SMatthias Ringwald #define RFCOMM_EVENT_INCOMING_CONNECTION                   0x82
937941b3855SMatthias Ringwald 
938941b3855SMatthias Ringwald /**
939941b3855SMatthias Ringwald  * @format 21
940941b3855SMatthias Ringwald  * @param rfcomm_cid
941941b3855SMatthias Ringwald  * @param line_status
942941b3855SMatthias Ringwald  */
943941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_LINE_STATUS                    0x83
944941b3855SMatthias Ringwald 
945941b3855SMatthias Ringwald /**
946941b3855SMatthias Ringwald  * @format 21
947941b3855SMatthias Ringwald  * @param rfcomm_cid
948941b3855SMatthias Ringwald  * @param modem_status
949941b3855SMatthias Ringwald  */
950941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_MODEM_STATUS                   0x87
951941b3855SMatthias Ringwald 
952941b3855SMatthias Ringwald  /**
9537bd8e93bSMatthias Ringwald   * TODO: format for variable data 2?
954045013feSMatthias Ringwald   * param rfcomm_cid
955045013feSMatthias Ringwald   * param rpn_data
956941b3855SMatthias Ringwald   */
957941b3855SMatthias Ringwald #define RFCOMM_EVENT_PORT_CONFIGURATION                    0x88
958941b3855SMatthias Ringwald 
959941b3855SMatthias Ringwald /**
960b072ba33SMatthias Ringwald  * @format 2
96162c468cbSMatthias Ringwald  * @param rfcomm_cid
962b072ba33SMatthias Ringwald  */
963b072ba33SMatthias Ringwald #define RFCOMM_EVENT_CAN_SEND_NOW                          0x89
964b072ba33SMatthias Ringwald 
965b072ba33SMatthias Ringwald 
966b072ba33SMatthias Ringwald /**
967941b3855SMatthias Ringwald  * @format 1
968941b3855SMatthias Ringwald  * @param status
969941b3855SMatthias Ringwald  */
9705611a760SMatthias Ringwald #define SDP_EVENT_QUERY_COMPLETE                                 0x91
971941b3855SMatthias Ringwald 
972941b3855SMatthias Ringwald /**
973941b3855SMatthias Ringwald  * @format 1T
974941b3855SMatthias Ringwald  * @param rfcomm_channel
975941b3855SMatthias Ringwald  * @param name
976941b3855SMatthias Ringwald  */
9775611a760SMatthias Ringwald #define SDP_EVENT_QUERY_RFCOMM_SERVICE                           0x92
978941b3855SMatthias Ringwald 
979941b3855SMatthias Ringwald /**
9804225393cSMatthias Ringwald  * @format 22221
9814225393cSMatthias Ringwald  * @param record_id
982941b3855SMatthias Ringwald  * @param attribute_id
9834225393cSMatthias Ringwald  * @param attribute_length
9844225393cSMatthias Ringwald  * @param data_offset
9854225393cSMatthias Ringwald  * @param data
986941b3855SMatthias Ringwald  */
9875611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_BYTE                           0x93
988941b3855SMatthias Ringwald 
9894de250b4SMatthias Ringwald /**
9904de250b4SMatthias Ringwald  * @format 22LV
9914de250b4SMatthias Ringwald  * @param record_id
9924de250b4SMatthias Ringwald  * @param attribute_id
9934de250b4SMatthias Ringwald  * @param attribute_length
9944de250b4SMatthias Ringwald  * @param attribute_value
9954de250b4SMatthias Ringwald  */
9965611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_VALUE                          0x94
9974225393cSMatthias Ringwald 
9984225393cSMatthias Ringwald /**
9994225393cSMatthias Ringwald  * @format 224
10004225393cSMatthias Ringwald  * @param total_count
10014225393cSMatthias Ringwald  * @param record_index
10024225393cSMatthias Ringwald  * @param record_handle
10034225393cSMatthias Ringwald  * @note Not provided by daemon, only used for internal testing
10044225393cSMatthias Ringwald  */
10055611a760SMatthias Ringwald #define SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE                    0x95
1006941b3855SMatthias Ringwald 
1007941b3855SMatthias Ringwald /**
1008941b3855SMatthias Ringwald  * @format H1
1009941b3855SMatthias Ringwald  * @param handle
10109cb80b17SMilanka Ringwald  * @param att_status  see ATT errors in bluetooth.h
1011941b3855SMatthias Ringwald  */
10125611a760SMatthias Ringwald #define GATT_EVENT_QUERY_COMPLETE                                0xA0
1013941b3855SMatthias Ringwald 
1014941b3855SMatthias Ringwald /**
1015941b3855SMatthias Ringwald  * @format HX
1016941b3855SMatthias Ringwald  * @param handle
1017941b3855SMatthias Ringwald  * @param service
1018941b3855SMatthias Ringwald  */
10195611a760SMatthias Ringwald #define GATT_EVENT_SERVICE_QUERY_RESULT                          0xA1
1020941b3855SMatthias Ringwald 
1021941b3855SMatthias Ringwald /**
1022941b3855SMatthias Ringwald  * @format HY
1023941b3855SMatthias Ringwald  * @param handle
1024941b3855SMatthias Ringwald  * @param characteristic
1025941b3855SMatthias Ringwald  */
10265611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_QUERY_RESULT                   0xA2
1027941b3855SMatthias Ringwald 
1028941b3855SMatthias Ringwald /**
1029941b3855SMatthias Ringwald  * @format H2X
1030941b3855SMatthias Ringwald  * @param handle
1031941b3855SMatthias Ringwald  * @param include_handle
1032941b3855SMatthias Ringwald  * @param service
1033941b3855SMatthias Ringwald  */
10345611a760SMatthias Ringwald #define GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT                 0xA3
1035941b3855SMatthias Ringwald 
1036941b3855SMatthias Ringwald /**
1037941b3855SMatthias Ringwald  * @format HZ
1038941b3855SMatthias Ringwald  * @param handle
1039941b3855SMatthias Ringwald  * @param characteristic_descriptor
1040941b3855SMatthias Ringwald  */
10415611a760SMatthias Ringwald #define GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT   0xA4
1042941b3855SMatthias Ringwald 
1043941b3855SMatthias Ringwald /**
1044941b3855SMatthias Ringwald  * @format H2LV
1045941b3855SMatthias Ringwald  * @param handle
1046941b3855SMatthias Ringwald  * @param value_handle
1047941b3855SMatthias Ringwald  * @param value_length
1048941b3855SMatthias Ringwald  * @param value
1049941b3855SMatthias Ringwald  */
10505611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT             0xA5
1051941b3855SMatthias Ringwald 
1052941b3855SMatthias Ringwald /**
1053941b3855SMatthias Ringwald  * @format H22LV
1054941b3855SMatthias Ringwald  * @param handle
1055941b3855SMatthias Ringwald  * @param value_handle
1056941b3855SMatthias Ringwald  * @param value_offset
1057941b3855SMatthias Ringwald  * @param value_length
1058941b3855SMatthias Ringwald  * @param value
1059941b3855SMatthias Ringwald  */
10605611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT        0xA6
1061941b3855SMatthias Ringwald 
1062941b3855SMatthias Ringwald /**
1063941b3855SMatthias Ringwald  * @format H2LV
1064941b3855SMatthias Ringwald  * @param handle
1065941b3855SMatthias Ringwald  * @param value_handle
1066941b3855SMatthias Ringwald  * @param value_length
1067941b3855SMatthias Ringwald  * @param value
1068941b3855SMatthias Ringwald  */
10695611a760SMatthias Ringwald #define GATT_EVENT_NOTIFICATION                                  0xA7
1070941b3855SMatthias Ringwald 
1071941b3855SMatthias Ringwald /**
1072941b3855SMatthias Ringwald  * @format H2LV
1073941b3855SMatthias Ringwald  * @param handle
1074941b3855SMatthias Ringwald  * @param value_handle
1075941b3855SMatthias Ringwald  * @param value_length
1076941b3855SMatthias Ringwald  * @param value
1077941b3855SMatthias Ringwald  */
10785611a760SMatthias Ringwald #define GATT_EVENT_INDICATION                                    0xA8
1079941b3855SMatthias Ringwald 
1080941b3855SMatthias Ringwald /**
1081941b3855SMatthias Ringwald  * @format H2LV
10822c737695SMatthias Ringwald  * @param handle
1083941b3855SMatthias Ringwald  * @param descriptor_handle
1084941b3855SMatthias Ringwald  * @param descriptor_length
1085941b3855SMatthias Ringwald  * @param descriptor
1086941b3855SMatthias Ringwald  */
10875611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT        0xA9
1088941b3855SMatthias Ringwald 
1089941b3855SMatthias Ringwald /**
1090941b3855SMatthias Ringwald  * @format H2LV
1091941b3855SMatthias Ringwald  * @param handle
1092941b3855SMatthias Ringwald  * @param descriptor_offset
1093941b3855SMatthias Ringwald  * @param descriptor_length
1094941b3855SMatthias Ringwald  * @param descriptor
1095941b3855SMatthias Ringwald  */
10965611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT   0xAA
1097941b3855SMatthias Ringwald 
1098941b3855SMatthias Ringwald /**
1099941b3855SMatthias Ringwald  * @format H2
1100941b3855SMatthias Ringwald  * @param handle
1101941b3855SMatthias Ringwald  * @param MTU
1102941b3855SMatthias Ringwald  */
11035611a760SMatthias Ringwald #define GATT_EVENT_MTU                                           0xAB
1104941b3855SMatthias Ringwald 
1105941b3855SMatthias Ringwald /**
110671af96a1SMatthias Ringwald  * @format H
110771af96a1SMatthias Ringwald  * @param handle
110871af96a1SMatthias Ringwald  */
110971af96a1SMatthias Ringwald #define GATT_EVENT_CAN_WRITE_WITHOUT_RESPONSE                    0xAC
111071af96a1SMatthias Ringwald 
1111174a0c1cSMilanka Ringwald 
111271af96a1SMatthias Ringwald /**
11135d964c8bSMatthias Ringwald  * @format 1BH
1114a43588baSMatthias Ringwald  * @param address_type
1115a43588baSMatthias Ringwald  * @param address
1116a43588baSMatthias Ringwald  * @param handle
1117a43588baSMatthias Ringwald  */
1118a43588baSMatthias Ringwald #define ATT_EVENT_CONNECTED                                      0xB3
1119a43588baSMatthias Ringwald 
1120a43588baSMatthias Ringwald /**
1121a43588baSMatthias Ringwald  * @format H
1122a43588baSMatthias Ringwald  * @param handle
1123a43588baSMatthias Ringwald  */
1124a43588baSMatthias Ringwald #define ATT_EVENT_DISCONNECTED                                   0xB4
1125a43588baSMatthias Ringwald 
1126a43588baSMatthias Ringwald /**
1127941b3855SMatthias Ringwald  * @format H2
1128941b3855SMatthias Ringwald  * @param handle
1129941b3855SMatthias Ringwald  * @param MTU
1130941b3855SMatthias Ringwald  */
11315611a760SMatthias Ringwald #define ATT_EVENT_MTU_EXCHANGE_COMPLETE                          0xB5
1132941b3855SMatthias Ringwald 
113349d18261SMatthias Ringwald  /**
113449d18261SMatthias Ringwald   * @format 1H2
113549d18261SMatthias Ringwald   * @param status
113649d18261SMatthias Ringwald   * @param conn_handle
113749d18261SMatthias Ringwald   * @param attribute_handle
113849d18261SMatthias Ringwald   */
11395611a760SMatthias Ringwald #define ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE               0xB6
1140941b3855SMatthias Ringwald 
114149d18261SMatthias Ringwald /**
114249d18261SMatthias Ringwald  * @format
114349d18261SMatthias Ringwald  */
114449d18261SMatthias Ringwald #define ATT_EVENT_CAN_SEND_NOW                                   0xB7
1145941b3855SMatthias Ringwald 
114649d18261SMatthias Ringwald // TODO: daemon only event
114749d18261SMatthias Ringwald 
114849d18261SMatthias Ringwald /**
114949d18261SMatthias Ringwald  * @format 12
115049d18261SMatthias Ringwald  * @param status
115149d18261SMatthias Ringwald  * @param service_uuid
115249d18261SMatthias Ringwald  */
1153941b3855SMatthias Ringwald  #define BNEP_EVENT_SERVICE_REGISTERED                           0xC0
1154941b3855SMatthias Ringwald 
115549d18261SMatthias Ringwald /**
115632b46fecSMatthias Ringwald  * @format 12222BH
115749d18261SMatthias Ringwald  * @param status
1158423c667cSMatthias Ringwald  * @param bnep_cid
115949d18261SMatthias Ringwald  * @param source_uuid
116049d18261SMatthias Ringwald  * @param destination_uuid
116149d18261SMatthias Ringwald  * @param mtu
116249d18261SMatthias Ringwald  * @param remote_address
116332b46fecSMatthias Ringwald  * @param con_handle
116449d18261SMatthias Ringwald  */
1165423c667cSMatthias Ringwald  #define BNEP_EVENT_CHANNEL_OPENED                               0xC1
1166941b3855SMatthias Ringwald 
116749d18261SMatthias Ringwald /**
1168423c667cSMatthias Ringwald  * @format 222B
1169423c667cSMatthias Ringwald  * @param bnep_cid
117049d18261SMatthias Ringwald  * @param source_uuid
117149d18261SMatthias Ringwald  * @param destination_uuid
117249d18261SMatthias Ringwald  * @param remote_address
117349d18261SMatthias Ringwald  */
1174941b3855SMatthias Ringwald  #define BNEP_EVENT_CHANNEL_CLOSED                               0xC2
1175941b3855SMatthias Ringwald 
117649d18261SMatthias Ringwald /**
1177423c667cSMatthias Ringwald  * @format 222B1
1178423c667cSMatthias Ringwald  * @param bnep_cid
117949d18261SMatthias Ringwald  * @param source_uuid
118049d18261SMatthias Ringwald  * @param destination_uuid
118149d18261SMatthias Ringwald  * @param remote_address
118249d18261SMatthias Ringwald  * @param channel_state
118349d18261SMatthias Ringwald  */
1184941b3855SMatthias Ringwald #define BNEP_EVENT_CHANNEL_TIMEOUT                               0xC3
1185941b3855SMatthias Ringwald 
118649d18261SMatthias Ringwald /**
1187423c667cSMatthias Ringwald  * @format 222B
1188423c667cSMatthias Ringwald  * @param bnep_cid
118949d18261SMatthias Ringwald  * @param source_uuid
119049d18261SMatthias Ringwald  * @param destination_uuid
119149d18261SMatthias Ringwald  * @param remote_address
119249d18261SMatthias Ringwald  */
11932d4c8c04SMatthias Ringwald  #define BNEP_EVENT_CAN_SEND_NOW                                 0xC4
1194941b3855SMatthias Ringwald 
1195941b3855SMatthias Ringwald  /**
1196941b3855SMatthias Ringwald   * @format H1B
1197941b3855SMatthias Ringwald   * @param handle
1198941b3855SMatthias Ringwald   * @param addr_type
1199941b3855SMatthias Ringwald   * @param address
1200941b3855SMatthias Ringwald   */
12011ebbe057SMatthias Ringwald #define SM_EVENT_JUST_WORKS_REQUEST                              0xC8
1202941b3855SMatthias Ringwald 
1203941b3855SMatthias Ringwald  /**
120412a574e5SMatthias Ringwald   * @format H1B4
120512a574e5SMatthias Ringwald   * @param handle
120612a574e5SMatthias Ringwald   * @param addr_type
120712a574e5SMatthias Ringwald   * @param address
120812a574e5SMatthias Ringwald   * @param passkey
120912a574e5SMatthias Ringwald   */
12101ebbe057SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_NUMBER                          0xC9
121112a574e5SMatthias Ringwald 
121212a574e5SMatthias Ringwald  /**
1213941b3855SMatthias Ringwald   * @format H1B
1214941b3855SMatthias Ringwald   * @param handle
1215941b3855SMatthias Ringwald   * @param addr_type
1216941b3855SMatthias Ringwald   * @param address
1217941b3855SMatthias Ringwald   */
12181ebbe057SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_CANCEL                          0xCA
121912a574e5SMatthias Ringwald 
122012a574e5SMatthias Ringwald  /**
122112a574e5SMatthias Ringwald   * @format H1B
122212a574e5SMatthias Ringwald   * @param handle
122312a574e5SMatthias Ringwald   * @param addr_type
122412a574e5SMatthias Ringwald   * @param address
122512a574e5SMatthias Ringwald   */
12261ebbe057SMatthias Ringwald #define SM_EVENT_PASSKEY_INPUT_NUMBER                            0xCB
1227941b3855SMatthias Ringwald 
1228941b3855SMatthias Ringwald  /**
1229941b3855SMatthias Ringwald   * @format H1B4
1230941b3855SMatthias Ringwald   * @param handle
1231941b3855SMatthias Ringwald   * @param addr_type
1232941b3855SMatthias Ringwald   * @param address
1233941b3855SMatthias Ringwald   * @param passkey
1234941b3855SMatthias Ringwald   */
12351ebbe057SMatthias Ringwald #define SM_EVENT_NUMERIC_COMPARISON_REQUEST                      0xCC
1236941b3855SMatthias Ringwald 
1237941b3855SMatthias Ringwald  /**
1238941b3855SMatthias Ringwald   * @format H1B
1239941b3855SMatthias Ringwald   * @param handle
1240941b3855SMatthias Ringwald   * @param addr_type
1241941b3855SMatthias Ringwald   * @param address
1242941b3855SMatthias Ringwald   */
12431ebbe057SMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_STARTED                      0xCD
1244941b3855SMatthias Ringwald 
1245941b3855SMatthias Ringwald  /**
12462c737695SMatthias Ringwald   * @format H1B
1247941b3855SMatthias Ringwald   * @param handle
1248941b3855SMatthias Ringwald   * @param addr_type
1249941b3855SMatthias Ringwald   * @param address
1250941b3855SMatthias Ringwald   */
12511ebbe057SMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_FAILED                       0xCE
1252941b3855SMatthias Ringwald 
1253941b3855SMatthias Ringwald  /**
125484182ed9SMatthias Ringwald   * @brief Identify resolving succeeded
125584182ed9SMatthias Ringwald   *
1256334126b3SMatthias Ringwald   * @format H1B1B2
1257941b3855SMatthias Ringwald   * @param handle
1258941b3855SMatthias Ringwald   * @param addr_type
1259941b3855SMatthias Ringwald   * @param address
126084182ed9SMatthias Ringwald   * @param identity_addr_type
126184182ed9SMatthias Ringwald   * @param identity_address
12626f8637a2SMatthias Ringwald   * @param index
126384182ed9SMatthias Ringwald   *
1264941b3855SMatthias Ringwald   */
12651ebbe057SMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED                    0xCF
1266941b3855SMatthias Ringwald 
1267941b3855SMatthias Ringwald  /**
1268941b3855SMatthias Ringwald   * @format H1B
1269941b3855SMatthias Ringwald   * @param handle
1270941b3855SMatthias Ringwald   * @param addr_type
1271941b3855SMatthias Ringwald   * @param address
1272941b3855SMatthias Ringwald   */
12731ebbe057SMatthias Ringwald #define SM_EVENT_AUTHORIZATION_REQUEST                           0xD0
1274941b3855SMatthias Ringwald 
1275941b3855SMatthias Ringwald  /**
1276941b3855SMatthias Ringwald   * @format H1B1
1277941b3855SMatthias Ringwald   * @param handle
1278941b3855SMatthias Ringwald   * @param addr_type
1279941b3855SMatthias Ringwald   * @param address
1280941b3855SMatthias Ringwald   * @param authorization_result
1281941b3855SMatthias Ringwald   */
12821ebbe057SMatthias Ringwald #define SM_EVENT_AUTHORIZATION_RESULT                            0xD1
1283941b3855SMatthias Ringwald 
12843d7fe1e9SMatthias Ringwald  /**
12853d7fe1e9SMatthias Ringwald   * @format H1
12863d7fe1e9SMatthias Ringwald   * @param handle
12873d7fe1e9SMatthias Ringwald   * @param action see SM_KEYPRESS_*
12883d7fe1e9SMatthias Ringwald   */
12891ebbe057SMatthias Ringwald #define SM_EVENT_KEYPRESS_NOTIFICATION                           0xD2
12903d7fe1e9SMatthias Ringwald 
129184182ed9SMatthias Ringwald  /**
129284182ed9SMatthias Ringwald   * @brief Emitted during pairing to inform app about address used as identity
129384182ed9SMatthias Ringwald   *
1294fccb5f31SMatthias Ringwald   * @format H1B1B2
129584182ed9SMatthias Ringwald   * @param handle
129684182ed9SMatthias Ringwald   * @param addr_type
129784182ed9SMatthias Ringwald   * @param address
129884182ed9SMatthias Ringwald   * @param identity_addr_type
129984182ed9SMatthias Ringwald   * @param identity_address
13006f8637a2SMatthias Ringwald   * @param index
130184182ed9SMatthias Ringwald   */
13021ebbe057SMatthias Ringwald #define SM_EVENT_IDENTITY_CREATED                                0xD3
13033d7fe1e9SMatthias Ringwald 
130436c1abd2SMatthias Ringwald /**
130538c89bb1SMatthias Ringwald  * @brief Emitted to inform app that pairing has started.
130638c89bb1SMatthias Ringwald  * @format H1B
130738c89bb1SMatthias Ringwald  * @param handle
130838c89bb1SMatthias Ringwald  * @param addr_type
130938c89bb1SMatthias Ringwald  * @param address
131038c89bb1SMatthias Ringwald  */
13111ebbe057SMatthias Ringwald #define SM_EVENT_PAIRING_STARTED                                 0xD4
131238c89bb1SMatthias Ringwald 
131338c89bb1SMatthias Ringwald /**
131436c1abd2SMatthias Ringwald   * @brief Emitted to inform app that pairing is complete. Possible status values:
131536c1abd2SMatthias Ringwald   *        ERROR_CODE_SUCCESS                            -> pairing success
131636c1abd2SMatthias Ringwald   *        ERROR_CODE_CONNECTION_TIMEOUT                 -> timeout
131736c1abd2SMatthias Ringwald   *        ERROR_CODE_REMOTE_USER_TERMINATED_CONNECTION  -> disconnect
131836c1abd2SMatthias Ringwald   *        ERROR_CODE_AUTHENTICATION_FAILURE             -> SM protocol error, see reason field with SM_REASON_* from bluetooth.h
131936c1abd2SMatthias Ringwald   *
132036c1abd2SMatthias Ringwald   * @format H1B11
132136c1abd2SMatthias Ringwald   * @param handle
132236c1abd2SMatthias Ringwald   * @param addr_type
132336c1abd2SMatthias Ringwald   * @param address
132436c1abd2SMatthias Ringwald   * @param status
132536c1abd2SMatthias Ringwald   * @param reason if status == ERROR_CODE_AUTHENTICATION_FAILURE
132636c1abd2SMatthias Ringwald   */
13271ebbe057SMatthias Ringwald #define SM_EVENT_PAIRING_COMPLETE                                0xD5
132836c1abd2SMatthias Ringwald 
132936c1abd2SMatthias Ringwald 
1330fee35ebaSMatthias Ringwald /**
1331fee35ebaSMatthias Ringwald  * @brief Proactive Authentication for bonded devices started.
1332fee35ebaSMatthias Ringwald  * @format H1B
1333fee35ebaSMatthias Ringwald  * @param handle
1334fee35ebaSMatthias Ringwald  * @param addr_type
1335fee35ebaSMatthias Ringwald  * @param address
1336fee35ebaSMatthias Ringwald  */
13371ebbe057SMatthias Ringwald #define SM_EVENT_REENCRYPTION_STARTED                            0xD6
1338fee35ebaSMatthias Ringwald 
1339fee35ebaSMatthias Ringwald /**
1340fee35ebaSMatthias Ringwald  * @brief Proactive Authentication for bonded devices complete. Possible status values:
1341fee35ebaSMatthias Ringwald  *         ERROR_CODE_SUCCESS                           -> connection secure
1342fee35ebaSMatthias Ringwald  *         ERROR_CODE_CONNECTION_TIMEOUT                -> timeout
13437a50df22SMatthias Ringwald  *         ERROR_CODE_PIN_OR_KEY_MISSING                -> remote did not provide (as Peripheral) or use LTK (as Central)
1344fee35ebaSMatthias Ringwald  * @format H1B1
1345fee35ebaSMatthias Ringwald  * @param handle
1346fee35ebaSMatthias Ringwald  * @param addr_type
1347fee35ebaSMatthias Ringwald  * @param address
1348fee35ebaSMatthias Ringwald  * @param status
1349fee35ebaSMatthias Ringwald  */
13501ebbe057SMatthias Ringwald #define SM_EVENT_REENCRYPTION_COMPLETE                           0xD7
1351fee35ebaSMatthias Ringwald 
1352941b3855SMatthias Ringwald // GAP
1353941b3855SMatthias Ringwald 
135446bc5396SMilanka Ringwald /**
135546bc5396SMilanka Ringwald  * @format H1
135646bc5396SMilanka Ringwald  * @param handle
135746bc5396SMilanka Ringwald  * @param security_level
135846bc5396SMilanka Ringwald  */
13591ebbe057SMatthias Ringwald #define GAP_EVENT_SECURITY_LEVEL                                 0xD8
1360941b3855SMatthias Ringwald 
136146bc5396SMilanka Ringwald /**
136246bc5396SMilanka Ringwald  * @format 1B
136346bc5396SMilanka Ringwald  * @param status
136446bc5396SMilanka Ringwald  * @param address
136546bc5396SMilanka Ringwald  */
13661ebbe057SMatthias Ringwald #define GAP_EVENT_DEDICATED_BONDING_COMPLETED                    0xD9
1367941b3855SMatthias Ringwald 
1368941b3855SMatthias Ringwald /**
1369941b3855SMatthias Ringwald  * @format 11B1JV
1370941b3855SMatthias Ringwald  * @param advertising_event_type
1371941b3855SMatthias Ringwald  * @param address_type
1372941b3855SMatthias Ringwald  * @param address
1373941b3855SMatthias Ringwald  * @param rssi
1374941b3855SMatthias Ringwald  * @param data_length
1375941b3855SMatthias Ringwald  * @param data
1376941b3855SMatthias Ringwald  */
13771ebbe057SMatthias Ringwald #define GAP_EVENT_ADVERTISING_REPORT                             0xDA
1378941b3855SMatthias Ringwald 
13791cfb383eSMatthias Ringwald  /**
1380ac9136ccSMatthias Ringwald  * @format B13211122221JV
13811cfb383eSMatthias Ringwald  * @param bd_addr
13821cfb383eSMatthias Ringwald  * @param page_scan_repetition_mode
13831cfb383eSMatthias Ringwald  * @param class_of_device
13841cfb383eSMatthias Ringwald  * @param clock_offset
1385d79faacdSMatthias Ringwald  * @param rssi_available
13861cfb383eSMatthias Ringwald  * @param rssi
1387ac9136ccSMatthias Ringwald  * @param device_id_available
1388ac9136ccSMatthias Ringwald  * @param device_id_vendor_id_source
1389ac9136ccSMatthias Ringwald  * @param device_id_vendor_id
1390ac9136ccSMatthias Ringwald  * @param device_id_product_id
1391ac9136ccSMatthias Ringwald  * @param device_id_version
13921cfb383eSMatthias Ringwald  * @param name_available
13931cfb383eSMatthias Ringwald  * @param name_len
13941cfb383eSMatthias Ringwald  * @param name
13951cfb383eSMatthias Ringwald  */
13961ebbe057SMatthias Ringwald #define GAP_EVENT_INQUIRY_RESULT                                 0xDB
13971cfb383eSMatthias Ringwald 
13981cfb383eSMatthias Ringwald /**
13991cfb383eSMatthias Ringwald  * @format 1
14001cfb383eSMatthias Ringwald  * @param status
14011cfb383eSMatthias Ringwald  */
14021ebbe057SMatthias Ringwald #define GAP_EVENT_INQUIRY_COMPLETE                               0xDC
14031cfb383eSMatthias Ringwald 
1404891b9fc2SMatthias Ringwald /**
1405891b9fc2SMatthias Ringwald  * @format H1
1406891b9fc2SMatthias Ringwald  * @param con_handle
1407891b9fc2SMatthias Ringwald  * @param rssi (signed integer -127..127)
1408891b9fc2SMatthias Ringwald  * @note Classic: rssi is in dB relative to Golden Receive Power Range
1409891b9fc2SMatthias Ringwald  * @note LE: rssi is absolute dBm
1410891b9fc2SMatthias Ringwald  */
14111ebbe057SMatthias Ringwald #define GAP_EVENT_RSSI_MEASUREMENT                               0xDD
1412827b1c43SMatthias Ringwald 
141375a8e4faSMatthias Ringwald /**
141475a8e4faSMatthias Ringwald  * @format 1KKKK
141575a8e4faSMatthias Ringwald  * @param oob_data_present 0 = none, 1 = p_192, 2 = p_256, 3 = both
141675a8e4faSMatthias Ringwald  * @param c_192 Simple Pairing Hash C derived from P-192 public key
141775a8e4faSMatthias Ringwald  * @param r_192 Simple Pairing Randomizer derived from P-192 public key
141875a8e4faSMatthias Ringwald  * @param c_256 Simple Pairing Hash C derived from P-256 public key
141975a8e4faSMatthias Ringwald  * @param r_256 Simple Pairing Randomizer derived from P-256 public key
142075a8e4faSMatthias Ringwald  */
14211ebbe057SMatthias Ringwald #define GAP_EVENT_LOCAL_OOB_DATA                                 0xDE
14221ebbe057SMatthias Ringwald 
142375a8e4faSMatthias Ringwald 
14242026696cSMatthias Ringwald /**
14252026696cSMatthias Ringwald  * @format HB11
14262026696cSMatthias Ringwald  * @param con_handle
14272026696cSMatthias Ringwald  * @param bd_addr
14282026696cSMatthias Ringwald  * @param ssp
14292026696cSMatthias Ringwald  * @param initiator
14302026696cSMatthias Ringwald  */
14312026696cSMatthias Ringwald #define GAP_EVENT_PAIRING_STARTED                                0xDF
14322026696cSMatthias Ringwald 
14332026696cSMatthias Ringwald /**
14342026696cSMatthias Ringwald  * @format HB1
14352026696cSMatthias Ringwald  * @param con_handle
14362026696cSMatthias Ringwald  * @param bd_addr
14372026696cSMatthias Ringwald  * @param status
14382026696cSMatthias Ringwald  */
14392026696cSMatthias Ringwald #define GAP_EVENT_PAIRING_COMPLETE                               0xE0
14402026696cSMatthias Ringwald 
1441e10ce426SMatthias Ringwald // Meta Events, see below for sub events
1442941b3855SMatthias Ringwald #define HCI_EVENT_HSP_META                                       0xE8
144339d235cbSMatthias Ringwald #define HCI_EVENT_HFP_META                                       0xE9
1444e10ce426SMatthias Ringwald #define HCI_EVENT_ANCS_META                                      0xEA
1445beaf082cSMatthias Ringwald #define HCI_EVENT_AVDTP_META                                     0xEB
1446decc740cSMilanka Ringwald #define HCI_EVENT_AVRCP_META                                     0xEC
1447f1b34e8dSMatthias Ringwald #define HCI_EVENT_GOEP_META                                      0xED
1448f1b34e8dSMatthias Ringwald #define HCI_EVENT_PBAP_META                                      0xEE
1449dd148ddbSMatthias Ringwald #define HCI_EVENT_HID_META                                       0xEF
14503e3fbf3dSMilanka Ringwald #define HCI_EVENT_A2DP_META                                      0xF0
1451a4bfc4feSMatthias Ringwald #define HCI_EVENT_HIDS_META                                      0xF1
145228e59789SMilanka Ringwald #define HCI_EVENT_GATTSERVICE_META                               0xF2
1453ad58991cSMilanka Ringwald #define HCI_EVENT_BIP_META                                       0xF3
1454ad58991cSMilanka Ringwald #define HCI_EVENT_MAP_META                                       0xF4
14551fbe4564SMatthias Ringwald #define HCI_EVENT_MESH_META                                      0xF5
145639d235cbSMatthias Ringwald 
1457e10ce426SMatthias Ringwald // Potential other meta groups
1458e10ce426SMatthias Ringwald // #define HCI_EVENT_BNEP_META                                0xxx
1459e10ce426SMatthias Ringwald // #define HCI_EVENT_GAP_META                                 0xxx
1460e10ce426SMatthias Ringwald // #define HCI_EVENT_GATT_META                                0xxx
1461e10ce426SMatthias Ringwald // #define HCI_EVENT_PAN_META                                 0xxx
1462e10ce426SMatthias Ringwald // #define HCI_EVENT_SDP_META                                 0xxx
1463e10ce426SMatthias Ringwald // #define HCI_EVENT_SM_META                                  0xxx
146439d235cbSMatthias Ringwald 
1465d63c37a1SMatthias Ringwald 
1466d63c37a1SMatthias Ringwald /** HSP Subevent */
1467d63c37a1SMatthias Ringwald 
1468827b1c43SMatthias Ringwald /**
146999a10067SMatthias Ringwald  * @format 11
1470827b1c43SMatthias Ringwald  * @param subevent_code
1471827b1c43SMatthias Ringwald  * @param status 0 == OK
1472827b1c43SMatthias Ringwald  */
147399a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE             0x01
147499a10067SMatthias Ringwald 
147599a10067SMatthias Ringwald /**
147699a10067SMatthias Ringwald  * @format 11
147799a10067SMatthias Ringwald  * @param subevent_code
147899a10067SMatthias Ringwald  * @param status 0 == OK
147999a10067SMatthias Ringwald  */
148099a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_DISCONNECTION_COMPLETE           0x02
148199a10067SMatthias Ringwald 
148299a10067SMatthias Ringwald 
148399a10067SMatthias Ringwald /**
148462c468cbSMatthias Ringwald  * @format 11H
148599a10067SMatthias Ringwald  * @param subevent_code
148699a10067SMatthias Ringwald  * @param status 0 == OK
148762c468cbSMatthias Ringwald  * @param handle
148899a10067SMatthias Ringwald  */
148999a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE             0x03
1490827b1c43SMatthias Ringwald 
1491827b1c43SMatthias Ringwald /**
1492827b1c43SMatthias Ringwald  * @format 11
1493827b1c43SMatthias Ringwald  * @param subevent_code
1494827b1c43SMatthias Ringwald  * @param status 0 == OK
1495827b1c43SMatthias Ringwald  */
149699a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_DISCONNECTION_COMPLETE          0x04
1497827b1c43SMatthias Ringwald 
1498827b1c43SMatthias Ringwald /**
1499827b1c43SMatthias Ringwald  * @format 1
1500827b1c43SMatthias Ringwald  * @param subevent_code
1501827b1c43SMatthias Ringwald  */
150299a10067SMatthias Ringwald #define HSP_SUBEVENT_RING                                  0x05
1503827b1c43SMatthias Ringwald 
1504827b1c43SMatthias Ringwald /**
1505827b1c43SMatthias Ringwald  * @format 11
1506827b1c43SMatthias Ringwald  * @param subevent_code
1507827b1c43SMatthias Ringwald  * @param gain Valid range: [0,15]
1508827b1c43SMatthias Ringwald  */
150999a10067SMatthias Ringwald #define HSP_SUBEVENT_MICROPHONE_GAIN_CHANGED               0x06
1510827b1c43SMatthias Ringwald 
1511827b1c43SMatthias Ringwald /**
1512827b1c43SMatthias Ringwald  * @format 11
1513827b1c43SMatthias Ringwald  * @param subevent_code
1514827b1c43SMatthias Ringwald  * @param gain Valid range: [0,15]
1515827b1c43SMatthias Ringwald  */
151699a10067SMatthias Ringwald #define HSP_SUBEVENT_SPEAKER_GAIN_CHANGED                  0x07
1517827b1c43SMatthias Ringwald 
1518827b1c43SMatthias Ringwald /**
1519827b1c43SMatthias Ringwald  * @format 1JV
1520827b1c43SMatthias Ringwald  * @param subevent_code
1521827b1c43SMatthias Ringwald  * @param value_length
1522827b1c43SMatthias Ringwald  * @param value
1523827b1c43SMatthias Ringwald  */
152499a10067SMatthias Ringwald #define HSP_SUBEVENT_HS_COMMAND                            0x08
1525827b1c43SMatthias Ringwald 
1526827b1c43SMatthias Ringwald /**
1527827b1c43SMatthias Ringwald  * @format 1JV
1528827b1c43SMatthias Ringwald  * @param subevent_code
1529827b1c43SMatthias Ringwald  * @param value_length
1530827b1c43SMatthias Ringwald  * @param value
1531827b1c43SMatthias Ringwald  */
153299a10067SMatthias Ringwald #define HSP_SUBEVENT_AG_INDICATION                         0x09
1533827b1c43SMatthias Ringwald 
1534d04d6ac3SMatthias Ringwald /**
1535d04d6ac3SMatthias Ringwald  * @format 1
1536d04d6ac3SMatthias Ringwald  * @param subevent_code
1537d04d6ac3SMatthias Ringwald  */
1538d04d6ac3SMatthias Ringwald #define HSP_SUBEVENT_BUTTON_PRESSED                        0x0a
1539941b3855SMatthias Ringwald 
1540d63c37a1SMatthias Ringwald /** HFP Subevent */
1541941b3855SMatthias Ringwald 
1542d63c37a1SMatthias Ringwald /**
154303870092SMilanka Ringwald  * @format 1H1B
1544d63c37a1SMatthias Ringwald  * @param subevent_code
154511d54508SMatthias Ringwald  * @param acl_handle
154603870092SMilanka Ringwald  * @param status 0 == OK
15476a7f44bdSMilanka Ringwald  * @param bd_addr
1548d63c37a1SMatthias Ringwald  */
1549941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED  0x01
1550d63c37a1SMatthias Ringwald 
1551d63c37a1SMatthias Ringwald /**
1552d703d377SMatthias Ringwald  * @format 1H
1553d63c37a1SMatthias Ringwald  * @param subevent_code
15547d81706fSMatthias Ringwald  * @param acl_handle
1555d63c37a1SMatthias Ringwald  */
1556941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_RELEASED     0x02
1557d63c37a1SMatthias Ringwald 
1558d63c37a1SMatthias Ringwald /**
1559d703d377SMatthias Ringwald  * @format 1H1HB1
1560d63c37a1SMatthias Ringwald  * @param subevent_code
15617d81706fSMatthias Ringwald  * @param acl_handle
1562d63c37a1SMatthias Ringwald  * @param status 0 == OK
156311d54508SMatthias Ringwald  * @param sco_handle
15646a7f44bdSMilanka Ringwald  * @param bd_addr
1565d0c4aea6SMilanka Ringwald  * @param negotiated_codec
1566d63c37a1SMatthias Ringwald  */
1567941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED          0x03
1568d63c37a1SMatthias Ringwald 
1569d63c37a1SMatthias Ringwald /**
1570d703d377SMatthias Ringwald  * @format 1HH
1571d63c37a1SMatthias Ringwald  * @param subevent_code
15727d81706fSMatthias Ringwald  * @param acl_handle
1573d703d377SMatthias Ringwald  * @param sco_handle
1574d63c37a1SMatthias Ringwald  */
1575941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_RELEASED             0x04
1576d63c37a1SMatthias Ringwald 
1577d63c37a1SMatthias Ringwald /**
1578d703d377SMatthias Ringwald  * @format 1H1
1579d63c37a1SMatthias Ringwald  * @param subevent_code
15807d81706fSMatthias Ringwald  * @param acl_handle
1581d63c37a1SMatthias Ringwald  * @param status 0 == OK
1582d63c37a1SMatthias Ringwald  */
1583941b3855SMatthias Ringwald #define HFP_SUBEVENT_COMPLETE                              0x05
1584d63c37a1SMatthias Ringwald 
1585d63c37a1SMatthias Ringwald /**
1586d703d377SMatthias Ringwald  * @format 1H1111111T
1587d63c37a1SMatthias Ringwald  * @param subevent_code
15887d81706fSMatthias Ringwald  * @param acl_handle
1589d63c37a1SMatthias Ringwald  * @param indicator_index
1590d63c37a1SMatthias Ringwald  * @param indicator_status
1591c741b032SMilanka Ringwald  * @param indicator_min_range
1592c741b032SMilanka Ringwald  * @param indicator_max_range
1593c741b032SMilanka Ringwald  * @param indicator_mandatory
1594c741b032SMilanka Ringwald  * @param indicator_enabled
1595c741b032SMilanka Ringwald  * @param indicator_status_changed
1596d63c37a1SMatthias Ringwald  * @param indicator_name
1597d63c37a1SMatthias Ringwald  */
1598941b3855SMatthias Ringwald #define HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED           0x06
1599d63c37a1SMatthias Ringwald 
1600d63c37a1SMatthias Ringwald /**
1601d703d377SMatthias Ringwald  * @format 1H11T
1602d63c37a1SMatthias Ringwald  * @param subevent_code
16037d81706fSMatthias Ringwald  * @param acl_handle
1604d63c37a1SMatthias Ringwald  * @param network_operator_mode
1605d63c37a1SMatthias Ringwald  * @param network_operator_format
1606d63c37a1SMatthias Ringwald  * @param network_operator_name
1607d63c37a1SMatthias Ringwald  */
1608941b3855SMatthias Ringwald #define HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED              0x07
1609d63c37a1SMatthias Ringwald 
1610d63c37a1SMatthias Ringwald /**
1611d703d377SMatthias Ringwald  * @format 1H1
1612d63c37a1SMatthias Ringwald  * @param subevent_code
16137d81706fSMatthias Ringwald  * @param acl_handle
1614d63c37a1SMatthias Ringwald  * @param error
1615d63c37a1SMatthias Ringwald  */
1616941b3855SMatthias Ringwald #define HFP_SUBEVENT_EXTENDED_AUDIO_GATEWAY_ERROR             0x08
1617d63c37a1SMatthias Ringwald 
1618d63c37a1SMatthias Ringwald /**
1619d703d377SMatthias Ringwald  * @format 1H
1620d63c37a1SMatthias Ringwald  * @param subevent_code
16217d81706fSMatthias Ringwald  * @param acl_handle
1622d63c37a1SMatthias Ringwald  */
1623aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_START_RINGINIG                           0x0A
1624d63c37a1SMatthias Ringwald 
1625d63c37a1SMatthias Ringwald /**
1626d703d377SMatthias Ringwald  * @format 1H
1627d63c37a1SMatthias Ringwald  * @param subevent_code
16287d81706fSMatthias Ringwald  * @param acl_handle
1629d63c37a1SMatthias Ringwald  */
1630aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_STOP_RINGINIG                            0x0B
1631d63c37a1SMatthias Ringwald 
1632d63c37a1SMatthias Ringwald /**
16337d81706fSMatthias Ringwald  * @format 1H
1634d63c37a1SMatthias Ringwald  * @param subevent_code
16357d81706fSMatthias Ringwald  * @param acl_handle
1636d63c37a1SMatthias Ringwald  */
1637aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_CALL_TERMINATED                          0x0C
1638d63c37a1SMatthias Ringwald 
1639d63c37a1SMatthias Ringwald /**
1640d703d377SMatthias Ringwald  * @format 1HT
1641d63c37a1SMatthias Ringwald  * @param subevent_code
16427d81706fSMatthias Ringwald  * @param acl_handle
1643d63c37a1SMatthias Ringwald  * @param number
1644d63c37a1SMatthias Ringwald  */
1645aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_PLACE_CALL_WITH_NUMBER                   0x0D
1646d63c37a1SMatthias Ringwald 
1647d63c37a1SMatthias Ringwald /**
1648d703d377SMatthias Ringwald  * @format 1H
1649d63c37a1SMatthias Ringwald  * @param subevent_code
16507d81706fSMatthias Ringwald  * @param acl_handle
1651d63c37a1SMatthias Ringwald  */
1652d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ATTACH_NUMBER_TO_VOICE_TAG               0x0E
1653d63c37a1SMatthias Ringwald 
1654d63c37a1SMatthias Ringwald /**
1655d703d377SMatthias Ringwald  * @format 1HT
1656d63c37a1SMatthias Ringwald  * @param subevent_code
16577d81706fSMatthias Ringwald  * @param acl_handle
1658d63c37a1SMatthias Ringwald  * @param number
1659d63c37a1SMatthias Ringwald  */
1660d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_NUMBER_FOR_VOICE_TAG                     0x0F
1661d63c37a1SMatthias Ringwald 
1662d63c37a1SMatthias Ringwald /**
1663d703d377SMatthias Ringwald  * @format 1HT
1664d63c37a1SMatthias Ringwald  * @param subevent_code
16657d81706fSMatthias Ringwald  * @param acl_handle
1666d63c37a1SMatthias Ringwald  * @param dtmf code
1667d63c37a1SMatthias Ringwald  */
1668d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_TRANSMIT_DTMF_CODES                      0x10
1669d63c37a1SMatthias Ringwald 
1670d63c37a1SMatthias Ringwald /**
1671d703d377SMatthias Ringwald  * @format 1H
1672d63c37a1SMatthias Ringwald  * @param subevent_code
16737d81706fSMatthias Ringwald  * @param acl_handle
1674d63c37a1SMatthias Ringwald  */
1675d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CALL_ANSWERED                            0x11
1676d63c37a1SMatthias Ringwald 
1677d63c37a1SMatthias Ringwald /**
1678d703d377SMatthias Ringwald  * @format 1H
1679d63c37a1SMatthias Ringwald  * @param subevent_code
16807d81706fSMatthias Ringwald  * @param acl_handle
1681d63c37a1SMatthias Ringwald  */
1682d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CONFERENCE_CALL                          0x12
1683d63c37a1SMatthias Ringwald 
1684d63c37a1SMatthias Ringwald /**
1685d703d377SMatthias Ringwald  * @format 1H
1686d63c37a1SMatthias Ringwald  * @param subevent_code
16877d81706fSMatthias Ringwald  * @param acl_handle
1688d63c37a1SMatthias Ringwald  */
1689d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RING                                     0x13
1690d63c37a1SMatthias Ringwald 
1691d63c37a1SMatthias Ringwald /**
1692d703d377SMatthias Ringwald  * @format 1H1
1693d63c37a1SMatthias Ringwald  * @param subevent_code
16947d81706fSMatthias Ringwald  * @param acl_handle
1695d63c37a1SMatthias Ringwald  * @param gain
1696d63c37a1SMatthias Ringwald  */
1697d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_SPEAKER_VOLUME                           0x14
1698d63c37a1SMatthias Ringwald 
1699d63c37a1SMatthias Ringwald /**
1700d703d377SMatthias Ringwald  * @format 1H1
1701d63c37a1SMatthias Ringwald  * @param subevent_code
17027d81706fSMatthias Ringwald  * @param acl_handle
1703d63c37a1SMatthias Ringwald  * @param gain
1704d63c37a1SMatthias Ringwald  */
1705d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_MICROPHONE_VOLUME                        0x15
1706d63c37a1SMatthias Ringwald 
1707d63c37a1SMatthias Ringwald /**
1708d703d377SMatthias Ringwald  * @format 1H1T
1709d63c37a1SMatthias Ringwald  * @param subevent_code
17107d81706fSMatthias Ringwald  * @param acl_handle
1711d63c37a1SMatthias Ringwald  * @param type
1712d63c37a1SMatthias Ringwald  * @param number
1713d63c37a1SMatthias Ringwald  */
1714d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CALL_WAITING_NOTIFICATION                0x16
1715d63c37a1SMatthias Ringwald 
1716d63c37a1SMatthias Ringwald /**
1717d703d377SMatthias Ringwald  * @format 1H1T
1718d63c37a1SMatthias Ringwald  * @param subevent_code
17197d81706fSMatthias Ringwald  * @param acl_handle
1720d63c37a1SMatthias Ringwald  * @param type
1721d63c37a1SMatthias Ringwald  * @param number
1722d63c37a1SMatthias Ringwald  */
172389f1e358SMilanka Ringwald #define HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION 0x17
1724d63c37a1SMatthias Ringwald 
1725d63c37a1SMatthias Ringwald /**
1726d703d377SMatthias Ringwald  * @format 1H111111T
1727d63c37a1SMatthias Ringwald  * @param subevent_code
17287d81706fSMatthias Ringwald  * @param acl_handle
1729d63c37a1SMatthias Ringwald  * @param clcc_idx
1730d63c37a1SMatthias Ringwald  * @param clcc_dir
1731d63c37a1SMatthias Ringwald  * @param clcc_status
17320aee97efSMilanka Ringwald  * @param clcc_mode
1733d63c37a1SMatthias Ringwald  * @param clcc_mpty
1734d63c37a1SMatthias Ringwald  * @param bnip_type
1735d63c37a1SMatthias Ringwald  * @param bnip_number
1736d63c37a1SMatthias Ringwald  */
1737d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ENHANCED_CALL_STATUS                     0x18
1738d63c37a1SMatthias Ringwald 
1739d63c37a1SMatthias Ringwald /**
1740d703d377SMatthias Ringwald  * @format 1H11T
1741d63c37a1SMatthias Ringwald  * @param subevent_code
17427d81706fSMatthias Ringwald  * @param acl_handle
1743d63c37a1SMatthias Ringwald  * @param status
1744d63c37a1SMatthias Ringwald  * @param bnip_type
1745d63c37a1SMatthias Ringwald  * @param bnip_number
1746d63c37a1SMatthias Ringwald  */
1747d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION            0x19
1748d63c37a1SMatthias Ringwald 
1749d63c37a1SMatthias Ringwald /**
1750d703d377SMatthias Ringwald  * @format 1HT
1751d63c37a1SMatthias Ringwald  * @param subevent_code
17527d81706fSMatthias Ringwald  * @param acl_handle
1753d63c37a1SMatthias Ringwald  * @param value
1754d63c37a1SMatthias Ringwald  */
1755d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RESPONSE_AND_HOLD_STATUS                 0x1A
1756941b3855SMatthias Ringwald 
1757e43d1938SMatthias Ringwald /**
1758d703d377SMatthias Ringwald  * @format 1HT
1759e43d1938SMatthias Ringwald  * @param subevent_code
17607d81706fSMatthias Ringwald  * @param acl_handle
1761e43d1938SMatthias Ringwald  * @param command
1762e43d1938SMatthias Ringwald  */
1763e43d1938SMatthias Ringwald #define HFP_SUBEVENT_AT_MESSAGE_SENT                          0x1B
1764e43d1938SMatthias Ringwald 
1765e43d1938SMatthias Ringwald /**
1766d703d377SMatthias Ringwald  * @format 1HT
1767e43d1938SMatthias Ringwald  * @param subevent_code
17687d81706fSMatthias Ringwald  * @param acl_handle
1769e43d1938SMatthias Ringwald  * @param command
1770e43d1938SMatthias Ringwald  */
1771e43d1938SMatthias Ringwald #define HFP_SUBEVENT_AT_MESSAGE_RECEIVED                      0x1C
1772e43d1938SMatthias Ringwald 
177305748e32SMilanka Ringwald /**
177405748e32SMilanka Ringwald  * @format 1H1
177505748e32SMilanka Ringwald  * @param subevent_code
177605748e32SMilanka Ringwald  * @param acl_handle
177705748e32SMilanka Ringwald  * @param status
177805748e32SMilanka Ringwald  */
177905748e32SMilanka Ringwald #define HFP_SUBEVENT_IN_BAND_RING_TONE                        0x1D
178005748e32SMilanka Ringwald 
1781024ad916SMilanka Ringwald /**
17827253db3cSMilanka Ringwald  * @format 1H11
1783024ad916SMilanka Ringwald  * @param subevent_code
1784024ad916SMilanka Ringwald  * @param acl_handle
17857253db3cSMilanka Ringwald  * @param status
17867253db3cSMilanka Ringwald  * @param state
1787024ad916SMilanka Ringwald  */
1788024ad916SMilanka Ringwald #define HFP_SUBEVENT_VOICE_RECOGNITION_STATUS                       0x1E
1789024ad916SMilanka Ringwald 
1790024ad916SMilanka Ringwald /**
1791de9e0ea7SMilanka Ringwald  * @format 1H1
1792024ad916SMilanka Ringwald  * @param subevent_code
1793024ad916SMilanka Ringwald  * @param acl_handle
1794db3cdbd4SMilanka Ringwald  * @param status
1795024ad916SMilanka Ringwald  */
1796de9e0ea7SMilanka Ringwald #define HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_HF_READY_FOR_AUDIO  0x1F
1797024ad916SMilanka Ringwald 
1798509c959cSMilanka Ringwald 
1799509c959cSMilanka Ringwald /**
1800509c959cSMilanka Ringwald  * @format 1H1
1801509c959cSMilanka Ringwald  * @param subevent_code
1802509c959cSMilanka Ringwald  * @param acl_handle
1803509c959cSMilanka Ringwald  * @param status
1804509c959cSMilanka Ringwald  */
1805509c959cSMilanka Ringwald #define HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_READY_TO_ACCEPT_AUDIO_INPUT 0x20
1806509c959cSMilanka Ringwald 
1807509c959cSMilanka Ringwald /**
1808509c959cSMilanka Ringwald  * @format 1H1
1809509c959cSMilanka Ringwald  * @param subevent_code
1810509c959cSMilanka Ringwald  * @param acl_handle
1811509c959cSMilanka Ringwald  * @param status
1812509c959cSMilanka Ringwald  */
1813509c959cSMilanka Ringwald #define HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_IS_STARTING_SOUND 0x21
1814509c959cSMilanka Ringwald 
1815509c959cSMilanka Ringwald /**
1816509c959cSMilanka Ringwald  * @format 1H1
1817509c959cSMilanka Ringwald  * @param subevent_code
1818509c959cSMilanka Ringwald  * @param acl_handle
1819509c959cSMilanka Ringwald  * @param status
1820509c959cSMilanka Ringwald  */
1821509c959cSMilanka Ringwald #define HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_IS_PROCESSING_AUDIO_INPUT 0x22
1822509c959cSMilanka Ringwald 
1823024ad916SMilanka Ringwald /**
1824f1c30c36SMilanka Ringwald  * @format 1H1
1825f1c30c36SMilanka Ringwald  * @param subevent_code
1826f1c30c36SMilanka Ringwald  * @param acl_handle
1827f1c30c36SMilanka Ringwald  * @param status
1828f1c30c36SMilanka Ringwald  */
1829f1c30c36SMilanka Ringwald #define HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE_SENT     0x23
1830f1c30c36SMilanka Ringwald 
1831f1c30c36SMilanka Ringwald 
1832f1c30c36SMilanka Ringwald /**
1833db3cdbd4SMilanka Ringwald  * @format 1H211LV
1834024ad916SMilanka Ringwald  * @param subevent_code
1835024ad916SMilanka Ringwald  * @param acl_handle
1836024ad916SMilanka Ringwald  * @param text_id
1837db3cdbd4SMilanka Ringwald  * @param text_operation
1838024ad916SMilanka Ringwald  * @param text_type
1839024ad916SMilanka Ringwald  * @param text_length
1840024ad916SMilanka Ringwald  * @param text
1841024ad916SMilanka Ringwald  */
1842f1c30c36SMilanka Ringwald #define HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE           0x24
1843024ad916SMilanka Ringwald 
184440cd4182SMilanka Ringwald /**
184540cd4182SMilanka Ringwald  * @format 1H1
184640cd4182SMilanka Ringwald  * @param subevent_code
184740cd4182SMilanka Ringwald  * @param acl_handle
184840cd4182SMilanka Ringwald  * @param status
184940cd4182SMilanka Ringwald  */
185040cd4182SMilanka Ringwald #define HFP_SUBEVENT_ECHO_CANCELING_AND_NOISE_REDUCTION_DEACTIVATE   0x25
1851024ad916SMilanka Ringwald 
1852347d46c8SMilanka Ringwald /**
1853347d46c8SMilanka Ringwald  * @format 1H21
1854347d46c8SMilanka Ringwald  * @param subevent_code
1855347d46c8SMilanka Ringwald  * @param acl_handle
1856347d46c8SMilanka Ringwald  * @param uuid
1857347d46c8SMilanka Ringwald  * @param value
1858347d46c8SMilanka Ringwald  */
1859347d46c8SMilanka Ringwald #define HFP_SUBEVENT_HF_INDICATOR                                    0x26
1860347d46c8SMilanka Ringwald 
1861024ad916SMilanka Ringwald 
1862941b3855SMatthias Ringwald // ANCS Client
1863a4815874SMatthias Ringwald 
1864a4815874SMatthias Ringwald /**
1865e10ce426SMatthias Ringwald  * @format 1H
1866e10ce426SMatthias Ringwald  * @param subevent_code
1867a4815874SMatthias Ringwald  * @param handle
1868a4815874SMatthias Ringwald  */
1869e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_CONNECTED                              0xF0
1870a4815874SMatthias Ringwald 
1871a4815874SMatthias Ringwald /**
1872e10ce426SMatthias Ringwald  * @format 1H2T
1873e10ce426SMatthias Ringwald  * @param subevent_code
1874a4815874SMatthias Ringwald  * @param handle
1875a4815874SMatthias Ringwald  * @param attribute_id
1876a4815874SMatthias Ringwald  * @param text
1877a4815874SMatthias Ringwald  */
1878e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_NOTIFICATION                           0xF1
1879a4815874SMatthias Ringwald 
1880a4815874SMatthias Ringwald /**
1881e10ce426SMatthias Ringwald  * @format 1H
1882e10ce426SMatthias Ringwald  * @param subevent_code
1883a4815874SMatthias Ringwald  * @param handle
1884a4815874SMatthias Ringwald  */
1885e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_DISCONNECTED                           0xF2
1886941b3855SMatthias Ringwald 
1887a23045e2SMilanka Ringwald 
1888a23045e2SMilanka Ringwald /** AVDTP Subevent */
1889a23045e2SMilanka Ringwald 
18903338b9aeSMilanka Ringwald /**
189163274943SMilanka Ringwald  * @format 12111
18922c708e8aSMilanka Ringwald  * @param subevent_code
1893f9bca1f3SMilanka Ringwald  * @param avdtp_cid
1894f1042e9dSMilanka Ringwald  * @param local_seid
189563274943SMilanka Ringwald  * @param is_initiator
18962c708e8aSMilanka Ringwald  * @param signal_identifier
18972c708e8aSMilanka Ringwald  */
18982c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_ACCEPT                     0x01
18992c708e8aSMilanka Ringwald 
19002c708e8aSMilanka Ringwald /**
190163274943SMilanka Ringwald  * @format 12111
19022c708e8aSMilanka Ringwald  * @param subevent_code
1903f9bca1f3SMilanka Ringwald  * @param avdtp_cid
19044ccacc40SMilanka Ringwald  * @param local_seid
190563274943SMilanka Ringwald  * @param is_initiator
19062c708e8aSMilanka Ringwald  * @param signal_identifier
19072c708e8aSMilanka Ringwald  */
19082c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_REJECT                     0x02
19092c708e8aSMilanka Ringwald 
19102c708e8aSMilanka Ringwald /**
191163274943SMilanka Ringwald  * @format 12111
19122c708e8aSMilanka Ringwald  * @param subevent_code
1913f9bca1f3SMilanka Ringwald  * @param avdtp_cid
19144ccacc40SMilanka Ringwald  * @param local_seid
191563274943SMilanka Ringwald  * @param is_initiator
19162c708e8aSMilanka Ringwald  * @param signal_identifier
19172c708e8aSMilanka Ringwald  */
19182c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT             0x03
19192c708e8aSMilanka Ringwald 
19202c708e8aSMilanka Ringwald /**
1921146fc0fbSMilanka Ringwald  * @format 12B21
19223338b9aeSMilanka Ringwald  * @param subevent_code
1923f9bca1f3SMilanka Ringwald  * @param avdtp_cid
19243338b9aeSMilanka Ringwald  * @param bd_addr
1925146fc0fbSMilanka Ringwald  * @param con_handle
19263338b9aeSMilanka Ringwald  * @param status 0 == OK
19273338b9aeSMilanka Ringwald  */
19282c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED     0x04
1929a23045e2SMilanka Ringwald 
19303338b9aeSMilanka Ringwald /**
19317050d2caSMilanka Ringwald  * @format 12
19323338b9aeSMilanka Ringwald  * @param subevent_code
1933f9bca1f3SMilanka Ringwald  * @param avdtp_cid
19343338b9aeSMilanka Ringwald  */
19352c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_RELEASED        0x05
19363338b9aeSMilanka Ringwald 
19373338b9aeSMilanka Ringwald /**
19387050d2caSMilanka Ringwald  * @format 121111
19393338b9aeSMilanka Ringwald  * @param subevent_code
1940f9bca1f3SMilanka Ringwald  * @param avdtp_cid
19414ccacc40SMilanka Ringwald  * @param remote_seid        0x01 – 0x3E
19423338b9aeSMilanka Ringwald  * @param in_use      0-not in use, 1-in use
19433338b9aeSMilanka Ringwald  * @param media_type  0-audio, 1-video, 2-multimedia
19443338b9aeSMilanka Ringwald  * @param sep_type    0-source, 1-sink
19453338b9aeSMilanka Ringwald  */
19462c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_FOUND                  0x06
19473338b9aeSMilanka Ringwald 
19483338b9aeSMilanka Ringwald /**
19491159d239SMatthias Ringwald  * @format 12111111111
19503338b9aeSMilanka Ringwald  * @param subevent_code
1951f9bca1f3SMilanka Ringwald  * @param avdtp_cid
19524ccacc40SMilanka Ringwald  * @param remote_seid
19533338b9aeSMilanka Ringwald  * @param media_type
1954ea7bd529SMilanka Ringwald  * @param sampling_frequency_bitmap
1955ea7bd529SMilanka Ringwald  * @param channel_mode_bitmap
1956ea7bd529SMilanka Ringwald  * @param block_length_bitmap
1957ea7bd529SMilanka Ringwald  * @param subbands_bitmap
1958ea7bd529SMilanka Ringwald  * @param allocation_method_bitmap
19593338b9aeSMilanka Ringwald  * @param min_bitpool_value
19603338b9aeSMilanka Ringwald  * @param max_bitpool_value
19613338b9aeSMilanka Ringwald  */
19622c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY          0x07
19633338b9aeSMilanka Ringwald 
19643338b9aeSMilanka Ringwald /**
1965930efd27SMatthias Ringwald  * @format 12111111112
1966930efd27SMatthias Ringwald  * @param subevent_code
1967930efd27SMatthias Ringwald  * @param avdtp_cid
1968930efd27SMatthias Ringwald  * @param remote_seid
1969930efd27SMatthias Ringwald  * @param media_type
1970930efd27SMatthias Ringwald  * @param layer_bitmap
1971930efd27SMatthias Ringwald  * @param crc
1972930efd27SMatthias Ringwald  * @param channel_mode_bitmap
1973930efd27SMatthias Ringwald  * @param media_payload_format
1974930efd27SMatthias Ringwald  * @param sampling_frequency_bitmap
1975930efd27SMatthias Ringwald  * @param vbr
1976930efd27SMatthias Ringwald  * @param bit_rate_index_bitmap
1977930efd27SMatthias Ringwald  */
1978930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY   0x08
1979930efd27SMatthias Ringwald 
1980930efd27SMatthias Ringwald /**
1981930efd27SMatthias Ringwald  * @format 121112131
1982930efd27SMatthias Ringwald  * @param subevent_code
1983930efd27SMatthias Ringwald  * @param avdtp_cid
1984930efd27SMatthias Ringwald  * @param remote_seid
1985930efd27SMatthias Ringwald  * @param media_type
1986930efd27SMatthias Ringwald  * @param object_type_bitmap
1987930efd27SMatthias Ringwald  * @param sampling_frequency_bitmap
1988930efd27SMatthias Ringwald  * @param channels_bitmap
1989930efd27SMatthias Ringwald  * @param bit_rate
1990930efd27SMatthias Ringwald  * @param vbr
1991930efd27SMatthias Ringwald  */
1992930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY     0x09
1993930efd27SMatthias Ringwald 
1994930efd27SMatthias Ringwald /**
1995930efd27SMatthias Ringwald  * @format 1211111132
1996930efd27SMatthias Ringwald  * @param subevent_code
1997930efd27SMatthias Ringwald  * @param avdtp_cid
1998930efd27SMatthias Ringwald  * @param remote_seid
1999930efd27SMatthias Ringwald  * @param media_type
2000930efd27SMatthias Ringwald  * @param version
2001930efd27SMatthias Ringwald  * @param channel_mode_bitmap
2002930efd27SMatthias Ringwald  * @param sampling_frequency_bitmap
2003930efd27SMatthias Ringwald  * @param vbr
2004930efd27SMatthias Ringwald  * @param bit_rate_index_bitmap
2005930efd27SMatthias Ringwald  * @param maximum_sul
2006930efd27SMatthias Ringwald  */
2007930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY        0x0A
2008930efd27SMatthias Ringwald 
2009930efd27SMatthias Ringwald /**
20101159d239SMatthias Ringwald  * @format 12112LV
20113338b9aeSMilanka Ringwald  * @param subevent_code
2012f9bca1f3SMilanka Ringwald  * @param avdtp_cid
20134ccacc40SMilanka Ringwald  * @param remote_seid
20143338b9aeSMilanka Ringwald  * @param media_type
20153338b9aeSMilanka Ringwald  * @param media_codec_type
20163338b9aeSMilanka Ringwald  * @param media_codec_information_len
20173338b9aeSMilanka Ringwald  * @param media_codec_information
20183338b9aeSMilanka Ringwald  */
2019930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY        0x0B
2020a23045e2SMilanka Ringwald 
202167ae582dSMilanka Ringwald 
202267ae582dSMilanka Ringwald /**
20231159d239SMatthias Ringwald  * @format 121
202467ae582dSMilanka Ringwald  * @param subevent_code
202567ae582dSMilanka Ringwald  * @param avdtp_cid
202667ae582dSMilanka Ringwald  * @param remote_seid
202767ae582dSMilanka Ringwald  */
2028930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY         0x0C
202967ae582dSMilanka Ringwald 
203067ae582dSMilanka Ringwald 
203167ae582dSMilanka Ringwald /**
20321159d239SMatthias Ringwald  * @format 121
203367ae582dSMilanka Ringwald  * @param subevent_code
203467ae582dSMilanka Ringwald  * @param avdtp_cid
203567ae582dSMilanka Ringwald  * @param remote_seid
203667ae582dSMilanka Ringwald  */
2037930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY        0x0D
203867ae582dSMilanka Ringwald 
203967ae582dSMilanka Ringwald 
204067ae582dSMilanka Ringwald /**
20411159d239SMatthias Ringwald  * @format 121111
204267ae582dSMilanka Ringwald  * @param subevent_code
204367ae582dSMilanka Ringwald  * @param avdtp_cid
204467ae582dSMilanka Ringwald  * @param remote_seid
204567ae582dSMilanka Ringwald  * @param recovery_type
204667ae582dSMilanka Ringwald  * @param maximum_recovery_window_size
204767ae582dSMilanka Ringwald  * @param maximum_number_media_packets
204867ae582dSMilanka Ringwald  */
2049930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY        0x0E
205067ae582dSMilanka Ringwald 
205167ae582dSMilanka Ringwald 
205267ae582dSMilanka Ringwald /**
20531159d239SMatthias Ringwald  * @format 1212LV
205467ae582dSMilanka Ringwald  * @param subevent_code
205567ae582dSMilanka Ringwald  * @param avdtp_cid
205667ae582dSMilanka Ringwald  * @param remote_seid
205767ae582dSMilanka Ringwald  * @param cp_type
205867ae582dSMilanka Ringwald  * @param cp_type_value_len
205967ae582dSMilanka Ringwald  * @param cp_type_value
206067ae582dSMilanka Ringwald  */
2061930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY        0x0F
206267ae582dSMilanka Ringwald 
206367ae582dSMilanka Ringwald 
206467ae582dSMilanka Ringwald /**
20651159d239SMatthias Ringwald  * @format 12111111111
206667ae582dSMilanka Ringwald  * @param subevent_code
206767ae582dSMilanka Ringwald  * @param avdtp_cid
206867ae582dSMilanka Ringwald  * @param remote_seid
206967ae582dSMilanka Ringwald  * @param fragmentation
207067ae582dSMilanka Ringwald  * @param transport_identifiers_num
207167ae582dSMilanka Ringwald  * @param transport_session_identifier_1
207267ae582dSMilanka Ringwald  * @param transport_session_identifier_2
207367ae582dSMilanka Ringwald  * @param transport_session_identifier_3
207467ae582dSMilanka Ringwald  * @param tcid_1
207567ae582dSMilanka Ringwald  * @param tcid_2
207667ae582dSMilanka Ringwald  * @param tcid_3
207767ae582dSMilanka Ringwald  */
2078930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY        0x10
207967ae582dSMilanka Ringwald 
208067ae582dSMilanka Ringwald 
208167ae582dSMilanka Ringwald /**
20821159d239SMatthias Ringwald  * @format 121
208367ae582dSMilanka Ringwald  * @param subevent_code
208467ae582dSMilanka Ringwald  * @param avdtp_cid
208567ae582dSMilanka Ringwald  * @param remote_seid
208667ae582dSMilanka Ringwald  */
2087930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY        0x11
208867ae582dSMilanka Ringwald 
208967ae582dSMilanka Ringwald 
209067ae582dSMilanka Ringwald /**
20911159d239SMatthias Ringwald  * @format 121111
209267ae582dSMilanka Ringwald  * @param subevent_code
209367ae582dSMilanka Ringwald  * @param avdtp_cid
209467ae582dSMilanka Ringwald  * @param remote_seid
209567ae582dSMilanka Ringwald  * @param back_ch
209667ae582dSMilanka Ringwald  * @param media
209767ae582dSMilanka Ringwald  * @param recovery
209867ae582dSMilanka Ringwald  */
2099930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY        0x12
2100930efd27SMatthias Ringwald 
2101930efd27SMatthias Ringwald /**
2102930efd27SMatthias Ringwald  * @format 121
2103930efd27SMatthias Ringwald  * @param subevent_code
2104930efd27SMatthias Ringwald  * @param avdtp_cid
2105930efd27SMatthias Ringwald  * @param remote_seid
2106930efd27SMatthias Ringwald  */
2107930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE                    0x13
210867ae582dSMilanka Ringwald 
210967ae582dSMilanka Ringwald 
2110ea7bd529SMilanka Ringwald /**
21117050d2caSMilanka Ringwald  * @format 12111121111111
2112ea7bd529SMilanka Ringwald  * @param subevent_code
2113f9bca1f3SMilanka Ringwald  * @param avdtp_cid
21144ccacc40SMilanka Ringwald  * @param local_seid
21154ccacc40SMilanka Ringwald  * @param remote_seid
2116ea7bd529SMilanka Ringwald  * @param reconfigure
2117ea7bd529SMilanka Ringwald  * @param media_type
2118ea7bd529SMilanka Ringwald  * @param sampling_frequency
2119ea7bd529SMilanka Ringwald  * @param channel_mode
2120ea7bd529SMilanka Ringwald  * @param num_channels
2121ea7bd529SMilanka Ringwald  * @param block_length
2122ea7bd529SMilanka Ringwald  * @param subbands
2123ea7bd529SMilanka Ringwald  * @param allocation_method
2124ea7bd529SMilanka Ringwald  * @param min_bitpool_value
2125ea7bd529SMilanka Ringwald  * @param max_bitpool_value
2126ea7bd529SMilanka Ringwald  */
2127930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION        0x14
2128930efd27SMatthias Ringwald 
2129930efd27SMatthias Ringwald /**
2130930efd27SMatthias Ringwald  * @format 12111111111211
2131930efd27SMatthias Ringwald  * @param subevent_code
2132930efd27SMatthias Ringwald  * @param avdtp_cid
2133930efd27SMatthias Ringwald  * @param local_seid
2134930efd27SMatthias Ringwald  * @param remote_seid
2135930efd27SMatthias Ringwald  * @param reconfigure
2136930efd27SMatthias Ringwald  * @param media_type
2137930efd27SMatthias Ringwald  * @param layer
2138930efd27SMatthias Ringwald  * @param crc
2139930efd27SMatthias Ringwald  * @param channel_mode
2140930efd27SMatthias Ringwald  * @param num_channels
2141930efd27SMatthias Ringwald  * @param media_payload_format
2142930efd27SMatthias Ringwald  * @param sampling_frequency
2143930efd27SMatthias Ringwald  * @param vbr
2144930efd27SMatthias Ringwald  * @param bit_rate_index
2145930efd27SMatthias Ringwald  */
2146930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION   0x15
2147930efd27SMatthias Ringwald 
2148930efd27SMatthias Ringwald /**
2149cf789a78SMatthias Ringwald  * @format 12111113131
2150930efd27SMatthias Ringwald  * @param subevent_code
2151930efd27SMatthias Ringwald  * @param avdtp_cid
2152930efd27SMatthias Ringwald  * @param local_seid
2153930efd27SMatthias Ringwald  * @param remote_seid
2154930efd27SMatthias Ringwald  * @param reconfigure
2155930efd27SMatthias Ringwald  * @param media_type
2156930efd27SMatthias Ringwald  * @param object_type
2157930efd27SMatthias Ringwald  * @param sampling_frequency
2158930efd27SMatthias Ringwald  * @param num_channels
2159930efd27SMatthias Ringwald  * @param bit_rate
2160930efd27SMatthias Ringwald  * @param vbr
2161930efd27SMatthias Ringwald  */
2162930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION     0x16
2163930efd27SMatthias Ringwald 
2164930efd27SMatthias Ringwald /**
2165930efd27SMatthias Ringwald  * @format 1211111112112
2166930efd27SMatthias Ringwald  * @param subevent_code
2167930efd27SMatthias Ringwald  * @param avdtp_cid
2168930efd27SMatthias Ringwald  * @param local_seid
2169930efd27SMatthias Ringwald  * @param remote_seid
2170930efd27SMatthias Ringwald  * @param reconfigure
2171930efd27SMatthias Ringwald  * @param media_type
2172930efd27SMatthias Ringwald  * @param version
2173930efd27SMatthias Ringwald  * @param channel_mode
2174930efd27SMatthias Ringwald  * @param num_channels
2175930efd27SMatthias Ringwald  * @param sampling_frequency
2176930efd27SMatthias Ringwald  * @param vbr
2177930efd27SMatthias Ringwald  * @param bit_rate_index
2178930efd27SMatthias Ringwald  * @param maximum_sul
2179930efd27SMatthias Ringwald  */
2180930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION        0x17
2181ea7bd529SMilanka Ringwald 
2182ea7bd529SMilanka Ringwald /**
21837050d2caSMilanka Ringwald  * @format 1211112LV
2184ea7bd529SMilanka Ringwald  * @param subevent_code
2185f9bca1f3SMilanka Ringwald  * @param avdtp_cid
21864ccacc40SMilanka Ringwald  * @param local_seid
21874ccacc40SMilanka Ringwald  * @param remote_seid
2188ea7bd529SMilanka Ringwald  * @param reconfigure
2189ea7bd529SMilanka Ringwald  * @param media_type
2190ea7bd529SMilanka Ringwald  * @param media_codec_type
2191ea7bd529SMilanka Ringwald  * @param media_codec_information_len
2192ea7bd529SMilanka Ringwald  * @param media_codec_information
2193ea7bd529SMilanka Ringwald  */
2194930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION        0x18
2195decc740cSMilanka Ringwald 
219685a0c7cdSMilanka Ringwald /**
2197ef5ad9d6SMilanka Ringwald  * @format 12B111
219885a0c7cdSMilanka Ringwald  * @param subevent_code
2199f9bca1f3SMilanka Ringwald  * @param avdtp_cid
2200ef5ad9d6SMilanka Ringwald  * @param bd_addr
22014ccacc40SMilanka Ringwald  * @param local_seid
22024ccacc40SMilanka Ringwald  * @param remote_seid
220385a0c7cdSMilanka Ringwald  * @param status 0 == OK
220485a0c7cdSMilanka Ringwald  */
2205930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED     0x19
220685a0c7cdSMilanka Ringwald 
220785a0c7cdSMilanka Ringwald /**
220834b22aacSMilanka Ringwald  * @format 121
220985a0c7cdSMilanka Ringwald  * @param subevent_code
2210f9bca1f3SMilanka Ringwald  * @param avdtp_cid
221134b22aacSMilanka Ringwald  * @param local_seid
221285a0c7cdSMilanka Ringwald  */
2213930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED        0x1A
221485a0c7cdSMilanka Ringwald 
2215f7103c90SMilanka Ringwald /**
22167050d2caSMilanka Ringwald  * @format 1212
2217f7103c90SMilanka Ringwald  * @param subevent_code
2218f9bca1f3SMilanka Ringwald  * @param avdtp_cid
22194ccacc40SMilanka Ringwald  * @param local_seid
2220a04ed5e9SMilanka Ringwald  * @param sequence_number
2221f7103c90SMilanka Ringwald  */
2222930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW   0x1B
2223578eda3eSMilanka Ringwald 
2224578eda3eSMilanka Ringwald 
2225c0491de3SMilanka Ringwald /**
2226c0491de3SMilanka Ringwald  * @format 12
2227c0491de3SMilanka Ringwald  * @param subevent_code
2228c0491de3SMilanka Ringwald  * @param avdtp_cid
2229c0491de3SMilanka Ringwald  */
2230930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_DICOVERY_DONE           0x1C
2231c0491de3SMilanka Ringwald 
2232ff6bc02cSMilanka Ringwald /**
2233ff6bc02cSMilanka Ringwald  * @format 1212
2234ff6bc02cSMilanka Ringwald  * @param subevent_code
2235ff6bc02cSMilanka Ringwald  * @param avdtp_cid
2236ff6bc02cSMilanka Ringwald  * @param local_seid
2237ff6bc02cSMilanka Ringwald  * @param delay_100us
2238ff6bc02cSMilanka Ringwald  */
2239930efd27SMatthias Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT               0x1D
2240930efd27SMatthias Ringwald 
2241decc740cSMilanka Ringwald 
224246e6b063SMilanka Ringwald /** A2DP Subevent */
22437050d2caSMilanka Ringwald /* Stream goes through following states:
22447050d2caSMilanka Ringwald  * - OPEN         - indicated with A2DP_SUBEVENT_STREAM_ESTABLISHED event
22457050d2caSMilanka Ringwald  * - START        - indicated with A2DP_SUBEVENT_STREAM_STARTED event
22467050d2caSMilanka Ringwald  * - SUSPEND      - indicated with A2DP_SUBEVENT_STREAM_SUSPENDED event
22477050d2caSMilanka Ringwald  * - ABORT/STOP   - indicated with A2DP_SUBEVENT_STREAM_RELEASED event
22487050d2caSMilanka Ringwald 
22497050d2caSMilanka Ringwald  OPEN state will be followed by ABORT/STOP. Stream is ready but media transfer is not started.
22507050d2caSMilanka Ringwald  START can come only after the stream is OPENED, and indicates that media transfer is started.
22517050d2caSMilanka Ringwald  SUSPEND is optional, it pauses the stream.
22527050d2caSMilanka Ringwald  */
225346e6b063SMilanka Ringwald 
225446e6b063SMilanka Ringwald /**
22557050d2caSMilanka Ringwald  * @format 121            Sent only by A2DP source.
22567050d2caSMilanka Ringwald  * @param subevent_code
2257f1042e9dSMilanka Ringwald  * @param a2dp_cid
22587050d2caSMilanka Ringwald  * @param local_seid
22597050d2caSMilanka Ringwald  */
22607050d2caSMilanka Ringwald #define A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW         0x01
22617050d2caSMilanka Ringwald 
22627050d2caSMilanka Ringwald /**
2263f1042e9dSMilanka Ringwald  * @format 12111121111111
2264f1042e9dSMilanka Ringwald  * @param subevent_code
2265f1042e9dSMilanka Ringwald  * @param a2dp_cid
22661d79cae3SMatthias Ringwald  * @param local_seid
22671d79cae3SMatthias Ringwald  * @param remote_seid
2268f1042e9dSMilanka Ringwald  * @param reconfigure
2269f1042e9dSMilanka Ringwald  * @param media_type
2270f1042e9dSMilanka Ringwald  * @param sampling_frequency
2271f1042e9dSMilanka Ringwald  * @param channel_mode
2272f1042e9dSMilanka Ringwald  * @param num_channels
2273f1042e9dSMilanka Ringwald  * @param block_length
2274f1042e9dSMilanka Ringwald  * @param subbands
2275f1042e9dSMilanka Ringwald  * @param allocation_method
2276f1042e9dSMilanka Ringwald  * @param min_bitpool_value
2277f1042e9dSMilanka Ringwald  * @param max_bitpool_value
2278f1042e9dSMilanka Ringwald  */
2279f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION      0x02
2280f1042e9dSMilanka Ringwald 
2281f1042e9dSMilanka Ringwald /**
22821d79cae3SMatthias Ringwald  * @format 12111111111211
2283930efd27SMatthias Ringwald  * @param subevent_code
22841d79cae3SMatthias Ringwald  * @param a2dp_cid
22851d79cae3SMatthias Ringwald  * @param local_seid
2286930efd27SMatthias Ringwald  * @param remote_seid
2287930efd27SMatthias Ringwald  * @param reconfigure
2288930efd27SMatthias Ringwald  * @param media_type
2289930efd27SMatthias Ringwald  * @param layer
2290930efd27SMatthias Ringwald  * @param crc
2291930efd27SMatthias Ringwald  * @param channel_mode
2292930efd27SMatthias Ringwald  * @param num_channels
2293930efd27SMatthias Ringwald  * @param media_payload_format
2294930efd27SMatthias Ringwald  * @param sampling_frequency
2295930efd27SMatthias Ringwald  * @param vbr
2296930efd27SMatthias Ringwald  * @param bit_rate_index
2297930efd27SMatthias Ringwald  */
2298930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION   0x03
2299930efd27SMatthias Ringwald 
2300930efd27SMatthias Ringwald /**
2301cf789a78SMatthias Ringwald  * @format 12111113131
2302930efd27SMatthias Ringwald  * @param subevent_code
23031d79cae3SMatthias Ringwald  * @param a2dp_cid
23041d79cae3SMatthias Ringwald  * @param local_seid
2305930efd27SMatthias Ringwald  * @param remote_seid
2306930efd27SMatthias Ringwald  * @param reconfigure
2307930efd27SMatthias Ringwald  * @param media_type
2308930efd27SMatthias Ringwald  * @param object_type
2309930efd27SMatthias Ringwald  * @param sampling_frequency
2310930efd27SMatthias Ringwald  * @param num_channels
2311930efd27SMatthias Ringwald  * @param bit_rate
2312930efd27SMatthias Ringwald  * @param vbr
2313930efd27SMatthias Ringwald  */
2314930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION     0x04
2315930efd27SMatthias Ringwald 
2316930efd27SMatthias Ringwald /**
23171d79cae3SMatthias Ringwald  * @format 1211111112112
2318930efd27SMatthias Ringwald  * @param subevent_code
23191d79cae3SMatthias Ringwald  * @param a2dp_cid
23201d79cae3SMatthias Ringwald  * @param local_seid
2321930efd27SMatthias Ringwald  * @param remote_seid
2322930efd27SMatthias Ringwald  * @param reconfigure
2323930efd27SMatthias Ringwald  * @param media_type
2324930efd27SMatthias Ringwald  * @param version
2325930efd27SMatthias Ringwald  * @param channel_mode
2326930efd27SMatthias Ringwald  * @param num_channels
2327930efd27SMatthias Ringwald  * @param sampling_frequency
2328930efd27SMatthias Ringwald  * @param vbr
2329930efd27SMatthias Ringwald  * @param bit_rate_index
2330930efd27SMatthias Ringwald  * @param maximum_sul
2331930efd27SMatthias Ringwald  */
2332930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION        0x05
2333930efd27SMatthias Ringwald 
2334930efd27SMatthias Ringwald /**
2335f1042e9dSMilanka Ringwald  * @format 1211112LV
2336f1042e9dSMilanka Ringwald  * @param subevent_code
2337f1042e9dSMilanka Ringwald  * @param a2dp_cid
23381d79cae3SMatthias Ringwald  * @param local_seid
23391d79cae3SMatthias Ringwald  * @param remote_seid
2340f1042e9dSMilanka Ringwald  * @param reconfigure
2341f1042e9dSMilanka Ringwald  * @param media_type
2342f1042e9dSMilanka Ringwald  * @param media_codec_type
2343f1042e9dSMilanka Ringwald  * @param media_codec_information_len
2344f1042e9dSMilanka Ringwald  * @param media_codec_information
2345f1042e9dSMilanka Ringwald  */
2346930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION    0x06
2347f1042e9dSMilanka Ringwald 
2348f1042e9dSMilanka Ringwald /**
23491d79cae3SMatthias Ringwald  * @format 12B111          Stream is opened but not started.
235046e6b063SMilanka Ringwald  * @param subevent_code
235146e6b063SMilanka Ringwald  * @param a2dp_cid
2352ef5ad9d6SMilanka Ringwald  * @param bd_addr
235346e6b063SMilanka Ringwald  * @param local_seid
235446e6b063SMilanka Ringwald  * @param remote_seid
235546e6b063SMilanka Ringwald  * @param status
235646e6b063SMilanka Ringwald  */
2357930efd27SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_ESTABLISHED                           0x07
235846e6b063SMilanka Ringwald 
2359a42de583SMilanka Ringwald /**
236034b22aacSMilanka Ringwald  * @format 121            Indicates that media transfer is started.
2361a42de583SMilanka Ringwald  * @param subevent_code
236246e6b063SMilanka Ringwald  * @param a2dp_cid
236346e6b063SMilanka Ringwald  * @param local_seid
2364a42de583SMilanka Ringwald  */
2365930efd27SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_STARTED                               0x08
236646e6b063SMilanka Ringwald 
236746e6b063SMilanka Ringwald /**
236834b22aacSMilanka Ringwald  * @format 121           Stream is paused.
236946e6b063SMilanka Ringwald  * @param subevent_code
237046e6b063SMilanka Ringwald  * @param a2dp_cid
237146e6b063SMilanka Ringwald  * @param local_seid
237246e6b063SMilanka Ringwald  */
2373930efd27SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_SUSPENDED                              0x09
2374a42de583SMilanka Ringwald 
2375a42de583SMilanka Ringwald /**
23761d79cae3SMatthias Ringwald  * @format 121           Stream is stopped or aborted.
2377133bececSMilanka Ringwald  * @param subevent_code
2378133bececSMilanka Ringwald  * @param a2dp_cid
2379133bececSMilanka Ringwald  * @param local_seid
2380133bececSMilanka Ringwald  */
2381930efd27SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_STOPPED                                0x0A
2382133bececSMilanka Ringwald 
2383133bececSMilanka Ringwald /**
238434b22aacSMilanka Ringwald  * @format 121            Stream is released.
238546e6b063SMilanka Ringwald  * @param subevent_code
2386f1042e9dSMilanka Ringwald  * @param a2dp_cid
238746e6b063SMilanka Ringwald  * @param local_seid
238846e6b063SMilanka Ringwald  */
2389930efd27SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_RELEASED                               0x0B
2390ba155c22SMilanka Ringwald 
239134b22aacSMilanka Ringwald /**
239234b22aacSMilanka Ringwald  * @format 1211
239334b22aacSMilanka Ringwald  * @param subevent_code
239434b22aacSMilanka Ringwald  * @param a2dp_cid
239534b22aacSMilanka Ringwald  * @param local_seid
239634b22aacSMilanka Ringwald  * @param signal_identifier
239734b22aacSMilanka Ringwald  */
2398930efd27SMatthias Ringwald #define A2DP_SUBEVENT_COMMAND_ACCEPTED                              0x0C
23997050d2caSMilanka Ringwald 
240034b22aacSMilanka Ringwald /**
2401638cc6b8SMatthias Ringwald  * @format 12111
240234b22aacSMilanka Ringwald  * @param subevent_code
240334b22aacSMilanka Ringwald  * @param a2dp_cid
240434b22aacSMilanka Ringwald  * @param local_seid
2405638cc6b8SMatthias Ringwald  * @param is_initiator
240634b22aacSMilanka Ringwald  * @param signal_identifier
240734b22aacSMilanka Ringwald  */
2408930efd27SMatthias Ringwald #define A2DP_SUBEVENT_COMMAND_REJECTED                              0x0D
24097050d2caSMilanka Ringwald 
24105448c259SMilanka Ringwald /**
2411146fc0fbSMilanka Ringwald  * @format 12B21
24125448c259SMilanka Ringwald  * @param subevent_code
24135448c259SMilanka Ringwald  * @param a2dp_cid
24145448c259SMilanka Ringwald  * @param bd_addr
2415146fc0fbSMilanka Ringwald  * @param con_handle
241663331bf4SMilanka Ringwald  * @param status 0 == OK
24175448c259SMilanka Ringwald  */
2418930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED              0x0E
24195448c259SMilanka Ringwald 
242046c48853SMilanka Ringwald /**
2421a466d508SMilanka Ringwald  * @format 12            Signaling channel is released.
242246c48853SMilanka Ringwald  * @param subevent_code
242346c48853SMilanka Ringwald  * @param a2dp_cid
242446c48853SMilanka Ringwald  */
2425930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_RELEASED                  0x0F
242646c48853SMilanka Ringwald 
2427b8dffb25SMatthias Ringwald /**
2428b8dffb25SMatthias Ringwald  * @format 1211          Stream was reconfigured
2429b8dffb25SMatthias Ringwald  * @param subevent_code
2430b8dffb25SMatthias Ringwald  * @param a2dp_cid
2431b8dffb25SMatthias Ringwald  * @param local_seid
2432b8dffb25SMatthias Ringwald  * @param status
2433b8dffb25SMatthias Ringwald  */
2434930efd27SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_RECONFIGURED                            0x10
2435930efd27SMatthias Ringwald 
2436930efd27SMatthias Ringwald /**
2437930efd27SMatthias Ringwald  * @format 12111111111
2438930efd27SMatthias Ringwald  * @param subevent_code
24391d79cae3SMatthias Ringwald  * @param a2dp_cid
2440930efd27SMatthias Ringwald  * @param remote_seid
2441930efd27SMatthias Ringwald  * @param media_type
2442930efd27SMatthias Ringwald  * @param sampling_frequency_bitmap
2443930efd27SMatthias Ringwald  * @param channel_mode_bitmap
2444930efd27SMatthias Ringwald  * @param block_length_bitmap
2445930efd27SMatthias Ringwald  * @param subbands_bitmap
2446930efd27SMatthias Ringwald  * @param allocation_method_bitmap
2447930efd27SMatthias Ringwald  * @param min_bitpool_value
2448930efd27SMatthias Ringwald  * @param max_bitpool_value
2449930efd27SMatthias Ringwald  */
2450930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY          0x11
2451930efd27SMatthias Ringwald 
2452930efd27SMatthias Ringwald /**
2453930efd27SMatthias Ringwald  * @format 12111111112
2454930efd27SMatthias Ringwald  * @param subevent_code
24551d79cae3SMatthias Ringwald  * @param a2dp_cid
2456930efd27SMatthias Ringwald  * @param remote_seid
2457930efd27SMatthias Ringwald  * @param media_type
2458930efd27SMatthias Ringwald  * @param layer_bitmap
2459930efd27SMatthias Ringwald  * @param crc
2460930efd27SMatthias Ringwald  * @param channel_mode_bitmap
2461930efd27SMatthias Ringwald  * @param media_payload_format
2462930efd27SMatthias Ringwald  * @param sampling_frequency_bitmap
2463930efd27SMatthias Ringwald  * @param vbr
2464930efd27SMatthias Ringwald  * @param bit_rate_index_bitmap
2465930efd27SMatthias Ringwald  */
2466930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY   0x12
2467930efd27SMatthias Ringwald 
2468930efd27SMatthias Ringwald /**
24691d79cae3SMatthias Ringwald  * @format 121112131
2470930efd27SMatthias Ringwald  * @param subevent_code
24711d79cae3SMatthias Ringwald  * @param a2dp_cid
2472930efd27SMatthias Ringwald  * @param remote_seid
2473930efd27SMatthias Ringwald  * @param media_type
2474930efd27SMatthias Ringwald  * @param object_type_bitmap
2475930efd27SMatthias Ringwald  * @param sampling_frequency_bitmap
2476930efd27SMatthias Ringwald  * @param channels_bitmap
2477930efd27SMatthias Ringwald  * @param bit_rate
2478930efd27SMatthias Ringwald  * @param vbr
2479930efd27SMatthias Ringwald  */
2480930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY     0x13
2481930efd27SMatthias Ringwald 
2482930efd27SMatthias Ringwald /**
2483930efd27SMatthias Ringwald  * @format 1211111132
2484930efd27SMatthias Ringwald  * @param subevent_code
24851d79cae3SMatthias Ringwald  * @param a2dp_cid
2486930efd27SMatthias Ringwald  * @param remote_seid
2487930efd27SMatthias Ringwald  * @param media_type
2488930efd27SMatthias Ringwald  * @param version
2489930efd27SMatthias Ringwald  * @param channel_mode_bitmap
2490930efd27SMatthias Ringwald  * @param sampling_frequency_bitmap
2491930efd27SMatthias Ringwald  * @param vbr
2492930efd27SMatthias Ringwald  * @param bit_rate_index_bitmap
2493930efd27SMatthias Ringwald  * @param maximum_sul
2494930efd27SMatthias Ringwald  */
2495930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY        0x14
2496930efd27SMatthias Ringwald 
2497930efd27SMatthias Ringwald /**
2498930efd27SMatthias Ringwald  * @format 12112LV
2499930efd27SMatthias Ringwald  * @param subevent_code
25001d79cae3SMatthias Ringwald  * @param a2dp_cid
2501930efd27SMatthias Ringwald  * @param remote_seid
2502930efd27SMatthias Ringwald  * @param media_type
2503930efd27SMatthias Ringwald  * @param media_codec_type
2504930efd27SMatthias Ringwald  * @param media_codec_information_len
2505930efd27SMatthias Ringwald  * @param media_codec_information
2506930efd27SMatthias Ringwald  */
2507930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY        0x15
250846c48853SMilanka Ringwald 
2509ff6bc02cSMilanka Ringwald /**
25101d79cae3SMatthias Ringwald  * @format 121
25110f5bb594SMilanka Ringwald  * @param subevent_code
25121d79cae3SMatthias Ringwald  * @param a2dp_cid
25130f5bb594SMilanka Ringwald  * @param remote_seid
25140f5bb594SMilanka Ringwald  */
2515930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY           0x16
25160f5bb594SMilanka Ringwald 
25170f5bb594SMilanka Ringwald 
25180f5bb594SMilanka Ringwald /**
2519ff6bc02cSMilanka Ringwald  * @format 1212
2520ff6bc02cSMilanka Ringwald  * @param subevent_code
25211d79cae3SMatthias Ringwald  * @param a2dp_cid
2522ff6bc02cSMilanka Ringwald  * @param local_seid
2523ff6bc02cSMilanka Ringwald  * @param delay_100us
2524ff6bc02cSMilanka Ringwald  */
2525930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORT                         0x17
2526ff6bc02cSMilanka Ringwald 
25270f5bb594SMilanka Ringwald /**
2528930efd27SMatthias Ringwald  * @format 121
25290f5bb594SMilanka Ringwald  * @param subevent_code
25301d79cae3SMatthias Ringwald  * @param a2dp_cid
25310f5bb594SMilanka Ringwald  * @param remote_seid
25320f5bb594SMilanka Ringwald  */
2533930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE                    0x18
2534930efd27SMatthias Ringwald 
2535930efd27SMatthias Ringwald /**
2536930efd27SMatthias Ringwald  * @format 12
2537930efd27SMatthias Ringwald  * @param subevent_code
25381d79cae3SMatthias Ringwald  * @param a2dp_cid
2539930efd27SMatthias Ringwald  */
2540930efd27SMatthias Ringwald #define A2DP_SUBEVENT_SIGNALING_CAPABILITIES_COMPLETE                0x19
2541930efd27SMatthias Ringwald 
2542ff6bc02cSMilanka Ringwald 
2543decc740cSMilanka Ringwald /** AVRCP Subevent */
2544decc740cSMilanka Ringwald 
2545decc740cSMilanka Ringwald /**
2546e7e98b60SMilanka Ringwald  * @format 1211
2547e7e98b60SMilanka Ringwald  * @param subevent_code
2548e7e98b60SMilanka Ringwald  * @param avrcp_cid
2549e7e98b60SMilanka Ringwald  * @param command_type
2550e7e98b60SMilanka Ringwald  * @param play_status
2551e7e98b60SMilanka Ringwald  */
2552e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED                         0x01
2553e7e98b60SMilanka Ringwald 
2554e7e98b60SMilanka Ringwald /**
2555e7e98b60SMilanka Ringwald  * @format 121
2556e7e98b60SMilanka Ringwald  * @param subevent_code
2557e7e98b60SMilanka Ringwald  * @param avrcp_cid
2558e7e98b60SMilanka Ringwald  * @param command_type
2559e7e98b60SMilanka Ringwald  */
2560e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED                                   0x02
2561e7e98b60SMilanka Ringwald 
2562e7e98b60SMilanka Ringwald /**
2563e7e98b60SMilanka Ringwald  * @format 121
2564e7e98b60SMilanka Ringwald  * @param subevent_code
2565e7e98b60SMilanka Ringwald  * @param avrcp_cid
2566e7e98b60SMilanka Ringwald  * @param command_type
2567e7e98b60SMilanka Ringwald  */
2568e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_END                         0x03
2569e7e98b60SMilanka Ringwald 
2570e7e98b60SMilanka Ringwald /**
2571e7e98b60SMilanka Ringwald  * @format 121
2572e7e98b60SMilanka Ringwald  * @param subevent_code
2573e7e98b60SMilanka Ringwald  * @param avrcp_cid
2574e7e98b60SMilanka Ringwald  * @param command_type
2575e7e98b60SMilanka Ringwald  */
2576e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_START                       0x04
2577e7e98b60SMilanka Ringwald 
2578e7e98b60SMilanka Ringwald /**
2579e7e98b60SMilanka Ringwald  * @format 1214
2580e7e98b60SMilanka Ringwald  * @param subevent_code
2581e7e98b60SMilanka Ringwald  * @param avrcp_cid
2582e7e98b60SMilanka Ringwald  * @param command_type
2583e7e98b60SMilanka Ringwald  * @param playback_position  If no track currently selected, then return 0xFFFFFFFF in the INTERIM response.
2584e7e98b60SMilanka Ringwald  */
2585e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_PLAYBACK_POS_CHANGED                      0x05
2586e7e98b60SMilanka Ringwald 
2587e7e98b60SMilanka Ringwald /**
2588e7e98b60SMilanka Ringwald  * @format 1211
2589e7e98b60SMilanka Ringwald  * @param subevent_code
2590e7e98b60SMilanka Ringwald  * @param avrcp_cid
2591e7e98b60SMilanka Ringwald  * @param command_type
2592e7e98b60SMilanka Ringwald  * @param battery_status  see avrcp_battery_status_t
2593e7e98b60SMilanka Ringwald  */
2594e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_BATT_STATUS_CHANGED                       0x06
2595e7e98b60SMilanka Ringwald 
2596e7e98b60SMilanka Ringwald /**
2597e7e98b60SMilanka Ringwald  * @format 1211
2598e7e98b60SMilanka Ringwald  * @param subevent_code
2599e7e98b60SMilanka Ringwald  * @param avrcp_cid
2600e7e98b60SMilanka Ringwald  * @param command_type
2601e7e98b60SMilanka Ringwald  * @param system_status  see avrcp_system_status_t
2602e7e98b60SMilanka Ringwald  */
2603e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_SYSTEM_STATUS_CHANGED                     0x07
2604e7e98b60SMilanka Ringwald 
2605e7e98b60SMilanka Ringwald 
2606e7e98b60SMilanka Ringwald // Recquires 1 byte for num_attributes, followed by num_attributes tuples [attribute_id(1), value_id(1)], see avrcp_player_application_setting_attribute_id_t
2607e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_PLAYER_APPLICATION_SETTING_CHANGED        0x08
2608e7e98b60SMilanka Ringwald 
2609e7e98b60SMilanka Ringwald /**
2610e7e98b60SMilanka Ringwald  * @format 121
2611e7e98b60SMilanka Ringwald  * @param subevent_code
2612e7e98b60SMilanka Ringwald  * @param avrcp_cid
2613e7e98b60SMilanka Ringwald  * @param command_type
2614e7e98b60SMilanka Ringwald  */
2615e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED                     0x09
2616e7e98b60SMilanka Ringwald 
2617e7e98b60SMilanka Ringwald /**
2618e7e98b60SMilanka Ringwald  * @format 121
2619e7e98b60SMilanka Ringwald  * @param subevent_code
2620e7e98b60SMilanka Ringwald  * @param avrcp_cid
2621e7e98b60SMilanka Ringwald  * @param command_type
2622e7e98b60SMilanka Ringwald  */
2623e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED                       0x0A
2624e7e98b60SMilanka Ringwald 
2625e7e98b60SMilanka Ringwald // AVRCP_SUBEVENT_NOTIFICATION_EVENT_ADDRESSED_PLAYER_CHANGED = 0x0b,           -- The Addressed Player has been changed, see 6.9.2.
2626e7e98b60SMilanka Ringwald 
2627e7e98b60SMilanka Ringwald /**
2628e7e98b60SMilanka Ringwald  * @format 1212
2629e7e98b60SMilanka Ringwald  * @param subevent_code
2630e7e98b60SMilanka Ringwald  * @param avrcp_cid
2631e7e98b60SMilanka Ringwald  * @param command_type
2632e7e98b60SMilanka Ringwald  * @param uid_counter of the currently browsed player
2633e7e98b60SMilanka Ringwald  */
2634e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_UIDS_CHANGED                              0x0C
2635e7e98b60SMilanka Ringwald 
2636e7e98b60SMilanka Ringwald /**
2637e7e98b60SMilanka Ringwald  * @format 1211
2638e7e98b60SMilanka Ringwald  * @param subevent_code
2639e7e98b60SMilanka Ringwald  * @param avrcp_cid
2640e7e98b60SMilanka Ringwald  * @param command_type
2641e7e98b60SMilanka Ringwald  * @param absolute_volume
2642e7e98b60SMilanka Ringwald  */
2643e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED                                  0x0D
2644e7e98b60SMilanka Ringwald 
2645e7e98b60SMilanka Ringwald 
2646e7e98b60SMilanka Ringwald /**
2647e7e98b60SMilanka Ringwald  * @format 1211
2648e7e98b60SMilanka Ringwald  * @param subevent_code
2649e7e98b60SMilanka Ringwald  * @param avrcp_cid
2650e7e98b60SMilanka Ringwald  * @param command_type
2651e7e98b60SMilanka Ringwald  * @param absolute_volume
2652e7e98b60SMilanka Ringwald  */
2653e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE                      0x10
2654e7e98b60SMilanka Ringwald 
2655e7e98b60SMilanka Ringwald /**
2656e7e98b60SMilanka Ringwald  * @format 1211
2657e7e98b60SMilanka Ringwald  * @param subevent_code
2658e7e98b60SMilanka Ringwald  * @param avrcp_cid
2659e7e98b60SMilanka Ringwald  * @param command_type
2660e7e98b60SMilanka Ringwald  * @param notification_id
2661e7e98b60SMilanka Ringwald  */
2662e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_ENABLE_NOTIFICATION_COMPLETE                       0x11
2663e7e98b60SMilanka Ringwald 
2664e7e98b60SMilanka Ringwald /**
26657dbc6cb8SMilanka Ringwald  * @format 112B2
2666decc740cSMilanka Ringwald  * @param subevent_code
26672a029560SMilanka Ringwald  * @param status 0 == OK
2668b193c45eSMilanka Ringwald  * @param avrcp_cid
26697dbc6cb8SMilanka Ringwald  * @param bd_addr
26707dbc6cb8SMilanka Ringwald  * @param con_handle
2671decc740cSMilanka Ringwald  */
2672e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_ESTABLISHED                           0x12
2673decc740cSMilanka Ringwald 
2674decc740cSMilanka Ringwald /**
2675b193c45eSMilanka Ringwald  * @format 12
2676decc740cSMilanka Ringwald  * @param subevent_code
2677b193c45eSMilanka Ringwald  * @param avrcp_cid
2678decc740cSMilanka Ringwald  */
2679e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_RELEASED                              0x13
2680decc740cSMilanka Ringwald 
2681cd41da7eSMilanka Ringwald /**
2682b193c45eSMilanka Ringwald  * @format 12111
26832a029560SMilanka Ringwald  * @param subevent_code
2684b193c45eSMilanka Ringwald  * @param avrcp_cid
2685d3b6a85eSMatthias Ringwald  * @param command_type
26862a029560SMilanka Ringwald  * @param repeat_mode
26872a029560SMilanka Ringwald  * @param shuffle_mode
26882a029560SMilanka Ringwald  */
2689e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE                          0x14
2690cd41da7eSMilanka Ringwald 
26916eb7ba29SMilanka Ringwald /**
2692b193c45eSMilanka Ringwald  * @format 121441
26936eb7ba29SMilanka Ringwald  * @param subevent_code
2694b193c45eSMilanka Ringwald  * @param avrcp_cid
2695d3b6a85eSMatthias Ringwald  * @param command_type
26966eb7ba29SMilanka Ringwald  * @param song_length
26976eb7ba29SMilanka Ringwald  * @param song_position
26986eb7ba29SMilanka Ringwald  * @param play_status
26996eb7ba29SMilanka Ringwald  */
2700e7e98b60SMilanka Ringwald  #define AVRCP_SUBEVENT_PLAY_STATUS                                     0x15
27016eb7ba29SMilanka Ringwald 
27026eb7ba29SMilanka Ringwald /**
2703b193c45eSMilanka Ringwald  * @format 1211
27046eb7ba29SMilanka Ringwald  * @param subevent_code
2705b193c45eSMilanka Ringwald  * @param avrcp_cid
2706d3b6a85eSMatthias Ringwald  * @param command_type
27076eb7ba29SMilanka Ringwald  * @param operation_id
27086eb7ba29SMilanka Ringwald  */
2709e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_START                                    0x16
27106eb7ba29SMilanka Ringwald 
27116eb7ba29SMilanka Ringwald /**
2712b193c45eSMilanka Ringwald  * @format 1211
27136eb7ba29SMilanka Ringwald  * @param subevent_code
2714b193c45eSMilanka Ringwald  * @param avrcp_cid
2715d3b6a85eSMatthias Ringwald  * @param command_type
27166eb7ba29SMilanka Ringwald  * @param operation_id
27176eb7ba29SMilanka Ringwald  */
2718e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_COMPLETE                                 0x17
27196eb7ba29SMilanka Ringwald 
27206eb7ba29SMilanka Ringwald /**
2721b193c45eSMilanka Ringwald  * @format 121
27226eb7ba29SMilanka Ringwald  * @param subevent_code
2723b193c45eSMilanka Ringwald  * @param avrcp_cid
2724d3b6a85eSMatthias Ringwald  * @param command_type
27256eb7ba29SMilanka Ringwald  */
2726e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE                   0x18
27276eb7ba29SMilanka Ringwald 
2728f1b34e8dSMatthias Ringwald /**
27294b338011SMilanka Ringwald  * @format 12
27304b338011SMilanka Ringwald  * @param subevent_code
27314b338011SMilanka Ringwald  * @param avrcp_cid
27324b338011SMilanka Ringwald  */
2733e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_COMPANY_IDS_QUERY                                    0x19
2734e0bbf3edSMilanka Ringwald 
2735e0bbf3edSMilanka Ringwald /**
2736e0bbf3edSMilanka Ringwald  * @format 12
2737e0bbf3edSMilanka Ringwald  * @param subevent_code
2738e0bbf3edSMilanka Ringwald  * @param avrcp_cid
2739e0bbf3edSMilanka Ringwald  */
2740e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_EVENT_IDS_QUERY                                      0x1A
2741c045af99SMilanka Ringwald 
2742c045af99SMilanka Ringwald /**
2743c045af99SMilanka Ringwald  * @format 12
2744c045af99SMilanka Ringwald  * @param subevent_code
2745c045af99SMilanka Ringwald  * @param avrcp_cid
2746c045af99SMilanka Ringwald  */
2747e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_PLAY_STATUS_QUERY                                    0x1B
27484b338011SMilanka Ringwald 
27494b338011SMilanka Ringwald /**
2750319131f8SMatthias Ringwald  * @format 121111
2751831d3fd5SMilanka Ringwald  * @param subevent_code
2752831d3fd5SMilanka Ringwald  * @param avrcp_cid
2753831d3fd5SMilanka Ringwald  * @param operation_id
2754319131f8SMatthias Ringwald  * @param button_pressed
2755831d3fd5SMilanka Ringwald  * @param operands_length
2756831d3fd5SMilanka Ringwald  * @param operand
2757831d3fd5SMilanka Ringwald  */
2758e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION                                            0x1C
27591bf7a74fSMilanka Ringwald 
27601bf7a74fSMilanka Ringwald /**
27611bf7a74fSMilanka Ringwald  * @format 1211
27621bf7a74fSMilanka Ringwald  * @param subevent_code
27631bf7a74fSMilanka Ringwald  * @param avrcp_cid
27641bf7a74fSMilanka Ringwald  * @param command_type
27651bf7a74fSMilanka Ringwald  * @param track
27661bf7a74fSMilanka Ringwald  */
2767e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO                               0x1D
27681bf7a74fSMilanka Ringwald 
27691bf7a74fSMilanka Ringwald /**
27701bf7a74fSMilanka Ringwald  * @format 1211
27711bf7a74fSMilanka Ringwald  * @param subevent_code
27721bf7a74fSMilanka Ringwald  * @param avrcp_cid
27731bf7a74fSMilanka Ringwald  * @param command_type
27741bf7a74fSMilanka Ringwald  * @param total_tracks
27751bf7a74fSMilanka Ringwald  */
2776e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO                        0x1E
27771bf7a74fSMilanka Ringwald 
27781bf7a74fSMilanka Ringwald /**
27791bf7a74fSMilanka Ringwald  * @format 1214
27801bf7a74fSMilanka Ringwald  * @param subevent_code
27811bf7a74fSMilanka Ringwald  * @param avrcp_cid
27821bf7a74fSMilanka Ringwald  * @param command_type
27831bf7a74fSMilanka Ringwald  * @param song_length in ms
27841bf7a74fSMilanka Ringwald  */
2785e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO                      0x1F
27861bf7a74fSMilanka Ringwald 
27871bf7a74fSMilanka Ringwald /**
27881bf7a74fSMilanka Ringwald  * @format 121JV
27891bf7a74fSMilanka Ringwald  * @param subevent_code
27901bf7a74fSMilanka Ringwald  * @param avrcp_cid
27911bf7a74fSMilanka Ringwald  * @param command_type
27921bf7a74fSMilanka Ringwald  * @param value_len
27931bf7a74fSMilanka Ringwald  * @param value
27941bf7a74fSMilanka Ringwald  */
2795e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO                                 0x20
27961bf7a74fSMilanka Ringwald 
27971bf7a74fSMilanka Ringwald  /*
27981bf7a74fSMilanka Ringwald  * @format 121JV
27991bf7a74fSMilanka Ringwald  * @param subevent_code
28001bf7a74fSMilanka Ringwald  * @param avrcp_cid
28011bf7a74fSMilanka Ringwald  * @param command_type
28021bf7a74fSMilanka Ringwald  * @param value_len
28031bf7a74fSMilanka Ringwald  * @param value
28041bf7a74fSMilanka Ringwald  */
2805e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO                                0x21
28061bf7a74fSMilanka Ringwald 
28071bf7a74fSMilanka Ringwald  /*
28081bf7a74fSMilanka Ringwald  * @format 121JV
28091bf7a74fSMilanka Ringwald  * @param subevent_code
28101bf7a74fSMilanka Ringwald  * @param avrcp_cid
28111bf7a74fSMilanka Ringwald  * @param command_type
28121bf7a74fSMilanka Ringwald  * @param value_len
28131bf7a74fSMilanka Ringwald  * @param value
28141bf7a74fSMilanka Ringwald  */
2815e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO                                 0x22
28161bf7a74fSMilanka Ringwald 
28171bf7a74fSMilanka Ringwald  /*
28181bf7a74fSMilanka Ringwald  * @format 121JV
28191bf7a74fSMilanka Ringwald  * @param subevent_code
28201bf7a74fSMilanka Ringwald  * @param avrcp_cid
28211bf7a74fSMilanka Ringwald  * @param command_type
28221bf7a74fSMilanka Ringwald  * @param value_len
28231bf7a74fSMilanka Ringwald  * @param value
28241bf7a74fSMilanka Ringwald  */
2825e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO                                 0x23
28261bf7a74fSMilanka Ringwald 
28271bf7a74fSMilanka Ringwald /*
28281bf7a74fSMilanka Ringwald  * @format 1211
28291bf7a74fSMilanka Ringwald  * @param subevent_code
28301bf7a74fSMilanka Ringwald  * @param avrcp_cid
28311bf7a74fSMilanka Ringwald  * @param command_type
28321bf7a74fSMilanka Ringwald  * @param status
28331bf7a74fSMilanka Ringwald  */
2834e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE                                  0x24
28351bf7a74fSMilanka Ringwald 
2836c3fca900SMilanka Ringwald /**
28374f5eb797SMilanka Ringwald  * @format 1214
28384f5eb797SMilanka Ringwald  * @param subevent_code
28394f5eb797SMilanka Ringwald  * @param avrcp_cid
28404f5eb797SMilanka Ringwald  * @param command_type
28414f5eb797SMilanka Ringwald  * @param playback_position_ms
28424f5eb797SMilanka Ringwald  */
28434f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED                      0x25
28444f5eb797SMilanka Ringwald 
28454f5eb797SMilanka Ringwald /*
28464f5eb797SMilanka Ringwald  * @format 12111
28474f5eb797SMilanka Ringwald  * @param subevent_code
28484f5eb797SMilanka Ringwald  * @param avrcp_cid
28494f5eb797SMilanka Ringwald  * @param command_type
28504f5eb797SMilanka Ringwald  * @param status
28514f5eb797SMilanka Ringwald  * @param event_id
28524f5eb797SMilanka Ringwald  */
28534f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID                                0x26
28544f5eb797SMilanka Ringwald /*
28554f5eb797SMilanka Ringwald  * @format 1211
28564f5eb797SMilanka Ringwald  * @param subevent_code
28574f5eb797SMilanka Ringwald  * @param avrcp_cid
28584f5eb797SMilanka Ringwald  * @param command_type
28594f5eb797SMilanka Ringwald  * @param status
28604f5eb797SMilanka Ringwald  */
28614f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID_DONE                           0x27
28624f5eb797SMilanka Ringwald 
28634f5eb797SMilanka Ringwald /*
28644f5eb797SMilanka Ringwald  * @format 12113
28654f5eb797SMilanka Ringwald  * @param subevent_code
28664f5eb797SMilanka Ringwald  * @param avrcp_cid
28674f5eb797SMilanka Ringwald  * @param command_type
28684f5eb797SMilanka Ringwald  * @param status
28694f5eb797SMilanka Ringwald  * @param company_id
28704f5eb797SMilanka Ringwald  */
28714f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID                              0x28
28724f5eb797SMilanka Ringwald /*
28734f5eb797SMilanka Ringwald  * @format 1211
28744f5eb797SMilanka Ringwald  * @param subevent_code
28754f5eb797SMilanka Ringwald  * @param avrcp_cid
28764f5eb797SMilanka Ringwald  * @param command_type
28774f5eb797SMilanka Ringwald  * @param status
28784f5eb797SMilanka Ringwald  */
28794f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID_DONE                         0x29
28804f5eb797SMilanka Ringwald 
28814f5eb797SMilanka Ringwald 
28824f5eb797SMilanka Ringwald 
28834f5eb797SMilanka Ringwald /**
2884576a1127SMilanka Ringwald  * @format 1B2
2885576a1127SMilanka Ringwald  * @param subevent_code
2886576a1127SMilanka Ringwald  * @param bd_addr
2887576a1127SMilanka Ringwald  * @param browsing_cid
2888576a1127SMilanka Ringwald  */
28894f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION                          0x30
2890576a1127SMilanka Ringwald 
2891576a1127SMilanka Ringwald /**
2892c3fca900SMilanka Ringwald  * @format 11B2
2893c3fca900SMilanka Ringwald  * @param subevent_code
2894c3fca900SMilanka Ringwald  * @param status 0 == OK
2895c3fca900SMilanka Ringwald  * @param bd_addr
2896c3fca900SMilanka Ringwald  * @param browsing_cid
2897c3fca900SMilanka Ringwald  */
28984f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED                        0x31
2899c3fca900SMilanka Ringwald 
2900c3fca900SMilanka Ringwald /**
2901c3fca900SMilanka Ringwald  * @format 12
2902c3fca900SMilanka Ringwald  * @param subevent_code
2903c3fca900SMilanka Ringwald  * @param browsing_cid
2904c3fca900SMilanka Ringwald  */
29054f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_RELEASED                           0x32
29064c954014SMilanka Ringwald 
29073d49a24eSMilanka Ringwald /**
2908be65baf4SMilanka Ringwald  * @format 12211
2909e30788a3SMilanka Ringwald  * @param subevent_code
2910e30788a3SMilanka Ringwald  * @param browsing_cid
2911be65baf4SMilanka Ringwald  * @param uid_counter
2912954cc391SMilanka Ringwald  * @param browsing_status
2913954cc391SMilanka Ringwald  * @param bluetooth_status
2914e30788a3SMilanka Ringwald  */
29154f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_DONE                                          0x33
2916e30788a3SMilanka Ringwald 
2917bd0f378aSMilanka Ringwald /**
2918bd0f378aSMilanka Ringwald  * @format 1214
2919bd0f378aSMilanka Ringwald  * @param subevent_code
2920bd0f378aSMilanka Ringwald  * @param browsing_cid
2921bd0f378aSMilanka Ringwald  * @param scope
2922bd0f378aSMilanka Ringwald  * @param attr_bitmap
2923bd0f378aSMilanka Ringwald  */
29244f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS                              0x34
2925bd0f378aSMilanka Ringwald 
2926bd0f378aSMilanka Ringwald /**
2927bd0f378aSMilanka Ringwald  * @format 121
2928bd0f378aSMilanka Ringwald  * @param subevent_code
2929bd0f378aSMilanka Ringwald  * @param browsing_cid
2930bd0f378aSMilanka Ringwald  * @param scope
2931bd0f378aSMilanka Ringwald  */
29324f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS                           0x35
29336fa3dbf2SMilanka Ringwald 
2934bbee1515SMilanka Ringwald /**
2935bbee1515SMilanka Ringwald  * @format 122
2936bbee1515SMilanka Ringwald  * @param subevent_code
2937bbee1515SMilanka Ringwald  * @param browsing_cid
2938bbee1515SMilanka Ringwald  * @param player_id
2939bbee1515SMilanka Ringwald  */
2940bbee1515SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_SET_BROWSED_PLAYER                            0x36
29414f5eb797SMilanka Ringwald 
29426fa3dbf2SMilanka Ringwald 
2943e30788a3SMilanka Ringwald 
29444c954014SMilanka Ringwald /**
2945f1b34e8dSMatthias Ringwald  * @format 121BH1
2946f1b34e8dSMatthias Ringwald  * @param subevent_code
2947f1b34e8dSMatthias Ringwald  * @param goep_cid
2948f1b34e8dSMatthias Ringwald  * @param status
2949f1b34e8dSMatthias Ringwald  * @param bd_addr
2950f1b34e8dSMatthias Ringwald  * @param con_handle
2951f1b34e8dSMatthias Ringwald  * @param incoming
2952f1b34e8dSMatthias Ringwald  */
2953f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_OPENED                                    0x01
29546eb7ba29SMilanka Ringwald 
2955f1b34e8dSMatthias Ringwald /**
2956f1b34e8dSMatthias Ringwald  * @format 12
2957f1b34e8dSMatthias Ringwald  * @param subevent_code
2958f1b34e8dSMatthias Ringwald  * @param goep_cid
2959f1b34e8dSMatthias Ringwald */
2960f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_CLOSED                                    0x02
2961f1b34e8dSMatthias Ringwald 
2962f1b34e8dSMatthias Ringwald /**
2963f1b34e8dSMatthias Ringwald  * @format 12
2964f1b34e8dSMatthias Ringwald  * @param subevent_code
2965f1b34e8dSMatthias Ringwald  * @param goep_cid
2966f1b34e8dSMatthias Ringwald */
2967f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CAN_SEND_NOW                                         0x03
2968f1b34e8dSMatthias Ringwald 
2969f1b34e8dSMatthias Ringwald /**
2970f1b34e8dSMatthias Ringwald  * @format 121BH1
2971f1b34e8dSMatthias Ringwald  * @param subevent_code
2972f1b34e8dSMatthias Ringwald  * @param pbap_cid
2973f1b34e8dSMatthias Ringwald  * @param status
2974f1b34e8dSMatthias Ringwald  * @param bd_addr
2975f1b34e8dSMatthias Ringwald  * @param con_handle
2976f1b34e8dSMatthias Ringwald  * @param incoming
2977f1b34e8dSMatthias Ringwald  */
2978f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_OPENED                                    0x01
2979f1b34e8dSMatthias Ringwald 
2980f1b34e8dSMatthias Ringwald /**
2981f1b34e8dSMatthias Ringwald  * @format 12
2982f1b34e8dSMatthias Ringwald  * @param subevent_code
2983f1b34e8dSMatthias Ringwald  * @param goep_cid
2984f1b34e8dSMatthias Ringwald */
2985f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_CLOSED                                    0x02
2986f1b34e8dSMatthias Ringwald 
2987f1b34e8dSMatthias Ringwald /**
2988f1b34e8dSMatthias Ringwald  * @format 121
2989f1b34e8dSMatthias Ringwald  * @param subevent_code
2990f1b34e8dSMatthias Ringwald  * @param goep_cid
2991f1b34e8dSMatthias Ringwald  * @param status
2992f1b34e8dSMatthias Ringwald  */
2993f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_OPERATION_COMPLETED                                  0x03
29946eb7ba29SMilanka Ringwald 
2995fafbca75SMatthias Ringwald /**
2996fafbca75SMatthias Ringwald  * @format 1212
2997fafbca75SMatthias Ringwald  * @param subevent_code
2998fafbca75SMatthias Ringwald  * @param goep_cid
2999fafbca75SMatthias Ringwald  * @param status
3000fafbca75SMatthias Ringwald  * @param phoneboook_size
3001fafbca75SMatthias Ringwald  */
3002fafbca75SMatthias Ringwald #define PBAP_SUBEVENT_PHONEBOOK_SIZE                                       0x04
3003fafbca75SMatthias Ringwald 
3004c1bc0b8eSMatthias Ringwald /**
3005c1bc0b8eSMatthias Ringwald  * @format 1211
3006c1bc0b8eSMatthias Ringwald  * @param subevent_code
3007c1bc0b8eSMatthias Ringwald  * @param goep_cid
3008c1bc0b8eSMatthias Ringwald  * @param user_id_required
3009c1bc0b8eSMatthias Ringwald  * @param full_access
3010c1bc0b8eSMatthias Ringwald  */
3011c1bc0b8eSMatthias Ringwald #define PBAP_SUBEVENT_AUTHENTICATION_REQUEST                               0x05
3012c1bc0b8eSMatthias Ringwald 
3013ad514860SMatthias Ringwald /**
3014ad514860SMatthias Ringwald  * @format 12JVJV
3015ad514860SMatthias Ringwald  * @param subevent_code
3016ad514860SMatthias Ringwald  * @param goep_cid
3017ad514860SMatthias Ringwald  * @param name_len
3018ad514860SMatthias Ringwald  * @param name
3019ad514860SMatthias Ringwald  * @param handle_len
3020ad514860SMatthias Ringwald  * @param handle
3021ad514860SMatthias Ringwald  */
3022ad514860SMatthias Ringwald #define PBAP_SUBEVENT_CARD_RESULT                                          0x06
3023ad514860SMatthias Ringwald 
3024c1bc0b8eSMatthias Ringwald 
3025a4bfc4feSMatthias Ringwald // HID Meta Event Group
3026a4bfc4feSMatthias Ringwald 
3027dd148ddbSMatthias Ringwald /**
3028b6685decSMilanka Ringwald  * @format 12BH
3029b6685decSMilanka Ringwald  * @param subevent_code
3030b6685decSMilanka Ringwald  * @param hid_cid
3031b6685decSMilanka Ringwald  * @param address
3032b6685decSMilanka Ringwald  * @param handle
3033b6685decSMilanka Ringwald  */
3034b6685decSMilanka Ringwald #define HID_SUBEVENT_INCOMING_CONNECTION                                   0x01
3035b6685decSMilanka Ringwald 
3036b6685decSMilanka Ringwald /**
3037dd148ddbSMatthias Ringwald  * @format 121BH1
3038dd148ddbSMatthias Ringwald  * @param subevent_code
3039dd148ddbSMatthias Ringwald  * @param hid_cid
3040dd148ddbSMatthias Ringwald  * @param status
3041dd148ddbSMatthias Ringwald  * @param bd_addr
3042dd148ddbSMatthias Ringwald  * @param con_handle
3043dd148ddbSMatthias Ringwald  * @param incoming
3044dd148ddbSMatthias Ringwald  */
3045b6685decSMilanka Ringwald #define HID_SUBEVENT_CONNECTION_OPENED                                     0x02
3046dd148ddbSMatthias Ringwald 
3047dd148ddbSMatthias Ringwald /**
3048dd148ddbSMatthias Ringwald  * @format 12
3049dd148ddbSMatthias Ringwald  * @param subevent_code
3050dd148ddbSMatthias Ringwald  * @param hid_cid
3051dd148ddbSMatthias Ringwald */
3052b6685decSMilanka Ringwald #define HID_SUBEVENT_CONNECTION_CLOSED                                     0x03
3053dd148ddbSMatthias Ringwald 
3054dd148ddbSMatthias Ringwald /**
3055dd148ddbSMatthias Ringwald  * @format 12
3056dd148ddbSMatthias Ringwald  * @param subevent_code
3057dd148ddbSMatthias Ringwald  * @param hid_cid
3058dd148ddbSMatthias Ringwald */
3059b6685decSMilanka Ringwald #define HID_SUBEVENT_CAN_SEND_NOW                                          0x04
3060dd148ddbSMatthias Ringwald 
30616510739bSMilanka Ringwald /**
30626510739bSMilanka Ringwald  * @format 12
30636510739bSMilanka Ringwald  * @param subevent_code
3064acfd7ed2SMilanka Ringwald  * @param hid_cid
30656510739bSMilanka Ringwald */
3066b6685decSMilanka Ringwald #define HID_SUBEVENT_SUSPEND                                               0x05
30676510739bSMilanka Ringwald 
30686510739bSMilanka Ringwald /**
30696510739bSMilanka Ringwald  * @format 12
30706510739bSMilanka Ringwald  * @param subevent_code
3071acfd7ed2SMilanka Ringwald  * @param hid_cid
30726510739bSMilanka Ringwald */
3073b6685decSMilanka Ringwald #define HID_SUBEVENT_EXIT_SUSPEND                                          0x06
30746510739bSMilanka Ringwald 
3075acfd7ed2SMilanka Ringwald /**
3076acfd7ed2SMilanka Ringwald  * @format 12
3077acfd7ed2SMilanka Ringwald  * @param subevent_code
3078acfd7ed2SMilanka Ringwald  * @param hid_cid
3079acfd7ed2SMilanka Ringwald */
3080b6685decSMilanka Ringwald #define HID_SUBEVENT_VIRTUAL_CABLE_UNPLUG                                  0x07
3081acfd7ed2SMilanka Ringwald 
3082ecd76fd1SMilanka Ringwald /**
3083ecd76fd1SMilanka Ringwald  * @format 121LV
3084ecd76fd1SMilanka Ringwald  * @param subevent_code
3085ecd76fd1SMilanka Ringwald  * @param hid_cid
3086ecd76fd1SMilanka Ringwald  * @param handshake_status
3087ecd76fd1SMilanka Ringwald  * @param report_len
3088ecd76fd1SMilanka Ringwald  * @param report
3089ecd76fd1SMilanka Ringwald */
3090ecd76fd1SMilanka Ringwald #define HID_SUBEVENT_GET_REPORT_RESPONSE                                   0x08
30916510739bSMilanka Ringwald 
3092baccf17dSMilanka Ringwald /**
3093baccf17dSMilanka Ringwald  * @format 121
3094baccf17dSMilanka Ringwald  * @param subevent_code
3095baccf17dSMilanka Ringwald  * @param hid_cid
3096baccf17dSMilanka Ringwald  * @param handshake_status
3097baccf17dSMilanka Ringwald */
3098baccf17dSMilanka Ringwald #define HID_SUBEVENT_SET_REPORT_RESPONSE                                   0x09
3099baccf17dSMilanka Ringwald 
3100baccf17dSMilanka Ringwald /**
3101baccf17dSMilanka Ringwald  * @format 1211
3102baccf17dSMilanka Ringwald  * @param subevent_code
3103baccf17dSMilanka Ringwald  * @param hid_cid
3104baccf17dSMilanka Ringwald  * @param handshake_status
3105baccf17dSMilanka Ringwald  * @param protocol_mode
3106baccf17dSMilanka Ringwald */
3107baccf17dSMilanka Ringwald #define HID_SUBEVENT_GET_PROTOCOL_RESPONSE                                 0x0A
3108baccf17dSMilanka Ringwald 
3109baccf17dSMilanka Ringwald /**
311048174cc5SMilanka Ringwald  * @format 1211
3111baccf17dSMilanka Ringwald  * @param subevent_code
3112baccf17dSMilanka Ringwald  * @param hid_cid
3113baccf17dSMilanka Ringwald  * @param handshake_status
311448174cc5SMilanka Ringwald  * @param protocol_mode
3115baccf17dSMilanka Ringwald */
3116baccf17dSMilanka Ringwald #define HID_SUBEVENT_SET_PROTOCOL_RESPONSE                                 0x0B
3117baccf17dSMilanka Ringwald 
311801a4f169SMilanka Ringwald /**
311901a4f169SMilanka Ringwald  * @format 12LV
312001a4f169SMilanka Ringwald  * @param subevent_code
312101a4f169SMilanka Ringwald  * @param hid_cid
312201a4f169SMilanka Ringwald  * @param report_len
312301a4f169SMilanka Ringwald  * @param report
312401a4f169SMilanka Ringwald */
312501a4f169SMilanka Ringwald #define HID_SUBEVENT_REPORT                                                0x0C
312601a4f169SMilanka Ringwald 
312733d66f03SMilanka Ringwald /**
312833d66f03SMilanka Ringwald  * @format 121
312933d66f03SMilanka Ringwald  * @param subevent_code
313033d66f03SMilanka Ringwald  * @param hid_cid
313133d66f03SMilanka Ringwald  * @param status
313233d66f03SMilanka Ringwald  */
313333d66f03SMilanka Ringwald #define HID_SUBEVENT_DESCRIPTOR_AVAILABLE                                  0x0D
313433d66f03SMilanka Ringwald 
3135fee1f3a7SMilanka Ringwald /**
3136fee1f3a7SMilanka Ringwald  * @format 1222
3137fee1f3a7SMilanka Ringwald  * @param subevent_code
3138fee1f3a7SMilanka Ringwald  * @param hid_cid
3139fee1f3a7SMilanka Ringwald  * @param host_max_latency
3140fee1f3a7SMilanka Ringwald  * @param host_min_timeout
3141fee1f3a7SMilanka Ringwald  */
3142fee1f3a7SMilanka Ringwald #define HID_SUBEVENT_SNIFF_SUBRATING_PARAMS                                0x0E
3143baccf17dSMilanka Ringwald 
3144a4bfc4feSMatthias Ringwald // HIDS Meta Event Group
3145a4bfc4feSMatthias Ringwald 
3146a4bfc4feSMatthias Ringwald /**
3147a4bfc4feSMatthias Ringwald  * @format 12
3148a4bfc4feSMatthias Ringwald  * @param subevent_code
3149a4bfc4feSMatthias Ringwald  * @param con_handle
3150a4bfc4feSMatthias Ringwald */
3151a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_CAN_SEND_NOW                                          0x01
3152a4bfc4feSMatthias Ringwald 
3153a4bfc4feSMatthias Ringwald /**
3154a4bfc4feSMatthias Ringwald  * @format 121
3155a4bfc4feSMatthias Ringwald  * @param subevent_code
3156a4bfc4feSMatthias Ringwald  * @param con_handle
3157a4bfc4feSMatthias Ringwald  * @param protocol_mode
3158a4bfc4feSMatthias Ringwald */
3159a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_PROTOCOL_MODE                                         0x02
3160a4bfc4feSMatthias Ringwald 
3161a4bfc4feSMatthias Ringwald /**
3162a4bfc4feSMatthias Ringwald  * @format 121
3163a4bfc4feSMatthias Ringwald  * @param subevent_code
3164a4bfc4feSMatthias Ringwald  * @param con_handle
3165a4bfc4feSMatthias Ringwald  * @param enable
3166a4bfc4feSMatthias Ringwald */
3167a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE                        0x03
3168a4bfc4feSMatthias Ringwald 
3169a4bfc4feSMatthias Ringwald /**
3170a4bfc4feSMatthias Ringwald  * @format 121
3171a4bfc4feSMatthias Ringwald  * @param subevent_code
3172a4bfc4feSMatthias Ringwald  * @param con_handle
3173a4bfc4feSMatthias Ringwald  * @param enable
3174a4bfc4feSMatthias Ringwald */
3175a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE                     0x04
3176a4bfc4feSMatthias Ringwald 
3177a4bfc4feSMatthias Ringwald /**
3178a4bfc4feSMatthias Ringwald  * @format 121
3179a4bfc4feSMatthias Ringwald  * @param subevent_code
3180a4bfc4feSMatthias Ringwald  * @param con_handle
3181a4bfc4feSMatthias Ringwald  * @param enable
3182a4bfc4feSMatthias Ringwald */
3183a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_INPUT_REPORT_ENABLE                                   0x05
3184a4bfc4feSMatthias Ringwald 
31850235c9e5SMilanka Ringwald /**
31860235c9e5SMilanka Ringwald  * @format 121
31870235c9e5SMilanka Ringwald  * @param subevent_code
31880235c9e5SMilanka Ringwald  * @param con_handle
31890235c9e5SMilanka Ringwald  * @param enable
31900235c9e5SMilanka Ringwald */
31910235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE                                  0x06
31920235c9e5SMilanka Ringwald 
31930235c9e5SMilanka Ringwald /**
31940235c9e5SMilanka Ringwald  * @format 121
31950235c9e5SMilanka Ringwald  * @param subevent_code
31960235c9e5SMilanka Ringwald  * @param con_handle
31970235c9e5SMilanka Ringwald  * @param enable
31980235c9e5SMilanka Ringwald */
31990235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_FEATURE_REPORT_ENABLE                                 0x07
32000235c9e5SMilanka Ringwald 
32010235c9e5SMilanka Ringwald /**
32020235c9e5SMilanka Ringwald  * @format 12
32030235c9e5SMilanka Ringwald  * @param subevent_code
32040235c9e5SMilanka Ringwald  * @param con_handle
32050235c9e5SMilanka Ringwald */
32060235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_SUSPEND                                               0x08
32070235c9e5SMilanka Ringwald 
32080235c9e5SMilanka Ringwald /**
32090235c9e5SMilanka Ringwald  * @format 12
32100235c9e5SMilanka Ringwald  * @param subevent_code
32110235c9e5SMilanka Ringwald  * @param con_handle
32120235c9e5SMilanka Ringwald */
32130235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_EXIT_SUSPEND                                          0x09
32149fe70df8SMilanka Ringwald 
32159fe70df8SMilanka Ringwald /**
32169fe70df8SMilanka Ringwald  * @format 1211
32179fe70df8SMilanka Ringwald  * @param subevent_code
32189fe70df8SMilanka Ringwald  * @param con_handle
32196e084577SMatthias Ringwald  * @param measurement_type 0 - force magnitude, 1 - torque magnitude, see cycling_power_sensor_measurement_context_t
32209fe70df8SMilanka Ringwald  * @param is_enhanced
32219fe70df8SMilanka Ringwald */
322228e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION               0x01
32239fe70df8SMilanka Ringwald 
32249fe70df8SMilanka Ringwald /**
32259fe70df8SMilanka Ringwald  * @format 12
32269fe70df8SMilanka Ringwald  * @param subevent_code
32279fe70df8SMilanka Ringwald  * @param con_handle
32289fe70df8SMilanka Ringwald */
322928e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_START                 0x02
32309fe70df8SMilanka Ringwald 
32319fe70df8SMilanka Ringwald /**
32329fe70df8SMilanka Ringwald  * @format 12
32339fe70df8SMilanka Ringwald  * @param subevent_code
32349fe70df8SMilanka Ringwald  * @param con_handle
32359fe70df8SMilanka Ringwald */
323628e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_STOP                  0x03
3237ad58991cSMilanka Ringwald 
3238174a0c1cSMilanka Ringwald /**
3239f3d85318SMilanka Ringwald  * @format 12111
3240174a0c1cSMilanka Ringwald  * @param subevent_code
32418b2a4a13SMilanka Ringwald  * @param hids_cid
3242174a0c1cSMilanka Ringwald  * @param status
3243174a0c1cSMilanka Ringwald  * @param num_instances
3244f3d85318SMilanka Ringwald  * @param poll_bitmap
3245174a0c1cSMilanka Ringwald */
32467ec9a1bbSMilanka Ringwald #define GATTSERVICE_SUBEVENT_BATTERY_SERVICE_CONNECTED                     0x04
3247ad58991cSMilanka Ringwald 
32483beaf9f1SMilanka Ringwald /**
3249f3d85318SMilanka Ringwald  * @format 12111
32503beaf9f1SMilanka Ringwald  * @param subevent_code
32518b2a4a13SMilanka Ringwald  * @param hids_cid
32523beaf9f1SMilanka Ringwald  * @param sevice_index
3253f3d85318SMilanka Ringwald  * @param att_status  see ATT errors in bluetooth.h
32543beaf9f1SMilanka Ringwald  * @param level
32553beaf9f1SMilanka Ringwald */
32563beaf9f1SMilanka Ringwald #define GATTSERVICE_SUBEVENT_BATTERY_SERVICE_LEVEL                         0x05
32573beaf9f1SMilanka Ringwald 
32581f101bfcSMilanka Ringwald /**
32591f101bfcSMilanka Ringwald  * @format 1H1
32601f101bfcSMilanka Ringwald  * @param subevent_code
32611f101bfcSMilanka Ringwald  * @param con_handle
32621f101bfcSMilanka Ringwald  * @param att_status
32631f101bfcSMilanka Ringwald  */
32641f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_DONE                       0x06
32651f101bfcSMilanka Ringwald 
32661f101bfcSMilanka Ringwald /**
326748691b0dSMilanka Ringwald  * @format 1H1T
32681f101bfcSMilanka Ringwald  * @param subevent_code
32691f101bfcSMilanka Ringwald  * @param con_handle
327048691b0dSMilanka Ringwald  * @param att_status
32711f101bfcSMilanka Ringwald  * @param value
32721f101bfcSMilanka Ringwald  */
32731f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MANUFACTURER_NAME          0x07
32741f101bfcSMilanka Ringwald 
32751f101bfcSMilanka Ringwald /**
327648691b0dSMilanka Ringwald  * @format 1H1T
32771f101bfcSMilanka Ringwald  * @param subevent_code
32781f101bfcSMilanka Ringwald  * @param con_handle
327948691b0dSMilanka Ringwald  * @param att_status
32801f101bfcSMilanka Ringwald  * @param value
32811f101bfcSMilanka Ringwald  */
32821f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MODEL_NUMBER               0x08
32831f101bfcSMilanka Ringwald 
32841f101bfcSMilanka Ringwald /**
328548691b0dSMilanka Ringwald  * @format 1H1T
32861f101bfcSMilanka Ringwald  * @param subevent_code
32871f101bfcSMilanka Ringwald  * @param con_handle
328848691b0dSMilanka Ringwald  * @param att_status
32891f101bfcSMilanka Ringwald  * @param value
32901f101bfcSMilanka Ringwald  */
32911f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SERIAL_NUMBER              0x09
32921f101bfcSMilanka Ringwald 
32931f101bfcSMilanka Ringwald /**
329448691b0dSMilanka Ringwald  * @format 1H1T
32951f101bfcSMilanka Ringwald  * @param subevent_code
32961f101bfcSMilanka Ringwald  * @param con_handle
329748691b0dSMilanka Ringwald  * @param att_status
32981f101bfcSMilanka Ringwald  * @param value
32991f101bfcSMilanka Ringwald  */
33001f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_HARDWARE_REVISION          0x0A
33011f101bfcSMilanka Ringwald 
33021f101bfcSMilanka Ringwald /**
330348691b0dSMilanka Ringwald  * @format 1H1T
33041f101bfcSMilanka Ringwald  * @param subevent_code
33051f101bfcSMilanka Ringwald  * @param con_handle
330648691b0dSMilanka Ringwald  * @param att_status
33071f101bfcSMilanka Ringwald  * @param value
33081f101bfcSMilanka Ringwald  */
33091f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_FIRMWARE_REVISION          0x0B
33101f101bfcSMilanka Ringwald 
33111f101bfcSMilanka Ringwald /**
331248691b0dSMilanka Ringwald  * @format 1H1T
33131f101bfcSMilanka Ringwald  * @param subevent_code
33141f101bfcSMilanka Ringwald  * @param con_handle
331548691b0dSMilanka Ringwald  * @param att_status
33161f101bfcSMilanka Ringwald  * @param value
33171f101bfcSMilanka Ringwald  */
33181f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SOFTWARE_REVISION          0x0C
33191f101bfcSMilanka Ringwald 
33201f101bfcSMilanka Ringwald /**
332148691b0dSMilanka Ringwald  * @format 1H1413
33221f101bfcSMilanka Ringwald  * @param subevent_code
33231f101bfcSMilanka Ringwald  * @param con_handle
332448691b0dSMilanka Ringwald  * @param att_status
3325087a95b8SMilanka Ringwald  * @param manufacturer_id_low
3326087a95b8SMilanka Ringwald  * @param manufacturer_id_high
3327087a95b8SMilanka Ringwald  * @param organizationally_unique_id
33281f101bfcSMilanka Ringwald  */
33291f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SYSTEM_ID                  0x0D
33301f101bfcSMilanka Ringwald 
33311f101bfcSMilanka Ringwald /**
333248691b0dSMilanka Ringwald  * @format 1H122
33331f101bfcSMilanka Ringwald  * @param subevent_code
33341f101bfcSMilanka Ringwald  * @param con_handle
333548691b0dSMilanka Ringwald  * @param att_status
3336087a95b8SMilanka Ringwald  * @param value_a
3337087a95b8SMilanka Ringwald  * @param value_b
33381f101bfcSMilanka Ringwald  */
3339087a95b8SMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_IEEE_REGULATORY_CERTIFICATION     0x0E
33401f101bfcSMilanka Ringwald 
33411f101bfcSMilanka Ringwald /**
334248691b0dSMilanka Ringwald  * @format 1H11222
33431f101bfcSMilanka Ringwald  * @param subevent_code
33441f101bfcSMilanka Ringwald  * @param con_handle
334548691b0dSMilanka Ringwald  * @param att_status
33461f101bfcSMilanka Ringwald  * @param vendor_source_id
33471f101bfcSMilanka Ringwald  * @param vendor_id
33481f101bfcSMilanka Ringwald  * @param product_id
33491f101bfcSMilanka Ringwald  * @param product_version
33501f101bfcSMilanka Ringwald  */
33511f101bfcSMilanka Ringwald #define GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_PNP_ID                    0x0F
33521f101bfcSMilanka Ringwald 
335378ae886bSMilanka Ringwald /**
335478ae886bSMilanka Ringwald  * @format 1H1
335578ae886bSMilanka Ringwald  * @param subevent_code
335678ae886bSMilanka Ringwald  * @param con_handle
335778ae886bSMilanka Ringwald  * @param att_status
335878ae886bSMilanka Ringwald  */
335978ae886bSMilanka Ringwald #define GATTSERVICE_SUBEVENT_SCAN_PARAMETERS_SERVICE_CONNECTED            0x10
336078ae886bSMilanka Ringwald 
3361f8aace92SMatthias Ringwald /**
3362f8aace92SMatthias Ringwald  * @format 1H
3363f8aace92SMatthias Ringwald  * @param subevent_code
3364f8aace92SMatthias Ringwald  * @param con_handle
3365f8aace92SMatthias Ringwald  */
3366f8aace92SMatthias Ringwald #define GATTSERVICE_SUBEVENT_SPP_SERVICE_CONNECTED                        0x11
3367f8aace92SMatthias Ringwald 
3368f8aace92SMatthias Ringwald /**
3369f8aace92SMatthias Ringwald  * @format 1H
3370f8aace92SMatthias Ringwald  * @param subevent_code
3371f8aace92SMatthias Ringwald  * @param con_handle
3372f8aace92SMatthias Ringwald  */
3373f8aace92SMatthias Ringwald #define GATTSERVICE_SUBEVENT_SPP_SERVICE_DISCONNECTED                     0x12
3374f8aace92SMatthias Ringwald 
3375cf26c8fbSMilanka Ringwald /**
33768b2a4a13SMilanka Ringwald  * @format 12111
3377cf26c8fbSMilanka Ringwald  * @param subevent_code
33788b2a4a13SMilanka Ringwald  * @param hids_cid
3379cf26c8fbSMilanka Ringwald  * @param status
33808b2a4a13SMilanka Ringwald  * @param protocol_mode
3381cf26c8fbSMilanka Ringwald  * @param num_instances
3382cf26c8fbSMilanka Ringwald */
3383cf26c8fbSMilanka Ringwald #define GATTSERVICE_SUBEVENT_HID_SERVICE_CONNECTED                        0x13
33841f101bfcSMilanka Ringwald 
33858b2a4a13SMilanka Ringwald /**
338684b19b67SMilanka Ringwald  * @format 1211LV
33878b2a4a13SMilanka Ringwald  * @param subevent_code
33888b2a4a13SMilanka Ringwald  * @param hids_cid
338984b19b67SMilanka Ringwald  * @param service_index
339072a8858fSMilanka Ringwald  * @param report_id
33918b2a4a13SMilanka Ringwald  * @param report_len
33928b2a4a13SMilanka Ringwald  * @param report
33938b2a4a13SMilanka Ringwald */
33948b2a4a13SMilanka Ringwald #define GATTSERVICE_SUBEVENT_HID_REPORT                                   0x14
33958b2a4a13SMilanka Ringwald 
3396f4d3b82aSMilanka Ringwald /**
3397f4d3b82aSMilanka Ringwald  * @format 1212111
3398f4d3b82aSMilanka Ringwald  * @param subevent_code
3399f4d3b82aSMilanka Ringwald  * @param hids_cid
3400f4d3b82aSMilanka Ringwald  * @param service_index
3401f4d3b82aSMilanka Ringwald  * @param base_usb_hid_version      Version number of base USB HID Specification implemented by HID Device
3402f4d3b82aSMilanka Ringwald  * @param country_code              Country HID Device hardware is localized for (not localized: 0x00)
3403f4d3b82aSMilanka Ringwald  * @param remote_wake               Indicates whether HID Device is capable of sending a wake-signal to a HID Host
3404f4d3b82aSMilanka Ringwald  * @param normally_connectable      Indicates whether HID Device will be advertising when bonded but not connected.
3405f4d3b82aSMilanka Ringwald */
3406f4d3b82aSMilanka Ringwald #define GATTSERVICE_SUBEVENT_HID_INFORMATION                              0x15
3407f4d3b82aSMilanka Ringwald 
3408af2241c2SMilanka Ringwald /**
3409af2241c2SMilanka Ringwald  * @format 1211
3410af2241c2SMilanka Ringwald  * @param subevent_code
3411af2241c2SMilanka Ringwald  * @param hids_cid
3412af2241c2SMilanka Ringwald  * @param service_index
34133cbedd43SMatthias Ringwald  * @param protocol_mode    see hid_protocol_mode_t in btstack_hid.h
3414af2241c2SMilanka Ringwald */
3415af2241c2SMilanka Ringwald #define GATTSERVICE_SUBEVENT_HID_PROTOCOL_MODE                            0x16
34168b2a4a13SMilanka Ringwald 
34175b4ead15SMilanka Ringwald /**
34185b4ead15SMilanka Ringwald  * @format 121
34195b4ead15SMilanka Ringwald  * @param subevent_code
34205b4ead15SMilanka Ringwald  * @param hids_cid
34215b4ead15SMilanka Ringwald  * @param configuration
34225b4ead15SMilanka Ringwald */
34235b4ead15SMilanka Ringwald #define GATTSERVICE_SUBEVENT_HID_SERVICE_REPORTS_NOTIFICATION             0x17
34245b4ead15SMilanka Ringwald 
342589974af9SMilanka Ringwald /**
342689974af9SMilanka Ringwald  * @format 1H22
342789974af9SMilanka Ringwald  * @param subevent_code
342889974af9SMilanka Ringwald  * @param con_handle
342989974af9SMilanka Ringwald  * @param max_scan_interval
343089974af9SMilanka Ringwald  * @param min_scan_window
343189974af9SMilanka Ringwald  */
343289974af9SMilanka Ringwald #define GATTSERVICE_SUBEVENT_SCAN_PARAMETERS_SERVICE_SCAN_INTERVAL_UPDATE 0x18
343389974af9SMilanka Ringwald 
343489974af9SMilanka Ringwald 
3435ad58991cSMilanka Ringwald // MAP Meta Event Group
3436ad58991cSMilanka Ringwald 
3437ad58991cSMilanka Ringwald /**
3438ad58991cSMilanka Ringwald  * @format 121BH1
3439ad58991cSMilanka Ringwald  * @param subevent_code
3440ad58991cSMilanka Ringwald  * @param map_cid
3441ad58991cSMilanka Ringwald  * @param status
3442ad58991cSMilanka Ringwald  * @param bd_addr
3443ad58991cSMilanka Ringwald  * @param con_handle
3444ad58991cSMilanka Ringwald  * @param incoming
3445ad58991cSMilanka Ringwald  */
3446ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_OPENED                                    0x01
3447ad58991cSMilanka Ringwald 
3448ad58991cSMilanka Ringwald /**
3449ad58991cSMilanka Ringwald  * @format 12
3450ad58991cSMilanka Ringwald  * @param subevent_code
34515160ece6SMilanka Ringwald  * @param map_cid
3452ad58991cSMilanka Ringwald */
3453ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_CLOSED                                    0x02
3454ad58991cSMilanka Ringwald 
3455ad58991cSMilanka Ringwald /**
3456ad58991cSMilanka Ringwald  * @format 121
3457ad58991cSMilanka Ringwald  * @param subevent_code
34585160ece6SMilanka Ringwald  * @param map_cid
3459ad58991cSMilanka Ringwald  * @param status
3460ad58991cSMilanka Ringwald  */
3461ad58991cSMilanka Ringwald #define MAP_SUBEVENT_OPERATION_COMPLETED                                  0x03
3462ad58991cSMilanka Ringwald 
3463ad58991cSMilanka Ringwald 
34645160ece6SMilanka Ringwald /**
34655160ece6SMilanka Ringwald  * @format 12LV
34665160ece6SMilanka Ringwald  * @param subevent_code
34675160ece6SMilanka Ringwald  * @param map_cid
34685160ece6SMilanka Ringwald  * @param name_len
34695160ece6SMilanka Ringwald  * @param name
34705160ece6SMilanka Ringwald  */
34715160ece6SMilanka Ringwald #define MAP_SUBEVENT_FOLDER_LISTING_ITEM                                  0x04
34725160ece6SMilanka Ringwald 
34735160ece6SMilanka Ringwald /**
34745160ece6SMilanka Ringwald  * @format 12D
34755160ece6SMilanka Ringwald  * @param subevent_code
34765160ece6SMilanka Ringwald  * @param map_cid
34775160ece6SMilanka Ringwald  * @param handle
34785160ece6SMilanka Ringwald 
34795160ece6SMilanka Ringwald  */
34805160ece6SMilanka Ringwald #define MAP_SUBEVENT_MESSAGE_LISTING_ITEM                                 0x05
34815160ece6SMilanka Ringwald 
34825160ece6SMilanka Ringwald /**
34835160ece6SMilanka Ringwald  * @format 12
34845160ece6SMilanka Ringwald  * @param subevent_code
34855160ece6SMilanka Ringwald  * @param map_cid
34865160ece6SMilanka Ringwald  */
34875160ece6SMilanka Ringwald #define MAP_SUBEVENT_PARSING_DONE                                         0x06
34885160ece6SMilanka Ringwald 
34895160ece6SMilanka Ringwald 
34901fbe4564SMatthias Ringwald // MESH Meta Event Group
34915160ece6SMilanka Ringwald 
34921fbe4564SMatthias Ringwald /**
34931fbe4564SMatthias Ringwald  * @format 1
34941fbe4564SMatthias Ringwald  * @param subevent_code
34951fbe4564SMatthias Ringwald  */
34961fbe4564SMatthias Ringwald #define MESH_SUBEVENT_CAN_SEND_NOW                                          0x01
34971fbe4564SMatthias Ringwald 
34981fbe4564SMatthias Ringwald /**
34991fbe4564SMatthias Ringwald  * @format 11
35001fbe4564SMatthias Ringwald  * @param subevent_code
35011fbe4564SMatthias Ringwald  * @param status
35021fbe4564SMatthias Ringwald  */
35037bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_PDU_SENT                                          0x02
350426ecb624SMilanka Ringwald 
350526ecb624SMilanka Ringwald /**
350626ecb624SMilanka Ringwald  * @format 1121
350726ecb624SMilanka Ringwald  * @param subevent_code
350826ecb624SMilanka Ringwald  * @param status
350926ecb624SMilanka Ringwald  * @param pb_transport_cid
351026ecb624SMilanka Ringwald  * @param pb_type
351126ecb624SMilanka Ringwald  */
35127bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN                                         0x03
35131fbe4564SMatthias Ringwald 
35141fbe4564SMatthias Ringwald /**
35151fbe4564SMatthias Ringwald  * @format 112
35161fbe4564SMatthias Ringwald  * @param subevent_code
351726ecb624SMilanka Ringwald  * @param pb_transport_cid
3518f8962c62SMatthias Ringwald  * @param reason
35191fbe4564SMatthias Ringwald  */
35207bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED                                       0x04
35211fbe4564SMatthias Ringwald 
35221fbe4564SMatthias Ringwald /**
35231fbe4564SMatthias Ringwald  * @format 121
35241fbe4564SMatthias Ringwald  * @param subevent_code
352526ecb624SMilanka Ringwald  * @param pb_transport_cid
35261fbe4564SMatthias Ringwald  * @param attention_time in seconds
35271fbe4564SMatthias Ringwald  */
35287bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER                                        0x10
35291fbe4564SMatthias Ringwald 
35301fbe4564SMatthias Ringwald /**
35311fbe4564SMatthias Ringwald  * Device Role
35321fbe4564SMatthias Ringwald  * @format 12
35331fbe4564SMatthias Ringwald  * @param subevent_code
353426ecb624SMilanka Ringwald  * @param pb_transport_cid
35351fbe4564SMatthias Ringwald  */
35367bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_PUBLIC_KEY_OOB                              0x11
35371fbe4564SMatthias Ringwald 
35381fbe4564SMatthias Ringwald /**
35391fbe4564SMatthias Ringwald  * Device Role
35401fbe4564SMatthias Ringwald  * @format 12
35411fbe4564SMatthias Ringwald  * @param subevent_code
354226ecb624SMilanka Ringwald  * @param pb_transport_cid
35431fbe4564SMatthias Ringwald  */
35447bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_PUBLIC_KEY_OOB                               0x12
35451fbe4564SMatthias Ringwald 
35461fbe4564SMatthias Ringwald /**
35471fbe4564SMatthias Ringwald  * Device Role
35481fbe4564SMatthias Ringwald  * @format 12
35491fbe4564SMatthias Ringwald  * @param subevent_code
355026ecb624SMilanka Ringwald  * @param pb_transport_cid
35511fbe4564SMatthias Ringwald  */
35527bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_INPUT_OOB_REQUEST                                      0x13
35531fbe4564SMatthias Ringwald 
35541fbe4564SMatthias Ringwald /**
35551fbe4564SMatthias Ringwald  * Device Role
35561fbe4564SMatthias Ringwald  * @format 124
35571fbe4564SMatthias Ringwald  * @param subevent_code
355826ecb624SMilanka Ringwald  * @param pb_transport_cid
35591fbe4564SMatthias Ringwald  * @param output_oob number
35601fbe4564SMatthias Ringwald  */
35617bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB                                  0x15
35621fbe4564SMatthias Ringwald 
35631fbe4564SMatthias Ringwald /**
35641fbe4564SMatthias Ringwald  * Device Role
35651fbe4564SMatthias Ringwald  * @format 12
35661fbe4564SMatthias Ringwald  * @param subevent_code
356726ecb624SMilanka Ringwald  * @param pb_transport_cid
35681fbe4564SMatthias Ringwald  */
35697bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_OUTPUT_OOB                                   0x16
35701fbe4564SMatthias Ringwald 
35711fbe4564SMatthias Ringwald /**
35721fbe4564SMatthias Ringwald  * Provisioner Role
35731fbe4564SMatthias Ringwald  * @format 12
35741fbe4564SMatthias Ringwald  * @param subevent_code
357526ecb624SMilanka Ringwald  * @param pb_transport_cid
35761fbe4564SMatthias Ringwald  */
35777bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_RECEIVE_PUBLIC_KEY_OOB                           0x17
35781fbe4564SMatthias Ringwald 
35791fbe4564SMatthias Ringwald /**
35801fbe4564SMatthias Ringwald  * Provisioner Role
35811fbe4564SMatthias Ringwald  * @format 12
35821fbe4564SMatthias Ringwald  * @param subevent_code
358326ecb624SMilanka Ringwald  * @param pb_transport_cid
35841fbe4564SMatthias Ringwald  */
35857bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_RECEIVE_PUBLIC_KEY_OOB                            0x18
35861fbe4564SMatthias Ringwald 
35871fbe4564SMatthias Ringwald /**
35881fbe4564SMatthias Ringwald  * Provisioner Role
35891fbe4564SMatthias Ringwald  * @format 12
35901fbe4564SMatthias Ringwald  * @param subevent_code
359126ecb624SMilanka Ringwald  * @param pb_transport_cid
35921fbe4564SMatthias Ringwald  */
35937bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_OUTPUT_OOB_REQUEST                                     0x19
35941fbe4564SMatthias Ringwald 
35951fbe4564SMatthias Ringwald /**
35961fbe4564SMatthias Ringwald  * Provisioner Role
35971fbe4564SMatthias Ringwald  * @format 124
35981fbe4564SMatthias Ringwald  * @param subevent_code
359926ecb624SMilanka Ringwald  * @param pb_transport_cid
36001fbe4564SMatthias Ringwald  * @param output_oob number
36011fbe4564SMatthias Ringwald  */
36027bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB                                   0x1a
36031fbe4564SMatthias Ringwald 
36041fbe4564SMatthias Ringwald /**
36051fbe4564SMatthias Ringwald  * Provisioner Role
36061fbe4564SMatthias Ringwald  * @format 12
36071fbe4564SMatthias Ringwald  * @param subevent_code
360826ecb624SMilanka Ringwald  * @param pb_transport_cid
36091fbe4564SMatthias Ringwald  */
36107bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_INPUT_OOB                                    0x1b
36111fbe4564SMatthias Ringwald 
36121fbe4564SMatthias Ringwald /**
36131fbe4564SMatthias Ringwald  * Provisioner Role
36141fbe4564SMatthias Ringwald  * @format 1212111212
36151fbe4564SMatthias Ringwald  * @param subevent_code
361626ecb624SMilanka Ringwald  * @param pb_transport_cid
36171fbe4564SMatthias Ringwald  * @param num_elements
36181fbe4564SMatthias Ringwald  * @param algorithms
36191fbe4564SMatthias Ringwald  * @param public_key
36201fbe4564SMatthias Ringwald  * @param static_oob_type
36211fbe4564SMatthias Ringwald  * @param output_oob_size
36221fbe4564SMatthias Ringwald  * @param output_oob_action
36231fbe4564SMatthias Ringwald  * @param input_oob_size
36241fbe4564SMatthias Ringwald  * @param input_oob_action
36251fbe4564SMatthias Ringwald  */
36267bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_CAPABILITIES                                           0x1c
36271fbe4564SMatthias Ringwald 
36281fbe4564SMatthias Ringwald /**
36291fbe4564SMatthias Ringwald  * @format 12
36301fbe4564SMatthias Ringwald  * @param subevent_code
363126ecb624SMilanka Ringwald  * @param pb_transport_cid
36321fbe4564SMatthias Ringwald  */
36337bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_COMPLETE                                               0x1d
36345160ece6SMilanka Ringwald 
363582b0bf42SMatthias Ringwald /**
363675c1e527SMatthias Ringwald  * @format 11
363775c1e527SMatthias Ringwald  * @param subevent_code
363875c1e527SMatthias Ringwald  * @param attention_time in seconds
363975c1e527SMatthias Ringwald  */
364075c1e527SMatthias Ringwald #define MESH_SUBEVENT_ATTENTION_TIMER                                                0x1e
364175c1e527SMatthias Ringwald 
364275c1e527SMatthias Ringwald /**
3643ec422a3aSMatthias Ringwald  * @format 1H
364482b0bf42SMatthias Ringwald  * @param subevent_code
364582b0bf42SMatthias Ringwald  * @param con_handle
364682b0bf42SMatthias Ringwald  */
36477bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_CONNECTED                                                0x20
364882b0bf42SMatthias Ringwald 
364982b0bf42SMatthias Ringwald /**
365082b0bf42SMatthias Ringwald  * @format 1H
365182b0bf42SMatthias Ringwald  * @param subevent_code
365282b0bf42SMatthias Ringwald  * @param con_handle
365382b0bf42SMatthias Ringwald  */
36547bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_PDU_SENT                                                 0x21
365582b0bf42SMatthias Ringwald 
365682b0bf42SMatthias Ringwald /**
365782b0bf42SMatthias Ringwald  * @format 1H
365882b0bf42SMatthias Ringwald  * @param subevent_code
365982b0bf42SMatthias Ringwald  * @param con_handle
366082b0bf42SMatthias Ringwald  */
36617bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_DISCONNECTED                                             0x22
366282b0bf42SMatthias Ringwald 
36631d2d76deSMilanka Ringwald /**
36641d2d76deSMilanka Ringwald  * @format 1H
36651d2d76deSMilanka Ringwald  * @param subevent_code
36661d2d76deSMilanka Ringwald  * @param con_handle
36671d2d76deSMilanka Ringwald  */
36681d2d76deSMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_SENT                                                   0x23
366981097db9SMilanka Ringwald 
367081097db9SMilanka Ringwald /**
367181097db9SMilanka Ringwald  * @format 114411
367281097db9SMilanka Ringwald  * @param subevent_code
367381097db9SMilanka Ringwald  * @param element_index
367481097db9SMilanka Ringwald  * @param model_identifier
367581097db9SMilanka Ringwald  * @param state_identifier
367681097db9SMilanka Ringwald  * @param reason
367781097db9SMilanka Ringwald  * @param value
367881097db9SMilanka Ringwald  */
367981097db9SMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_BOOL                                              0x24
36801d2d76deSMilanka Ringwald 
368192c33ebfSMilanka Ringwald /**
368292c33ebfSMilanka Ringwald  * @format 114412
368392c33ebfSMilanka Ringwald  * @param subevent_code
368492c33ebfSMilanka Ringwald  * @param element_index
368592c33ebfSMilanka Ringwald  * @param model_identifier
368692c33ebfSMilanka Ringwald  * @param state_identifier
368792c33ebfSMilanka Ringwald  * @param reason
368892c33ebfSMilanka Ringwald  * @param value
368992c33ebfSMilanka Ringwald  */
369092c33ebfSMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_INT16                                              0x25
369192c33ebfSMilanka Ringwald 
369292c33ebfSMilanka Ringwald // Mesh Client Events
369392c33ebfSMilanka Ringwald /**
3694b7a54332SMilanka Ringwald  * @format 11442
3695b7a54332SMilanka Ringwald  * @param subevent_code
3696b7a54332SMilanka Ringwald  * @param element_index
3697b7a54332SMilanka Ringwald  * @param model_identifier
3698b7a54332SMilanka Ringwald  * @param opcode
3699b7a54332SMilanka Ringwald  * @param dest
3700b7a54332SMilanka Ringwald  */
3701b7a54332SMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED                                        0x30
3702b7a54332SMilanka Ringwald 
3703b7a54332SMilanka Ringwald /**
37045c1e046aSMilanka Ringwald  * @format 121114
370592c33ebfSMilanka Ringwald  * @param subevent_code
37065c1e046aSMilanka Ringwald  * @param dest
37075c1e046aSMilanka Ringwald  * @param status
370892c33ebfSMilanka Ringwald  * @param present_value
37096e084577SMatthias Ringwald  * @param target_value       optional, if value > 0, than remaining_time_ms must be read
371092c33ebfSMilanka Ringwald  * @param remaining_time_ms
371192c33ebfSMilanka Ringwald  */
3712b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_ON_OFF                                                  0x31
371392c33ebfSMilanka Ringwald 
371487b3ac30SMilanka Ringwald /**
37155c1e046aSMilanka Ringwald  * @format 121224
371687b3ac30SMilanka Ringwald  * @param subevent_code
37175c1e046aSMilanka Ringwald  * @param dest
37185c1e046aSMilanka Ringwald  * @param status
371987b3ac30SMilanka Ringwald  * @param present_value
37206e084577SMatthias Ringwald  * @param target_value       optional, if value > 0, than remaining_time_ms must be read
372187b3ac30SMilanka Ringwald  * @param remaining_time_ms
372287b3ac30SMilanka Ringwald  */
3723b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_LEVEL                                                   0x32
372492c33ebfSMilanka Ringwald 
3725859ea319SMilanka Ringwald /**
372645f04363SMatthias Ringwald  * @format 1222211
3727859ea319SMilanka Ringwald  * @param subevent_code
3728859ea319SMilanka Ringwald  * @param dest
3729859ea319SMilanka Ringwald  * @param netkey_index
3730859ea319SMilanka Ringwald  * @param appkey_index
3731859ea319SMilanka Ringwald  * @param company_id
3732859ea319SMilanka Ringwald  * @param test_id
373345f04363SMatthias Ringwald  * @param acknowledged
3734859ea319SMilanka Ringwald  */
3735204019bbSMatthias Ringwald #define MESH_SUBEVENT_HEALTH_PERFORM_TEST                                            0x33
3736859ea319SMilanka Ringwald 
3737584bbe7dSMilanka Ringwald /**
3738584bbe7dSMilanka Ringwald  * @format 11
3739584bbe7dSMilanka Ringwald  * @param subevent_code
3740584bbe7dSMilanka Ringwald  * @param element_index
3741584bbe7dSMilanka Ringwald  */
3742204019bbSMatthias Ringwald #define MESH_SUBEVENT_HEALTH_ATTENTION_TIMER_CHANGED                                 0x34
3743859ea319SMilanka Ringwald 
37445c1e046aSMilanka Ringwald /**
37455c1e046aSMilanka Ringwald  * @format 1211
37465c1e046aSMilanka Ringwald  * @param subevent_code
37475c1e046aSMilanka Ringwald  * @param dest
37485c1e046aSMilanka Ringwald  * @param status
37495c1e046aSMilanka Ringwald  * @param transition_time_gdtt
37505c1e046aSMilanka Ringwald  */
3751b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME                                0x35
3752699be93dSMilanka Ringwald 
3753699be93dSMilanka Ringwald /**
3754699be93dSMilanka Ringwald  * @format 1211
3755699be93dSMilanka Ringwald  * @param subevent_code
3756699be93dSMilanka Ringwald  * @param dest
3757699be93dSMilanka Ringwald  * @param foundation_status
3758699be93dSMilanka Ringwald  * @param secure_network_beacon_state
3759699be93dSMilanka Ringwald  */
3760b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_BEACON                                           0x36
3761699be93dSMilanka Ringwald 
3762b0e589acSMilanka Ringwald // Composition Data has variable of element descriptions, with two lists of model lists
3763b0e589acSMilanka Ringwald // Use .. getters to access data
3764b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_COMPOSITION_DATA                                 0x37
3765344d6549SMilanka Ringwald 
3766344d6549SMilanka Ringwald /**
3767344d6549SMilanka Ringwald  * @format 1211
3768344d6549SMilanka Ringwald  * @param subevent_code
3769344d6549SMilanka Ringwald  * @param dest
3770344d6549SMilanka Ringwald  * @param foundation_status
3771344d6549SMilanka Ringwald  * @param default_ttl
3772344d6549SMilanka Ringwald  */
3773b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL                                      0x38
3774344d6549SMilanka Ringwald 
3775e38651d8SMilanka Ringwald /**
3776e38651d8SMilanka Ringwald  * @format 1211
3777e38651d8SMilanka Ringwald  * @param subevent_code
3778e38651d8SMilanka Ringwald  * @param dest
3779e38651d8SMilanka Ringwald  * @param foundation_status
3780e38651d8SMilanka Ringwald  * @param gatt_proxy_state
3781e38651d8SMilanka Ringwald  */
3782b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_GATT_PROXY                                       0x39
3783e38651d8SMilanka Ringwald 
37841937dd52SMilanka Ringwald /**
37851937dd52SMilanka Ringwald  * @format 121111
37861937dd52SMilanka Ringwald  * @param subevent_code
37871937dd52SMilanka Ringwald  * @param dest
37881937dd52SMilanka Ringwald  * @param foundation_status
37891937dd52SMilanka Ringwald  * @param relay
37901937dd52SMilanka Ringwald  * @param retransmit_count                          the number of times that packet is transmitted for each packet that is relayed.
37911937dd52SMilanka Ringwald  * @param retransmit_interval_ms                    retransmission interval in ms
37921937dd52SMilanka Ringwald  */
3793b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_RELAY                                            0x40
37941937dd52SMilanka Ringwald 
3795f2ca42dfSMilanka Ringwald 
3796f2ca42dfSMilanka Ringwald /**
3797f2ca42dfSMilanka Ringwald  * @format 12122111114
3798f2ca42dfSMilanka Ringwald  * @param subevent_code
3799f2ca42dfSMilanka Ringwald  * @param dest                                      element_address
3800f2ca42dfSMilanka Ringwald  * @param foundation_status
3801f2ca42dfSMilanka Ringwald  * @param publish_address
3802f2ca42dfSMilanka Ringwald  * @param appkey_index
3803f2ca42dfSMilanka Ringwald  * @param credential_flag
3804f2ca42dfSMilanka Ringwald  * @param publish_ttl
3805f2ca42dfSMilanka Ringwald  * @param publish_period
3806f2ca42dfSMilanka Ringwald  * @param publish_retransmit_count
3807f2ca42dfSMilanka Ringwald  * @param publish_retransmit_interval_steps
3808f2ca42dfSMilanka Ringwald  * @param model_identifier
3809f2ca42dfSMilanka Ringwald  */
3810f2ca42dfSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION                                0x41
381167abec42SMilanka Ringwald 
381267abec42SMilanka Ringwald /**
381367abec42SMilanka Ringwald  * @format 12124
381467abec42SMilanka Ringwald  * @param subevent_code
381567abec42SMilanka Ringwald  * @param dest
381667abec42SMilanka Ringwald  * @param foundation_status
381767abec42SMilanka Ringwald  * @param address
381867abec42SMilanka Ringwald  * @param model_identifier
381967abec42SMilanka Ringwald  */
382067abec42SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION                               0x42
3821908a73e3SMilanka Ringwald 
3822908a73e3SMilanka Ringwald /**
3823df02a641SMilanka Ringwald  * @format 1214112
3824908a73e3SMilanka Ringwald  * @param subevent_code
3825908a73e3SMilanka Ringwald  * @param dest
3826908a73e3SMilanka Ringwald  * @param foundation_status
3827908a73e3SMilanka Ringwald  * @param model_identifier
3828b629980dSMilanka Ringwald  * @param num_subscription_addresses
3829b629980dSMilanka Ringwald  * @param subscription_address_pos
3830b629980dSMilanka Ringwald  * @param subscription_address_item
3831908a73e3SMilanka Ringwald  */
3832df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM                     0x43
3833b629980dSMilanka Ringwald 
3834b629980dSMilanka Ringwald 
3835b629980dSMilanka Ringwald /**
3836b629980dSMilanka Ringwald  * @format 121
3837b629980dSMilanka Ringwald  * @param subevent_code
3838b629980dSMilanka Ringwald  * @param dest
3839b629980dSMilanka Ringwald  * @param foundation_status
3840b629980dSMilanka Ringwald  */
3841df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX                                      0x44
3842b629980dSMilanka Ringwald 
3843b629980dSMilanka Ringwald /**
3844b629980dSMilanka Ringwald  * @format 121112
3845b629980dSMilanka Ringwald  * @param subevent_code
3846b629980dSMilanka Ringwald  * @param dest
3847b629980dSMilanka Ringwald  * @param foundation_status
3848b629980dSMilanka Ringwald  * @param num_netkey_indexes
3849b629980dSMilanka Ringwald  * @param netkey_index_pos
3850b629980dSMilanka Ringwald  * @param netkey_index_item
3851b629980dSMilanka Ringwald  */
3852df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM                             0x45
3853b629980dSMilanka Ringwald 
3854b629980dSMilanka Ringwald /**
3855b629980dSMilanka Ringwald  * @format 12122
3856b629980dSMilanka Ringwald  * @param subevent_code
3857b629980dSMilanka Ringwald  * @param dest
3858b629980dSMilanka Ringwald  * @param foundation_status
3859b629980dSMilanka Ringwald  * @param netkey_index_item
3860b629980dSMilanka Ringwald  * @param appkey_index_item
3861b629980dSMilanka Ringwald  */
3862df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX                                       0x46
3863b629980dSMilanka Ringwald 
3864b629980dSMilanka Ringwald /**
3865b629980dSMilanka Ringwald  * @format 12121122
3866b629980dSMilanka Ringwald  * @param subevent_code
3867b629980dSMilanka Ringwald  * @param dest
3868b629980dSMilanka Ringwald  * @param foundation_status
3869b629980dSMilanka Ringwald  * @param netkey_index
3870b629980dSMilanka Ringwald  * @param num_appkey_indexes
3871b629980dSMilanka Ringwald  * @param appkey_index_pos
3872b629980dSMilanka Ringwald  * @param netkey_index_item
3873b629980dSMilanka Ringwald  * @param appkey_index_item
3874b629980dSMilanka Ringwald  */
3875df02a641SMilanka Ringwald  #define MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM                            0x47
3876b629980dSMilanka Ringwald 
387782cfc808SMilanka Ringwald /**
387882cfc808SMilanka Ringwald  * @format 12121
387982cfc808SMilanka Ringwald  * @param subevent_code
388082cfc808SMilanka Ringwald  * @param dest
388182cfc808SMilanka Ringwald  * @param foundation_status
388282cfc808SMilanka Ringwald  * @param netkey_index_item
388382cfc808SMilanka Ringwald  * @param identity_status
388482cfc808SMilanka Ringwald  */
3885df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY                                      0x48
38868d4cf36eSMilanka Ringwald 
38878d4cf36eSMilanka Ringwald /**
3888df02a641SMilanka Ringwald  * @format 12124
38898d4cf36eSMilanka Ringwald  * @param subevent_code
38908d4cf36eSMilanka Ringwald  * @param dest
38918d4cf36eSMilanka Ringwald  * @param foundation_status
38928d4cf36eSMilanka Ringwald  * @param appkey_index
38938d4cf36eSMilanka Ringwald  * @param model_identifier
38948d4cf36eSMilanka Ringwald  */
3895df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_APP                                           0x49
3896df02a641SMilanka Ringwald 
3897df02a641SMilanka Ringwald /**
3898df02a641SMilanka Ringwald  * @format 1214112
3899df02a641SMilanka Ringwald  * @param subevent_code
3900df02a641SMilanka Ringwald  * @param dest
3901df02a641SMilanka Ringwald  * @param foundation_status
3902df02a641SMilanka Ringwald  * @param model_id
3903df02a641SMilanka Ringwald  * @param num_appkey_indexes
3904df02a641SMilanka Ringwald  * @param appkey_index_pos
3905df02a641SMilanka Ringwald  * @param appkey_index_item
3906df02a641SMilanka Ringwald  */
3907df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM                                 0x50
3908df02a641SMilanka Ringwald 
390964c3d06bSMilanka Ringwald /**
391064c3d06bSMilanka Ringwald  * @format 121
391164c3d06bSMilanka Ringwald  * @param subevent_code
391264c3d06bSMilanka Ringwald  * @param dest
391364c3d06bSMilanka Ringwald  * @param foundation_status
391464c3d06bSMilanka Ringwald  */
391564c3d06bSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NODE_RESET                                          0x51
391664c3d06bSMilanka Ringwald 
391764c3d06bSMilanka Ringwald /**
39183ef45e91SMilanka Ringwald  * @format 1211
391964c3d06bSMilanka Ringwald  * @param subevent_code
392064c3d06bSMilanka Ringwald  * @param dest
392164c3d06bSMilanka Ringwald  * @param foundation_status
392264c3d06bSMilanka Ringwald  * @param friend_state
392364c3d06bSMilanka Ringwald  */
392464c3d06bSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_FRIEND                                              0x52
39258d4cf36eSMilanka Ringwald 
39263ef45e91SMilanka Ringwald /**
39273ef45e91SMilanka Ringwald  * @format 12121
39283ef45e91SMilanka Ringwald  * @param subevent_code
39293ef45e91SMilanka Ringwald  * @param dest
39303ef45e91SMilanka Ringwald  * @param foundation_status
39313ef45e91SMilanka Ringwald  * @param netkey_index
39323ef45e91SMilanka Ringwald  * @param phase
39333ef45e91SMilanka Ringwald  */
39343ef45e91SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE                                   0x53
39353ef45e91SMilanka Ringwald 
39367d339f89SMilanka Ringwald /**
3937d175073cSMilanka Ringwald  * @format 121222122
39387d339f89SMilanka Ringwald  * @param subevent_code
39397d339f89SMilanka Ringwald  * @param dest
39407d339f89SMilanka Ringwald  * @param foundation_status
39414f44739eSMilanka Ringwald  * @param heartbeat_destination
3942d175073cSMilanka Ringwald  * @param count_S
3943d175073cSMilanka Ringwald  * @param period_S
39447d339f89SMilanka Ringwald  * @param ttl
39457d339f89SMilanka Ringwald  * @param features
39467d339f89SMilanka Ringwald  * @param netkey_index
39477d339f89SMilanka Ringwald  */
39487d339f89SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION                               0x54
39497d339f89SMilanka Ringwald 
39507d339f89SMilanka Ringwald /**
39517b73c5a9SMatthias Ringwald  * @format 121222211
39527d339f89SMilanka Ringwald  * @param subevent_code
39537d339f89SMilanka Ringwald  * @param dest
39547d339f89SMilanka Ringwald  * @param foundation_status
39554f44739eSMilanka Ringwald  * @param heartbeat_destination
39564f44739eSMilanka Ringwald  * @param heartbeat_source
3957d175073cSMilanka Ringwald  * @param count_S
3958d175073cSMilanka Ringwald  * @param period_S
39597d339f89SMilanka Ringwald  * @param min_hops
39607d339f89SMilanka Ringwald  * @param max_hops
39617d339f89SMilanka Ringwald  */
39627d339f89SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION                              0x55
39633ef45e91SMilanka Ringwald 
396470fcff1aSMilanka Ringwald /**
396570fcff1aSMilanka Ringwald  * @format 12123
396670fcff1aSMilanka Ringwald  * @param subevent_code
396770fcff1aSMilanka Ringwald  * @param dest
396870fcff1aSMilanka Ringwald  * @param foundation_status
396970fcff1aSMilanka Ringwald  * @param lpn_address
397070fcff1aSMilanka Ringwald  * @param poll_timeout
397170fcff1aSMilanka Ringwald  */
397270fcff1aSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT                         0x56
397370fcff1aSMilanka Ringwald 
3974786ea917SMilanka Ringwald /**
3975786ea917SMilanka Ringwald  * @format 12112
3976786ea917SMilanka Ringwald  * @param subevent_code
3977786ea917SMilanka Ringwald  * @param dest
3978786ea917SMilanka Ringwald  * @param foundation_status
3979786ea917SMilanka Ringwald  * @param transmit_count
3980786ea917SMilanka Ringwald  * @param transmit_interval_steps_ms
3981786ea917SMilanka Ringwald  */
3982786ea917SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT                                    0x57
3983786ea917SMilanka Ringwald 
398470fcff1aSMilanka Ringwald 
3985941b3855SMatthias Ringwald #endif
3986