TuyaOS
tuya_ble_sdk.h
浏览该文件的文档.
1
10#ifndef TUYA_BLE_SDK_H__
11#define TUYA_BLE_SDK_H__
12
13#if defined(ENABLE_BT_SERVICE) && (ENABLE_BT_SERVICE==1)
14
15#include <stdbool.h>
16#include <stdint.h>
17#include "tuya_cloud_types.h"
18#include "tal_bluetooth_def.h"
19
20#define DEVICE_NAME_LEN 16
21
22typedef enum {
23 TY_BT_SCAN_BY_NAME = 0x01,
24 TY_BT_SCAN_BY_MAC = 0x02,
25 TY_BT_SCAN_BY_ADV = 0x03, //接收蓝牙广播
26} ty_bt_scan_type_t;
27
28typedef struct {
29 unsigned int len;
30 unsigned char *data;
31} tuya_ble_data_buf_t;
32
33typedef VOID (*TY_BT_MSG_CB)(INT_T id, TAL_BLE_EVT_TYPE_E e, tuya_ble_data_buf_t *buf);
34typedef VOID (*TY_BT_SCAN_ADV_CB)(CHAR_T *data, UINT_T len, UCHAR_T* mac, UINT8_T type);
35
36typedef struct {
37 CHAR_T scan_type; /* ref ty_bt_scan_type_t. */
38 CHAR_T name[DEVICE_NAME_LEN];
39 CHAR_T bd_addr[6];
40 SCHAR_T rssi;
41 UCHAR_T channel;
42 UCHAR_T timeout_s; /* second. */
43 TY_BT_SCAN_ADV_CB scan_adv_cb;
44} ty_bt_scan_info_t;
45
46typedef VOID (*TUYA_BLE_RAW_SCAN_HANDLE)(TAL_BLE_ADV_REPORT_T *scan_info);
47
58OPERATE_RET tuya_sdk_bt_port_init(TAL_BLE_ROLE_E mode, TY_BT_MSG_CB cb);
59
69OPERATE_RET tuya_sdk_bt_port_deinit(TAL_BLE_ROLE_E mode);
70
80OPERATE_RET tuya_sdk_bt_gap_disconnect(void);
81
92OPERATE_RET tuya_sdk_bt_send(BYTE_T *data, UINT8_T len);
93
104OPERATE_RET tuya_sdk_bt_reset_adv(tuya_ble_data_buf_t *adv, tuya_ble_data_buf_t *scan_resp);
105
116OPERATE_RET tuya_sdk_bt_upd_adv_content(IN tuya_ble_data_buf_t *adv, IN tuya_ble_data_buf_t *scan_resp);
117
127OPERATE_RET tuya_sdk_bt_get_rssi(SCHAR_T *rssi);
128
138OPERATE_RET tuya_sdk_bt_start_adv(void);
139
149OPERATE_RET tuya_sdk_bt_stop_adv(void);
150
160OPERATE_RET tuya_sdk_bt_assign_scan(INOUT ty_bt_scan_info_t *info);
161
171OPERATE_RET tuya_sdk_bt_get_ability(VOID_T);
172
173
184OPERATE_RET tuya_sdk_bt_scan_init(IN TY_BT_SCAN_ADV_CB scan_adv_cb);
185
195OPERATE_RET tuya_sdk_bt_start_scan(VOID_T);
196
206OPERATE_RET tuya_sdk_bt_stop_scan(VOID_T);
207
208// OPERATE_RET tuya_hal_bt_central_init(ty_ble_central_param_t *p);
209
210// OPERATE_RET tuya_hal_bt_central_deinit(VOID_T);
211
212// OPERATE_RET tuya_hal_bt_master_connect(UINT8_T mac[6], ty_ble_addr_type_t type, UINT_T timeout_ms, ty_ble_gap_conn_params_t *params);
213
214// OPERATE_RET tuya_hal_bt_master_disconnect(UINT8_T mac[6], ty_ble_addr_type_t type);
215
216// OPERATE_RET tuya_hal_bt_master_scan(BOOL_T enable);
217
218// OPERATE_RET tuya_hal_bt_master_get_max_slave_num(UINT16_T *num);
219
220// OPERATE_RET tuya_hal_bt_gattc_send_data(UINT8_T mac[6], UINT8_T *data, UINT_T length);
221
222// OPERATE_RET tuya_hal_bt_gattc_start_discovery(UINT8_T mac[6], ty_bt_uuid_t *uuid);
223
224
234//VOID_T tuya_os_bt_intf_init(VOID_T);
235
236
244OPERATE_RET tuya_sdk_bt_get_mac(NW_MAC_S *mac);
245
253OPERATE_RET tuya_sdk_bt_set_mac(CONST NW_MAC_S *mac);
254#endif
255
256#endif
257
258
Definition: tal_bluetooth_def.h:104