xref: /btstack/src/btstack_defines.h (revision 38c89bb1b787ecaadaf06c8fdbafdec93ebe70cf)
1941b3855SMatthias Ringwald /*
2941b3855SMatthias Ringwald  * Copyright (C) 2015 BlueKitchen GmbH
3941b3855SMatthias Ringwald  *
4941b3855SMatthias Ringwald  * Redistribution and use in source and binary forms, with or without
5941b3855SMatthias Ringwald  * modification, are permitted provided that the following conditions
6941b3855SMatthias Ringwald  * are met:
7941b3855SMatthias Ringwald  *
8941b3855SMatthias Ringwald  * 1. Redistributions of source code must retain the above copyright
9941b3855SMatthias Ringwald  *    notice, this list of conditions and the following disclaimer.
10941b3855SMatthias Ringwald  * 2. Redistributions in binary form must reproduce the above copyright
11941b3855SMatthias Ringwald  *    notice, this list of conditions and the following disclaimer in the
12941b3855SMatthias Ringwald  *    documentation and/or other materials provided with the distribution.
13941b3855SMatthias Ringwald  * 3. Neither the name of the copyright holders nor the names of
14941b3855SMatthias Ringwald  *    contributors may be used to endorse or promote products derived
15941b3855SMatthias Ringwald  *    from this software without specific prior written permission.
16941b3855SMatthias Ringwald  * 4. Any redistribution, use, or modification is done solely for
17941b3855SMatthias Ringwald  *    personal benefit and not for any commercial purpose or for
18941b3855SMatthias Ringwald  *    monetary gain.
19941b3855SMatthias Ringwald  *
20941b3855SMatthias Ringwald  * THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS
21941b3855SMatthias Ringwald  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22941b3855SMatthias Ringwald  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23941b3855SMatthias Ringwald  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS
24941b3855SMatthias Ringwald  * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25941b3855SMatthias Ringwald  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26941b3855SMatthias Ringwald  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
27941b3855SMatthias Ringwald  * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28941b3855SMatthias Ringwald  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29941b3855SMatthias Ringwald  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
30941b3855SMatthias Ringwald  * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31941b3855SMatthias Ringwald  * SUCH DAMAGE.
32941b3855SMatthias Ringwald  *
33941b3855SMatthias Ringwald  * Please inquire about commercial licensing options at
34941b3855SMatthias Ringwald  * [email protected]
35941b3855SMatthias Ringwald  *
36941b3855SMatthias Ringwald  */
37941b3855SMatthias Ringwald 
38941b3855SMatthias Ringwald /*
39941b3855SMatthias Ringwald  * btstack-defines.h
40941b3855SMatthias Ringwald  *
41941b3855SMatthias Ringwald  * BTstack definitions, events, and error codes */
42941b3855SMatthias Ringwald 
4380e33422SMatthias Ringwald #ifndef BTSTACK_DEFINES_H
4480e33422SMatthias Ringwald #define BTSTACK_DEFINES_H
45941b3855SMatthias Ringwald 
468974fcd6SMatthias Ringwald #include <stdint.h>
478974fcd6SMatthias Ringwald 
481c4468cfSMatthias Ringwald #include "btstack_linked_list.h"
49f3963406SMatthias Ringwald 
50f3963406SMatthias Ringwald // UNUSED macro
516306068fSMatthias Ringwald #ifndef UNUSED
52f3963406SMatthias Ringwald #define UNUSED(x) (void)(sizeof(x))
536306068fSMatthias Ringwald #endif
54f3963406SMatthias Ringwald 
558974fcd6SMatthias Ringwald // TYPES
568974fcd6SMatthias Ringwald 
578974fcd6SMatthias Ringwald // packet handler
588974fcd6SMatthias Ringwald typedef void (*btstack_packet_handler_t) (uint8_t packet_type, uint16_t channel, uint8_t *packet, uint16_t size);
598974fcd6SMatthias Ringwald 
608974fcd6SMatthias Ringwald // packet callback supporting multiple registrations
618974fcd6SMatthias Ringwald typedef struct {
628974fcd6SMatthias Ringwald     btstack_linked_item_t    item;
638974fcd6SMatthias Ringwald     btstack_packet_handler_t callback;
648974fcd6SMatthias Ringwald } btstack_packet_callback_registration_t;
658974fcd6SMatthias Ringwald 
66bb38f057SMatthias Ringwald // context callback supporting multiple registrations
67bb38f057SMatthias Ringwald typedef struct {
68bb38f057SMatthias Ringwald   btstack_linked_item_t * item;
69bb38f057SMatthias Ringwald   void (*callback)(void * context);
70bb38f057SMatthias Ringwald   void * context;
71bb38f057SMatthias Ringwald } btstack_context_callback_registration_t;
72bb38f057SMatthias Ringwald 
73f7a05cdaSMatthias Ringwald /**
748974fcd6SMatthias Ringwald  * @brief 128 bit key used with AES128 in Security Manager
75f7a05cdaSMatthias Ringwald  */
768974fcd6SMatthias Ringwald typedef uint8_t sm_key_t[16];
77f7a05cdaSMatthias Ringwald 
78941b3855SMatthias Ringwald // DEFINES
79941b3855SMatthias Ringwald 
807149bde5SMatthias Ringwald // hci con handles (12 bit): 0x0000..0x0fff
817149bde5SMatthias Ringwald #define HCI_CON_HANDLE_INVALID 0xffff
827149bde5SMatthias Ringwald 
837149bde5SMatthias Ringwald 
84941b3855SMatthias Ringwald #define DAEMON_EVENT_PACKET     0x05
85941b3855SMatthias Ringwald 
86941b3855SMatthias Ringwald // L2CAP data
87941b3855SMatthias Ringwald #define L2CAP_DATA_PACKET       0x06
88941b3855SMatthias Ringwald 
89941b3855SMatthias Ringwald // RFCOMM data
90941b3855SMatthias Ringwald #define RFCOMM_DATA_PACKET      0x07
91941b3855SMatthias Ringwald 
92941b3855SMatthias Ringwald // Attribute protocol data
93941b3855SMatthias Ringwald #define ATT_DATA_PACKET         0x08
94941b3855SMatthias Ringwald 
95941b3855SMatthias Ringwald // Security Manager protocol data
96941b3855SMatthias Ringwald #define SM_DATA_PACKET          0x09
97941b3855SMatthias Ringwald 
98f1b34e8dSMatthias Ringwald // SDP query result - only used by daemon
99941b3855SMatthias Ringwald // format: type (8), record_id (16), attribute_id (16), attribute_length (16), attribute_value (max 1k)
100941b3855SMatthias Ringwald #define SDP_CLIENT_PACKET       0x0a
101941b3855SMatthias Ringwald 
102941b3855SMatthias Ringwald // BNEP data
103941b3855SMatthias Ringwald #define BNEP_DATA_PACKET        0x0b
104941b3855SMatthias Ringwald 
105941b3855SMatthias Ringwald // Unicast Connectionless Data
106941b3855SMatthias Ringwald #define UCD_DATA_PACKET         0x0c
107941b3855SMatthias Ringwald 
108f1b34e8dSMatthias Ringwald // GOEP data
109f1b34e8dSMatthias Ringwald #define GOEP_DATA_PACKET        0x0d
110f1b34e8dSMatthias Ringwald 
111f1b34e8dSMatthias Ringwald // PBAP data
112f1b34e8dSMatthias Ringwald #define PBAP_DATA_PACKET        0x0e
113f1b34e8dSMatthias Ringwald 
114e30788a3SMilanka Ringwald // AVRCP browsing data
115e30788a3SMilanka Ringwald #define AVRCP_BROWSING_DATA_PACKET     0x0f
116e30788a3SMilanka Ringwald 
1173eb02ce6SMilanka Ringwald // MAP data
1183eb02ce6SMilanka Ringwald #define MAP_DATA_PACKET        0x10
1193eb02ce6SMilanka Ringwald 
1201fbe4564SMatthias Ringwald // Mesh Provisioning PDU
1211fbe4564SMatthias Ringwald #define PROVISIONING_DATA_PACKET 0x11
122e30788a3SMilanka Ringwald 
123bf9b4b3bSMilanka Ringwald // Mesh Proxy PDU
124bf9b4b3bSMilanka Ringwald #define MESH_PROXY_DATA_PACKET   0x11
12514fe90b1SMatthias Ringwald 
12614fe90b1SMatthias Ringwald // Mesh Network PDU
127bf9b4b3bSMilanka Ringwald #define MESH_NETWORK_PACKET      0x12
128bf9b4b3bSMilanka Ringwald 
129bf9b4b3bSMilanka Ringwald // Mesh Network PDU
130bf9b4b3bSMilanka Ringwald #define MESH_BEACON_PACKET       0x13
13114fe90b1SMatthias Ringwald 
132941b3855SMatthias Ringwald // debug log messages
133941b3855SMatthias Ringwald #define LOG_MESSAGE_PACKET      0xfc
134941b3855SMatthias Ringwald 
135941b3855SMatthias Ringwald 
13662c64df1SMatthias Ringwald // DAEMON COMMANDS
137b3f90e25SMatthias Ringwald 
138b3f90e25SMatthias Ringwald #define OGF_BTSTACK 0x3d
139b3f90e25SMatthias Ringwald 
140b3f90e25SMatthias Ringwald // cmds for BTstack
141b3f90e25SMatthias Ringwald // get state: @returns HCI_STATE
142b3f90e25SMatthias Ringwald #define BTSTACK_GET_STATE                                  0x01
143b3f90e25SMatthias Ringwald 
144045013feSMatthias Ringwald // set power mode: param HCI_POWER_MODE
145b3f90e25SMatthias Ringwald #define BTSTACK_SET_POWER_MODE                             0x02
146b3f90e25SMatthias Ringwald 
147045013feSMatthias Ringwald // set capture mode: param on
148b3f90e25SMatthias Ringwald #define BTSTACK_SET_ACL_CAPTURE_MODE                       0x03
149b3f90e25SMatthias Ringwald 
150b3f90e25SMatthias Ringwald // get BTstack version
151b3f90e25SMatthias Ringwald #define BTSTACK_GET_VERSION                                0x04
152b3f90e25SMatthias Ringwald 
153b3f90e25SMatthias Ringwald // get system Bluetooth state
154b3f90e25SMatthias Ringwald #define BTSTACK_GET_SYSTEM_BLUETOOTH_ENABLED               0x05
155b3f90e25SMatthias Ringwald 
156b3f90e25SMatthias Ringwald // set system Bluetooth state
157b3f90e25SMatthias Ringwald #define BTSTACK_SET_SYSTEM_BLUETOOTH_ENABLED               0x06
158b3f90e25SMatthias Ringwald 
159b3f90e25SMatthias Ringwald // enable inquiry scan for this client
160b3f90e25SMatthias Ringwald #define BTSTACK_SET_DISCOVERABLE                           0x07
161b3f90e25SMatthias Ringwald 
162b3f90e25SMatthias Ringwald // set global Bluetooth state
163b3f90e25SMatthias Ringwald #define BTSTACK_SET_BLUETOOTH_ENABLED                      0x08
164b3f90e25SMatthias Ringwald 
165045013feSMatthias Ringwald // create l2cap channel: param bd_addr(48), psm (16)
166b3f90e25SMatthias Ringwald #define L2CAP_CREATE_CHANNEL                               0x20
167b3f90e25SMatthias Ringwald 
168045013feSMatthias Ringwald // disconnect l2cap disconnect, param channel(16), reason(8)
169b3f90e25SMatthias Ringwald #define L2CAP_DISCONNECT                                   0x21
170b3f90e25SMatthias Ringwald 
171045013feSMatthias Ringwald // register l2cap service: param psm(16), mtu (16)
172b3f90e25SMatthias Ringwald #define L2CAP_REGISTER_SERVICE                             0x22
173b3f90e25SMatthias Ringwald 
174045013feSMatthias Ringwald // unregister l2cap disconnect, param psm(16)
175b3f90e25SMatthias Ringwald #define L2CAP_UNREGISTER_SERVICE                           0x23
176b3f90e25SMatthias Ringwald 
177045013feSMatthias Ringwald // accept connection param bd_addr(48), dest cid (16)
178b3f90e25SMatthias Ringwald #define L2CAP_ACCEPT_CONNECTION                            0x24
179b3f90e25SMatthias Ringwald 
180045013feSMatthias Ringwald // decline l2cap disconnect,param bd_addr(48), dest cid (16), reason(8)
181b3f90e25SMatthias Ringwald #define L2CAP_DECLINE_CONNECTION                           0x25
182b3f90e25SMatthias Ringwald 
183045013feSMatthias Ringwald // create l2cap channel: param bd_addr(48), psm (16), mtu (16)
184b3f90e25SMatthias Ringwald #define L2CAP_CREATE_CHANNEL_MTU                           0x26
185b3f90e25SMatthias Ringwald 
186b3f90e25SMatthias Ringwald // register SDP Service Record: service record (size)
187b3f90e25SMatthias Ringwald #define SDP_REGISTER_SERVICE_RECORD                        0x30
188b3f90e25SMatthias Ringwald 
189b3f90e25SMatthias Ringwald // unregister SDP Service Record
190b3f90e25SMatthias Ringwald #define SDP_UNREGISTER_SERVICE_RECORD                      0x31
191b3f90e25SMatthias Ringwald 
192b3f90e25SMatthias Ringwald // Get remote RFCOMM services
193b3f90e25SMatthias Ringwald #define SDP_CLIENT_QUERY_RFCOMM_SERVICES                   0x32
194b3f90e25SMatthias Ringwald 
195b3f90e25SMatthias Ringwald // Get remote SDP services
196b3f90e25SMatthias Ringwald #define SDP_CLIENT_QUERY_SERVICES                          0x33
197b3f90e25SMatthias Ringwald 
198b3f90e25SMatthias Ringwald // RFCOMM "HCI" Commands
199b3f90e25SMatthias Ringwald #define RFCOMM_CREATE_CHANNEL       0x40
200b3f90e25SMatthias Ringwald #define RFCOMM_DISCONNECT     0x41
201b3f90e25SMatthias Ringwald #define RFCOMM_REGISTER_SERVICE     0x42
202b3f90e25SMatthias Ringwald #define RFCOMM_UNREGISTER_SERVICE   0x43
203b3f90e25SMatthias Ringwald #define RFCOMM_ACCEPT_CONNECTION    0x44
204b3f90e25SMatthias Ringwald #define RFCOMM_DECLINE_CONNECTION   0x45
205b3f90e25SMatthias Ringwald #define RFCOMM_PERSISTENT_CHANNEL   0x46
206b3f90e25SMatthias Ringwald #define RFCOMM_CREATE_CHANNEL_WITH_CREDITS   0x47
207b3f90e25SMatthias Ringwald #define RFCOMM_REGISTER_SERVICE_WITH_CREDITS 0x48
208b3f90e25SMatthias Ringwald #define RFCOMM_GRANT_CREDITS                 0x49
209b3f90e25SMatthias Ringwald 
210b3f90e25SMatthias Ringwald // GAP Classic 0x50
211b3f90e25SMatthias Ringwald #define GAP_DISCONNECT              0x50
212b3f90e25SMatthias Ringwald 
213b3f90e25SMatthias Ringwald // GAP LE      0x60
214b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_START           0x60
215b3f90e25SMatthias Ringwald #define GAP_LE_SCAN_STOP            0x61
216b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT              0x62
217b3f90e25SMatthias Ringwald #define GAP_LE_CONNECT_CANCEL       0x63
218b3f90e25SMatthias Ringwald #define GAP_LE_SET_SCAN_PARAMETERS  0x64
219b3f90e25SMatthias Ringwald 
220b3f90e25SMatthias Ringwald // GATT (Client) 0x70
221b3f90e25SMatthias Ringwald #define GATT_DISCOVER_ALL_PRIMARY_SERVICES                       0x70
222b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID16                 0x71
223b3f90e25SMatthias Ringwald #define GATT_DISCOVER_PRIMARY_SERVICES_BY_UUID128                0x72
224b3f90e25SMatthias Ringwald #define GATT_FIND_INCLUDED_SERVICES_FOR_SERVICE                  0x73
225b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE                0x74
226b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTICS_FOR_SERVICE_BY_UUID128     0x75
227b3f90e25SMatthias Ringwald #define GATT_DISCOVER_CHARACTERISTIC_DESCRIPTORS                 0x76
228b3f90e25SMatthias Ringwald #define GATT_READ_VALUE_OF_CHARACTERISTIC                        0x77
229b3f90e25SMatthias Ringwald #define GATT_READ_LONG_VALUE_OF_CHARACTERISTIC                   0x78
230b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC_WITHOUT_RESPONSE      0x79
231b3f90e25SMatthias Ringwald #define GATT_WRITE_VALUE_OF_CHARACTERISTIC                       0x7A
232b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_VALUE_OF_CHARACTERISTIC                  0x7B
233b3f90e25SMatthias Ringwald #define GATT_RELIABLE_WRITE_LONG_VALUE_OF_CHARACTERISTIC         0x7C
234b3f90e25SMatthias Ringwald #define GATT_READ_CHARACTERISTIC_DESCRIPTOR                      0X7D
235b3f90e25SMatthias Ringwald #define GATT_READ_LONG_CHARACTERISTIC_DESCRIPTOR                 0X7E
236b3f90e25SMatthias Ringwald #define GATT_WRITE_CHARACTERISTIC_DESCRIPTOR                     0X7F
237b3f90e25SMatthias Ringwald #define GATT_WRITE_LONG_CHARACTERISTIC_DESCRIPTOR                0X80
238b3f90e25SMatthias Ringwald #define GATT_WRITE_CLIENT_CHARACTERISTIC_CONFIGURATION           0X81
239b3f90e25SMatthias Ringwald #define GATT_GET_MTU                                             0x82
240b3f90e25SMatthias Ringwald 
2411edc4fc7SMatthias Ringwald // SM 0x90
2421edc4fc7SMatthias Ringwald #define SM_SET_AUTHENTICATION_REQUIREMENTS 0x90
2431edc4fc7SMatthias Ringwald #define SM_SET_IO_CAPABILITIES             0x92
2441edc4fc7SMatthias Ringwald #define SM_BONDING_DECLINE                 0x93
2451edc4fc7SMatthias Ringwald #define SM_JUST_WORKS_CONFIRM              0x94
2461edc4fc7SMatthias Ringwald #define SM_NUMERIC_COMPARISON_CONFIRM      0x95
2471edc4fc7SMatthias Ringwald #define SM_PASSKEY_INPUT                   0x96
2481edc4fc7SMatthias Ringwald 
249eb6072adSMatthias Ringwald // ATT
250eb6072adSMatthias Ringwald 
251eb6072adSMatthias Ringwald // ..
252eb6072adSMatthias Ringwald // Internal properties reuse some GATT Characteristic Properties fields
253fd1be25dSMatthias Ringwald #define ATT_DB_VERSION                                     0x01
25462c64df1SMatthias Ringwald 
255941b3855SMatthias Ringwald // EVENTS
256941b3855SMatthias Ringwald 
257ff3ef268SMilanka Ringwald // Events from host controller to host
258ff3ef268SMilanka Ringwald 
259ff3ef268SMilanka Ringwald /**
260ff3ef268SMilanka Ringwald  * @format 1
261ff3ef268SMilanka Ringwald  * @param status
262ff3ef268SMilanka Ringwald  */
263ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_COMPLETE                         0x01
264ff3ef268SMilanka Ringwald 
265ff3ef268SMilanka Ringwald /**
266ff3ef268SMilanka Ringwald  * @format 1B11132
267ff3ef268SMilanka Ringwald  * @param num_responses
268ff3ef268SMilanka Ringwald  * @param bd_addr
269ff3ef268SMilanka Ringwald  * @param page_scan_repetition_mode
270ff3ef268SMilanka Ringwald  * @param reserved1
271ff3ef268SMilanka Ringwald  * @param reserved2
272ff3ef268SMilanka Ringwald  * @param class_of_device
273ff3ef268SMilanka Ringwald  * @param clock_offset
274ff3ef268SMilanka Ringwald  */
275ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT                           0x02
276ff3ef268SMilanka Ringwald 
277ff3ef268SMilanka Ringwald /**
278ff3ef268SMilanka Ringwald  * @format 12B11
279ff3ef268SMilanka Ringwald  * @param status
280ff3ef268SMilanka Ringwald  * @param connection_handle
281ff3ef268SMilanka Ringwald  * @param bd_addr
282ff3ef268SMilanka Ringwald  * @param link_type
283ff3ef268SMilanka Ringwald  * @param encryption_enabled
284ff3ef268SMilanka Ringwald  */
285ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_COMPLETE                      0x03
286ff3ef268SMilanka Ringwald /**
287ff3ef268SMilanka Ringwald  * @format B31
288ff3ef268SMilanka Ringwald  * @param bd_addr
289ff3ef268SMilanka Ringwald  * @param class_of_device
290ff3ef268SMilanka Ringwald  * @param link_type
291ff3ef268SMilanka Ringwald  */
292ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_REQUEST                       0x04
293ff3ef268SMilanka Ringwald /**
294ff3ef268SMilanka Ringwald  * @format 121
295ff3ef268SMilanka Ringwald  * @param status
296ff3ef268SMilanka Ringwald  * @param connection_handle
297ff3ef268SMilanka Ringwald  * @param reason
298ff3ef268SMilanka Ringwald  */
299ff3ef268SMilanka Ringwald #define HCI_EVENT_DISCONNECTION_COMPLETE                   0x05
300ff3ef268SMilanka Ringwald /**
301ff3ef268SMilanka Ringwald  * @format 12
302ff3ef268SMilanka Ringwald  * @param status
303ff3ef268SMilanka Ringwald  * @param connection_handle
304ff3ef268SMilanka Ringwald  */
305ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE                 0x06
306ff3ef268SMilanka Ringwald 
307ff3ef268SMilanka Ringwald // HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT is deprecated, use HCI_EVENT_AUTHENTICATION_COMPLETE instead
308ff3ef268SMilanka Ringwald #define HCI_EVENT_AUTHENTICATION_COMPLETE_EVENT HCI_EVENT_AUTHENTICATION_COMPLETE
309ff3ef268SMilanka Ringwald 
310ff3ef268SMilanka Ringwald /**
311ff3ef268SMilanka Ringwald  * @format 1BN
312ff3ef268SMilanka Ringwald  * @param status
313ff3ef268SMilanka Ringwald  * @param bd_addr
314ff3ef268SMilanka Ringwald  * @param remote_name
315ff3ef268SMilanka Ringwald  */
316ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE             0x07
317ff3ef268SMilanka Ringwald /**
318ff3ef268SMilanka Ringwald  * @format 121
319ff3ef268SMilanka Ringwald  * @param status
320ff3ef268SMilanka Ringwald  * @param connection_handle
321ff3ef268SMilanka Ringwald  * @param encryption_enabled
322ff3ef268SMilanka Ringwald  */
323ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_CHANGE                        0x08
324ff3ef268SMilanka Ringwald /**
325ff3ef268SMilanka Ringwald  * @format 12
326ff3ef268SMilanka Ringwald  * @param status
327ff3ef268SMilanka Ringwald  * @param connection_handle
328ff3ef268SMilanka Ringwald  */
329ff3ef268SMilanka Ringwald #define HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE      0x09
330ff3ef268SMilanka Ringwald /**
331ff3ef268SMilanka Ringwald  * @format 121
332ff3ef268SMilanka Ringwald  * @param status
333ff3ef268SMilanka Ringwald  * @param connection_handle
334ff3ef268SMilanka Ringwald  * @param key_flag
335ff3ef268SMilanka Ringwald  */
336ff3ef268SMilanka Ringwald #define HCI_EVENT_MASTER_LINK_KEY_COMPLETE                 0x0A
337ff3ef268SMilanka Ringwald 
338ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_SUPPORTED_FEATURES_COMPLETE  0x0B
339ff3ef268SMilanka Ringwald 
340ff3ef268SMilanka Ringwald /**
341ff3ef268SMilanka Ringwald  * @format 12122
342ff3ef268SMilanka Ringwald  * @param status
343ff3ef268SMilanka Ringwald  * @param connection_handle
344ff3ef268SMilanka Ringwald  * @param version
345ff3ef268SMilanka Ringwald  * @param manufacturer_name
346ff3ef268SMilanka Ringwald  * @param subversion
347ff3ef268SMilanka Ringwald  */
348ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE 0x0C
349ff3ef268SMilanka Ringwald 
350ff3ef268SMilanka Ringwald #define HCI_EVENT_QOS_SETUP_COMPLETE                       0x0D
351ff3ef268SMilanka Ringwald 
352ff3ef268SMilanka Ringwald /**
353ff3ef268SMilanka Ringwald  * @format 12R
354ff3ef268SMilanka Ringwald  * @param num_hci_command_packets
355ff3ef268SMilanka Ringwald  * @param command_opcode
356ff3ef268SMilanka Ringwald  * @param return_parameters
357ff3ef268SMilanka Ringwald  */
358ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_COMPLETE                         0x0E
359ff3ef268SMilanka Ringwald /**
360ff3ef268SMilanka Ringwald  * @format 112
361ff3ef268SMilanka Ringwald  * @param status
362ff3ef268SMilanka Ringwald  * @param num_hci_command_packets
363ff3ef268SMilanka Ringwald  * @param command_opcode
364ff3ef268SMilanka Ringwald  */
365ff3ef268SMilanka Ringwald #define HCI_EVENT_COMMAND_STATUS                           0x0F
366ff3ef268SMilanka Ringwald 
367ff3ef268SMilanka Ringwald /**
368ff3ef268SMilanka Ringwald  * @format 1
369ff3ef268SMilanka Ringwald  * @param hardware_code
370ff3ef268SMilanka Ringwald  */
371ff3ef268SMilanka Ringwald #define HCI_EVENT_HARDWARE_ERROR                           0x10
372ff3ef268SMilanka Ringwald 
373ff3ef268SMilanka Ringwald #define HCI_EVENT_FLUSH_OCCURRED                           0x11
374ff3ef268SMilanka Ringwald 
375ff3ef268SMilanka Ringwald /**
376ff3ef268SMilanka Ringwald  * @format 1B1
377ff3ef268SMilanka Ringwald  * @param status
378ff3ef268SMilanka Ringwald  * @param bd_addr
379ff3ef268SMilanka Ringwald  * @param role
380ff3ef268SMilanka Ringwald  */
381ff3ef268SMilanka Ringwald #define HCI_EVENT_ROLE_CHANGE                              0x12
382ff3ef268SMilanka Ringwald 
383ff3ef268SMilanka Ringwald // TODO: number_of_handles 1, connection_handle[H*i], hc_num_of_completed_packets[2*i]
384ff3ef268SMilanka Ringwald #define HCI_EVENT_NUMBER_OF_COMPLETED_PACKETS              0x13
385ff3ef268SMilanka Ringwald 
386ff3ef268SMilanka Ringwald /**
387ff3ef268SMilanka Ringwald  * @format 1H12
388ff3ef268SMilanka Ringwald  * @param status
389ff3ef268SMilanka Ringwald  * @param handle
390ff3ef268SMilanka Ringwald  * @param mode
391ff3ef268SMilanka Ringwald  * @param interval
392ff3ef268SMilanka Ringwald  */
393ff3ef268SMilanka Ringwald #define HCI_EVENT_MODE_CHANGE                              0x14
394ff3ef268SMilanka Ringwald 
395ff3ef268SMilanka Ringwald // TODO: num_keys, bd_addr[B*i], link_key[16 octets * i]
396ff3ef268SMilanka Ringwald #define HCI_EVENT_RETURN_LINK_KEYS                         0x15
397ff3ef268SMilanka Ringwald 
398ff3ef268SMilanka Ringwald /**
399ff3ef268SMilanka Ringwald  * @format B
400ff3ef268SMilanka Ringwald  * @param bd_addr
401ff3ef268SMilanka Ringwald  */
402ff3ef268SMilanka Ringwald #define HCI_EVENT_PIN_CODE_REQUEST                         0x16
403ff3ef268SMilanka Ringwald 
404ff3ef268SMilanka Ringwald /**
405ff3ef268SMilanka Ringwald  * @format B
406ff3ef268SMilanka Ringwald  * @param bd_addr
407ff3ef268SMilanka Ringwald  */
408ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_REQUEST                         0x17
409ff3ef268SMilanka Ringwald 
410ff3ef268SMilanka Ringwald // TODO: bd_addr B, link_key 16octets, key_type 1
411ff3ef268SMilanka Ringwald #define HCI_EVENT_LINK_KEY_NOTIFICATION                    0x18
412ff3ef268SMilanka Ringwald 
413ff3ef268SMilanka Ringwald /**
414ff3ef268SMilanka Ringwald  * @format 1
415ff3ef268SMilanka Ringwald  * @param link_type
416ff3ef268SMilanka Ringwald  */
417ff3ef268SMilanka Ringwald #define HCI_EVENT_DATA_BUFFER_OVERFLOW                     0x1A
418ff3ef268SMilanka Ringwald 
419ff3ef268SMilanka Ringwald /**
420ff3ef268SMilanka Ringwald  * @format H1
421ff3ef268SMilanka Ringwald  * @param handle
422ff3ef268SMilanka Ringwald  * @param lmp_max_slots
423ff3ef268SMilanka Ringwald  */
424ff3ef268SMilanka Ringwald #define HCI_EVENT_MAX_SLOTS_CHANGED                        0x1B
425ff3ef268SMilanka Ringwald 
426ff3ef268SMilanka Ringwald /**
427ff3ef268SMilanka Ringwald  * @format 1H2
428ff3ef268SMilanka Ringwald  * @param status
429ff3ef268SMilanka Ringwald  * @param handle
430ff3ef268SMilanka Ringwald  * @param clock_offset
431ff3ef268SMilanka Ringwald  */
432ff3ef268SMilanka Ringwald #define HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE               0x1C
433ff3ef268SMilanka Ringwald 
434ff3ef268SMilanka Ringwald /**
435ff3ef268SMilanka Ringwald  * @format 1H2
436ff3ef268SMilanka Ringwald  * @param status
437ff3ef268SMilanka Ringwald  * @param handle
438ff3ef268SMilanka Ringwald  * @param packet_types
439ff3ef268SMilanka Ringwald  * @pnote packet_type is in plural to avoid clash with Java binding Packet.getPacketType()
440ff3ef268SMilanka Ringwald  */
441ff3ef268SMilanka Ringwald #define HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED           0x1D
442ff3ef268SMilanka Ringwald 
443ff3ef268SMilanka Ringwald /**
444ff3ef268SMilanka Ringwald  * @format 1B11321
445ff3ef268SMilanka Ringwald  * @param num_responses
446ff3ef268SMilanka Ringwald  * @param bd_addr
447ff3ef268SMilanka Ringwald  * @param page_scan_repetition_mode
448ff3ef268SMilanka Ringwald  * @param reserved
449ff3ef268SMilanka Ringwald  * @param class_of_device
450ff3ef268SMilanka Ringwald  * @param clock_offset
451ff3ef268SMilanka Ringwald  * @param rssi
452ff3ef268SMilanka Ringwald  */
453ff3ef268SMilanka Ringwald #define HCI_EVENT_INQUIRY_RESULT_WITH_RSSI                 0x22
454ff3ef268SMilanka Ringwald 
455d5057706SMatthias Ringwald #define HCI_EVENT_READ_REMOTE_EXTENDED_FEATURES_COMPLETE   0x23
456d5057706SMatthias Ringwald 
457ff3ef268SMilanka Ringwald /**
458ff3ef268SMilanka Ringwald  * @format 1HB111221
459ff3ef268SMilanka Ringwald  * @param status
460ff3ef268SMilanka Ringwald  * @param handle
461ff3ef268SMilanka Ringwald  * @param bd_addr
462ff3ef268SMilanka Ringwald  * @param link_type
463ff3ef268SMilanka Ringwald  * @param transmission_interval
464ff3ef268SMilanka Ringwald  * @param retransmission_interval
465ff3ef268SMilanka Ringwald  * @param rx_packet_length
466ff3ef268SMilanka Ringwald  * @param tx_packet_length
467ff3ef268SMilanka Ringwald  * @param air_mode
468ff3ef268SMilanka Ringwald  */
469ff3ef268SMilanka Ringwald #define HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE          0x2C
470ff3ef268SMilanka Ringwald 
471ff3ef268SMilanka Ringwald // TODO: serialize extended_inquiry_response and provide parser
472ff3ef268SMilanka Ringwald /**
473ff3ef268SMilanka Ringwald  * @format 1B11321
474ff3ef268SMilanka Ringwald  * @param num_responses
475ff3ef268SMilanka Ringwald  * @param bd_addr
476ff3ef268SMilanka Ringwald  * @param page_scan_repetition_mode
477ff3ef268SMilanka Ringwald  * @param reserved
478ff3ef268SMilanka Ringwald  * @param class_of_device
479ff3ef268SMilanka Ringwald  * @param clock_offset
480ff3ef268SMilanka Ringwald  * @param rssi
481ff3ef268SMilanka Ringwald  */
482ff3ef268SMilanka Ringwald #define HCI_EVENT_EXTENDED_INQUIRY_RESPONSE                0x2F
483ff3ef268SMilanka Ringwald 
484ff3ef268SMilanka Ringwald  /**
485ff3ef268SMilanka Ringwald   * @format 1H
486ff3ef268SMilanka Ringwald   * @param status
487ff3ef268SMilanka Ringwald   * @param handle
488ff3ef268SMilanka Ringwald   */
489ff3ef268SMilanka Ringwald #define HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE          0x30
490ff3ef268SMilanka Ringwald 
491ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_REQUEST                    0x31
492ff3ef268SMilanka Ringwald #define HCI_EVENT_IO_CAPABILITY_RESPONSE                   0x32
493ff3ef268SMilanka Ringwald 
494ff3ef268SMilanka Ringwald /**
495ff3ef268SMilanka Ringwald  * @format B4
496ff3ef268SMilanka Ringwald  * @param bd_addr
497ff3ef268SMilanka Ringwald  * @param numeric_value
498ff3ef268SMilanka Ringwald  */
499ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_CONFIRMATION_REQUEST                0x33
500ff3ef268SMilanka Ringwald 
501ff3ef268SMilanka Ringwald /**
502ff3ef268SMilanka Ringwald  * @format B
503ff3ef268SMilanka Ringwald  * @param bd_addr
504ff3ef268SMilanka Ringwald  */
505ff3ef268SMilanka Ringwald #define HCI_EVENT_USER_PASSKEY_REQUEST                     0x34
506ff3ef268SMilanka Ringwald 
507ff3ef268SMilanka Ringwald /**
508ff3ef268SMilanka Ringwald  * @format B
509ff3ef268SMilanka Ringwald  * @param bd_addr
510ff3ef268SMilanka Ringwald  */
511ff3ef268SMilanka Ringwald #define HCI_EVENT_REMOTE_OOB_DATA_REQUEST                  0x35
512ff3ef268SMilanka Ringwald 
513ff3ef268SMilanka Ringwald /**
514ff3ef268SMilanka Ringwald  * @format 1B
515ff3ef268SMilanka Ringwald  * @param status
516ff3ef268SMilanka Ringwald  * @param bd_addr
517ff3ef268SMilanka Ringwald  */
518ff3ef268SMilanka Ringwald #define HCI_EVENT_SIMPLE_PAIRING_COMPLETE                  0x36
519ff3ef268SMilanka Ringwald 
5207b73c5a9SMatthias Ringwald /**
5217b73c5a9SMatthias Ringwald  * @format B4
5227b73c5a9SMatthias Ringwald  * @param bd_addr
5237b73c5a9SMatthias Ringwald  * @param numeric_value
5247b73c5a9SMatthias Ringwald  */
5257b73c5a9SMatthias Ringwald #define HCI_EVENT_USER_PASSKEY_NOTIFICATION                0x3B
5267b73c5a9SMatthias Ringwald 
5277b73c5a9SMatthias Ringwald /**
5287b73c5a9SMatthias Ringwald  * @format B1
5297b73c5a9SMatthias Ringwald  * @param bd_addr
5307b73c5a9SMatthias Ringwald  * @param notification_type
5317b73c5a9SMatthias Ringwald  */
5327b73c5a9SMatthias Ringwald #define HCI_EVENT_KEYPRESS_NOTIFICATION                    0x3C
5337b73c5a9SMatthias Ringwald 
534ff3ef268SMilanka Ringwald #define HCI_EVENT_LE_META                                  0x3E
535ff3ef268SMilanka Ringwald 
536ff3ef268SMilanka Ringwald // last used HCI_EVENT in 2.1 is 0x3d
537ff3ef268SMilanka Ringwald // last used HCI_EVENT in 4.1 is 0x57
5387b73c5a9SMatthias Ringwald // last used HCI_EVENT in 5.2 is 0x58
539ff3ef268SMilanka Ringwald 
540ff3ef268SMilanka Ringwald #define HCI_EVENT_VENDOR_SPECIFIC                          0xFF
541ff3ef268SMilanka Ringwald 
542ff3ef268SMilanka Ringwald /**
543ff3ef268SMilanka Ringwald  * @format 11H11B2221
544ff3ef268SMilanka Ringwald  * @param subevent_code
545ff3ef268SMilanka Ringwald  * @param status
546ff3ef268SMilanka Ringwald  * @param connection_handle
547ff3ef268SMilanka Ringwald  * @param role
548ff3ef268SMilanka Ringwald  * @param peer_address_type
549ff3ef268SMilanka Ringwald  * @param peer_address
550ff3ef268SMilanka Ringwald  * @param conn_interval
551ff3ef268SMilanka Ringwald  * @param conn_latency
552ff3ef268SMilanka Ringwald  * @param supervision_timeout
553ff3ef268SMilanka Ringwald  * @param master_clock_accuracy
554ff3ef268SMilanka Ringwald  */
555ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_CONNECTION_COMPLETE                0x01
556ff3ef268SMilanka Ringwald 
557ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator
558ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ADVERTISING_REPORT                 0x02
559ff3ef268SMilanka Ringwald 
560ff3ef268SMilanka Ringwald /**
561ff3ef268SMilanka Ringwald  * @format 11H222
562ff3ef268SMilanka Ringwald  * @param subevent_code
563ff3ef268SMilanka Ringwald  * @param status
564ff3ef268SMilanka Ringwald  * @param connection_handle
565ff3ef268SMilanka Ringwald  * @param conn_interval
566ff3ef268SMilanka Ringwald  * @param conn_latency
567ff3ef268SMilanka Ringwald  * @param supervision_timeout
568ff3ef268SMilanka Ringwald  */
569ff3ef268SMilanka Ringwald  #define HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE         0x03
570ff3ef268SMilanka Ringwald 
571ff3ef268SMilanka Ringwald /**
572ff3ef268SMilanka Ringwald  * @format 1HD2
573ff3ef268SMilanka Ringwald  * @param subevent_code
574ff3ef268SMilanka Ringwald  * @param connection_handle
575ff3ef268SMilanka Ringwald  * @param random_number
576ff3ef268SMilanka Ringwald  * @param encryption_diversifier
577ff3ef268SMilanka Ringwald  */
578ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_READ_REMOTE_USED_FEATURES_COMPLETE 0x04
579ff3ef268SMilanka Ringwald 
580ff3ef268SMilanka Ringwald /**
581ff3ef268SMilanka Ringwald  * @format 1HD2
582ff3ef268SMilanka Ringwald  * @param subevent_code
583ff3ef268SMilanka Ringwald  * @param connection_handle
584ff3ef268SMilanka Ringwald  * @param random_number
585ff3ef268SMilanka Ringwald  * @param encryption_diversifier
586ff3ef268SMilanka Ringwald  */
587ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST              0x05
588ff3ef268SMilanka Ringwald 
589ff3ef268SMilanka Ringwald /**
590ff3ef268SMilanka Ringwald  * @format 1H2222
591ff3ef268SMilanka Ringwald  * @param subevent_code
592ff3ef268SMilanka Ringwald  * @param connection_handle
593ff3ef268SMilanka Ringwald  * @param interval_min
594ff3ef268SMilanka Ringwald  * @param interval_max
595ff3ef268SMilanka Ringwald  * @param latency
596ff3ef268SMilanka Ringwald  * @param timeout
597ff3ef268SMilanka Ringwald  */
598ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST 0x06
599ff3ef268SMilanka Ringwald 
600ff3ef268SMilanka Ringwald /**
601ff3ef268SMilanka Ringwald  * @format 1H2222
602ff3ef268SMilanka Ringwald  * @param subevent_code
603ff3ef268SMilanka Ringwald  * @param connection_handle
604ff3ef268SMilanka Ringwald  * @param max_tx_octets
605ff3ef268SMilanka Ringwald  * @param max_tx_time
606ff3ef268SMilanka Ringwald  * @param max_rx_octets
607ff3ef268SMilanka Ringwald  * @param max_rx_time
608ff3ef268SMilanka Ringwald  */
609ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE 0x07
610ff3ef268SMilanka Ringwald 
611ff3ef268SMilanka Ringwald /**
612ff3ef268SMilanka Ringwald  * @format 11QQ
613ff3ef268SMilanka Ringwald  * @param subevent_code
614ff3ef268SMilanka Ringwald  * @param status
615ff3ef268SMilanka Ringwald  * @param dhkey_x x coordinate of P256 public key
616ff3ef268SMilanka Ringwald  * @param dhkey_y y coordinate of P256 public key
617ff3ef268SMilanka Ringwald  */
618ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE 0x08
619ff3ef268SMilanka Ringwald  /**
620ff3ef268SMilanka Ringwald  * @format 11Q
621ff3ef268SMilanka Ringwald  * @param subevent_code
622ff3ef268SMilanka Ringwald  * @param status
623ff3ef268SMilanka Ringwald  * @param dhkey Diffie-Hellman key
624ff3ef268SMilanka Ringwald  */
625ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE            0x09
626ff3ef268SMilanka Ringwald 
627ff3ef268SMilanka Ringwald /**
628ff3ef268SMilanka Ringwald  * @format 11H11BBB2221
629ff3ef268SMilanka Ringwald  * @param subevent_code
630ff3ef268SMilanka Ringwald  * @param status
631ff3ef268SMilanka Ringwald  * @param connection_handle
632ff3ef268SMilanka Ringwald  * @param role
633ff3ef268SMilanka Ringwald  * @param peer_address_type
634ff3ef268SMilanka Ringwald  * @param perr_addresss
635ff3ef268SMilanka Ringwald  * @param local_resolvable_private_addres
636ff3ef268SMilanka Ringwald  * @param peer_resolvable_private_addres
637ff3ef268SMilanka Ringwald  * @param conn_interval
638ff3ef268SMilanka Ringwald  * @param conn_latency
639ff3ef268SMilanka Ringwald  * @param supervision_timeout
640ff3ef268SMilanka Ringwald  * @param master_clock_accuracy
641ff3ef268SMilanka Ringwald  */
642ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE       0x0A
643ff3ef268SMilanka Ringwald 
644ff3ef268SMilanka Ringwald // array of advertisements, not handled by event accessor generator
645ff3ef268SMilanka Ringwald #define HCI_SUBEVENT_LE_DIRECT_ADVERTISING_REPORT          0x0B
646ff3ef268SMilanka Ringwald 
647ff3ef268SMilanka Ringwald 
648941b3855SMatthias Ringwald /**
649941b3855SMatthias Ringwald  * @format 1
650941b3855SMatthias Ringwald  * @param state
651941b3855SMatthias Ringwald  */
652941b3855SMatthias Ringwald #define BTSTACK_EVENT_STATE                                0x60
653941b3855SMatthias Ringwald 
65452aef63fSMatthias Ringwald /**
65552aef63fSMatthias Ringwald  * @format 1
65652aef63fSMatthias Ringwald  * @param number_connections
65752aef63fSMatthias Ringwald  */
658941b3855SMatthias Ringwald #define BTSTACK_EVENT_NR_CONNECTIONS_CHANGED               0x61
659941b3855SMatthias Ringwald 
660941b3855SMatthias Ringwald /**
661941b3855SMatthias Ringwald  * @format
662941b3855SMatthias Ringwald  */
663941b3855SMatthias Ringwald #define BTSTACK_EVENT_POWERON_FAILED                       0x62
664941b3855SMatthias Ringwald 
665941b3855SMatthias Ringwald /**
666827b1c43SMatthias Ringwald  * @format 1
667827b1c43SMatthias Ringwald  * @param discoverable
668827b1c43SMatthias Ringwald  */
669827b1c43SMatthias Ringwald #define BTSTACK_EVENT_DISCOVERABLE_ENABLED                 0x66
670827b1c43SMatthias Ringwald 
671827b1c43SMatthias Ringwald // Daemon Events
672827b1c43SMatthias Ringwald 
673827b1c43SMatthias Ringwald /**
674941b3855SMatthias Ringwald  * @format 112
675941b3855SMatthias Ringwald  * @param major
676941b3855SMatthias Ringwald  * @param minor
677941b3855SMatthias Ringwald  @ @param revision
678941b3855SMatthias Ringwald  */
679827b1c43SMatthias Ringwald #define DAEMON_EVENT_VERSION                               0x63
680941b3855SMatthias Ringwald 
681941b3855SMatthias Ringwald // data: system bluetooth on/off (bool)
682e2334cdcSMatthias Ringwald /**
683e2334cdcSMatthias Ringwald  * @format 1
684e2334cdcSMatthias Ringwald  * param system_bluetooth_enabled
685e2334cdcSMatthias Ringwald  */
686827b1c43SMatthias Ringwald #define DAEMON_EVENT_SYSTEM_BLUETOOTH_ENABLED              0x64
687941b3855SMatthias Ringwald 
688941b3855SMatthias Ringwald // data: event (8), len(8), status (8) == 0, address (48), name (1984 bits = 248 bytes)
689e2334cdcSMatthias Ringwald 
690e2334cdcSMatthias Ringwald /*
691e2334cdcSMatthias Ringwald  * @format 1BT
692e2334cdcSMatthias Ringwald  * @param status == 0 to match read_remote_name_request
693e2334cdcSMatthias Ringwald  * @param address
694e2334cdcSMatthias Ringwald  * @param name
695e2334cdcSMatthias Ringwald  */
696827b1c43SMatthias Ringwald #define DAEMON_EVENT_REMOTE_NAME_CACHED                    0x65
697941b3855SMatthias Ringwald 
69862c64df1SMatthias Ringwald // internal - data: event(8)
699e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_OPENED                     0x67
700941b3855SMatthias Ringwald 
70162c64df1SMatthias Ringwald // internal - data: event(8)
702e2334cdcSMatthias Ringwald #define DAEMON_EVENT_CONNECTION_CLOSED                     0x68
703941b3855SMatthias Ringwald 
70462c64df1SMatthias Ringwald // data: event(8), len(8), local_cid(16), credits(8)
70562c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_CREDITS                         0x74
70662c64df1SMatthias Ringwald 
70762c64df1SMatthias Ringwald /**
70862c64df1SMatthias Ringwald  * @format 12
70962c64df1SMatthias Ringwald  * @param status
71062c64df1SMatthias Ringwald  * @param psm
71162c64df1SMatthias Ringwald  */
71262c64df1SMatthias Ringwald #define DAEMON_EVENT_L2CAP_SERVICE_REGISTERED              0x75
71362c64df1SMatthias Ringwald 
71462c64df1SMatthias Ringwald /**
71562c64df1SMatthias Ringwald  * @format 21
71662c64df1SMatthias Ringwald  * @param rfcomm_cid
71762c64df1SMatthias Ringwald  * @param credits
71862c64df1SMatthias Ringwald  */
71962c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_CREDITS                        0x84
72062c64df1SMatthias Ringwald 
72162c64df1SMatthias Ringwald /**
72262c64df1SMatthias Ringwald  * @format 11
72362c64df1SMatthias Ringwald  * @param status
72462c64df1SMatthias Ringwald  * @param channel_id
72562c64df1SMatthias Ringwald  */
726fea5a680SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_SERVICE_REGISTERED             0x85
727fea5a680SMatthias Ringwald 
72862c64df1SMatthias Ringwald /**
72962c64df1SMatthias Ringwald  * @format 11
73062c64df1SMatthias Ringwald  * @param status
73162c64df1SMatthias Ringwald  * @param server_channel_id
73262c64df1SMatthias Ringwald  */
73362c64df1SMatthias Ringwald #define DAEMON_EVENT_RFCOMM_PERSISTENT_CHANNEL             0x86
73462c64df1SMatthias Ringwald 
73562c64df1SMatthias Ringwald /**
73662c64df1SMatthias Ringwald   * @format 14
73762c64df1SMatthias Ringwald   * @param status
73862c64df1SMatthias Ringwald   * @param service_record_handle
73962c64df1SMatthias Ringwald   */
74062c64df1SMatthias Ringwald #define DAEMON_EVENT_SDP_SERVICE_REGISTERED                0x90
74162c64df1SMatthias Ringwald 
74262c64df1SMatthias Ringwald 
743827b1c43SMatthias Ringwald 
7443bc639ceSMatthias Ringwald // additional HCI events
74563fa3374SMatthias Ringwald 
74663fa3374SMatthias Ringwald /**
74762ca45d7SMatthias Ringwald  * @brief Indicates HCI transport enters/exits Sleep mode
74862ca45d7SMatthias Ringwald  * @format 1
74962ca45d7SMatthias Ringwald  * @param active
75062ca45d7SMatthias Ringwald  */
751d16a0392SMatthias Ringwald #define HCI_EVENT_TRANSPORT_SLEEP_MODE                     0x69
75262ca45d7SMatthias Ringwald 
75362ca45d7SMatthias Ringwald /**
7540561b2d8STREFOU Felix  * @brief Transport ready
7550561b2d8STREFOU Felix  */
7560561b2d8STREFOU Felix #define HCI_EVENT_TRANSPORT_READY                          0x6D
7570561b2d8STREFOU Felix 
7580561b2d8STREFOU Felix /**
75963fa3374SMatthias Ringwald  * @brief Outgoing packet
76063fa3374SMatthias Ringwald  */
76163fa3374SMatthias Ringwald #define HCI_EVENT_TRANSPORT_PACKET_SENT                    0x6E
76263fa3374SMatthias Ringwald 
7633bc639ceSMatthias Ringwald /**
7643bc639ceSMatthias Ringwald  * @format B
7653bc639ceSMatthias Ringwald  * @param handle
7663bc639ceSMatthias Ringwald  */
7673bc639ceSMatthias Ringwald #define HCI_EVENT_SCO_CAN_SEND_NOW                         0x6F
7683bc639ceSMatthias Ringwald 
76962c64df1SMatthias Ringwald 
770941b3855SMatthias Ringwald // L2CAP EVENTS
771941b3855SMatthias Ringwald 
772b072ba33SMatthias Ringwald /**
7737f1690cfSMatthias Ringwald  * @format 1BH222222111
774b072ba33SMatthias Ringwald  * @param status
775b072ba33SMatthias Ringwald  * @param address
776b072ba33SMatthias Ringwald  * @param handle
777b072ba33SMatthias Ringwald  * @param psm
778b072ba33SMatthias Ringwald  * @param local_cid
779b072ba33SMatthias Ringwald  * @param remote_cid
780b072ba33SMatthias Ringwald  * @param local_mtu
781b072ba33SMatthias Ringwald  * @param remote_mtu
782b072ba33SMatthias Ringwald  * @param flush_timeout
783bab5f4f0SMatthias Ringwald  * @param incoming
7847f1690cfSMatthias Ringwald  * @param mode
7857f1690cfSMatthias Ringwald  * @param fcs
786b072ba33SMatthias Ringwald  */
787941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_OPENED                         0x70
788941b3855SMatthias Ringwald 
789b072ba33SMatthias Ringwald /*
790b072ba33SMatthias Ringwald  * @format 2
791b072ba33SMatthias Ringwald  * @param local_cid
792b072ba33SMatthias Ringwald  */
793941b3855SMatthias Ringwald #define L2CAP_EVENT_CHANNEL_CLOSED                         0x71
794941b3855SMatthias Ringwald 
795b072ba33SMatthias Ringwald /**
7966d4269d3SMilanka Ringwald  * @format BH222
797b072ba33SMatthias Ringwald  * @param address
798b072ba33SMatthias Ringwald  * @param handle
799b072ba33SMatthias Ringwald  * @param psm
800b072ba33SMatthias Ringwald  * @param local_cid
801b072ba33SMatthias Ringwald  * @param remote_cid
802b072ba33SMatthias Ringwald  */
803941b3855SMatthias Ringwald #define L2CAP_EVENT_INCOMING_CONNECTION                    0x72
804941b3855SMatthias Ringwald 
805b072ba33SMatthias Ringwald // ??
806941b3855SMatthias Ringwald // data: event(8), len(8), handle(16)
807941b3855SMatthias Ringwald #define L2CAP_EVENT_TIMEOUT_CHECK                          0x73
808941b3855SMatthias Ringwald 
809b072ba33SMatthias Ringwald /**
810b072ba33SMatthias Ringwald  * @format H2222
811b072ba33SMatthias Ringwald  * @param handle
812b072ba33SMatthias Ringwald  * @param interval_min
813b072ba33SMatthias Ringwald  * @param interval_max
814b072ba33SMatthias Ringwald  * @param latencey
815b072ba33SMatthias Ringwald  * @param timeout_multiplier
816b072ba33SMatthias Ringwald  */
817941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST    0x76
818941b3855SMatthias Ringwald 
819941b3855SMatthias Ringwald // data: event(8), len(8), handle(16), result (16) (0 == ok, 1 == fail)
820b072ba33SMatthias Ringwald  /**
821b072ba33SMatthias Ringwald   * @format H2
822b072ba33SMatthias Ringwald   * @param handle
8232c737695SMatthias Ringwald   * @param result
824b072ba33SMatthias Ringwald   */
825941b3855SMatthias Ringwald #define L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE   0x77
826941b3855SMatthias Ringwald 
827b072ba33SMatthias Ringwald /**
828b072ba33SMatthias Ringwald  * @format 2
829b072ba33SMatthias Ringwald  * @param local_cid
830b072ba33SMatthias Ringwald  */
831b072ba33SMatthias Ringwald #define L2CAP_EVENT_CAN_SEND_NOW                           0x78
832b072ba33SMatthias Ringwald 
83344276248SMatthias Ringwald // LE Data Channels
83444276248SMatthias Ringwald 
83544276248SMatthias Ringwald /**
83644276248SMatthias Ringwald  * @format 1BH2222
83744276248SMatthias Ringwald  * @param address_type
83844276248SMatthias Ringwald  * @param address
83944276248SMatthias Ringwald  * @param handle
84044276248SMatthias Ringwald  * @param psm
84144276248SMatthias Ringwald  * @param local_cid
84244276248SMatthias Ringwald  * @param remote_cid
84344276248SMatthias Ringwald  * @param remote_mtu
84444276248SMatthias Ringwald  */
84544276248SMatthias Ringwald #define L2CAP_EVENT_LE_INCOMING_CONNECTION                 0x79
84644276248SMatthias Ringwald 
84744276248SMatthias Ringwald /**
84812242deaSMatthias Ringwald  * @format 11BH122222
84944276248SMatthias Ringwald  * @param status
85044276248SMatthias Ringwald  * @param address_type
85144276248SMatthias Ringwald  * @param address
85244276248SMatthias Ringwald  * @param handle
85312242deaSMatthias Ringwald  * @param incoming
85444276248SMatthias Ringwald  * @param psm
85544276248SMatthias Ringwald  * @param local_cid
85644276248SMatthias Ringwald  * @param remote_cid
85744276248SMatthias Ringwald  * @param local_mtu
85844276248SMatthias Ringwald  * @param remote_mtu
85944276248SMatthias Ringwald  */
86044276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_OPENED                      0x7a
86144276248SMatthias Ringwald 
86244276248SMatthias Ringwald /*
86344276248SMatthias Ringwald  * @format 2
86444276248SMatthias Ringwald  * @param local_cid
86544276248SMatthias Ringwald  */
86644276248SMatthias Ringwald #define L2CAP_EVENT_LE_CHANNEL_CLOSED                      0x7b
86744276248SMatthias Ringwald 
86844276248SMatthias Ringwald /*
86944276248SMatthias Ringwald  * @format 2
87044276248SMatthias Ringwald  * @param local_cid
87144276248SMatthias Ringwald  */
87244276248SMatthias Ringwald #define L2CAP_EVENT_LE_CAN_SEND_NOW                        0x7c
87344276248SMatthias Ringwald 
87444276248SMatthias Ringwald /*
87544276248SMatthias Ringwald  * @format 2
87644276248SMatthias Ringwald  * @param local_cid
87744276248SMatthias Ringwald  */
87844276248SMatthias Ringwald #define L2CAP_EVENT_LE_PACKET_SENT                         0x7d
87944276248SMatthias Ringwald 
88066a72640SMatthias Ringwald /*
88166a72640SMatthias Ringwald  * @format 2
88266a72640SMatthias Ringwald  * @param local_cid
88366a72640SMatthias Ringwald  */
88466a72640SMatthias Ringwald #define L2CAP_EVENT_ERTM_BUFFER_RELEASED                   0x7e
88566a72640SMatthias Ringwald 
88609c9c963SMatthias Ringwald /*
88709c9c963SMatthias Ringwald  * @format
88809c9c963SMatthias Ringwald  */
889fa485b2bSMatthias Ringwald #define L2CAP_EVENT_TRIGGER_RUN                            0x7f
89009c9c963SMatthias Ringwald 
89144276248SMatthias Ringwald 
892941b3855SMatthias Ringwald // RFCOMM EVENTS
893b072ba33SMatthias Ringwald 
894941b3855SMatthias Ringwald /**
895bab5f4f0SMatthias Ringwald  * @format 1B21221
896941b3855SMatthias Ringwald  * @param status
897941b3855SMatthias Ringwald  * @param bd_addr
898941b3855SMatthias Ringwald  * @param con_handle
899941b3855SMatthias Ringwald  * @param server_channel
900941b3855SMatthias Ringwald  * @param rfcomm_cid
901941b3855SMatthias Ringwald  * @param max_frame_size
902bab5f4f0SMatthias Ringwald  * @param incoming
903941b3855SMatthias Ringwald  */
904f8f6a918SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_OPENED                        0x80
905941b3855SMatthias Ringwald 
906941b3855SMatthias Ringwald /**
907941b3855SMatthias Ringwald  * @format 2
908941b3855SMatthias Ringwald  * @param rfcomm_cid
909941b3855SMatthias Ringwald  */
910941b3855SMatthias Ringwald #define RFCOMM_EVENT_CHANNEL_CLOSED                        0x81
911941b3855SMatthias Ringwald 
912941b3855SMatthias Ringwald /**
913941b3855SMatthias Ringwald  * @format B12
914941b3855SMatthias Ringwald  * @param bd_addr
915941b3855SMatthias Ringwald  * @param server_channel
916941b3855SMatthias Ringwald  * @param rfcomm_cid
917941b3855SMatthias Ringwald  */
918941b3855SMatthias Ringwald #define RFCOMM_EVENT_INCOMING_CONNECTION                   0x82
919941b3855SMatthias Ringwald 
920941b3855SMatthias Ringwald /**
921941b3855SMatthias Ringwald  * @format 21
922941b3855SMatthias Ringwald  * @param rfcomm_cid
923941b3855SMatthias Ringwald  * @param line_status
924941b3855SMatthias Ringwald  */
925941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_LINE_STATUS                    0x83
926941b3855SMatthias Ringwald 
927941b3855SMatthias Ringwald /**
928941b3855SMatthias Ringwald  * @format 21
929941b3855SMatthias Ringwald  * @param rfcomm_cid
930941b3855SMatthias Ringwald  * @param modem_status
931941b3855SMatthias Ringwald  */
932941b3855SMatthias Ringwald #define RFCOMM_EVENT_REMOTE_MODEM_STATUS                   0x87
933941b3855SMatthias Ringwald 
934941b3855SMatthias Ringwald  /**
9357bd8e93bSMatthias Ringwald   * TODO: format for variable data 2?
936045013feSMatthias Ringwald   * param rfcomm_cid
937045013feSMatthias Ringwald   * param rpn_data
938941b3855SMatthias Ringwald   */
939941b3855SMatthias Ringwald #define RFCOMM_EVENT_PORT_CONFIGURATION                    0x88
940941b3855SMatthias Ringwald 
941941b3855SMatthias Ringwald /**
942b072ba33SMatthias Ringwald  * @format 2
94362c468cbSMatthias Ringwald  * @param rfcomm_cid
944b072ba33SMatthias Ringwald  */
945b072ba33SMatthias Ringwald #define RFCOMM_EVENT_CAN_SEND_NOW                          0x89
946b072ba33SMatthias Ringwald 
947b072ba33SMatthias Ringwald 
948b072ba33SMatthias Ringwald /**
949941b3855SMatthias Ringwald  * @format 1
950941b3855SMatthias Ringwald  * @param status
951941b3855SMatthias Ringwald  */
9525611a760SMatthias Ringwald #define SDP_EVENT_QUERY_COMPLETE                                 0x91
953941b3855SMatthias Ringwald 
954941b3855SMatthias Ringwald /**
955941b3855SMatthias Ringwald  * @format 1T
956941b3855SMatthias Ringwald  * @param rfcomm_channel
957941b3855SMatthias Ringwald  * @param name
958941b3855SMatthias Ringwald  */
9595611a760SMatthias Ringwald #define SDP_EVENT_QUERY_RFCOMM_SERVICE                           0x92
960941b3855SMatthias Ringwald 
961941b3855SMatthias Ringwald /**
9624225393cSMatthias Ringwald  * @format 22221
9634225393cSMatthias Ringwald  * @param record_id
964941b3855SMatthias Ringwald  * @param attribute_id
9654225393cSMatthias Ringwald  * @param attribute_length
9664225393cSMatthias Ringwald  * @param data_offset
9674225393cSMatthias Ringwald  * @param data
968941b3855SMatthias Ringwald  */
9695611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_BYTE                           0x93
970941b3855SMatthias Ringwald 
9714de250b4SMatthias Ringwald /**
9724de250b4SMatthias Ringwald  * @format 22LV
9734de250b4SMatthias Ringwald  * @param record_id
9744de250b4SMatthias Ringwald  * @param attribute_id
9754de250b4SMatthias Ringwald  * @param attribute_length
9764de250b4SMatthias Ringwald  * @param attribute_value
9774de250b4SMatthias Ringwald  */
9785611a760SMatthias Ringwald #define SDP_EVENT_QUERY_ATTRIBUTE_VALUE                          0x94
9794225393cSMatthias Ringwald 
9804225393cSMatthias Ringwald /**
9814225393cSMatthias Ringwald  * @format 224
9824225393cSMatthias Ringwald  * @param total_count
9834225393cSMatthias Ringwald  * @param record_index
9844225393cSMatthias Ringwald  * @param record_handle
9854225393cSMatthias Ringwald  * @note Not provided by daemon, only used for internal testing
9864225393cSMatthias Ringwald  */
9875611a760SMatthias Ringwald #define SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE                    0x95
988941b3855SMatthias Ringwald 
989941b3855SMatthias Ringwald /**
990941b3855SMatthias Ringwald  * @format H1
991941b3855SMatthias Ringwald  * @param handle
9929cb80b17SMilanka Ringwald  * @param att_status  see ATT errors in bluetooth.h
993941b3855SMatthias Ringwald  */
9945611a760SMatthias Ringwald #define GATT_EVENT_QUERY_COMPLETE                                0xA0
995941b3855SMatthias Ringwald 
996941b3855SMatthias Ringwald /**
997941b3855SMatthias Ringwald  * @format HX
998941b3855SMatthias Ringwald  * @param handle
999941b3855SMatthias Ringwald  * @param service
1000941b3855SMatthias Ringwald  */
10015611a760SMatthias Ringwald #define GATT_EVENT_SERVICE_QUERY_RESULT                          0xA1
1002941b3855SMatthias Ringwald 
1003941b3855SMatthias Ringwald /**
1004941b3855SMatthias Ringwald  * @format HY
1005941b3855SMatthias Ringwald  * @param handle
1006941b3855SMatthias Ringwald  * @param characteristic
1007941b3855SMatthias Ringwald  */
10085611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_QUERY_RESULT                   0xA2
1009941b3855SMatthias Ringwald 
1010941b3855SMatthias Ringwald /**
1011941b3855SMatthias Ringwald  * @format H2X
1012941b3855SMatthias Ringwald  * @param handle
1013941b3855SMatthias Ringwald  * @param include_handle
1014941b3855SMatthias Ringwald  * @param service
1015941b3855SMatthias Ringwald  */
10165611a760SMatthias Ringwald #define GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT                 0xA3
1017941b3855SMatthias Ringwald 
1018941b3855SMatthias Ringwald /**
1019941b3855SMatthias Ringwald  * @format HZ
1020941b3855SMatthias Ringwald  * @param handle
1021941b3855SMatthias Ringwald  * @param characteristic_descriptor
1022941b3855SMatthias Ringwald  */
10235611a760SMatthias Ringwald #define GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT   0xA4
1024941b3855SMatthias Ringwald 
1025941b3855SMatthias Ringwald /**
1026941b3855SMatthias Ringwald  * @format H2LV
1027941b3855SMatthias Ringwald  * @param handle
1028941b3855SMatthias Ringwald  * @param value_handle
1029941b3855SMatthias Ringwald  * @param value_length
1030941b3855SMatthias Ringwald  * @param value
1031941b3855SMatthias Ringwald  */
10325611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT             0xA5
1033941b3855SMatthias Ringwald 
1034941b3855SMatthias Ringwald /**
1035941b3855SMatthias Ringwald  * @format H22LV
1036941b3855SMatthias Ringwald  * @param handle
1037941b3855SMatthias Ringwald  * @param value_handle
1038941b3855SMatthias Ringwald  * @param value_offset
1039941b3855SMatthias Ringwald  * @param value_length
1040941b3855SMatthias Ringwald  * @param value
1041941b3855SMatthias Ringwald  */
10425611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT        0xA6
1043941b3855SMatthias Ringwald 
1044941b3855SMatthias Ringwald /**
1045941b3855SMatthias Ringwald  * @format H2LV
1046941b3855SMatthias Ringwald  * @param handle
1047941b3855SMatthias Ringwald  * @param value_handle
1048941b3855SMatthias Ringwald  * @param value_length
1049941b3855SMatthias Ringwald  * @param value
1050941b3855SMatthias Ringwald  */
10515611a760SMatthias Ringwald #define GATT_EVENT_NOTIFICATION                                  0xA7
1052941b3855SMatthias Ringwald 
1053941b3855SMatthias Ringwald /**
1054941b3855SMatthias Ringwald  * @format H2LV
1055941b3855SMatthias Ringwald  * @param handle
1056941b3855SMatthias Ringwald  * @param value_handle
1057941b3855SMatthias Ringwald  * @param value_length
1058941b3855SMatthias Ringwald  * @param value
1059941b3855SMatthias Ringwald  */
10605611a760SMatthias Ringwald #define GATT_EVENT_INDICATION                                    0xA8
1061941b3855SMatthias Ringwald 
1062941b3855SMatthias Ringwald /**
1063941b3855SMatthias Ringwald  * @format H2LV
10642c737695SMatthias Ringwald  * @param handle
1065941b3855SMatthias Ringwald  * @param descriptor_handle
1066941b3855SMatthias Ringwald  * @param descriptor_length
1067941b3855SMatthias Ringwald  * @param descriptor
1068941b3855SMatthias Ringwald  */
10695611a760SMatthias Ringwald #define GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT        0xA9
1070941b3855SMatthias Ringwald 
1071941b3855SMatthias Ringwald /**
1072941b3855SMatthias Ringwald  * @format H2LV
1073941b3855SMatthias Ringwald  * @param handle
1074941b3855SMatthias Ringwald  * @param descriptor_offset
1075941b3855SMatthias Ringwald  * @param descriptor_length
1076941b3855SMatthias Ringwald  * @param descriptor
1077941b3855SMatthias Ringwald  */
10785611a760SMatthias Ringwald #define GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT   0xAA
1079941b3855SMatthias Ringwald 
1080941b3855SMatthias Ringwald /**
1081941b3855SMatthias Ringwald  * @format H2
1082941b3855SMatthias Ringwald  * @param handle
1083941b3855SMatthias Ringwald  * @param MTU
1084941b3855SMatthias Ringwald  */
10855611a760SMatthias Ringwald #define GATT_EVENT_MTU                                           0xAB
1086941b3855SMatthias Ringwald 
1087941b3855SMatthias Ringwald /**
108871af96a1SMatthias Ringwald  * @format H
108971af96a1SMatthias Ringwald  * @param handle
109071af96a1SMatthias Ringwald  */
109171af96a1SMatthias Ringwald #define GATT_EVENT_CAN_WRITE_WITHOUT_RESPONSE                    0xAC
109271af96a1SMatthias Ringwald 
109371af96a1SMatthias Ringwald /**
10945d964c8bSMatthias Ringwald  * @format 1BH
1095a43588baSMatthias Ringwald  * @param address_type
1096a43588baSMatthias Ringwald  * @param address
1097a43588baSMatthias Ringwald  * @param handle
1098a43588baSMatthias Ringwald  */
1099a43588baSMatthias Ringwald #define ATT_EVENT_CONNECTED                                      0xB3
1100a43588baSMatthias Ringwald 
1101a43588baSMatthias Ringwald /**
1102a43588baSMatthias Ringwald  * @format H
1103a43588baSMatthias Ringwald  * @param handle
1104a43588baSMatthias Ringwald  */
1105a43588baSMatthias Ringwald #define ATT_EVENT_DISCONNECTED                                   0xB4
1106a43588baSMatthias Ringwald 
1107a43588baSMatthias Ringwald /**
1108941b3855SMatthias Ringwald  * @format H2
1109941b3855SMatthias Ringwald  * @param handle
1110941b3855SMatthias Ringwald  * @param MTU
1111941b3855SMatthias Ringwald  */
11125611a760SMatthias Ringwald #define ATT_EVENT_MTU_EXCHANGE_COMPLETE                          0xB5
1113941b3855SMatthias Ringwald 
111449d18261SMatthias Ringwald  /**
111549d18261SMatthias Ringwald   * @format 1H2
111649d18261SMatthias Ringwald   * @param status
111749d18261SMatthias Ringwald   * @param conn_handle
111849d18261SMatthias Ringwald   * @param attribute_handle
111949d18261SMatthias Ringwald   */
11205611a760SMatthias Ringwald #define ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE               0xB6
1121941b3855SMatthias Ringwald 
112249d18261SMatthias Ringwald /**
112349d18261SMatthias Ringwald  * @format
112449d18261SMatthias Ringwald  */
112549d18261SMatthias Ringwald #define ATT_EVENT_CAN_SEND_NOW                                   0xB7
1126941b3855SMatthias Ringwald 
112749d18261SMatthias Ringwald // TODO: daemon only event
112849d18261SMatthias Ringwald 
112949d18261SMatthias Ringwald /**
113049d18261SMatthias Ringwald  * @format 12
113149d18261SMatthias Ringwald  * @param status
113249d18261SMatthias Ringwald  * @param service_uuid
113349d18261SMatthias Ringwald  */
1134941b3855SMatthias Ringwald  #define BNEP_EVENT_SERVICE_REGISTERED                      0xC0
1135941b3855SMatthias Ringwald 
113649d18261SMatthias Ringwald /**
113732b46fecSMatthias Ringwald  * @format 12222BH
113849d18261SMatthias Ringwald  * @param status
1139423c667cSMatthias Ringwald  * @param bnep_cid
114049d18261SMatthias Ringwald  * @param source_uuid
114149d18261SMatthias Ringwald  * @param destination_uuid
114249d18261SMatthias Ringwald  * @param mtu
114349d18261SMatthias Ringwald  * @param remote_address
114432b46fecSMatthias Ringwald  * @param con_handle
114549d18261SMatthias Ringwald  */
1146423c667cSMatthias Ringwald  #define BNEP_EVENT_CHANNEL_OPENED                   0xC1
1147941b3855SMatthias Ringwald 
114849d18261SMatthias Ringwald /**
1149423c667cSMatthias Ringwald  * @format 222B
1150423c667cSMatthias Ringwald  * @param bnep_cid
115149d18261SMatthias Ringwald  * @param source_uuid
115249d18261SMatthias Ringwald  * @param destination_uuid
115349d18261SMatthias Ringwald  * @param remote_address
115449d18261SMatthias Ringwald  */
1155941b3855SMatthias Ringwald  #define BNEP_EVENT_CHANNEL_CLOSED                          0xC2
1156941b3855SMatthias Ringwald 
115749d18261SMatthias Ringwald /**
1158423c667cSMatthias Ringwald  * @format 222B1
1159423c667cSMatthias Ringwald  * @param bnep_cid
116049d18261SMatthias Ringwald  * @param source_uuid
116149d18261SMatthias Ringwald  * @param destination_uuid
116249d18261SMatthias Ringwald  * @param remote_address
116349d18261SMatthias Ringwald  * @param channel_state
116449d18261SMatthias Ringwald  */
1165941b3855SMatthias Ringwald #define BNEP_EVENT_CHANNEL_TIMEOUT                         0xC3
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  */
11742d4c8c04SMatthias Ringwald  #define BNEP_EVENT_CAN_SEND_NOW                           0xC4
1175941b3855SMatthias Ringwald 
1176941b3855SMatthias Ringwald  /**
1177941b3855SMatthias Ringwald   * @format H1B
1178941b3855SMatthias Ringwald   * @param handle
1179941b3855SMatthias Ringwald   * @param addr_type
1180941b3855SMatthias Ringwald   * @param address
1181941b3855SMatthias Ringwald   */
11825611a760SMatthias Ringwald #define SM_EVENT_JUST_WORKS_REQUEST                              0xD0
1183941b3855SMatthias Ringwald 
1184941b3855SMatthias Ringwald  /**
118512a574e5SMatthias Ringwald   * @format H1B4
118612a574e5SMatthias Ringwald   * @param handle
118712a574e5SMatthias Ringwald   * @param addr_type
118812a574e5SMatthias Ringwald   * @param address
118912a574e5SMatthias Ringwald   * @param passkey
119012a574e5SMatthias Ringwald   */
119112a574e5SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_NUMBER                          0xD1
119212a574e5SMatthias Ringwald 
119312a574e5SMatthias Ringwald  /**
1194941b3855SMatthias Ringwald   * @format H1B
1195941b3855SMatthias Ringwald   * @param handle
1196941b3855SMatthias Ringwald   * @param addr_type
1197941b3855SMatthias Ringwald   * @param address
1198941b3855SMatthias Ringwald   */
119912a574e5SMatthias Ringwald #define SM_EVENT_PASSKEY_DISPLAY_CANCEL                          0xD2
120012a574e5SMatthias Ringwald 
120112a574e5SMatthias Ringwald  /**
120212a574e5SMatthias Ringwald   * @format H1B
120312a574e5SMatthias Ringwald   * @param handle
120412a574e5SMatthias Ringwald   * @param addr_type
120512a574e5SMatthias Ringwald   * @param address
120612a574e5SMatthias Ringwald   */
120712a574e5SMatthias Ringwald #define SM_EVENT_PASSKEY_INPUT_NUMBER                            0xD3
1208941b3855SMatthias Ringwald 
1209941b3855SMatthias Ringwald  /**
1210941b3855SMatthias Ringwald   * @format H1B4
1211941b3855SMatthias Ringwald   * @param handle
1212941b3855SMatthias Ringwald   * @param addr_type
1213941b3855SMatthias Ringwald   * @param address
1214941b3855SMatthias Ringwald   * @param passkey
1215941b3855SMatthias Ringwald   */
121612a574e5SMatthias Ringwald #define SM_EVENT_NUMERIC_COMPARISON_REQUEST                      0xD4
1217941b3855SMatthias Ringwald 
1218941b3855SMatthias Ringwald  /**
1219941b3855SMatthias Ringwald   * @format H1B
1220941b3855SMatthias Ringwald   * @param handle
1221941b3855SMatthias Ringwald   * @param addr_type
1222941b3855SMatthias Ringwald   * @param address
1223941b3855SMatthias Ringwald   */
122412a574e5SMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_STARTED                      0xD5
1225941b3855SMatthias Ringwald 
1226941b3855SMatthias Ringwald  /**
12272c737695SMatthias Ringwald   * @format H1B
1228941b3855SMatthias Ringwald   * @param handle
1229941b3855SMatthias Ringwald   * @param addr_type
1230941b3855SMatthias Ringwald   * @param address
1231941b3855SMatthias Ringwald   */
123212a574e5SMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_FAILED                       0xD6
1233941b3855SMatthias Ringwald 
1234941b3855SMatthias Ringwald  /**
123584182ed9SMatthias Ringwald   * @brief Identify resolving succeeded
123684182ed9SMatthias Ringwald   *
1237334126b3SMatthias Ringwald   * @format H1B1B2
1238941b3855SMatthias Ringwald   * @param handle
1239941b3855SMatthias Ringwald   * @param addr_type
1240941b3855SMatthias Ringwald   * @param address
124184182ed9SMatthias Ringwald   * @param identity_addr_type
124284182ed9SMatthias Ringwald   * @param identity_address
12436f8637a2SMatthias Ringwald   * @param index
124484182ed9SMatthias Ringwald   *
1245941b3855SMatthias Ringwald   */
124612a574e5SMatthias Ringwald #define SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED                    0xD7
1247941b3855SMatthias Ringwald 
1248941b3855SMatthias Ringwald  /**
1249941b3855SMatthias Ringwald   * @format H1B
1250941b3855SMatthias Ringwald   * @param handle
1251941b3855SMatthias Ringwald   * @param addr_type
1252941b3855SMatthias Ringwald   * @param address
1253941b3855SMatthias Ringwald   */
125412a574e5SMatthias Ringwald #define SM_EVENT_AUTHORIZATION_REQUEST                           0xD8
1255941b3855SMatthias Ringwald 
1256941b3855SMatthias Ringwald  /**
1257941b3855SMatthias Ringwald   * @format H1B1
1258941b3855SMatthias Ringwald   * @param handle
1259941b3855SMatthias Ringwald   * @param addr_type
1260941b3855SMatthias Ringwald   * @param address
1261941b3855SMatthias Ringwald   * @param authorization_result
1262941b3855SMatthias Ringwald   */
126312a574e5SMatthias Ringwald #define SM_EVENT_AUTHORIZATION_RESULT                            0xD9
1264941b3855SMatthias Ringwald 
12653d7fe1e9SMatthias Ringwald  /**
12663d7fe1e9SMatthias Ringwald   * @format H1
12673d7fe1e9SMatthias Ringwald   * @param handle
12683d7fe1e9SMatthias Ringwald   * @param action see SM_KEYPRESS_*
12693d7fe1e9SMatthias Ringwald   */
127012a574e5SMatthias Ringwald #define SM_EVENT_KEYPRESS_NOTIFICATION                           0xDA
12713d7fe1e9SMatthias Ringwald 
127284182ed9SMatthias Ringwald  /**
127384182ed9SMatthias Ringwald   * @brief Emitted during pairing to inform app about address used as identity
127484182ed9SMatthias Ringwald   *
1275fccb5f31SMatthias Ringwald   * @format H1B1B2
127684182ed9SMatthias Ringwald   * @param handle
127784182ed9SMatthias Ringwald   * @param addr_type
127884182ed9SMatthias Ringwald   * @param address
127984182ed9SMatthias Ringwald   * @param identity_addr_type
128084182ed9SMatthias Ringwald   * @param identity_address
12816f8637a2SMatthias Ringwald   * @param index
128284182ed9SMatthias Ringwald   */
128312a574e5SMatthias Ringwald #define SM_EVENT_IDENTITY_CREATED                                0xDB
12843d7fe1e9SMatthias Ringwald 
128536c1abd2SMatthias Ringwald /**
1286*38c89bb1SMatthias Ringwald  * @brief Emitted to inform app that pairing has started.
1287*38c89bb1SMatthias Ringwald  * @format H1B
1288*38c89bb1SMatthias Ringwald  * @param handle
1289*38c89bb1SMatthias Ringwald  * @param addr_type
1290*38c89bb1SMatthias Ringwald  * @param address
1291*38c89bb1SMatthias Ringwald  */
1292*38c89bb1SMatthias Ringwald #define SM_EVENT_PAIRING_STARTED                                 0xDC
1293*38c89bb1SMatthias Ringwald 
1294*38c89bb1SMatthias Ringwald /**
129536c1abd2SMatthias Ringwald   * @brief Emitted to inform app that pairing is complete. Possible status values:
129636c1abd2SMatthias Ringwald   *        ERROR_CODE_SUCCESS                            -> pairing success
129736c1abd2SMatthias Ringwald   *        ERROR_CODE_CONNECTION_TIMEOUT                 -> timeout
129836c1abd2SMatthias Ringwald   *        ERROR_CODE_REMOTE_USER_TERMINATED_CONNECTION  -> disconnect
129936c1abd2SMatthias Ringwald   *        ERROR_CODE_AUTHENTICATION_FAILURE             -> SM protocol error, see reason field with SM_REASON_* from bluetooth.h
130036c1abd2SMatthias Ringwald   *
130136c1abd2SMatthias Ringwald   * @format H1B11
130236c1abd2SMatthias Ringwald   * @param handle
130336c1abd2SMatthias Ringwald   * @param addr_type
130436c1abd2SMatthias Ringwald   * @param address
130536c1abd2SMatthias Ringwald   * @param status
130636c1abd2SMatthias Ringwald   * @param reason if status == ERROR_CODE_AUTHENTICATION_FAILURE
130736c1abd2SMatthias Ringwald   */
1308*38c89bb1SMatthias Ringwald #define SM_EVENT_PAIRING_COMPLETE                                0xDD
130936c1abd2SMatthias Ringwald 
131036c1abd2SMatthias Ringwald 
1311fee35ebaSMatthias Ringwald /**
1312fee35ebaSMatthias Ringwald  * @brief Proactive Authentication for bonded devices started.
1313fee35ebaSMatthias Ringwald  * @format H1B
1314fee35ebaSMatthias Ringwald  * @param handle
1315fee35ebaSMatthias Ringwald  * @param addr_type
1316fee35ebaSMatthias Ringwald  * @param address
1317fee35ebaSMatthias Ringwald  */
1318*38c89bb1SMatthias Ringwald #define SM_EVENT_REENCRYPTION_STARTED                            0xDE
1319fee35ebaSMatthias Ringwald 
1320fee35ebaSMatthias Ringwald /**
1321fee35ebaSMatthias Ringwald  * @brief Proactive Authentication for bonded devices complete. Possible status values:
1322fee35ebaSMatthias Ringwald  *         ERROR_CODE_SUCCESS                           -> connection secure
1323fee35ebaSMatthias Ringwald  *         ERROR_CODE_CONNECTION_TIMEOUT                -> timeout
1324fee35ebaSMatthias Ringwald  *         ERROR_CODE_AUTHENTICATION_FAILURE            -> remote did not provide LTK locally
1325fee35ebaSMatthias Ringwald  * @format H1B1
1326fee35ebaSMatthias Ringwald  * @param handle
1327fee35ebaSMatthias Ringwald  * @param addr_type
1328fee35ebaSMatthias Ringwald  * @param address
1329fee35ebaSMatthias Ringwald  * @param status
1330fee35ebaSMatthias Ringwald  */
1331*38c89bb1SMatthias Ringwald #define SM_EVENT_REENCRYPTION_COMPLETE                           0xDF
1332fee35ebaSMatthias Ringwald 
1333941b3855SMatthias Ringwald // GAP
1334941b3855SMatthias Ringwald 
133546bc5396SMilanka Ringwald /**
133646bc5396SMilanka Ringwald  * @format H1
133746bc5396SMilanka Ringwald  * @param handle
133846bc5396SMilanka Ringwald  * @param security_level
133946bc5396SMilanka Ringwald  */
13405611a760SMatthias Ringwald #define GAP_EVENT_SECURITY_LEVEL                                 0xE0
1341941b3855SMatthias Ringwald 
134246bc5396SMilanka Ringwald /**
134346bc5396SMilanka Ringwald  * @format 1B
134446bc5396SMilanka Ringwald  * @param status
134546bc5396SMilanka Ringwald  * @param address
134646bc5396SMilanka Ringwald  */
13475611a760SMatthias Ringwald #define GAP_EVENT_DEDICATED_BONDING_COMPLETED                    0xE1
1348941b3855SMatthias Ringwald 
1349941b3855SMatthias Ringwald /**
1350941b3855SMatthias Ringwald  * @format 11B1JV
1351941b3855SMatthias Ringwald  * @param advertising_event_type
1352941b3855SMatthias Ringwald  * @param address_type
1353941b3855SMatthias Ringwald  * @param address
1354941b3855SMatthias Ringwald  * @param rssi
1355941b3855SMatthias Ringwald  * @param data_length
1356941b3855SMatthias Ringwald  * @param data
1357941b3855SMatthias Ringwald  */
1358045013feSMatthias Ringwald #define GAP_EVENT_ADVERTISING_REPORT                          0xE2
1359941b3855SMatthias Ringwald 
13601cfb383eSMatthias Ringwald  /**
13611cfb383eSMatthias Ringwald  * @format B132111JV
13621cfb383eSMatthias Ringwald  * @param bd_addr
13631cfb383eSMatthias Ringwald  * @param page_scan_repetition_mode
13641cfb383eSMatthias Ringwald  * @param class_of_device
13651cfb383eSMatthias Ringwald  * @param clock_offset
1366d79faacdSMatthias Ringwald  * @param rssi_available
13671cfb383eSMatthias Ringwald  * @param rssi
13681cfb383eSMatthias Ringwald  * @param name_available
13691cfb383eSMatthias Ringwald  * @param name_len
13701cfb383eSMatthias Ringwald  * @param name
13711cfb383eSMatthias Ringwald  */
13721cfb383eSMatthias Ringwald #define GAP_EVENT_INQUIRY_RESULT                              0xE3
13731cfb383eSMatthias Ringwald 
13741cfb383eSMatthias Ringwald /**
13751cfb383eSMatthias Ringwald  * @format 1
13761cfb383eSMatthias Ringwald  * @param status
13771cfb383eSMatthias Ringwald  */
13781cfb383eSMatthias Ringwald #define GAP_EVENT_INQUIRY_COMPLETE                            0xE4
13791cfb383eSMatthias Ringwald 
1380891b9fc2SMatthias Ringwald /**
1381891b9fc2SMatthias Ringwald  * @format H1
1382891b9fc2SMatthias Ringwald  * @param con_handle
1383891b9fc2SMatthias Ringwald  * @param rssi (signed integer -127..127)
1384891b9fc2SMatthias Ringwald  * @note Classic: rssi is in dB relative to Golden Receive Power Range
1385891b9fc2SMatthias Ringwald  * @note LE: rssi is absolute dBm
1386891b9fc2SMatthias Ringwald  */
1387891b9fc2SMatthias Ringwald #define GAP_EVENT_RSSI_MEASUREMENT                            0xE5
1388827b1c43SMatthias Ringwald 
1389e10ce426SMatthias Ringwald // Meta Events, see below for sub events
1390941b3855SMatthias Ringwald #define HCI_EVENT_HSP_META                                 0xE8
139139d235cbSMatthias Ringwald #define HCI_EVENT_HFP_META                                 0xE9
1392e10ce426SMatthias Ringwald #define HCI_EVENT_ANCS_META                                0xEA
1393beaf082cSMatthias Ringwald #define HCI_EVENT_AVDTP_META                               0xEB
1394decc740cSMilanka Ringwald #define HCI_EVENT_AVRCP_META                               0xEC
1395f1b34e8dSMatthias Ringwald #define HCI_EVENT_GOEP_META                                0xED
1396f1b34e8dSMatthias Ringwald #define HCI_EVENT_PBAP_META                                0xEE
1397dd148ddbSMatthias Ringwald #define HCI_EVENT_HID_META                                 0xEF
13983e3fbf3dSMilanka Ringwald #define HCI_EVENT_A2DP_META                                0xF0
1399a4bfc4feSMatthias Ringwald #define HCI_EVENT_HIDS_META                                0xF1
140028e59789SMilanka Ringwald #define HCI_EVENT_GATTSERVICE_META                         0xF2
1401ad58991cSMilanka Ringwald #define HCI_EVENT_BIP_META                                 0xF3
1402ad58991cSMilanka Ringwald #define HCI_EVENT_MAP_META                                 0xF4
14031fbe4564SMatthias Ringwald #define HCI_EVENT_MESH_META                                0xF5
140439d235cbSMatthias Ringwald 
1405e10ce426SMatthias Ringwald // Potential other meta groups
1406e10ce426SMatthias Ringwald // #define HCI_EVENT_BNEP_META                                0xxx
1407e10ce426SMatthias Ringwald // #define HCI_EVENT_GAP_META                                 0xxx
1408e10ce426SMatthias Ringwald // #define HCI_EVENT_GATT_META                                0xxx
1409e10ce426SMatthias Ringwald // #define HCI_EVENT_PAN_META                                 0xxx
1410e10ce426SMatthias Ringwald // #define HCI_EVENT_SDP_META                                 0xxx
1411e10ce426SMatthias Ringwald // #define HCI_EVENT_SM_META                                  0xxx
141239d235cbSMatthias Ringwald 
1413d63c37a1SMatthias Ringwald 
1414d63c37a1SMatthias Ringwald /** HSP Subevent */
1415d63c37a1SMatthias Ringwald 
1416827b1c43SMatthias Ringwald /**
141799a10067SMatthias Ringwald  * @format 11
1418827b1c43SMatthias Ringwald  * @param subevent_code
1419827b1c43SMatthias Ringwald  * @param status 0 == OK
1420827b1c43SMatthias Ringwald  */
142199a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE             0x01
142299a10067SMatthias Ringwald 
142399a10067SMatthias Ringwald /**
142499a10067SMatthias Ringwald  * @format 11
142599a10067SMatthias Ringwald  * @param subevent_code
142699a10067SMatthias Ringwald  * @param status 0 == OK
142799a10067SMatthias Ringwald  */
142899a10067SMatthias Ringwald #define HSP_SUBEVENT_RFCOMM_DISCONNECTION_COMPLETE           0x02
142999a10067SMatthias Ringwald 
143099a10067SMatthias Ringwald 
143199a10067SMatthias Ringwald /**
143262c468cbSMatthias Ringwald  * @format 11H
143399a10067SMatthias Ringwald  * @param subevent_code
143499a10067SMatthias Ringwald  * @param status 0 == OK
143562c468cbSMatthias Ringwald  * @param handle
143699a10067SMatthias Ringwald  */
143799a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE             0x03
1438827b1c43SMatthias Ringwald 
1439827b1c43SMatthias Ringwald /**
1440827b1c43SMatthias Ringwald  * @format 11
1441827b1c43SMatthias Ringwald  * @param subevent_code
1442827b1c43SMatthias Ringwald  * @param status 0 == OK
1443827b1c43SMatthias Ringwald  */
144499a10067SMatthias Ringwald #define HSP_SUBEVENT_AUDIO_DISCONNECTION_COMPLETE          0x04
1445827b1c43SMatthias Ringwald 
1446827b1c43SMatthias Ringwald /**
1447827b1c43SMatthias Ringwald  * @format 1
1448827b1c43SMatthias Ringwald  * @param subevent_code
1449827b1c43SMatthias Ringwald  */
145099a10067SMatthias Ringwald #define HSP_SUBEVENT_RING                                  0x05
1451827b1c43SMatthias Ringwald 
1452827b1c43SMatthias Ringwald /**
1453827b1c43SMatthias Ringwald  * @format 11
1454827b1c43SMatthias Ringwald  * @param subevent_code
1455827b1c43SMatthias Ringwald  * @param gain Valid range: [0,15]
1456827b1c43SMatthias Ringwald  */
145799a10067SMatthias Ringwald #define HSP_SUBEVENT_MICROPHONE_GAIN_CHANGED               0x06
1458827b1c43SMatthias Ringwald 
1459827b1c43SMatthias Ringwald /**
1460827b1c43SMatthias Ringwald  * @format 11
1461827b1c43SMatthias Ringwald  * @param subevent_code
1462827b1c43SMatthias Ringwald  * @param gain Valid range: [0,15]
1463827b1c43SMatthias Ringwald  */
146499a10067SMatthias Ringwald #define HSP_SUBEVENT_SPEAKER_GAIN_CHANGED                  0x07
1465827b1c43SMatthias Ringwald 
1466827b1c43SMatthias Ringwald /**
1467827b1c43SMatthias Ringwald  * @format 1JV
1468827b1c43SMatthias Ringwald  * @param subevent_code
1469827b1c43SMatthias Ringwald  * @param value_length
1470827b1c43SMatthias Ringwald  * @param value
1471827b1c43SMatthias Ringwald  */
147299a10067SMatthias Ringwald #define HSP_SUBEVENT_HS_COMMAND                            0x08
1473827b1c43SMatthias Ringwald 
1474827b1c43SMatthias Ringwald /**
1475827b1c43SMatthias Ringwald  * @format 1JV
1476827b1c43SMatthias Ringwald  * @param subevent_code
1477827b1c43SMatthias Ringwald  * @param value_length
1478827b1c43SMatthias Ringwald  * @param value
1479827b1c43SMatthias Ringwald  */
148099a10067SMatthias Ringwald #define HSP_SUBEVENT_AG_INDICATION                         0x09
1481827b1c43SMatthias Ringwald 
1482941b3855SMatthias Ringwald 
1483d63c37a1SMatthias Ringwald /** HFP Subevent */
1484941b3855SMatthias Ringwald 
1485d63c37a1SMatthias Ringwald /**
1486a23045e2SMilanka Ringwald  * @format 11HB
1487d63c37a1SMatthias Ringwald  * @param subevent_code
1488d63c37a1SMatthias Ringwald  * @param status 0 == OK
1489a0653c3bSMilanka Ringwald  * @param con_handle
14906a7f44bdSMilanka Ringwald  * @param bd_addr
1491d63c37a1SMatthias Ringwald  */
1492941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED  0x01
1493d63c37a1SMatthias Ringwald 
1494d63c37a1SMatthias Ringwald /**
1495d63c37a1SMatthias Ringwald  * @format 1
1496d63c37a1SMatthias Ringwald  * @param subevent_code
1497d63c37a1SMatthias Ringwald  */
1498941b3855SMatthias Ringwald #define HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_RELEASED     0x02
1499d63c37a1SMatthias Ringwald 
1500d63c37a1SMatthias Ringwald /**
1501a23045e2SMilanka Ringwald  * @format 11HB1
1502d63c37a1SMatthias Ringwald  * @param subevent_code
1503d63c37a1SMatthias Ringwald  * @param status 0 == OK
15046ff51cfdSMatthias Ringwald  * @param handle
15056a7f44bdSMilanka Ringwald  * @param bd_addr
1506d0c4aea6SMilanka Ringwald  * @param negotiated_codec
1507d63c37a1SMatthias Ringwald  */
1508941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED          0x03
1509d63c37a1SMatthias Ringwald 
1510d63c37a1SMatthias Ringwald /**
1511d63c37a1SMatthias Ringwald  * @format 1
1512d63c37a1SMatthias Ringwald  * @param subevent_code
1513d63c37a1SMatthias Ringwald  */
1514941b3855SMatthias Ringwald #define HFP_SUBEVENT_AUDIO_CONNECTION_RELEASED             0x04
1515d63c37a1SMatthias Ringwald 
1516d63c37a1SMatthias Ringwald /**
1517d63c37a1SMatthias Ringwald  * @format 11
1518d63c37a1SMatthias Ringwald  * @param subevent_code
1519d63c37a1SMatthias Ringwald  * @param status 0 == OK
1520d63c37a1SMatthias Ringwald  */
1521941b3855SMatthias Ringwald #define HFP_SUBEVENT_COMPLETE                              0x05
1522d63c37a1SMatthias Ringwald 
1523d63c37a1SMatthias Ringwald /**
1524c741b032SMilanka Ringwald  * @format 11111111T
1525d63c37a1SMatthias Ringwald  * @param subevent_code
1526d63c37a1SMatthias Ringwald  * @param indicator_index
1527d63c37a1SMatthias Ringwald  * @param indicator_status
1528c741b032SMilanka Ringwald  * @param indicator_min_range
1529c741b032SMilanka Ringwald  * @param indicator_max_range
1530c741b032SMilanka Ringwald  * @param indicator_mandatory
1531c741b032SMilanka Ringwald  * @param indicator_enabled
1532c741b032SMilanka Ringwald  * @param indicator_status_changed
1533d63c37a1SMatthias Ringwald  * @param indicator_name
1534d63c37a1SMatthias Ringwald  */
1535941b3855SMatthias Ringwald #define HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED           0x06
1536d63c37a1SMatthias Ringwald 
1537d63c37a1SMatthias Ringwald /**
15382c737695SMatthias Ringwald  * @format 111T
1539d63c37a1SMatthias Ringwald  * @param subevent_code
1540d63c37a1SMatthias Ringwald  * @param network_operator_mode
1541d63c37a1SMatthias Ringwald  * @param network_operator_format
1542d63c37a1SMatthias Ringwald  * @param network_operator_name
1543d63c37a1SMatthias Ringwald  */
1544941b3855SMatthias Ringwald #define HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED              0x07
1545d63c37a1SMatthias Ringwald 
1546d63c37a1SMatthias Ringwald /**
1547d63c37a1SMatthias Ringwald  * @format 11
1548d63c37a1SMatthias Ringwald  * @param subevent_code
1549d63c37a1SMatthias Ringwald  * @param error
1550d63c37a1SMatthias Ringwald  */
1551941b3855SMatthias Ringwald #define HFP_SUBEVENT_EXTENDED_AUDIO_GATEWAY_ERROR             0x08
1552d63c37a1SMatthias Ringwald 
1553d63c37a1SMatthias Ringwald /**
1554d63c37a1SMatthias Ringwald  * @format 1
1555d63c37a1SMatthias Ringwald  * @param subevent_code
1556d63c37a1SMatthias Ringwald  */
1557aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_START_RINGINIG                           0x0A
1558d63c37a1SMatthias Ringwald 
1559d63c37a1SMatthias Ringwald /**
1560d63c37a1SMatthias Ringwald  * @format 1
1561d63c37a1SMatthias Ringwald  * @param subevent_code
1562d63c37a1SMatthias Ringwald  */
1563aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_STOP_RINGINIG                            0x0B
1564d63c37a1SMatthias Ringwald 
1565d63c37a1SMatthias Ringwald /**
1566d63c37a1SMatthias Ringwald  * @format 1
1567d63c37a1SMatthias Ringwald  * @param subevent_code
1568d63c37a1SMatthias Ringwald  */
1569aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_CALL_TERMINATED                          0x0C
1570d63c37a1SMatthias Ringwald 
1571d63c37a1SMatthias Ringwald /**
1572d63c37a1SMatthias Ringwald  * @format 1T
1573d63c37a1SMatthias Ringwald  * @param subevent_code
1574d63c37a1SMatthias Ringwald  * @param number
1575d63c37a1SMatthias Ringwald  */
1576aa4dd815SMatthias Ringwald #define HFP_SUBEVENT_PLACE_CALL_WITH_NUMBER                   0x0D
1577d63c37a1SMatthias Ringwald 
1578d63c37a1SMatthias Ringwald /**
1579d63c37a1SMatthias Ringwald  * @format 1
1580d63c37a1SMatthias Ringwald  * @param subevent_code
1581d63c37a1SMatthias Ringwald  */
1582d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ATTACH_NUMBER_TO_VOICE_TAG               0x0E
1583d63c37a1SMatthias Ringwald 
1584d63c37a1SMatthias Ringwald /**
1585d63c37a1SMatthias Ringwald  * @format 1T
1586d63c37a1SMatthias Ringwald  * @param subevent_code
1587d63c37a1SMatthias Ringwald  * @param number
1588d63c37a1SMatthias Ringwald  */
1589d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_NUMBER_FOR_VOICE_TAG                     0x0F
1590d63c37a1SMatthias Ringwald 
1591d63c37a1SMatthias Ringwald /**
1592d63c37a1SMatthias Ringwald  * @format 1T
1593d63c37a1SMatthias Ringwald  * @param subevent_code
1594d63c37a1SMatthias Ringwald  * @param dtmf code
1595d63c37a1SMatthias Ringwald  */
1596d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_TRANSMIT_DTMF_CODES                      0x10
1597d63c37a1SMatthias Ringwald 
1598d63c37a1SMatthias Ringwald /**
1599d63c37a1SMatthias Ringwald  * @format 1
1600d63c37a1SMatthias Ringwald  * @param subevent_code
1601d63c37a1SMatthias Ringwald  */
1602d63c37a1SMatthias Ringwald  #define HFP_SUBEVENT_CALL_ANSWERED                            0x11
1603d63c37a1SMatthias Ringwald 
1604d63c37a1SMatthias Ringwald /**
1605d63c37a1SMatthias Ringwald  * @format 1
1606d63c37a1SMatthias Ringwald  * @param subevent_code
1607d63c37a1SMatthias Ringwald  */
1608d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CONFERENCE_CALL                          0x12
1609d63c37a1SMatthias Ringwald 
1610d63c37a1SMatthias Ringwald /**
1611d63c37a1SMatthias Ringwald  * @format 1
1612d63c37a1SMatthias Ringwald  * @param subevent_code
1613d63c37a1SMatthias Ringwald  */
1614d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RING                                     0x13
1615d63c37a1SMatthias Ringwald 
1616d63c37a1SMatthias Ringwald /**
1617b24771d9SMatthias Ringwald  * @format 11
1618d63c37a1SMatthias Ringwald  * @param subevent_code
1619d63c37a1SMatthias Ringwald  * @param gain
1620d63c37a1SMatthias Ringwald  */
1621d63c37a1SMatthias Ringwald  #define HFP_SUBEVENT_SPEAKER_VOLUME                           0x14
1622d63c37a1SMatthias Ringwald 
1623d63c37a1SMatthias Ringwald /**
1624b24771d9SMatthias Ringwald  * @format 11
1625d63c37a1SMatthias Ringwald  * @param subevent_code
1626d63c37a1SMatthias Ringwald  * @param gain
1627d63c37a1SMatthias Ringwald  */
1628d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_MICROPHONE_VOLUME                        0x15
1629d63c37a1SMatthias Ringwald 
1630d63c37a1SMatthias Ringwald /**
1631d63c37a1SMatthias Ringwald  * @format 11T
1632d63c37a1SMatthias Ringwald  * @param subevent_code
1633d63c37a1SMatthias Ringwald  * @param type
1634d63c37a1SMatthias Ringwald  * @param number
1635d63c37a1SMatthias Ringwald  */
1636d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_CALL_WAITING_NOTIFICATION                0x16
1637d63c37a1SMatthias Ringwald 
1638d63c37a1SMatthias Ringwald /**
1639d63c37a1SMatthias Ringwald  * @format 11T
1640d63c37a1SMatthias Ringwald  * @param subevent_code
1641d63c37a1SMatthias Ringwald  * @param type
1642d63c37a1SMatthias Ringwald  * @param number
1643d63c37a1SMatthias Ringwald  */
164489f1e358SMilanka Ringwald #define HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION 0x17
1645d63c37a1SMatthias Ringwald 
1646d63c37a1SMatthias Ringwald /**
16470aee97efSMilanka Ringwald  * @format 1111111T
1648d63c37a1SMatthias Ringwald  * @param subevent_code
1649d63c37a1SMatthias Ringwald  * @param clcc_idx
1650d63c37a1SMatthias Ringwald  * @param clcc_dir
1651d63c37a1SMatthias Ringwald  * @param clcc_status
16520aee97efSMilanka Ringwald  * @param clcc_mode
1653d63c37a1SMatthias Ringwald  * @param clcc_mpty
1654d63c37a1SMatthias Ringwald  * @param bnip_type
1655d63c37a1SMatthias Ringwald  * @param bnip_number
1656d63c37a1SMatthias Ringwald  */
1657d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_ENHANCED_CALL_STATUS                     0x18
1658d63c37a1SMatthias Ringwald 
1659d63c37a1SMatthias Ringwald /**
1660d63c37a1SMatthias Ringwald  * @format 111T
1661d63c37a1SMatthias Ringwald  * @param subevent_code
1662d63c37a1SMatthias Ringwald  * @param status
1663d63c37a1SMatthias Ringwald  * @param bnip_type
1664d63c37a1SMatthias Ringwald  * @param bnip_number
1665d63c37a1SMatthias Ringwald  */
1666d63c37a1SMatthias Ringwald  #define HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION            0x19
1667d63c37a1SMatthias Ringwald 
1668d63c37a1SMatthias Ringwald /**
1669d63c37a1SMatthias Ringwald  * @format 1T
1670d63c37a1SMatthias Ringwald  * @param subevent_code
1671d63c37a1SMatthias Ringwald  * @param value
1672d63c37a1SMatthias Ringwald  */
1673d63c37a1SMatthias Ringwald #define HFP_SUBEVENT_RESPONSE_AND_HOLD_STATUS                 0x1A
1674941b3855SMatthias Ringwald 
1675941b3855SMatthias Ringwald // ANCS Client
1676a4815874SMatthias Ringwald 
1677a4815874SMatthias Ringwald /**
1678e10ce426SMatthias Ringwald  * @format 1H
1679e10ce426SMatthias Ringwald  * @param subevent_code
1680a4815874SMatthias Ringwald  * @param handle
1681a4815874SMatthias Ringwald  */
1682e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_CONNECTED                              0xF0
1683a4815874SMatthias Ringwald 
1684a4815874SMatthias Ringwald /**
1685e10ce426SMatthias Ringwald  * @format 1H2T
1686e10ce426SMatthias Ringwald  * @param subevent_code
1687a4815874SMatthias Ringwald  * @param handle
1688a4815874SMatthias Ringwald  * @param attribute_id
1689a4815874SMatthias Ringwald  * @param text
1690a4815874SMatthias Ringwald  */
1691e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_NOTIFICATION                           0xF1
1692a4815874SMatthias Ringwald 
1693a4815874SMatthias Ringwald /**
1694e10ce426SMatthias Ringwald  * @format 1H
1695e10ce426SMatthias Ringwald  * @param subevent_code
1696a4815874SMatthias Ringwald  * @param handle
1697a4815874SMatthias Ringwald  */
1698e10ce426SMatthias Ringwald #define ANCS_SUBEVENT_CLIENT_DISCONNECTED                           0xF2
1699941b3855SMatthias Ringwald 
1700a23045e2SMilanka Ringwald 
1701a23045e2SMilanka Ringwald /** AVDTP Subevent */
1702a23045e2SMilanka Ringwald 
17033338b9aeSMilanka Ringwald /**
170463274943SMilanka Ringwald  * @format 12111
17052c708e8aSMilanka Ringwald  * @param subevent_code
1706f9bca1f3SMilanka Ringwald  * @param avdtp_cid
1707f1042e9dSMilanka Ringwald  * @param local_seid
170863274943SMilanka Ringwald  * @param is_initiator
17092c708e8aSMilanka Ringwald  * @param signal_identifier
17102c708e8aSMilanka Ringwald  */
17112c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_ACCEPT                     0x01
17122c708e8aSMilanka Ringwald 
17132c708e8aSMilanka Ringwald /**
171463274943SMilanka Ringwald  * @format 12111
17152c708e8aSMilanka Ringwald  * @param subevent_code
1716f9bca1f3SMilanka Ringwald  * @param avdtp_cid
17174ccacc40SMilanka Ringwald  * @param local_seid
171863274943SMilanka Ringwald  * @param is_initiator
17192c708e8aSMilanka Ringwald  * @param signal_identifier
17202c708e8aSMilanka Ringwald  */
17212c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_REJECT                     0x02
17222c708e8aSMilanka Ringwald 
17232c708e8aSMilanka Ringwald /**
172463274943SMilanka Ringwald  * @format 12111
17252c708e8aSMilanka Ringwald  * @param subevent_code
1726f9bca1f3SMilanka Ringwald  * @param avdtp_cid
17274ccacc40SMilanka Ringwald  * @param local_seid
172863274943SMilanka Ringwald  * @param is_initiator
17292c708e8aSMilanka Ringwald  * @param signal_identifier
17302c708e8aSMilanka Ringwald  */
17312c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT             0x03
17322c708e8aSMilanka Ringwald 
17332c708e8aSMilanka Ringwald /**
1734146fc0fbSMilanka Ringwald  * @format 12B21
17353338b9aeSMilanka Ringwald  * @param subevent_code
1736f9bca1f3SMilanka Ringwald  * @param avdtp_cid
17373338b9aeSMilanka Ringwald  * @param bd_addr
1738146fc0fbSMilanka Ringwald  * @param con_handle
17393338b9aeSMilanka Ringwald  * @param status 0 == OK
17403338b9aeSMilanka Ringwald  */
17412c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED     0x04
1742a23045e2SMilanka Ringwald 
17433338b9aeSMilanka Ringwald /**
17447050d2caSMilanka Ringwald  * @format 12
17453338b9aeSMilanka Ringwald  * @param subevent_code
1746f9bca1f3SMilanka Ringwald  * @param avdtp_cid
17473338b9aeSMilanka Ringwald  */
17482c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONNECTION_RELEASED        0x05
17493338b9aeSMilanka Ringwald 
17503338b9aeSMilanka Ringwald /**
17517050d2caSMilanka Ringwald  * @format 121111
17523338b9aeSMilanka Ringwald  * @param subevent_code
1753f9bca1f3SMilanka Ringwald  * @param avdtp_cid
17544ccacc40SMilanka Ringwald  * @param remote_seid        0x01 – 0x3E
17553338b9aeSMilanka Ringwald  * @param in_use      0-not in use, 1-in use
17563338b9aeSMilanka Ringwald  * @param media_type  0-audio, 1-video, 2-multimedia
17573338b9aeSMilanka Ringwald  * @param sep_type    0-source, 1-sink
17583338b9aeSMilanka Ringwald  */
17592c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_FOUND                  0x06
17603338b9aeSMilanka Ringwald 
17613338b9aeSMilanka Ringwald /**
17621159d239SMatthias Ringwald  * @format 12111111111
17633338b9aeSMilanka Ringwald  * @param subevent_code
1764f9bca1f3SMilanka Ringwald  * @param avdtp_cid
17654ccacc40SMilanka Ringwald  * @param remote_seid
17663338b9aeSMilanka Ringwald  * @param media_type
1767ea7bd529SMilanka Ringwald  * @param sampling_frequency_bitmap
1768ea7bd529SMilanka Ringwald  * @param channel_mode_bitmap
1769ea7bd529SMilanka Ringwald  * @param block_length_bitmap
1770ea7bd529SMilanka Ringwald  * @param subbands_bitmap
1771ea7bd529SMilanka Ringwald  * @param allocation_method_bitmap
17723338b9aeSMilanka Ringwald  * @param min_bitpool_value
17733338b9aeSMilanka Ringwald  * @param max_bitpool_value
17743338b9aeSMilanka Ringwald  */
17752c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY          0x07
17763338b9aeSMilanka Ringwald 
17773338b9aeSMilanka Ringwald /**
17781159d239SMatthias Ringwald  * @format 12112LV
17793338b9aeSMilanka Ringwald  * @param subevent_code
1780f9bca1f3SMilanka Ringwald  * @param avdtp_cid
17814ccacc40SMilanka Ringwald  * @param remote_seid
17823338b9aeSMilanka Ringwald  * @param media_type
17833338b9aeSMilanka Ringwald  * @param media_codec_type
17843338b9aeSMilanka Ringwald  * @param media_codec_information_len
17853338b9aeSMilanka Ringwald  * @param media_codec_information
17863338b9aeSMilanka Ringwald  */
17872c708e8aSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY        0x08
1788a23045e2SMilanka Ringwald 
178967ae582dSMilanka Ringwald 
179067ae582dSMilanka Ringwald /**
17911159d239SMatthias Ringwald  * @format 121
179267ae582dSMilanka Ringwald  * @param subevent_code
179367ae582dSMilanka Ringwald  * @param avdtp_cid
179467ae582dSMilanka Ringwald  * @param remote_seid
179567ae582dSMilanka Ringwald  */
179667ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY        0x09
179767ae582dSMilanka Ringwald 
179867ae582dSMilanka Ringwald 
179967ae582dSMilanka Ringwald /**
18001159d239SMatthias Ringwald  * @format 121
180167ae582dSMilanka Ringwald  * @param subevent_code
180267ae582dSMilanka Ringwald  * @param avdtp_cid
180367ae582dSMilanka Ringwald  * @param remote_seid
180467ae582dSMilanka Ringwald  */
180567ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY        0x0A
180667ae582dSMilanka Ringwald 
180767ae582dSMilanka Ringwald 
180867ae582dSMilanka Ringwald /**
18091159d239SMatthias Ringwald  * @format 121111
181067ae582dSMilanka Ringwald  * @param subevent_code
181167ae582dSMilanka Ringwald  * @param avdtp_cid
181267ae582dSMilanka Ringwald  * @param remote_seid
181367ae582dSMilanka Ringwald  * @param recovery_type
181467ae582dSMilanka Ringwald  * @param maximum_recovery_window_size
181567ae582dSMilanka Ringwald  * @param maximum_number_media_packets
181667ae582dSMilanka Ringwald  */
181767ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY        0x0B
181867ae582dSMilanka Ringwald 
181967ae582dSMilanka Ringwald 
182067ae582dSMilanka Ringwald /**
18211159d239SMatthias Ringwald  * @format 1212LV
182267ae582dSMilanka Ringwald  * @param subevent_code
182367ae582dSMilanka Ringwald  * @param avdtp_cid
182467ae582dSMilanka Ringwald  * @param remote_seid
182567ae582dSMilanka Ringwald  * @param cp_type
182667ae582dSMilanka Ringwald  * @param cp_type_value_len
182767ae582dSMilanka Ringwald  * @param cp_type_value
182867ae582dSMilanka Ringwald  */
182967ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY        0x0C
183067ae582dSMilanka Ringwald 
183167ae582dSMilanka Ringwald 
183267ae582dSMilanka Ringwald /**
18331159d239SMatthias Ringwald  * @format 12111111111
183467ae582dSMilanka Ringwald  * @param subevent_code
183567ae582dSMilanka Ringwald  * @param avdtp_cid
183667ae582dSMilanka Ringwald  * @param remote_seid
183767ae582dSMilanka Ringwald  * @param fragmentation
183867ae582dSMilanka Ringwald  * @param transport_identifiers_num
183967ae582dSMilanka Ringwald  * @param transport_session_identifier_1
184067ae582dSMilanka Ringwald  * @param transport_session_identifier_2
184167ae582dSMilanka Ringwald  * @param transport_session_identifier_3
184267ae582dSMilanka Ringwald  * @param tcid_1
184367ae582dSMilanka Ringwald  * @param tcid_2
184467ae582dSMilanka Ringwald  * @param tcid_3
184567ae582dSMilanka Ringwald  */
184667ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY        0x0D
184767ae582dSMilanka Ringwald 
184867ae582dSMilanka Ringwald 
184967ae582dSMilanka Ringwald /**
18501159d239SMatthias Ringwald  * @format 121
185167ae582dSMilanka Ringwald  * @param subevent_code
185267ae582dSMilanka Ringwald  * @param avdtp_cid
185367ae582dSMilanka Ringwald  * @param remote_seid
185467ae582dSMilanka Ringwald  */
185567ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY        0x0E
185667ae582dSMilanka Ringwald 
185767ae582dSMilanka Ringwald 
185867ae582dSMilanka Ringwald /**
18591159d239SMatthias Ringwald  * @format 121111
186067ae582dSMilanka Ringwald  * @param subevent_code
186167ae582dSMilanka Ringwald  * @param avdtp_cid
186267ae582dSMilanka Ringwald  * @param remote_seid
186367ae582dSMilanka Ringwald  * @param back_ch
186467ae582dSMilanka Ringwald  * @param media
186567ae582dSMilanka Ringwald  * @param recovery
186667ae582dSMilanka Ringwald  */
186767ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY        0x0F
186867ae582dSMilanka Ringwald 
186967ae582dSMilanka Ringwald 
1870ea7bd529SMilanka Ringwald /**
18717050d2caSMilanka Ringwald  * @format 12111121111111
1872ea7bd529SMilanka Ringwald  * @param subevent_code
1873f9bca1f3SMilanka Ringwald  * @param avdtp_cid
18744ccacc40SMilanka Ringwald  * @param local_seid
18754ccacc40SMilanka Ringwald  * @param remote_seid
1876ea7bd529SMilanka Ringwald  * @param reconfigure
1877ea7bd529SMilanka Ringwald  * @param media_type
1878ea7bd529SMilanka Ringwald  * @param sampling_frequency
1879ea7bd529SMilanka Ringwald  * @param channel_mode
1880ea7bd529SMilanka Ringwald  * @param num_channels
1881ea7bd529SMilanka Ringwald  * @param block_length
1882ea7bd529SMilanka Ringwald  * @param subbands
1883ea7bd529SMilanka Ringwald  * @param allocation_method
1884ea7bd529SMilanka Ringwald  * @param min_bitpool_value
1885ea7bd529SMilanka Ringwald  * @param max_bitpool_value
1886ea7bd529SMilanka Ringwald  */
188767ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION        0x10
1888ea7bd529SMilanka Ringwald 
1889ea7bd529SMilanka Ringwald /**
18907050d2caSMilanka Ringwald  * @format 1211112LV
1891ea7bd529SMilanka Ringwald  * @param subevent_code
1892f9bca1f3SMilanka Ringwald  * @param avdtp_cid
18934ccacc40SMilanka Ringwald  * @param local_seid
18944ccacc40SMilanka Ringwald  * @param remote_seid
1895ea7bd529SMilanka Ringwald  * @param reconfigure
1896ea7bd529SMilanka Ringwald  * @param media_type
1897ea7bd529SMilanka Ringwald  * @param media_codec_type
1898ea7bd529SMilanka Ringwald  * @param media_codec_information_len
1899ea7bd529SMilanka Ringwald  * @param media_codec_information
1900ea7bd529SMilanka Ringwald  */
190167ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION        0x11
1902decc740cSMilanka Ringwald 
190385a0c7cdSMilanka Ringwald /**
1904ef5ad9d6SMilanka Ringwald  * @format 12B111
190585a0c7cdSMilanka Ringwald  * @param subevent_code
1906f9bca1f3SMilanka Ringwald  * @param avdtp_cid
1907ef5ad9d6SMilanka Ringwald  * @param bd_addr
19084ccacc40SMilanka Ringwald  * @param local_seid
19094ccacc40SMilanka Ringwald  * @param remote_seid
191085a0c7cdSMilanka Ringwald  * @param status 0 == OK
191185a0c7cdSMilanka Ringwald  */
191267ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED     0x12
191385a0c7cdSMilanka Ringwald 
191485a0c7cdSMilanka Ringwald /**
191534b22aacSMilanka Ringwald  * @format 121
191685a0c7cdSMilanka Ringwald  * @param subevent_code
1917f9bca1f3SMilanka Ringwald  * @param avdtp_cid
191834b22aacSMilanka Ringwald  * @param local_seid
191985a0c7cdSMilanka Ringwald  */
192067ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED        0x13
192185a0c7cdSMilanka Ringwald 
1922f7103c90SMilanka Ringwald /**
19237050d2caSMilanka Ringwald  * @format 1212
1924f7103c90SMilanka Ringwald  * @param subevent_code
1925f9bca1f3SMilanka Ringwald  * @param avdtp_cid
19264ccacc40SMilanka Ringwald  * @param local_seid
1927a04ed5e9SMilanka Ringwald  * @param sequence_number
1928f7103c90SMilanka Ringwald  */
192967ae582dSMilanka Ringwald #define AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW   0x14
193085a0c7cdSMilanka Ringwald 
1931578eda3eSMilanka Ringwald /**
19321159d239SMatthias Ringwald  * @format 121
1933578eda3eSMilanka Ringwald  * @param subevent_code
1934578eda3eSMilanka Ringwald  * @param avdtp_cid
1935578eda3eSMilanka Ringwald  * @param remote_seid
1936578eda3eSMilanka Ringwald  */
19370f5bb594SMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE           0x15
1938578eda3eSMilanka Ringwald 
1939578eda3eSMilanka Ringwald 
1940c0491de3SMilanka Ringwald /**
1941c0491de3SMilanka Ringwald  * @format 12
1942c0491de3SMilanka Ringwald  * @param subevent_code
1943c0491de3SMilanka Ringwald  * @param avdtp_cid
1944c0491de3SMilanka Ringwald  */
1945c0491de3SMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_SEP_DICOVERY_DONE           0x16
1946c0491de3SMilanka Ringwald 
1947ff6bc02cSMilanka Ringwald /**
1948ff6bc02cSMilanka Ringwald  * @format 1212
1949ff6bc02cSMilanka Ringwald  * @param subevent_code
1950ff6bc02cSMilanka Ringwald  * @param avdtp_cid
1951ff6bc02cSMilanka Ringwald  * @param local_seid
1952ff6bc02cSMilanka Ringwald  * @param delay_100us
1953ff6bc02cSMilanka Ringwald  */
1954ff6bc02cSMilanka Ringwald #define AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT               0x17
1955decc740cSMilanka Ringwald 
195646e6b063SMilanka Ringwald /** A2DP Subevent */
19577050d2caSMilanka Ringwald /* Stream goes through following states:
19587050d2caSMilanka Ringwald  * - OPEN         - indicated with A2DP_SUBEVENT_STREAM_ESTABLISHED event
19597050d2caSMilanka Ringwald  * - START        - indicated with A2DP_SUBEVENT_STREAM_STARTED event
19607050d2caSMilanka Ringwald  * - SUSPEND      - indicated with A2DP_SUBEVENT_STREAM_SUSPENDED event
19617050d2caSMilanka Ringwald  * - ABORT/STOP   - indicated with A2DP_SUBEVENT_STREAM_RELEASED event
19627050d2caSMilanka Ringwald 
19637050d2caSMilanka Ringwald  OPEN state will be followed by ABORT/STOP. Stream is ready but media transfer is not started.
19647050d2caSMilanka Ringwald  START can come only after the stream is OPENED, and indicates that media transfer is started.
19657050d2caSMilanka Ringwald  SUSPEND is optional, it pauses the stream.
19667050d2caSMilanka Ringwald  */
196746e6b063SMilanka Ringwald 
196846e6b063SMilanka Ringwald /**
19697050d2caSMilanka Ringwald  * @format 121            Sent only by A2DP source.
19707050d2caSMilanka Ringwald  * @param subevent_code
1971f1042e9dSMilanka Ringwald  * @param a2dp_cid
19727050d2caSMilanka Ringwald  * @param local_seid
19737050d2caSMilanka Ringwald  */
19747050d2caSMilanka Ringwald #define A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW         0x01
19757050d2caSMilanka Ringwald 
19767050d2caSMilanka Ringwald /**
1977f1042e9dSMilanka Ringwald  * @format 12111121111111
1978f1042e9dSMilanka Ringwald  * @param subevent_code
1979f1042e9dSMilanka Ringwald  * @param a2dp_cid
1980f1042e9dSMilanka Ringwald  * @param int_seid
1981f1042e9dSMilanka Ringwald  * @param acp_seid
1982f1042e9dSMilanka Ringwald  * @param reconfigure
1983f1042e9dSMilanka Ringwald  * @param media_type
1984f1042e9dSMilanka Ringwald  * @param sampling_frequency
1985f1042e9dSMilanka Ringwald  * @param channel_mode
1986f1042e9dSMilanka Ringwald  * @param num_channels
1987f1042e9dSMilanka Ringwald  * @param block_length
1988f1042e9dSMilanka Ringwald  * @param subbands
1989f1042e9dSMilanka Ringwald  * @param allocation_method
1990f1042e9dSMilanka Ringwald  * @param min_bitpool_value
1991f1042e9dSMilanka Ringwald  * @param max_bitpool_value
1992f1042e9dSMilanka Ringwald  */
1993f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION      0x02
1994f1042e9dSMilanka Ringwald 
1995f1042e9dSMilanka Ringwald /**
1996f1042e9dSMilanka Ringwald  * @format 1211112LV
1997f1042e9dSMilanka Ringwald  * @param subevent_code
1998f1042e9dSMilanka Ringwald  * @param a2dp_cid
1999f1042e9dSMilanka Ringwald  * @param int_seid
2000f1042e9dSMilanka Ringwald  * @param acp_seid
2001f1042e9dSMilanka Ringwald  * @param reconfigure
2002f1042e9dSMilanka Ringwald  * @param media_type
2003f1042e9dSMilanka Ringwald  * @param media_codec_type
2004f1042e9dSMilanka Ringwald  * @param media_codec_information_len
2005f1042e9dSMilanka Ringwald  * @param media_codec_information
2006f1042e9dSMilanka Ringwald  */
2007f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION    0x03
2008f1042e9dSMilanka Ringwald 
2009f1042e9dSMilanka Ringwald /**
2010ef5ad9d6SMilanka Ringwald  * @format 12B111          Stream is opened byt not started.
201146e6b063SMilanka Ringwald  * @param subevent_code
201246e6b063SMilanka Ringwald  * @param a2dp_cid
2013ef5ad9d6SMilanka Ringwald  * @param bd_addr
201446e6b063SMilanka Ringwald  * @param local_seid
201546e6b063SMilanka Ringwald  * @param remote_seid
201646e6b063SMilanka Ringwald  * @param status
201746e6b063SMilanka Ringwald  */
2018f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_ESTABLISHED                           0x04
201946e6b063SMilanka Ringwald 
2020a42de583SMilanka Ringwald /**
202134b22aacSMilanka Ringwald  * @format 121            Indicates that media transfer is started.
2022a42de583SMilanka Ringwald  * @param subevent_code
202346e6b063SMilanka Ringwald  * @param a2dp_cid
202446e6b063SMilanka Ringwald  * @param local_seid
2025a42de583SMilanka Ringwald  */
2026f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_STARTED                               0x05
202746e6b063SMilanka Ringwald 
202846e6b063SMilanka Ringwald /**
202934b22aacSMilanka Ringwald  * @format 121           Stream is paused.
203046e6b063SMilanka Ringwald  * @param subevent_code
203146e6b063SMilanka Ringwald  * @param a2dp_cid
203246e6b063SMilanka Ringwald  * @param local_seid
203346e6b063SMilanka Ringwald  */
2034f1042e9dSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_SUSPENDED                              0x06
2035a42de583SMilanka Ringwald 
2036a42de583SMilanka Ringwald /**
2037133bececSMilanka Ringwald  * @format 121           Stream is stoped or aborted.
2038133bececSMilanka Ringwald  * @param subevent_code
2039133bececSMilanka Ringwald  * @param a2dp_cid
2040133bececSMilanka Ringwald  * @param local_seid
2041133bececSMilanka Ringwald  */
2042133bececSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_STOPPED                                0x07
2043133bececSMilanka Ringwald 
2044133bececSMilanka Ringwald /**
204534b22aacSMilanka Ringwald  * @format 121            Stream is released.
204646e6b063SMilanka Ringwald  * @param subevent_code
2047f1042e9dSMilanka Ringwald  * @param a2dp_cid
204846e6b063SMilanka Ringwald  * @param local_seid
204946e6b063SMilanka Ringwald  */
2050133bececSMilanka Ringwald #define A2DP_SUBEVENT_STREAM_RELEASED                               0x08
2051ba155c22SMilanka Ringwald 
205234b22aacSMilanka Ringwald /**
205334b22aacSMilanka Ringwald  * @format 1211
205434b22aacSMilanka Ringwald  * @param subevent_code
205534b22aacSMilanka Ringwald  * @param a2dp_cid
205634b22aacSMilanka Ringwald  * @param local_seid
205734b22aacSMilanka Ringwald  * @param signal_identifier
205834b22aacSMilanka Ringwald  */
2059133bececSMilanka Ringwald #define A2DP_SUBEVENT_COMMAND_ACCEPTED                              0x09
20607050d2caSMilanka Ringwald 
206134b22aacSMilanka Ringwald /**
206234b22aacSMilanka Ringwald  * @format 1211
206334b22aacSMilanka Ringwald  * @param subevent_code
206434b22aacSMilanka Ringwald  * @param a2dp_cid
206534b22aacSMilanka Ringwald  * @param local_seid
206634b22aacSMilanka Ringwald  * @param signal_identifier
206734b22aacSMilanka Ringwald  */
2068133bececSMilanka Ringwald #define A2DP_SUBEVENT_COMMAND_REJECTED                              0x0A
20697050d2caSMilanka Ringwald 
20705448c259SMilanka Ringwald /**
2071146fc0fbSMilanka Ringwald  * @format 12B21
20725448c259SMilanka Ringwald  * @param subevent_code
20735448c259SMilanka Ringwald  * @param a2dp_cid
20745448c259SMilanka Ringwald  * @param bd_addr
2075146fc0fbSMilanka Ringwald  * @param con_handle
207663331bf4SMilanka Ringwald  * @param status 0 == OK
20775448c259SMilanka Ringwald  */
207863331bf4SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED              0x0B
20795448c259SMilanka Ringwald 
208046c48853SMilanka Ringwald /**
2081a466d508SMilanka Ringwald  * @format 12            Signaling channel is released.
208246c48853SMilanka Ringwald  * @param subevent_code
208346c48853SMilanka Ringwald  * @param a2dp_cid
208446c48853SMilanka Ringwald  */
2085133bececSMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CONNECTION_RELEASED                  0x0C
208646c48853SMilanka Ringwald 
2087b8dffb25SMatthias Ringwald /**
2088b8dffb25SMatthias Ringwald  * @format 1211          Stream was reconfigured
2089b8dffb25SMatthias Ringwald  * @param subevent_code
2090b8dffb25SMatthias Ringwald  * @param a2dp_cid
2091b8dffb25SMatthias Ringwald  * @param local_seid
2092b8dffb25SMatthias Ringwald  * @param status
2093b8dffb25SMatthias Ringwald  */
2094b8dffb25SMatthias Ringwald #define A2DP_SUBEVENT_STREAM_RECONFIGURED                            0x0D
209546c48853SMilanka Ringwald 
2096ff6bc02cSMilanka Ringwald /**
20970f5bb594SMilanka Ringwald  * @format 1211
20980f5bb594SMilanka Ringwald  * @param subevent_code
20990f5bb594SMilanka Ringwald  * @param avdtp_cid
21000f5bb594SMilanka Ringwald  * @param local_seid
21010f5bb594SMilanka Ringwald  * @param remote_seid
21020f5bb594SMilanka Ringwald  */
21030f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY           0x0E
21040f5bb594SMilanka Ringwald 
21050f5bb594SMilanka Ringwald 
21060f5bb594SMilanka Ringwald /**
2107ff6bc02cSMilanka Ringwald  * @format 1212
2108ff6bc02cSMilanka Ringwald  * @param subevent_code
2109ff6bc02cSMilanka Ringwald  * @param avdtp_cid
2110ff6bc02cSMilanka Ringwald  * @param local_seid
2111ff6bc02cSMilanka Ringwald  * @param delay_100us
2112ff6bc02cSMilanka Ringwald  */
21130f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_DELAY_REPORT                         0x0F
2114ff6bc02cSMilanka Ringwald 
21150f5bb594SMilanka Ringwald /**
21160f5bb594SMilanka Ringwald  * @format 1211
21170f5bb594SMilanka Ringwald  * @param subevent_code
21180f5bb594SMilanka Ringwald  * @param avdtp_cid
21190f5bb594SMilanka Ringwald  * @param local_seid
21200f5bb594SMilanka Ringwald  * @param remote_seid
21210f5bb594SMilanka Ringwald  */
21220f5bb594SMilanka Ringwald #define A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE                    0x10
2123ff6bc02cSMilanka Ringwald 
2124decc740cSMilanka Ringwald /** AVRCP Subevent */
2125decc740cSMilanka Ringwald 
2126decc740cSMilanka Ringwald /**
2127e7e98b60SMilanka Ringwald  * @format 1211
2128e7e98b60SMilanka Ringwald  * @param subevent_code
2129e7e98b60SMilanka Ringwald  * @param avrcp_cid
2130e7e98b60SMilanka Ringwald  * @param command_type
2131e7e98b60SMilanka Ringwald  * @param play_status
2132e7e98b60SMilanka Ringwald  */
2133e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED                         0x01
2134e7e98b60SMilanka Ringwald 
2135e7e98b60SMilanka Ringwald /**
2136e7e98b60SMilanka Ringwald  * @format 121
2137e7e98b60SMilanka Ringwald  * @param subevent_code
2138e7e98b60SMilanka Ringwald  * @param avrcp_cid
2139e7e98b60SMilanka Ringwald  * @param command_type
2140e7e98b60SMilanka Ringwald  */
2141e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED                                   0x02
2142e7e98b60SMilanka Ringwald 
2143e7e98b60SMilanka Ringwald /**
2144e7e98b60SMilanka Ringwald  * @format 121
2145e7e98b60SMilanka Ringwald  * @param subevent_code
2146e7e98b60SMilanka Ringwald  * @param avrcp_cid
2147e7e98b60SMilanka Ringwald  * @param command_type
2148e7e98b60SMilanka Ringwald  */
2149e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_END                         0x03
2150e7e98b60SMilanka Ringwald 
2151e7e98b60SMilanka Ringwald /**
2152e7e98b60SMilanka Ringwald  * @format 121
2153e7e98b60SMilanka Ringwald  * @param subevent_code
2154e7e98b60SMilanka Ringwald  * @param avrcp_cid
2155e7e98b60SMilanka Ringwald  * @param command_type
2156e7e98b60SMilanka Ringwald  */
2157e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_START                       0x04
2158e7e98b60SMilanka Ringwald 
2159e7e98b60SMilanka Ringwald /**
2160e7e98b60SMilanka Ringwald  * @format 1214
2161e7e98b60SMilanka Ringwald  * @param subevent_code
2162e7e98b60SMilanka Ringwald  * @param avrcp_cid
2163e7e98b60SMilanka Ringwald  * @param command_type
2164e7e98b60SMilanka Ringwald  * @param playback_position  If no track currently selected, then return 0xFFFFFFFF in the INTERIM response.
2165e7e98b60SMilanka Ringwald  */
2166e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_PLAYBACK_POS_CHANGED                      0x05
2167e7e98b60SMilanka Ringwald 
2168e7e98b60SMilanka Ringwald /**
2169e7e98b60SMilanka Ringwald  * @format 1211
2170e7e98b60SMilanka Ringwald  * @param subevent_code
2171e7e98b60SMilanka Ringwald  * @param avrcp_cid
2172e7e98b60SMilanka Ringwald  * @param command_type
2173e7e98b60SMilanka Ringwald  * @param battery_status  see avrcp_battery_status_t
2174e7e98b60SMilanka Ringwald  */
2175e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_BATT_STATUS_CHANGED                       0x06
2176e7e98b60SMilanka Ringwald 
2177e7e98b60SMilanka Ringwald /**
2178e7e98b60SMilanka Ringwald  * @format 1211
2179e7e98b60SMilanka Ringwald  * @param subevent_code
2180e7e98b60SMilanka Ringwald  * @param avrcp_cid
2181e7e98b60SMilanka Ringwald  * @param command_type
2182e7e98b60SMilanka Ringwald  * @param system_status  see avrcp_system_status_t
2183e7e98b60SMilanka Ringwald  */
2184e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_SYSTEM_STATUS_CHANGED                     0x07
2185e7e98b60SMilanka Ringwald 
2186e7e98b60SMilanka Ringwald 
2187e7e98b60SMilanka 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
2188e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_PLAYER_APPLICATION_SETTING_CHANGED        0x08
2189e7e98b60SMilanka Ringwald 
2190e7e98b60SMilanka Ringwald /**
2191e7e98b60SMilanka Ringwald  * @format 121
2192e7e98b60SMilanka Ringwald  * @param subevent_code
2193e7e98b60SMilanka Ringwald  * @param avrcp_cid
2194e7e98b60SMilanka Ringwald  * @param command_type
2195e7e98b60SMilanka Ringwald  */
2196e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED                     0x09
2197e7e98b60SMilanka Ringwald 
2198e7e98b60SMilanka Ringwald /**
2199e7e98b60SMilanka Ringwald  * @format 121
2200e7e98b60SMilanka Ringwald  * @param subevent_code
2201e7e98b60SMilanka Ringwald  * @param avrcp_cid
2202e7e98b60SMilanka Ringwald  * @param command_type
2203e7e98b60SMilanka Ringwald  */
2204e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED                       0x0A
2205e7e98b60SMilanka Ringwald 
2206e7e98b60SMilanka Ringwald // AVRCP_SUBEVENT_NOTIFICATION_EVENT_ADDRESSED_PLAYER_CHANGED = 0x0b,           -- The Addressed Player has been changed, see 6.9.2.
2207e7e98b60SMilanka Ringwald 
2208e7e98b60SMilanka Ringwald /**
2209e7e98b60SMilanka Ringwald  * @format 1212
2210e7e98b60SMilanka Ringwald  * @param subevent_code
2211e7e98b60SMilanka Ringwald  * @param avrcp_cid
2212e7e98b60SMilanka Ringwald  * @param command_type
2213e7e98b60SMilanka Ringwald  * @param uid_counter of the currently browsed player
2214e7e98b60SMilanka Ringwald  */
2215e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_EVENT_UIDS_CHANGED                              0x0C
2216e7e98b60SMilanka Ringwald 
2217e7e98b60SMilanka Ringwald /**
2218e7e98b60SMilanka Ringwald  * @format 1211
2219e7e98b60SMilanka Ringwald  * @param subevent_code
2220e7e98b60SMilanka Ringwald  * @param avrcp_cid
2221e7e98b60SMilanka Ringwald  * @param command_type
2222e7e98b60SMilanka Ringwald  * @param absolute_volume
2223e7e98b60SMilanka Ringwald  */
2224e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED                                  0x0D
2225e7e98b60SMilanka Ringwald 
2226e7e98b60SMilanka Ringwald 
2227e7e98b60SMilanka Ringwald /**
2228e7e98b60SMilanka Ringwald  * @format 1211
2229e7e98b60SMilanka Ringwald  * @param subevent_code
2230e7e98b60SMilanka Ringwald  * @param avrcp_cid
2231e7e98b60SMilanka Ringwald  * @param command_type
2232e7e98b60SMilanka Ringwald  * @param absolute_volume
2233e7e98b60SMilanka Ringwald  */
2234e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE                      0x10
2235e7e98b60SMilanka Ringwald 
2236e7e98b60SMilanka Ringwald /**
2237e7e98b60SMilanka Ringwald  * @format 1211
2238e7e98b60SMilanka Ringwald  * @param subevent_code
2239e7e98b60SMilanka Ringwald  * @param avrcp_cid
2240e7e98b60SMilanka Ringwald  * @param command_type
2241e7e98b60SMilanka Ringwald  * @param notification_id
2242e7e98b60SMilanka Ringwald  */
2243e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_ENABLE_NOTIFICATION_COMPLETE                       0x11
2244e7e98b60SMilanka Ringwald 
2245e7e98b60SMilanka Ringwald /**
22467dbc6cb8SMilanka Ringwald  * @format 112B2
2247decc740cSMilanka Ringwald  * @param subevent_code
22482a029560SMilanka Ringwald  * @param status 0 == OK
2249b193c45eSMilanka Ringwald  * @param avrcp_cid
22507dbc6cb8SMilanka Ringwald  * @param bd_addr
22517dbc6cb8SMilanka Ringwald  * @param con_handle
2252decc740cSMilanka Ringwald  */
2253e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_ESTABLISHED                           0x12
2254decc740cSMilanka Ringwald 
2255decc740cSMilanka Ringwald /**
2256b193c45eSMilanka Ringwald  * @format 12
2257decc740cSMilanka Ringwald  * @param subevent_code
2258b193c45eSMilanka Ringwald  * @param avrcp_cid
2259decc740cSMilanka Ringwald  */
2260e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_CONNECTION_RELEASED                              0x13
2261decc740cSMilanka Ringwald 
2262cd41da7eSMilanka Ringwald /**
2263b193c45eSMilanka Ringwald  * @format 12111
22642a029560SMilanka Ringwald  * @param subevent_code
2265b193c45eSMilanka Ringwald  * @param avrcp_cid
2266d3b6a85eSMatthias Ringwald  * @param command_type
22672a029560SMilanka Ringwald  * @param repeat_mode
22682a029560SMilanka Ringwald  * @param shuffle_mode
22692a029560SMilanka Ringwald  */
2270e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE                          0x14
2271cd41da7eSMilanka Ringwald 
22726eb7ba29SMilanka Ringwald /**
2273b193c45eSMilanka Ringwald  * @format 121441
22746eb7ba29SMilanka Ringwald  * @param subevent_code
2275b193c45eSMilanka Ringwald  * @param avrcp_cid
2276d3b6a85eSMatthias Ringwald  * @param command_type
22776eb7ba29SMilanka Ringwald  * @param song_length
22786eb7ba29SMilanka Ringwald  * @param song_position
22796eb7ba29SMilanka Ringwald  * @param play_status
22806eb7ba29SMilanka Ringwald  */
2281e7e98b60SMilanka Ringwald  #define AVRCP_SUBEVENT_PLAY_STATUS                                     0x15
22826eb7ba29SMilanka Ringwald 
22836eb7ba29SMilanka Ringwald /**
2284b193c45eSMilanka Ringwald  * @format 1211
22856eb7ba29SMilanka Ringwald  * @param subevent_code
2286b193c45eSMilanka Ringwald  * @param avrcp_cid
2287d3b6a85eSMatthias Ringwald  * @param command_type
22886eb7ba29SMilanka Ringwald  * @param operation_id
22896eb7ba29SMilanka Ringwald  */
2290e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_START                                    0x16
22916eb7ba29SMilanka Ringwald 
22926eb7ba29SMilanka Ringwald /**
2293b193c45eSMilanka Ringwald  * @format 1211
22946eb7ba29SMilanka Ringwald  * @param subevent_code
2295b193c45eSMilanka Ringwald  * @param avrcp_cid
2296d3b6a85eSMatthias Ringwald  * @param command_type
22976eb7ba29SMilanka Ringwald  * @param operation_id
22986eb7ba29SMilanka Ringwald  */
2299e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION_COMPLETE                                 0x17
23006eb7ba29SMilanka Ringwald 
23016eb7ba29SMilanka Ringwald /**
2302b193c45eSMilanka Ringwald  * @format 121
23036eb7ba29SMilanka Ringwald  * @param subevent_code
2304b193c45eSMilanka Ringwald  * @param avrcp_cid
2305d3b6a85eSMatthias Ringwald  * @param command_type
23066eb7ba29SMilanka Ringwald  */
2307e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE                   0x18
23086eb7ba29SMilanka Ringwald 
2309f1b34e8dSMatthias Ringwald /**
23104b338011SMilanka Ringwald  * @format 12
23114b338011SMilanka Ringwald  * @param subevent_code
23124b338011SMilanka Ringwald  * @param avrcp_cid
23134b338011SMilanka Ringwald  */
2314e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_COMPANY_IDS_QUERY                                    0x19
2315e0bbf3edSMilanka Ringwald 
2316e0bbf3edSMilanka Ringwald /**
2317e0bbf3edSMilanka Ringwald  * @format 12
2318e0bbf3edSMilanka Ringwald  * @param subevent_code
2319e0bbf3edSMilanka Ringwald  * @param avrcp_cid
2320e0bbf3edSMilanka Ringwald  */
2321e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_EVENT_IDS_QUERY                                      0x1A
2322c045af99SMilanka Ringwald 
2323c045af99SMilanka Ringwald /**
2324c045af99SMilanka Ringwald  * @format 12
2325c045af99SMilanka Ringwald  * @param subevent_code
2326c045af99SMilanka Ringwald  * @param avrcp_cid
2327c045af99SMilanka Ringwald  */
2328e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_PLAY_STATUS_QUERY                                    0x1B
23294b338011SMilanka Ringwald 
23304b338011SMilanka Ringwald /**
2331831d3fd5SMilanka Ringwald  * @format 12111
2332831d3fd5SMilanka Ringwald  * @param subevent_code
2333831d3fd5SMilanka Ringwald  * @param avrcp_cid
2334831d3fd5SMilanka Ringwald  * @param operation_id
2335831d3fd5SMilanka Ringwald  * @param operands_length
2336831d3fd5SMilanka Ringwald  * @param operand
2337831d3fd5SMilanka Ringwald  */
2338e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_OPERATION                                            0x1C
23391bf7a74fSMilanka Ringwald 
23401bf7a74fSMilanka Ringwald /**
23411bf7a74fSMilanka Ringwald  * @format 1211
23421bf7a74fSMilanka Ringwald  * @param subevent_code
23431bf7a74fSMilanka Ringwald  * @param avrcp_cid
23441bf7a74fSMilanka Ringwald  * @param command_type
23451bf7a74fSMilanka Ringwald  * @param track
23461bf7a74fSMilanka Ringwald  */
2347e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO                               0x1D
23481bf7a74fSMilanka Ringwald 
23491bf7a74fSMilanka Ringwald /**
23501bf7a74fSMilanka Ringwald  * @format 1211
23511bf7a74fSMilanka Ringwald  * @param subevent_code
23521bf7a74fSMilanka Ringwald  * @param avrcp_cid
23531bf7a74fSMilanka Ringwald  * @param command_type
23541bf7a74fSMilanka Ringwald  * @param total_tracks
23551bf7a74fSMilanka Ringwald  */
2356e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO                        0x1E
23571bf7a74fSMilanka Ringwald 
23581bf7a74fSMilanka Ringwald /**
23591bf7a74fSMilanka Ringwald  * @format 1214
23601bf7a74fSMilanka Ringwald  * @param subevent_code
23611bf7a74fSMilanka Ringwald  * @param avrcp_cid
23621bf7a74fSMilanka Ringwald  * @param command_type
23631bf7a74fSMilanka Ringwald  * @param song_length in ms
23641bf7a74fSMilanka Ringwald  */
2365e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO                      0x1F
23661bf7a74fSMilanka Ringwald 
23671bf7a74fSMilanka Ringwald /**
23681bf7a74fSMilanka Ringwald  * @format 121JV
23691bf7a74fSMilanka Ringwald  * @param subevent_code
23701bf7a74fSMilanka Ringwald  * @param avrcp_cid
23711bf7a74fSMilanka Ringwald  * @param command_type
23721bf7a74fSMilanka Ringwald  * @param value_len
23731bf7a74fSMilanka Ringwald  * @param value
23741bf7a74fSMilanka Ringwald  */
2375e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO                                 0x20
23761bf7a74fSMilanka Ringwald 
23771bf7a74fSMilanka Ringwald  /*
23781bf7a74fSMilanka Ringwald  * @format 121JV
23791bf7a74fSMilanka Ringwald  * @param subevent_code
23801bf7a74fSMilanka Ringwald  * @param avrcp_cid
23811bf7a74fSMilanka Ringwald  * @param command_type
23821bf7a74fSMilanka Ringwald  * @param value_len
23831bf7a74fSMilanka Ringwald  * @param value
23841bf7a74fSMilanka Ringwald  */
2385e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO                                0x21
23861bf7a74fSMilanka Ringwald 
23871bf7a74fSMilanka Ringwald  /*
23881bf7a74fSMilanka Ringwald  * @format 121JV
23891bf7a74fSMilanka Ringwald  * @param subevent_code
23901bf7a74fSMilanka Ringwald  * @param avrcp_cid
23911bf7a74fSMilanka Ringwald  * @param command_type
23921bf7a74fSMilanka Ringwald  * @param value_len
23931bf7a74fSMilanka Ringwald  * @param value
23941bf7a74fSMilanka Ringwald  */
2395e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO                                 0x22
23961bf7a74fSMilanka Ringwald 
23971bf7a74fSMilanka Ringwald  /*
23981bf7a74fSMilanka Ringwald  * @format 121JV
23991bf7a74fSMilanka Ringwald  * @param subevent_code
24001bf7a74fSMilanka Ringwald  * @param avrcp_cid
24011bf7a74fSMilanka Ringwald  * @param command_type
24021bf7a74fSMilanka Ringwald  * @param value_len
24031bf7a74fSMilanka Ringwald  * @param value
24041bf7a74fSMilanka Ringwald  */
2405e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO                                 0x23
24061bf7a74fSMilanka Ringwald 
24071bf7a74fSMilanka Ringwald /*
24081bf7a74fSMilanka Ringwald  * @format 1211
24091bf7a74fSMilanka Ringwald  * @param subevent_code
24101bf7a74fSMilanka Ringwald  * @param avrcp_cid
24111bf7a74fSMilanka Ringwald  * @param command_type
24121bf7a74fSMilanka Ringwald  * @param status
24131bf7a74fSMilanka Ringwald  */
2414e7e98b60SMilanka Ringwald #define AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE                                  0x24
24151bf7a74fSMilanka Ringwald 
2416c3fca900SMilanka Ringwald /**
24174f5eb797SMilanka Ringwald  * @format 1214
24184f5eb797SMilanka Ringwald  * @param subevent_code
24194f5eb797SMilanka Ringwald  * @param avrcp_cid
24204f5eb797SMilanka Ringwald  * @param command_type
24214f5eb797SMilanka Ringwald  * @param playback_position_ms
24224f5eb797SMilanka Ringwald  */
24234f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED                      0x25
24244f5eb797SMilanka Ringwald 
24254f5eb797SMilanka Ringwald /*
24264f5eb797SMilanka Ringwald  * @format 12111
24274f5eb797SMilanka Ringwald  * @param subevent_code
24284f5eb797SMilanka Ringwald  * @param avrcp_cid
24294f5eb797SMilanka Ringwald  * @param command_type
24304f5eb797SMilanka Ringwald  * @param status
24314f5eb797SMilanka Ringwald  * @param event_id
24324f5eb797SMilanka Ringwald  */
24334f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID                                0x26
24344f5eb797SMilanka Ringwald /*
24354f5eb797SMilanka Ringwald  * @format 1211
24364f5eb797SMilanka Ringwald  * @param subevent_code
24374f5eb797SMilanka Ringwald  * @param avrcp_cid
24384f5eb797SMilanka Ringwald  * @param command_type
24394f5eb797SMilanka Ringwald  * @param status
24404f5eb797SMilanka Ringwald  */
24414f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID_DONE                           0x27
24424f5eb797SMilanka Ringwald 
24434f5eb797SMilanka Ringwald /*
24444f5eb797SMilanka Ringwald  * @format 12113
24454f5eb797SMilanka Ringwald  * @param subevent_code
24464f5eb797SMilanka Ringwald  * @param avrcp_cid
24474f5eb797SMilanka Ringwald  * @param command_type
24484f5eb797SMilanka Ringwald  * @param status
24494f5eb797SMilanka Ringwald  * @param company_id
24504f5eb797SMilanka Ringwald  */
24514f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID                              0x28
24524f5eb797SMilanka Ringwald /*
24534f5eb797SMilanka Ringwald  * @format 1211
24544f5eb797SMilanka Ringwald  * @param subevent_code
24554f5eb797SMilanka Ringwald  * @param avrcp_cid
24564f5eb797SMilanka Ringwald  * @param command_type
24574f5eb797SMilanka Ringwald  * @param status
24584f5eb797SMilanka Ringwald  */
24594f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID_DONE                         0x29
24604f5eb797SMilanka Ringwald 
24614f5eb797SMilanka Ringwald 
24624f5eb797SMilanka Ringwald 
24634f5eb797SMilanka Ringwald /**
2464576a1127SMilanka Ringwald  * @format 1B2
2465576a1127SMilanka Ringwald  * @param subevent_code
2466576a1127SMilanka Ringwald  * @param bd_addr
2467576a1127SMilanka Ringwald  * @param browsing_cid
2468576a1127SMilanka Ringwald  */
24694f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION                          0x30
2470576a1127SMilanka Ringwald 
2471576a1127SMilanka Ringwald /**
2472c3fca900SMilanka Ringwald  * @format 11B2
2473c3fca900SMilanka Ringwald  * @param subevent_code
2474c3fca900SMilanka Ringwald  * @param status 0 == OK
2475c3fca900SMilanka Ringwald  * @param bd_addr
2476c3fca900SMilanka Ringwald  * @param browsing_cid
2477c3fca900SMilanka Ringwald  */
24784f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED                        0x31
2479c3fca900SMilanka Ringwald 
2480c3fca900SMilanka Ringwald /**
2481c3fca900SMilanka Ringwald  * @format 12
2482c3fca900SMilanka Ringwald  * @param subevent_code
2483c3fca900SMilanka Ringwald  * @param browsing_cid
2484c3fca900SMilanka Ringwald  */
24854f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_CONNECTION_RELEASED                           0x32
24864c954014SMilanka Ringwald 
24873d49a24eSMilanka Ringwald /**
2488be65baf4SMilanka Ringwald  * @format 12211
2489e30788a3SMilanka Ringwald  * @param subevent_code
2490e30788a3SMilanka Ringwald  * @param browsing_cid
2491be65baf4SMilanka Ringwald  * @param uid_counter
2492954cc391SMilanka Ringwald  * @param browsing_status
2493954cc391SMilanka Ringwald  * @param bluetooth_status
2494e30788a3SMilanka Ringwald  */
24954f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_DONE                                          0x33
2496e30788a3SMilanka Ringwald 
2497bd0f378aSMilanka Ringwald /**
2498bd0f378aSMilanka Ringwald  * @format 1214
2499bd0f378aSMilanka Ringwald  * @param subevent_code
2500bd0f378aSMilanka Ringwald  * @param browsing_cid
2501bd0f378aSMilanka Ringwald  * @param scope
2502bd0f378aSMilanka Ringwald  * @param attr_bitmap
2503bd0f378aSMilanka Ringwald  */
25044f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS                              0x34
2505bd0f378aSMilanka Ringwald 
2506bd0f378aSMilanka Ringwald /**
2507bd0f378aSMilanka Ringwald  * @format 121
2508bd0f378aSMilanka Ringwald  * @param subevent_code
2509bd0f378aSMilanka Ringwald  * @param browsing_cid
2510bd0f378aSMilanka Ringwald  * @param scope
2511bd0f378aSMilanka Ringwald  */
25124f5eb797SMilanka Ringwald #define AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS                           0x35
25136fa3dbf2SMilanka Ringwald 
25144f5eb797SMilanka Ringwald 
25156fa3dbf2SMilanka Ringwald 
2516e30788a3SMilanka Ringwald 
25174c954014SMilanka Ringwald /**
2518f1b34e8dSMatthias Ringwald  * @format 121BH1
2519f1b34e8dSMatthias Ringwald  * @param subevent_code
2520f1b34e8dSMatthias Ringwald  * @param goep_cid
2521f1b34e8dSMatthias Ringwald  * @param status
2522f1b34e8dSMatthias Ringwald  * @param bd_addr
2523f1b34e8dSMatthias Ringwald  * @param con_handle
2524f1b34e8dSMatthias Ringwald  * @param incoming
2525f1b34e8dSMatthias Ringwald  */
2526f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_OPENED                                    0x01
25276eb7ba29SMilanka Ringwald 
2528f1b34e8dSMatthias Ringwald /**
2529f1b34e8dSMatthias Ringwald  * @format 12
2530f1b34e8dSMatthias Ringwald  * @param subevent_code
2531f1b34e8dSMatthias Ringwald  * @param goep_cid
2532f1b34e8dSMatthias Ringwald */
2533f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CONNECTION_CLOSED                                    0x02
2534f1b34e8dSMatthias Ringwald 
2535f1b34e8dSMatthias Ringwald /**
2536f1b34e8dSMatthias Ringwald  * @format 12
2537f1b34e8dSMatthias Ringwald  * @param subevent_code
2538f1b34e8dSMatthias Ringwald  * @param goep_cid
2539f1b34e8dSMatthias Ringwald */
2540f1b34e8dSMatthias Ringwald #define GOEP_SUBEVENT_CAN_SEND_NOW                                         0x03
2541f1b34e8dSMatthias Ringwald 
2542f1b34e8dSMatthias Ringwald /**
2543f1b34e8dSMatthias Ringwald  * @format 121BH1
2544f1b34e8dSMatthias Ringwald  * @param subevent_code
2545f1b34e8dSMatthias Ringwald  * @param pbap_cid
2546f1b34e8dSMatthias Ringwald  * @param status
2547f1b34e8dSMatthias Ringwald  * @param bd_addr
2548f1b34e8dSMatthias Ringwald  * @param con_handle
2549f1b34e8dSMatthias Ringwald  * @param incoming
2550f1b34e8dSMatthias Ringwald  */
2551f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_OPENED                                    0x01
2552f1b34e8dSMatthias Ringwald 
2553f1b34e8dSMatthias Ringwald /**
2554f1b34e8dSMatthias Ringwald  * @format 12
2555f1b34e8dSMatthias Ringwald  * @param subevent_code
2556f1b34e8dSMatthias Ringwald  * @param goep_cid
2557f1b34e8dSMatthias Ringwald */
2558f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_CONNECTION_CLOSED                                    0x02
2559f1b34e8dSMatthias Ringwald 
2560f1b34e8dSMatthias Ringwald /**
2561f1b34e8dSMatthias Ringwald  * @format 121
2562f1b34e8dSMatthias Ringwald  * @param subevent_code
2563f1b34e8dSMatthias Ringwald  * @param goep_cid
2564f1b34e8dSMatthias Ringwald  * @param status
2565f1b34e8dSMatthias Ringwald  */
2566f1b34e8dSMatthias Ringwald #define PBAP_SUBEVENT_OPERATION_COMPLETED                                  0x03
25676eb7ba29SMilanka Ringwald 
2568fafbca75SMatthias Ringwald /**
2569fafbca75SMatthias Ringwald  * @format 1212
2570fafbca75SMatthias Ringwald  * @param subevent_code
2571fafbca75SMatthias Ringwald  * @param goep_cid
2572fafbca75SMatthias Ringwald  * @param status
2573fafbca75SMatthias Ringwald  * @param phoneboook_size
2574fafbca75SMatthias Ringwald  */
2575fafbca75SMatthias Ringwald #define PBAP_SUBEVENT_PHONEBOOK_SIZE                                       0x04
2576fafbca75SMatthias Ringwald 
2577c1bc0b8eSMatthias Ringwald /**
2578c1bc0b8eSMatthias Ringwald  * @format 1211
2579c1bc0b8eSMatthias Ringwald  * @param subevent_code
2580c1bc0b8eSMatthias Ringwald  * @param goep_cid
2581c1bc0b8eSMatthias Ringwald  * @param user_id_required
2582c1bc0b8eSMatthias Ringwald  * @param full_access
2583c1bc0b8eSMatthias Ringwald  */
2584c1bc0b8eSMatthias Ringwald #define PBAP_SUBEVENT_AUTHENTICATION_REQUEST                               0x05
2585c1bc0b8eSMatthias Ringwald 
2586ad514860SMatthias Ringwald /**
2587ad514860SMatthias Ringwald  * @format 12JVJV
2588ad514860SMatthias Ringwald  * @param subevent_code
2589ad514860SMatthias Ringwald  * @param goep_cid
2590ad514860SMatthias Ringwald  * @param name_len
2591ad514860SMatthias Ringwald  * @param name
2592ad514860SMatthias Ringwald  * @param handle_len
2593ad514860SMatthias Ringwald  * @param handle
2594ad514860SMatthias Ringwald  */
2595ad514860SMatthias Ringwald #define PBAP_SUBEVENT_CARD_RESULT                                          0x06
2596ad514860SMatthias Ringwald 
2597c1bc0b8eSMatthias Ringwald 
2598a4bfc4feSMatthias Ringwald // HID Meta Event Group
2599a4bfc4feSMatthias Ringwald 
2600dd148ddbSMatthias Ringwald /**
2601dd148ddbSMatthias Ringwald  * @format 121BH1
2602dd148ddbSMatthias Ringwald  * @param subevent_code
2603dd148ddbSMatthias Ringwald  * @param hid_cid
2604dd148ddbSMatthias Ringwald  * @param status
2605dd148ddbSMatthias Ringwald  * @param bd_addr
2606dd148ddbSMatthias Ringwald  * @param con_handle
2607dd148ddbSMatthias Ringwald  * @param incoming
2608dd148ddbSMatthias Ringwald  */
2609dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CONNECTION_OPENED                                     0x01
2610dd148ddbSMatthias Ringwald 
2611dd148ddbSMatthias Ringwald /**
2612dd148ddbSMatthias Ringwald  * @format 12
2613dd148ddbSMatthias Ringwald  * @param subevent_code
2614dd148ddbSMatthias Ringwald  * @param hid_cid
2615dd148ddbSMatthias Ringwald */
2616dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CONNECTION_CLOSED                                     0x02
2617dd148ddbSMatthias Ringwald 
2618dd148ddbSMatthias Ringwald /**
2619dd148ddbSMatthias Ringwald  * @format 12
2620dd148ddbSMatthias Ringwald  * @param subevent_code
2621dd148ddbSMatthias Ringwald  * @param hid_cid
2622dd148ddbSMatthias Ringwald */
2623dd148ddbSMatthias Ringwald #define HID_SUBEVENT_CAN_SEND_NOW                                          0x03
2624dd148ddbSMatthias Ringwald 
26256510739bSMilanka Ringwald /**
26266510739bSMilanka Ringwald  * @format 12
26276510739bSMilanka Ringwald  * @param subevent_code
26286510739bSMilanka Ringwald  * @param con_handle
26296510739bSMilanka Ringwald */
26306510739bSMilanka Ringwald #define HID_SUBEVENT_SUSPEND                                               0x04
26316510739bSMilanka Ringwald 
26326510739bSMilanka Ringwald /**
26336510739bSMilanka Ringwald  * @format 12
26346510739bSMilanka Ringwald  * @param subevent_code
26356510739bSMilanka Ringwald  * @param con_handle
26366510739bSMilanka Ringwald */
26376510739bSMilanka Ringwald #define HID_SUBEVENT_EXIT_SUSPEND                                          0x05
26386510739bSMilanka Ringwald 
26396510739bSMilanka Ringwald 
2640a4bfc4feSMatthias Ringwald // HIDS Meta Event Group
2641a4bfc4feSMatthias Ringwald 
2642a4bfc4feSMatthias Ringwald /**
2643a4bfc4feSMatthias Ringwald  * @format 12
2644a4bfc4feSMatthias Ringwald  * @param subevent_code
2645a4bfc4feSMatthias Ringwald  * @param con_handle
2646a4bfc4feSMatthias Ringwald */
2647a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_CAN_SEND_NOW                                          0x01
2648a4bfc4feSMatthias Ringwald 
2649a4bfc4feSMatthias Ringwald /**
2650a4bfc4feSMatthias Ringwald  * @format 121
2651a4bfc4feSMatthias Ringwald  * @param subevent_code
2652a4bfc4feSMatthias Ringwald  * @param con_handle
2653a4bfc4feSMatthias Ringwald  * @param protocol_mode
2654a4bfc4feSMatthias Ringwald */
2655a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_PROTOCOL_MODE                                         0x02
2656a4bfc4feSMatthias Ringwald 
2657a4bfc4feSMatthias Ringwald /**
2658a4bfc4feSMatthias Ringwald  * @format 121
2659a4bfc4feSMatthias Ringwald  * @param subevent_code
2660a4bfc4feSMatthias Ringwald  * @param con_handle
2661a4bfc4feSMatthias Ringwald  * @param enable
2662a4bfc4feSMatthias Ringwald */
2663a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE                        0x03
2664a4bfc4feSMatthias Ringwald 
2665a4bfc4feSMatthias Ringwald /**
2666a4bfc4feSMatthias Ringwald  * @format 121
2667a4bfc4feSMatthias Ringwald  * @param subevent_code
2668a4bfc4feSMatthias Ringwald  * @param con_handle
2669a4bfc4feSMatthias Ringwald  * @param enable
2670a4bfc4feSMatthias Ringwald */
2671a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE                     0x04
2672a4bfc4feSMatthias Ringwald 
2673a4bfc4feSMatthias Ringwald /**
2674a4bfc4feSMatthias Ringwald  * @format 121
2675a4bfc4feSMatthias Ringwald  * @param subevent_code
2676a4bfc4feSMatthias Ringwald  * @param con_handle
2677a4bfc4feSMatthias Ringwald  * @param enable
2678a4bfc4feSMatthias Ringwald */
2679a4bfc4feSMatthias Ringwald #define HIDS_SUBEVENT_INPUT_REPORT_ENABLE                                   0x05
2680a4bfc4feSMatthias Ringwald 
26810235c9e5SMilanka Ringwald /**
26820235c9e5SMilanka Ringwald  * @format 121
26830235c9e5SMilanka Ringwald  * @param subevent_code
26840235c9e5SMilanka Ringwald  * @param con_handle
26850235c9e5SMilanka Ringwald  * @param enable
26860235c9e5SMilanka Ringwald */
26870235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE                                  0x06
26880235c9e5SMilanka Ringwald 
26890235c9e5SMilanka Ringwald /**
26900235c9e5SMilanka Ringwald  * @format 121
26910235c9e5SMilanka Ringwald  * @param subevent_code
26920235c9e5SMilanka Ringwald  * @param con_handle
26930235c9e5SMilanka Ringwald  * @param enable
26940235c9e5SMilanka Ringwald */
26950235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_FEATURE_REPORT_ENABLE                                 0x07
26960235c9e5SMilanka Ringwald 
26970235c9e5SMilanka Ringwald /**
26980235c9e5SMilanka Ringwald  * @format 12
26990235c9e5SMilanka Ringwald  * @param subevent_code
27000235c9e5SMilanka Ringwald  * @param con_handle
27010235c9e5SMilanka Ringwald */
27020235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_SUSPEND                                               0x08
27030235c9e5SMilanka Ringwald 
27040235c9e5SMilanka Ringwald /**
27050235c9e5SMilanka Ringwald  * @format 12
27060235c9e5SMilanka Ringwald  * @param subevent_code
27070235c9e5SMilanka Ringwald  * @param con_handle
27080235c9e5SMilanka Ringwald */
27090235c9e5SMilanka Ringwald #define HIDS_SUBEVENT_EXIT_SUSPEND                                          0x09
27109fe70df8SMilanka Ringwald 
27119fe70df8SMilanka Ringwald /**
27129fe70df8SMilanka Ringwald  * @format 1211
27139fe70df8SMilanka Ringwald  * @param subevent_code
27149fe70df8SMilanka Ringwald  * @param con_handle
27156e084577SMatthias Ringwald  * @param measurement_type 0 - force magnitude, 1 - torque magnitude, see cycling_power_sensor_measurement_context_t
27169fe70df8SMilanka Ringwald  * @param is_enhanced
27179fe70df8SMilanka Ringwald */
271828e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION               0x01
27199fe70df8SMilanka Ringwald 
27209fe70df8SMilanka Ringwald /**
27219fe70df8SMilanka Ringwald  * @format 12
27229fe70df8SMilanka Ringwald  * @param subevent_code
27239fe70df8SMilanka Ringwald  * @param con_handle
27249fe70df8SMilanka Ringwald */
272528e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_START                 0x02
27269fe70df8SMilanka Ringwald 
27279fe70df8SMilanka Ringwald /**
27289fe70df8SMilanka Ringwald  * @format 12
27299fe70df8SMilanka Ringwald  * @param subevent_code
27309fe70df8SMilanka Ringwald  * @param con_handle
27319fe70df8SMilanka Ringwald */
273228e59789SMilanka Ringwald #define GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_STOP                  0x03
2733ad58991cSMilanka Ringwald 
2734ad58991cSMilanka Ringwald 
2735ad58991cSMilanka Ringwald // MAP Meta Event Group
2736ad58991cSMilanka Ringwald 
2737ad58991cSMilanka Ringwald /**
2738ad58991cSMilanka Ringwald  * @format 121BH1
2739ad58991cSMilanka Ringwald  * @param subevent_code
2740ad58991cSMilanka Ringwald  * @param map_cid
2741ad58991cSMilanka Ringwald  * @param status
2742ad58991cSMilanka Ringwald  * @param bd_addr
2743ad58991cSMilanka Ringwald  * @param con_handle
2744ad58991cSMilanka Ringwald  * @param incoming
2745ad58991cSMilanka Ringwald  */
2746ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_OPENED                                    0x01
2747ad58991cSMilanka Ringwald 
2748ad58991cSMilanka Ringwald /**
2749ad58991cSMilanka Ringwald  * @format 12
2750ad58991cSMilanka Ringwald  * @param subevent_code
27515160ece6SMilanka Ringwald  * @param map_cid
2752ad58991cSMilanka Ringwald */
2753ad58991cSMilanka Ringwald #define MAP_SUBEVENT_CONNECTION_CLOSED                                    0x02
2754ad58991cSMilanka Ringwald 
2755ad58991cSMilanka Ringwald /**
2756ad58991cSMilanka Ringwald  * @format 121
2757ad58991cSMilanka Ringwald  * @param subevent_code
27585160ece6SMilanka Ringwald  * @param map_cid
2759ad58991cSMilanka Ringwald  * @param status
2760ad58991cSMilanka Ringwald  */
2761ad58991cSMilanka Ringwald #define MAP_SUBEVENT_OPERATION_COMPLETED                                  0x03
2762ad58991cSMilanka Ringwald 
2763ad58991cSMilanka Ringwald 
27645160ece6SMilanka Ringwald /**
27655160ece6SMilanka Ringwald  * @format 12LV
27665160ece6SMilanka Ringwald  * @param subevent_code
27675160ece6SMilanka Ringwald  * @param map_cid
27685160ece6SMilanka Ringwald  * @param name_len
27695160ece6SMilanka Ringwald  * @param name
27705160ece6SMilanka Ringwald  */
27715160ece6SMilanka Ringwald #define MAP_SUBEVENT_FOLDER_LISTING_ITEM                                  0x04
27725160ece6SMilanka Ringwald 
27735160ece6SMilanka Ringwald /**
27745160ece6SMilanka Ringwald  * @format 12D
27755160ece6SMilanka Ringwald  * @param subevent_code
27765160ece6SMilanka Ringwald  * @param map_cid
27775160ece6SMilanka Ringwald  * @param handle
27785160ece6SMilanka Ringwald 
27795160ece6SMilanka Ringwald  */
27805160ece6SMilanka Ringwald #define MAP_SUBEVENT_MESSAGE_LISTING_ITEM                                 0x05
27815160ece6SMilanka Ringwald 
27825160ece6SMilanka Ringwald /**
27835160ece6SMilanka Ringwald  * @format 12
27845160ece6SMilanka Ringwald  * @param subevent_code
27855160ece6SMilanka Ringwald  * @param map_cid
27865160ece6SMilanka Ringwald  */
27875160ece6SMilanka Ringwald #define MAP_SUBEVENT_PARSING_DONE                                         0x06
27885160ece6SMilanka Ringwald 
27895160ece6SMilanka Ringwald 
27901fbe4564SMatthias Ringwald // MESH Meta Event Group
27915160ece6SMilanka Ringwald 
27921fbe4564SMatthias Ringwald /**
27931fbe4564SMatthias Ringwald  * @format 1
27941fbe4564SMatthias Ringwald  * @param subevent_code
27951fbe4564SMatthias Ringwald  */
27961fbe4564SMatthias Ringwald #define MESH_SUBEVENT_CAN_SEND_NOW                                          0x01
27971fbe4564SMatthias Ringwald 
27981fbe4564SMatthias Ringwald /**
27991fbe4564SMatthias Ringwald  * @format 11
28001fbe4564SMatthias Ringwald  * @param subevent_code
28011fbe4564SMatthias Ringwald  * @param status
28021fbe4564SMatthias Ringwald  */
28037bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_PDU_SENT                                          0x02
280426ecb624SMilanka Ringwald 
280526ecb624SMilanka Ringwald /**
280626ecb624SMilanka Ringwald  * @format 1121
280726ecb624SMilanka Ringwald  * @param subevent_code
280826ecb624SMilanka Ringwald  * @param status
280926ecb624SMilanka Ringwald  * @param pb_transport_cid
281026ecb624SMilanka Ringwald  * @param pb_type
281126ecb624SMilanka Ringwald  */
28127bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN                                         0x03
28131fbe4564SMatthias Ringwald 
28141fbe4564SMatthias Ringwald /**
28151fbe4564SMatthias Ringwald  * @format 112
28161fbe4564SMatthias Ringwald  * @param subevent_code
281726ecb624SMilanka Ringwald  * @param pb_transport_cid
2818f8962c62SMatthias Ringwald  * @param reason
28191fbe4564SMatthias Ringwald  */
28207bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED                                       0x04
28211fbe4564SMatthias Ringwald 
28221fbe4564SMatthias Ringwald /**
28231fbe4564SMatthias Ringwald  * @format 121
28241fbe4564SMatthias Ringwald  * @param subevent_code
282526ecb624SMilanka Ringwald  * @param pb_transport_cid
28261fbe4564SMatthias Ringwald  * @param attention_time in seconds
28271fbe4564SMatthias Ringwald  */
28287bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER                                        0x10
28291fbe4564SMatthias Ringwald 
28301fbe4564SMatthias Ringwald /**
28311fbe4564SMatthias Ringwald  * Device Role
28321fbe4564SMatthias Ringwald  * @format 12
28331fbe4564SMatthias Ringwald  * @param subevent_code
283426ecb624SMilanka Ringwald  * @param pb_transport_cid
28351fbe4564SMatthias Ringwald  */
28367bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_PUBLIC_KEY_OOB                              0x11
28371fbe4564SMatthias Ringwald 
28381fbe4564SMatthias Ringwald /**
28391fbe4564SMatthias Ringwald  * Device Role
28401fbe4564SMatthias Ringwald  * @format 12
28411fbe4564SMatthias Ringwald  * @param subevent_code
284226ecb624SMilanka Ringwald  * @param pb_transport_cid
28431fbe4564SMatthias Ringwald  */
28447bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_PUBLIC_KEY_OOB                               0x12
28451fbe4564SMatthias Ringwald 
28461fbe4564SMatthias Ringwald /**
28471fbe4564SMatthias Ringwald  * Device Role
28481fbe4564SMatthias Ringwald  * @format 12
28491fbe4564SMatthias Ringwald  * @param subevent_code
285026ecb624SMilanka Ringwald  * @param pb_transport_cid
28511fbe4564SMatthias Ringwald  */
28527bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_INPUT_OOB_REQUEST                                      0x13
28531fbe4564SMatthias Ringwald 
28541fbe4564SMatthias Ringwald /**
28551fbe4564SMatthias Ringwald  * Device Role
28561fbe4564SMatthias Ringwald  * @format 124
28571fbe4564SMatthias Ringwald  * @param subevent_code
285826ecb624SMilanka Ringwald  * @param pb_transport_cid
28591fbe4564SMatthias Ringwald  * @param output_oob number
28601fbe4564SMatthias Ringwald  */
28617bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB                                  0x15
28621fbe4564SMatthias Ringwald 
28631fbe4564SMatthias Ringwald /**
28641fbe4564SMatthias Ringwald  * Device Role
28651fbe4564SMatthias Ringwald  * @format 12
28661fbe4564SMatthias Ringwald  * @param subevent_code
286726ecb624SMilanka Ringwald  * @param pb_transport_cid
28681fbe4564SMatthias Ringwald  */
28697bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_OUTPUT_OOB                                   0x16
28701fbe4564SMatthias Ringwald 
28711fbe4564SMatthias Ringwald /**
28721fbe4564SMatthias Ringwald  * Provisioner Role
28731fbe4564SMatthias Ringwald  * @format 12
28741fbe4564SMatthias Ringwald  * @param subevent_code
287526ecb624SMilanka Ringwald  * @param pb_transport_cid
28761fbe4564SMatthias Ringwald  */
28777bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_RECEIVE_PUBLIC_KEY_OOB                           0x17
28781fbe4564SMatthias Ringwald 
28791fbe4564SMatthias Ringwald /**
28801fbe4564SMatthias Ringwald  * Provisioner Role
28811fbe4564SMatthias Ringwald  * @format 12
28821fbe4564SMatthias Ringwald  * @param subevent_code
288326ecb624SMilanka Ringwald  * @param pb_transport_cid
28841fbe4564SMatthias Ringwald  */
28857bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_RECEIVE_PUBLIC_KEY_OOB                            0x18
28861fbe4564SMatthias Ringwald 
28871fbe4564SMatthias Ringwald /**
28881fbe4564SMatthias Ringwald  * Provisioner Role
28891fbe4564SMatthias Ringwald  * @format 12
28901fbe4564SMatthias Ringwald  * @param subevent_code
289126ecb624SMilanka Ringwald  * @param pb_transport_cid
28921fbe4564SMatthias Ringwald  */
28937bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_OUTPUT_OOB_REQUEST                                     0x19
28941fbe4564SMatthias Ringwald 
28951fbe4564SMatthias Ringwald /**
28961fbe4564SMatthias Ringwald  * Provisioner Role
28971fbe4564SMatthias Ringwald  * @format 124
28981fbe4564SMatthias Ringwald  * @param subevent_code
289926ecb624SMilanka Ringwald  * @param pb_transport_cid
29001fbe4564SMatthias Ringwald  * @param output_oob number
29011fbe4564SMatthias Ringwald  */
29027bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB                                   0x1a
29031fbe4564SMatthias Ringwald 
29041fbe4564SMatthias Ringwald /**
29051fbe4564SMatthias Ringwald  * Provisioner Role
29061fbe4564SMatthias Ringwald  * @format 12
29071fbe4564SMatthias Ringwald  * @param subevent_code
290826ecb624SMilanka Ringwald  * @param pb_transport_cid
29091fbe4564SMatthias Ringwald  */
29107bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_STOP_EMIT_INPUT_OOB                                    0x1b
29111fbe4564SMatthias Ringwald 
29121fbe4564SMatthias Ringwald /**
29131fbe4564SMatthias Ringwald  * Provisioner Role
29141fbe4564SMatthias Ringwald  * @format 1212111212
29151fbe4564SMatthias Ringwald  * @param subevent_code
291626ecb624SMilanka Ringwald  * @param pb_transport_cid
29171fbe4564SMatthias Ringwald  * @param num_elements
29181fbe4564SMatthias Ringwald  * @param algorithms
29191fbe4564SMatthias Ringwald  * @param public_key
29201fbe4564SMatthias Ringwald  * @param static_oob_type
29211fbe4564SMatthias Ringwald  * @param output_oob_size
29221fbe4564SMatthias Ringwald  * @param output_oob_action
29231fbe4564SMatthias Ringwald  * @param input_oob_size
29241fbe4564SMatthias Ringwald  * @param input_oob_action
29251fbe4564SMatthias Ringwald  */
29267bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_CAPABILITIES                                           0x1c
29271fbe4564SMatthias Ringwald 
29281fbe4564SMatthias Ringwald /**
29291fbe4564SMatthias Ringwald  * @format 12
29301fbe4564SMatthias Ringwald  * @param subevent_code
293126ecb624SMilanka Ringwald  * @param pb_transport_cid
29321fbe4564SMatthias Ringwald  */
29337bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PB_PROV_COMPLETE                                               0x1d
29345160ece6SMilanka Ringwald 
293582b0bf42SMatthias Ringwald /**
293675c1e527SMatthias Ringwald  * @format 11
293775c1e527SMatthias Ringwald  * @param subevent_code
293875c1e527SMatthias Ringwald  * @param attention_time in seconds
293975c1e527SMatthias Ringwald  */
294075c1e527SMatthias Ringwald #define MESH_SUBEVENT_ATTENTION_TIMER                                                0x1e
294175c1e527SMatthias Ringwald 
294275c1e527SMatthias Ringwald /**
2943ec422a3aSMatthias Ringwald  * @format 1H
294482b0bf42SMatthias Ringwald  * @param subevent_code
294582b0bf42SMatthias Ringwald  * @param con_handle
294682b0bf42SMatthias Ringwald  */
29477bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_CONNECTED                                                0x20
294882b0bf42SMatthias Ringwald 
294982b0bf42SMatthias Ringwald /**
295082b0bf42SMatthias Ringwald  * @format 1H
295182b0bf42SMatthias Ringwald  * @param subevent_code
295282b0bf42SMatthias Ringwald  * @param con_handle
295382b0bf42SMatthias Ringwald  */
29547bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_PDU_SENT                                                 0x21
295582b0bf42SMatthias Ringwald 
295682b0bf42SMatthias Ringwald /**
295782b0bf42SMatthias Ringwald  * @format 1H
295882b0bf42SMatthias Ringwald  * @param subevent_code
295982b0bf42SMatthias Ringwald  * @param con_handle
296082b0bf42SMatthias Ringwald  */
29617bd12f9fSMilanka Ringwald #define MESH_SUBEVENT_PROXY_DISCONNECTED                                             0x22
296282b0bf42SMatthias Ringwald 
29631d2d76deSMilanka Ringwald /**
29641d2d76deSMilanka Ringwald  * @format 1H
29651d2d76deSMilanka Ringwald  * @param subevent_code
29661d2d76deSMilanka Ringwald  * @param con_handle
29671d2d76deSMilanka Ringwald  */
29681d2d76deSMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_SENT                                                   0x23
296981097db9SMilanka Ringwald 
297081097db9SMilanka Ringwald /**
297181097db9SMilanka Ringwald  * @format 114411
297281097db9SMilanka Ringwald  * @param subevent_code
297381097db9SMilanka Ringwald  * @param element_index
297481097db9SMilanka Ringwald  * @param model_identifier
297581097db9SMilanka Ringwald  * @param state_identifier
297681097db9SMilanka Ringwald  * @param reason
297781097db9SMilanka Ringwald  * @param value
297881097db9SMilanka Ringwald  */
297981097db9SMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_BOOL                                              0x24
29801d2d76deSMilanka Ringwald 
298192c33ebfSMilanka Ringwald /**
298292c33ebfSMilanka Ringwald  * @format 114412
298392c33ebfSMilanka Ringwald  * @param subevent_code
298492c33ebfSMilanka Ringwald  * @param element_index
298592c33ebfSMilanka Ringwald  * @param model_identifier
298692c33ebfSMilanka Ringwald  * @param state_identifier
298792c33ebfSMilanka Ringwald  * @param reason
298892c33ebfSMilanka Ringwald  * @param value
298992c33ebfSMilanka Ringwald  */
299092c33ebfSMilanka Ringwald #define MESH_SUBEVENT_STATE_UPDATE_INT16                                              0x25
299192c33ebfSMilanka Ringwald 
299292c33ebfSMilanka Ringwald // Mesh Client Events
299392c33ebfSMilanka Ringwald /**
2994b7a54332SMilanka Ringwald  * @format 11442
2995b7a54332SMilanka Ringwald  * @param subevent_code
2996b7a54332SMilanka Ringwald  * @param element_index
2997b7a54332SMilanka Ringwald  * @param model_identifier
2998b7a54332SMilanka Ringwald  * @param opcode
2999b7a54332SMilanka Ringwald  * @param dest
3000b7a54332SMilanka Ringwald  */
3001b7a54332SMilanka Ringwald #define MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED                                        0x30
3002b7a54332SMilanka Ringwald 
3003b7a54332SMilanka Ringwald /**
30045c1e046aSMilanka Ringwald  * @format 121114
300592c33ebfSMilanka Ringwald  * @param subevent_code
30065c1e046aSMilanka Ringwald  * @param dest
30075c1e046aSMilanka Ringwald  * @param status
300892c33ebfSMilanka Ringwald  * @param present_value
30096e084577SMatthias Ringwald  * @param target_value       optional, if value > 0, than remaining_time_ms must be read
301092c33ebfSMilanka Ringwald  * @param remaining_time_ms
301192c33ebfSMilanka Ringwald  */
3012b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_ON_OFF                                                  0x31
301392c33ebfSMilanka Ringwald 
301487b3ac30SMilanka Ringwald /**
30155c1e046aSMilanka Ringwald  * @format 121224
301687b3ac30SMilanka Ringwald  * @param subevent_code
30175c1e046aSMilanka Ringwald  * @param dest
30185c1e046aSMilanka Ringwald  * @param status
301987b3ac30SMilanka Ringwald  * @param present_value
30206e084577SMatthias Ringwald  * @param target_value       optional, if value > 0, than remaining_time_ms must be read
302187b3ac30SMilanka Ringwald  * @param remaining_time_ms
302287b3ac30SMilanka Ringwald  */
3023b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_LEVEL                                                   0x32
302492c33ebfSMilanka Ringwald 
3025859ea319SMilanka Ringwald /**
302645f04363SMatthias Ringwald  * @format 1222211
3027859ea319SMilanka Ringwald  * @param subevent_code
3028859ea319SMilanka Ringwald  * @param dest
3029859ea319SMilanka Ringwald  * @param netkey_index
3030859ea319SMilanka Ringwald  * @param appkey_index
3031859ea319SMilanka Ringwald  * @param company_id
3032859ea319SMilanka Ringwald  * @param test_id
303345f04363SMatthias Ringwald  * @param acknowledged
3034859ea319SMilanka Ringwald  */
3035204019bbSMatthias Ringwald #define MESH_SUBEVENT_HEALTH_PERFORM_TEST                                            0x33
3036859ea319SMilanka Ringwald 
3037584bbe7dSMilanka Ringwald /**
3038584bbe7dSMilanka Ringwald  * @format 11
3039584bbe7dSMilanka Ringwald  * @param subevent_code
3040584bbe7dSMilanka Ringwald  * @param element_index
3041584bbe7dSMilanka Ringwald  */
3042204019bbSMatthias Ringwald #define MESH_SUBEVENT_HEALTH_ATTENTION_TIMER_CHANGED                                 0x34
3043859ea319SMilanka Ringwald 
30445c1e046aSMilanka Ringwald /**
30455c1e046aSMilanka Ringwald  * @format 1211
30465c1e046aSMilanka Ringwald  * @param subevent_code
30475c1e046aSMilanka Ringwald  * @param dest
30485c1e046aSMilanka Ringwald  * @param status
30495c1e046aSMilanka Ringwald  * @param transition_time_gdtt
30505c1e046aSMilanka Ringwald  */
3051b0e589acSMilanka Ringwald #define MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME                                0x35
3052699be93dSMilanka Ringwald 
3053699be93dSMilanka Ringwald /**
3054699be93dSMilanka Ringwald  * @format 1211
3055699be93dSMilanka Ringwald  * @param subevent_code
3056699be93dSMilanka Ringwald  * @param dest
3057699be93dSMilanka Ringwald  * @param foundation_status
3058699be93dSMilanka Ringwald  * @param secure_network_beacon_state
3059699be93dSMilanka Ringwald  */
3060b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_BEACON                                           0x36
3061699be93dSMilanka Ringwald 
3062b0e589acSMilanka Ringwald // Composition Data has variable of element descriptions, with two lists of model lists
3063b0e589acSMilanka Ringwald // Use .. getters to access data
3064b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_COMPOSITION_DATA                                 0x37
3065344d6549SMilanka Ringwald 
3066344d6549SMilanka Ringwald /**
3067344d6549SMilanka Ringwald  * @format 1211
3068344d6549SMilanka Ringwald  * @param subevent_code
3069344d6549SMilanka Ringwald  * @param dest
3070344d6549SMilanka Ringwald  * @param foundation_status
3071344d6549SMilanka Ringwald  * @param default_ttl
3072344d6549SMilanka Ringwald  */
3073b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL                                      0x38
3074344d6549SMilanka Ringwald 
3075e38651d8SMilanka Ringwald /**
3076e38651d8SMilanka Ringwald  * @format 1211
3077e38651d8SMilanka Ringwald  * @param subevent_code
3078e38651d8SMilanka Ringwald  * @param dest
3079e38651d8SMilanka Ringwald  * @param foundation_status
3080e38651d8SMilanka Ringwald  * @param gatt_proxy_state
3081e38651d8SMilanka Ringwald  */
3082b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_GATT_PROXY                                       0x39
3083e38651d8SMilanka Ringwald 
30841937dd52SMilanka Ringwald /**
30851937dd52SMilanka Ringwald  * @format 121111
30861937dd52SMilanka Ringwald  * @param subevent_code
30871937dd52SMilanka Ringwald  * @param dest
30881937dd52SMilanka Ringwald  * @param foundation_status
30891937dd52SMilanka Ringwald  * @param relay
30901937dd52SMilanka Ringwald  * @param retransmit_count                          the number of times that packet is transmitted for each packet that is relayed.
30911937dd52SMilanka Ringwald  * @param retransmit_interval_ms                    retransmission interval in ms
30921937dd52SMilanka Ringwald  */
3093b0e589acSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_RELAY                                            0x40
30941937dd52SMilanka Ringwald 
3095f2ca42dfSMilanka Ringwald 
3096f2ca42dfSMilanka Ringwald /**
3097f2ca42dfSMilanka Ringwald  * @format 12122111114
3098f2ca42dfSMilanka Ringwald  * @param subevent_code
3099f2ca42dfSMilanka Ringwald  * @param dest                                      element_address
3100f2ca42dfSMilanka Ringwald  * @param foundation_status
3101f2ca42dfSMilanka Ringwald  * @param publish_address
3102f2ca42dfSMilanka Ringwald  * @param appkey_index
3103f2ca42dfSMilanka Ringwald  * @param credential_flag
3104f2ca42dfSMilanka Ringwald  * @param publish_ttl
3105f2ca42dfSMilanka Ringwald  * @param publish_period
3106f2ca42dfSMilanka Ringwald  * @param publish_retransmit_count
3107f2ca42dfSMilanka Ringwald  * @param publish_retransmit_interval_steps
3108f2ca42dfSMilanka Ringwald  * @param model_identifier
3109f2ca42dfSMilanka Ringwald  */
3110f2ca42dfSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION                                0x41
311167abec42SMilanka Ringwald 
311267abec42SMilanka Ringwald /**
311367abec42SMilanka Ringwald  * @format 12124
311467abec42SMilanka Ringwald  * @param subevent_code
311567abec42SMilanka Ringwald  * @param dest
311667abec42SMilanka Ringwald  * @param foundation_status
311767abec42SMilanka Ringwald  * @param address
311867abec42SMilanka Ringwald  * @param model_identifier
311967abec42SMilanka Ringwald  */
312067abec42SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION                               0x42
3121908a73e3SMilanka Ringwald 
3122908a73e3SMilanka Ringwald /**
3123df02a641SMilanka Ringwald  * @format 1214112
3124908a73e3SMilanka Ringwald  * @param subevent_code
3125908a73e3SMilanka Ringwald  * @param dest
3126908a73e3SMilanka Ringwald  * @param foundation_status
3127908a73e3SMilanka Ringwald  * @param model_identifier
3128b629980dSMilanka Ringwald  * @param num_subscription_addresses
3129b629980dSMilanka Ringwald  * @param subscription_address_pos
3130b629980dSMilanka Ringwald  * @param subscription_address_item
3131908a73e3SMilanka Ringwald  */
3132df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM                     0x43
3133b629980dSMilanka Ringwald 
3134b629980dSMilanka Ringwald 
3135b629980dSMilanka Ringwald /**
3136b629980dSMilanka Ringwald  * @format 121
3137b629980dSMilanka Ringwald  * @param subevent_code
3138b629980dSMilanka Ringwald  * @param dest
3139b629980dSMilanka Ringwald  * @param foundation_status
3140b629980dSMilanka Ringwald  */
3141df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX                                      0x44
3142b629980dSMilanka Ringwald 
3143b629980dSMilanka Ringwald /**
3144b629980dSMilanka Ringwald  * @format 121112
3145b629980dSMilanka Ringwald  * @param subevent_code
3146b629980dSMilanka Ringwald  * @param dest
3147b629980dSMilanka Ringwald  * @param foundation_status
3148b629980dSMilanka Ringwald  * @param num_netkey_indexes
3149b629980dSMilanka Ringwald  * @param netkey_index_pos
3150b629980dSMilanka Ringwald  * @param netkey_index_item
3151b629980dSMilanka Ringwald  */
3152df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM                             0x45
3153b629980dSMilanka Ringwald 
3154b629980dSMilanka Ringwald /**
3155b629980dSMilanka Ringwald  * @format 12122
3156b629980dSMilanka Ringwald  * @param subevent_code
3157b629980dSMilanka Ringwald  * @param dest
3158b629980dSMilanka Ringwald  * @param foundation_status
3159b629980dSMilanka Ringwald  * @param netkey_index_item
3160b629980dSMilanka Ringwald  * @param appkey_index_item
3161b629980dSMilanka Ringwald  */
3162df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX                                       0x46
3163b629980dSMilanka Ringwald 
3164b629980dSMilanka Ringwald /**
3165b629980dSMilanka Ringwald  * @format 12121122
3166b629980dSMilanka Ringwald  * @param subevent_code
3167b629980dSMilanka Ringwald  * @param dest
3168b629980dSMilanka Ringwald  * @param foundation_status
3169b629980dSMilanka Ringwald  * @param netkey_index
3170b629980dSMilanka Ringwald  * @param num_appkey_indexes
3171b629980dSMilanka Ringwald  * @param appkey_index_pos
3172b629980dSMilanka Ringwald  * @param netkey_index_item
3173b629980dSMilanka Ringwald  * @param appkey_index_item
3174b629980dSMilanka Ringwald  */
3175df02a641SMilanka Ringwald  #define MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM                            0x47
3176b629980dSMilanka Ringwald 
317782cfc808SMilanka Ringwald /**
317882cfc808SMilanka Ringwald  * @format 12121
317982cfc808SMilanka Ringwald  * @param subevent_code
318082cfc808SMilanka Ringwald  * @param dest
318182cfc808SMilanka Ringwald  * @param foundation_status
318282cfc808SMilanka Ringwald  * @param netkey_index_item
318382cfc808SMilanka Ringwald  * @param identity_status
318482cfc808SMilanka Ringwald  */
3185df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY                                      0x48
31868d4cf36eSMilanka Ringwald 
31878d4cf36eSMilanka Ringwald /**
3188df02a641SMilanka Ringwald  * @format 12124
31898d4cf36eSMilanka Ringwald  * @param subevent_code
31908d4cf36eSMilanka Ringwald  * @param dest
31918d4cf36eSMilanka Ringwald  * @param foundation_status
31928d4cf36eSMilanka Ringwald  * @param appkey_index
31938d4cf36eSMilanka Ringwald  * @param model_identifier
31948d4cf36eSMilanka Ringwald  */
3195df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_APP                                           0x49
3196df02a641SMilanka Ringwald 
3197df02a641SMilanka Ringwald /**
3198df02a641SMilanka Ringwald  * @format 1214112
3199df02a641SMilanka Ringwald  * @param subevent_code
3200df02a641SMilanka Ringwald  * @param dest
3201df02a641SMilanka Ringwald  * @param foundation_status
3202df02a641SMilanka Ringwald  * @param model_id
3203df02a641SMilanka Ringwald  * @param num_appkey_indexes
3204df02a641SMilanka Ringwald  * @param appkey_index_pos
3205df02a641SMilanka Ringwald  * @param appkey_index_item
3206df02a641SMilanka Ringwald  */
3207df02a641SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM                                 0x50
3208df02a641SMilanka Ringwald 
320964c3d06bSMilanka Ringwald /**
321064c3d06bSMilanka Ringwald  * @format 121
321164c3d06bSMilanka Ringwald  * @param subevent_code
321264c3d06bSMilanka Ringwald  * @param dest
321364c3d06bSMilanka Ringwald  * @param foundation_status
321464c3d06bSMilanka Ringwald  */
321564c3d06bSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NODE_RESET                                          0x51
321664c3d06bSMilanka Ringwald 
321764c3d06bSMilanka Ringwald /**
32183ef45e91SMilanka Ringwald  * @format 1211
321964c3d06bSMilanka Ringwald  * @param subevent_code
322064c3d06bSMilanka Ringwald  * @param dest
322164c3d06bSMilanka Ringwald  * @param foundation_status
322264c3d06bSMilanka Ringwald  * @param friend_state
322364c3d06bSMilanka Ringwald  */
322464c3d06bSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_FRIEND                                              0x52
32258d4cf36eSMilanka Ringwald 
32263ef45e91SMilanka Ringwald /**
32273ef45e91SMilanka Ringwald  * @format 12121
32283ef45e91SMilanka Ringwald  * @param subevent_code
32293ef45e91SMilanka Ringwald  * @param dest
32303ef45e91SMilanka Ringwald  * @param foundation_status
32313ef45e91SMilanka Ringwald  * @param netkey_index
32323ef45e91SMilanka Ringwald  * @param phase
32333ef45e91SMilanka Ringwald  */
32343ef45e91SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE                                   0x53
32353ef45e91SMilanka Ringwald 
32367d339f89SMilanka Ringwald /**
3237d175073cSMilanka Ringwald  * @format 121222122
32387d339f89SMilanka Ringwald  * @param subevent_code
32397d339f89SMilanka Ringwald  * @param dest
32407d339f89SMilanka Ringwald  * @param foundation_status
32414f44739eSMilanka Ringwald  * @param heartbeat_destination
3242d175073cSMilanka Ringwald  * @param count_S
3243d175073cSMilanka Ringwald  * @param period_S
32447d339f89SMilanka Ringwald  * @param ttl
32457d339f89SMilanka Ringwald  * @param features
32467d339f89SMilanka Ringwald  * @param netkey_index
32477d339f89SMilanka Ringwald  */
32487d339f89SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION                               0x54
32497d339f89SMilanka Ringwald 
32507d339f89SMilanka Ringwald /**
32517b73c5a9SMatthias Ringwald  * @format 121222211
32527d339f89SMilanka Ringwald  * @param subevent_code
32537d339f89SMilanka Ringwald  * @param dest
32547d339f89SMilanka Ringwald  * @param foundation_status
32554f44739eSMilanka Ringwald  * @param heartbeat_destination
32564f44739eSMilanka Ringwald  * @param heartbeat_source
3257d175073cSMilanka Ringwald  * @param count_S
3258d175073cSMilanka Ringwald  * @param period_S
32597d339f89SMilanka Ringwald  * @param min_hops
32607d339f89SMilanka Ringwald  * @param max_hops
32617d339f89SMilanka Ringwald  */
32627d339f89SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION                              0x55
32633ef45e91SMilanka Ringwald 
326470fcff1aSMilanka Ringwald /**
326570fcff1aSMilanka Ringwald  * @format 12123
326670fcff1aSMilanka Ringwald  * @param subevent_code
326770fcff1aSMilanka Ringwald  * @param dest
326870fcff1aSMilanka Ringwald  * @param foundation_status
326970fcff1aSMilanka Ringwald  * @param lpn_address
327070fcff1aSMilanka Ringwald  * @param poll_timeout
327170fcff1aSMilanka Ringwald  */
327270fcff1aSMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT                         0x56
327370fcff1aSMilanka Ringwald 
3274786ea917SMilanka Ringwald /**
3275786ea917SMilanka Ringwald  * @format 12112
3276786ea917SMilanka Ringwald  * @param subevent_code
3277786ea917SMilanka Ringwald  * @param dest
3278786ea917SMilanka Ringwald  * @param foundation_status
3279786ea917SMilanka Ringwald  * @param transmit_count
3280786ea917SMilanka Ringwald  * @param transmit_interval_steps_ms
3281786ea917SMilanka Ringwald  */
3282786ea917SMilanka Ringwald #define MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT                                    0x57
3283786ea917SMilanka Ringwald 
328470fcff1aSMilanka Ringwald 
3285941b3855SMatthias Ringwald #endif
3286