1#ifndef __TAL_BLUETOOTH_DEF_H__
2#define __TAL_BLUETOOTH_DEF_H__
4#include "tuya_cloud_types.h"
5#include "tuya_error_code.h"
9#define TAL_BLE_CMD_SERVICE_UUID_V1 (0x1910)
11#define TAL_BLE_CMD_WRITE_CHAR_UUID_V1 (0x2B11)
13#define TAL_BLE_CMD_NOTIFY_CHAR_UUID_V1 (0x2B10)
16#define TAL_BLE_BULK_SERVICE_UUID_V1 (0x1920)
18#define TAL_BLE_BULK_WRITE_CHAR_UUID_V1 (0x2B23)
20#define TAL_BLE_BULK_NOTIFY_CHAR_UUID_V1 (0x2B24)
23#define TAL_BLE_CMD_SERVICE_UUID_V2 (0xFD50)
25#define TAL_BLE_CMD_WRITE_CHAR_UUID_V2 (0x0001)
26#define TAL_BLE_CMD_WRITE_CHAR_UUID128_V2 {0xD0, 0x07, 0x9B, 0x5F, 0x80, 0x00, 0x01, 0x80, 0x01, 0x10, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00}
28#define TAL_BLE_CMD_NOTIFY_CHAR_UUID_V2 (0x0002)
29#define TAL_BLE_CMD_NOTIFY_CHAR_UUID128_V2 {0xD0, 0x07, 0x9B, 0x5F, 0x80, 0x00, 0x01, 0x80, 0x01, 0x10, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00}
31#define TAL_BLE_CMD_READ_CHAR_UUID_V2 (0x0003)
32#define TAL_BLE_CMD_READ_CHAR_UUID128_V2 {0xD0, 0x07, 0x9B, 0x5F, 0x80, 0x00, 0x01, 0x80, 0x01, 0x10, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00}
35#define TAL_BLE_SVC_SCAN_UUID_V1 (0xA201)
36#define TAL_BLE_SVC_SCAN_UUID_V2 (0xA300)
37#define TAL_BLE_SVC_SCAN_UUID_V3 (0xFD50)
40#define TAL_COMMON_WRITE_CHAR_INDEX (0)
41#define TAL_COMMON_NOTIFY_CHAR_INDEX (1)
42#define TAL_COMMON_READ_CHAR_INDEX (2)
44#define DEFAULT_ADV_PARAMS(min, max) \
46 .adv_interval_min = min, \
47 .adv_interval_max = max, \
48 .adv_type = TAL_BLE_ADV_TYPE_CS_UNDIR, \
50#define TUYAOS_BLE_DEFAULT_ADV_PARAM ((TAL_BLE_ADV_PARAMS_T *) (&(TAL_BLE_ADV_PARAMS_T) DEFAULT_ADV_PARAMS(30, 60)))
52#define DEFAULT_SCAN_PARAMS(interval, window) \
54 .type = TAL_BLE_SCAN_TYPE_ACTIVE, \
55 .scan_interval = interval, \
56 .scan_window = window, \
60#define TUYAOS_BLE_DEFAULT_SCAN_PARAM ((TAL_BLE_SCAN_PARAMS_T *) (&(TAL_BLE_SCAN_PARAMS_T) DEFAULT_SCAN_PARAMS(30, 30)))
62#define DEFAULT_CONN_PARAMS(min, max) \
64 .min_conn_interval = min, \
65 .max_conn_interval = max, \
67 .conn_sup_timeout = 0x100, \
68 .connection_timeout = 5, \
70#define TUYAOS_BLE_DEFAULT_CONN_PARAM ((TAL_BLE_CONN_PARAMS_T *) (&(TAL_BLE_CONN_PARAMS_T) DEFAULT_CONN_PARAMS(30, 60)))
74 TAL_BLE_ADDR_TYPE_PUBLIC = 0x00,
75 TAL_BLE_ADDR_TYPE_RANDOM = 0x01,
82} TAL_BLE_ADV_DATA_TYPE_E;
85 TAL_BLE_ADV_TYPE_CS_UNDIR = 0x01,
86 TAL_BLE_ADV_TYPE_CNS_DIR_HIGH_DUTY = 0x02,
87 TAL_BLE_ADV_TYPE_CNS_DIR = 0x03,
88 TAL_BLE_ADV_TYPE_NCS_UNDIR = 0x04,
89 TAL_BLE_ADV_TYPE_NCNS_UNDIR = 0x05,
120 TAL_BLE_SCAN_TYPE_ACTIVE,
121 TAL_BLE_SCAN_TYPE_PASSIVE,
122} TAL_BLE_SCAN_TYPE_E;
125 TAL_BLE_SCAN_TYPE_E type;
135 USHORT_T conn_handle;
136 USHORT_T char_handle[6];
193 TAL_BLE_ROLE_PERIPERAL = 0x0001,
194 TAL_BLE_ROLE_CENTRAL = 0x0002,
195 TAL_BLE_ROLE_BEACON = 0x0004,
197 TAL_BT_ROLE_AUDIO = 0x0010,
199 TAL_MESH_ROLE_ADV_PROVISIONER = 0x0100,
200 TAL_MESH_ROLE_GATT_PROVISIONER = 0x0200,
201 TAL_MESH_ROLE_NODE = 0x0400,
205 TAL_BLE_STACK_INIT = 0x01,
207 TAL_BLE_EVT_PERIPHERAL_CONNECT,
209 TAL_BLE_EVT_CENTRAL_CONNECT_DISCOVERY,
211 TAL_BLE_EVT_DISCONNECT,
213 TAL_BLE_EVT_ADV_REPORT,
215 TAL_BLE_EVT_CONN_PARAM_REQ,
217 TAL_BLE_EVT_CONN_PARAM_UPDATE,
219 TAL_BLE_EVT_CONN_RSSI,
221 TAL_BLE_EVT_MTU_REQUEST,
225 TAL_BLE_EVT_NOTIFY_TX,
227 TAL_BLE_EVT_WRITE_REQ,
229 TAL_BLE_EVT_NOTIFY_RX,
235 TAL_BLE_EVT_TYPE_E type;
Definition: tal_bluetooth_def.h:92
TAL_BLE_ADDR_TYPE_E type
Definition: tal_bluetooth_def.h:93
Definition: tal_bluetooth_def.h:97
USHORT_T adv_interval_max
Definition: tal_bluetooth_def.h:99
USHORT_T adv_interval_min
Definition: tal_bluetooth_def.h:98
TAL_BLE_ADV_TYPE_E adv_type
Definition: tal_bluetooth_def.h:100
TAL_BLE_ADDR_T direct_addr
Definition: tal_bluetooth_def.h:101
Definition: tal_bluetooth_def.h:104
CHAR_T rssi
Definition: tal_bluetooth_def.h:108
UCHAR_T data_len
Definition: tal_bluetooth_def.h:110
UCHAR_T * p_data
Definition: tal_bluetooth_def.h:109
TAL_BLE_ADDR_T peer_addr
Definition: tal_bluetooth_def.h:105
TAL_BLE_ADV_DATA_TYPE_E adv_type
Definition: tal_bluetooth_def.h:106
Definition: tal_bluetooth_def.h:156
TAL_BLE_CONN_PARAMS_T conn_param
Definition: tal_bluetooth_def.h:159
INT_T result
Definition: tal_bluetooth_def.h:160
TAL_BLE_PEER_INFO_T peer
Definition: tal_bluetooth_def.h:157
Definition: tal_bluetooth_def.h:147
USHORT_T conn_sup_timeout
Definition: tal_bluetooth_def.h:151
USHORT_T connection_timeout
Definition: tal_bluetooth_def.h:153
USHORT_T min_conn_interval
Definition: tal_bluetooth_def.h:148
USHORT_T max_conn_interval
Definition: tal_bluetooth_def.h:149
USHORT_T latency
Definition: tal_bluetooth_def.h:150
Definition: tal_bluetooth_def.h:185
USHORT_T conn_handle
Definition: tal_bluetooth_def.h:186
TAL_BLE_CONN_PARAMS_T conn
Definition: tal_bluetooth_def.h:187
Definition: tal_bluetooth_def.h:142
TAL_BLE_DATA_T report
Definition: tal_bluetooth_def.h:144
TAL_BLE_PEER_INFO_T peer
Definition: tal_bluetooth_def.h:143
Definition: tal_bluetooth_def.h:113
USHORT_T len
Definition: tal_bluetooth_def.h:114
UCHAR_T * p_data
Definition: tal_bluetooth_def.h:115
Definition: tal_bluetooth_def.h:163
TAL_BLE_PEER_INFO_T peer
Definition: tal_bluetooth_def.h:164
UCHAR_T reason
Definition: tal_bluetooth_def.h:165
Definition: tal_bluetooth_def.h:234
TAL_BLE_ADV_REPORT_T adv_report
Definition: tal_bluetooth_def.h:241
TAL_BLE_DATA_REPORT_T data_read
Definition: tal_bluetooth_def.h:248
TAL_BLE_DATA_REPORT_T data_report
Definition: tal_bluetooth_def.h:247
TAL_BLE_EXCHANGE_MTU_EVT_T exchange_mtu
Definition: tal_bluetooth_def.h:243
TAL_BLE_DATA_REPORT_T write_report
Definition: tal_bluetooth_def.h:246
UCHAR_T init
Definition: tal_bluetooth_def.h:238
TAL_BLE_CONN_PARAM_EVT_T conn_param
Definition: tal_bluetooth_def.h:242
TAL_BLE_CONN_RSSI_EVT_T link_rssi
Definition: tal_bluetooth_def.h:244
TAL_BLE_CONNECT_EVT_T connect
Definition: tal_bluetooth_def.h:239
TAL_BLE_DISCONNECT_EVT_T disconnect
Definition: tal_bluetooth_def.h:240
TAL_BLE_NOTIFY_TX_EVT_T notify_result
Definition: tal_bluetooth_def.h:245
Definition: tal_bluetooth_def.h:180
USHORT_T mtu
Definition: tal_bluetooth_def.h:182
USHORT_T conn_handle
Definition: tal_bluetooth_def.h:181
Definition: tal_bluetooth_def.h:168
INT_T result
Definition: tal_bluetooth_def.h:172
USHORT_T char_handle
Definition: tal_bluetooth_def.h:170
USHORT_T conn_handle
Definition: tal_bluetooth_def.h:169
Definition: tal_bluetooth_def.h:134
TAL_BLE_ADDR_T peer_addr
Definition: tal_bluetooth_def.h:138
Definition: tal_bluetooth_def.h:124
USHORT_T scan_window
Definition: tal_bluetooth_def.h:128
USHORT_T scan_interval
Definition: tal_bluetooth_def.h:127
USHORT_T timeout
Definition: tal_bluetooth_def.h:129
UCHAR_T filter_dup
Definition: tal_bluetooth_def.h:130