10#ifndef TUYA_HAL_BT_H__
11#define TUYA_HAL_BT_H__
15#if defined(TY_BT_MOD) && (TY_BT_MOD==1)
19#include "tuya_cloud_types.h"
20#include "tal_bluetooth_def.h"
22#define DEVICE_NAME_LEN 16
24typedef INT_T BT_ABILITY;
25#define BT_ABI_NEED_RESET_STACK (1<<0)
29 TY_BT_SCAN_BY_NAME = 0x01,
30 TY_BT_SCAN_BY_MAC = 0x02,
31 TY_BT_SCAN_BY_ADV = 0x03,
35 TY_BT_EVENT_DISCONNECTED,
36 TY_BT_EVENT_CONNECTED,
38 TY_BT_EVENT_ADV_READY,
42 TY_BT_MODE_PERIPHERAL,
51typedef VOID (*TY_BT_MSG_CB)(INT_T id, ty_bt_cb_event_t e, tuya_ble_data_buf_t *buf);
54 CHAR_T name[DEVICE_NAME_LEN];
58 tuya_ble_data_buf_t adv;
59 tuya_ble_data_buf_t scan_rsp;
62typedef VOID (*TY_BT_SCAN_ADV_CB)(CHAR_T *data, UINT_T len, UCHAR_T* mac, UINT8_T type);
65 CHAR_T name[DEVICE_NAME_LEN];
70 TY_BT_SCAN_ADV_CB scan_adv_cb;
81OPERATE_RET tuya_hal_bt_port_init(ty_bt_param_t *p);
92OPERATE_RET tuya_hal_bt_port_deinit(
void);
103OPERATE_RET tuya_hal_bt_gap_disconnect(
void);
115OPERATE_RET tuya_hal_bt_send(BYTE_T *data, UINT8_T len);
127OPERATE_RET tuya_hal_bt_reset_adv(tuya_ble_data_buf_t *adv, tuya_ble_data_buf_t *scan_resp);
138OPERATE_RET tuya_hal_bt_get_rssi(SCHAR_T *rssi);
149OPERATE_RET tuya_hal_bt_start_adv(
void);
160OPERATE_RET tuya_hal_bt_stop_adv(
void);
171OPERATE_RET tuya_hal_bt_assign_scan(INOUT ty_bt_scan_info_t *info);
182OPERATE_RET tuya_hal_bt_get_ability(VOID_T);
195OPERATE_RET tuya_hal_bt_scan_init(IN TY_BT_SCAN_ADV_CB scan_adv_cb);
206OPERATE_RET tuya_hal_bt_start_scan(VOID_T);
217OPERATE_RET tuya_hal_bt_stop_scan(VOID_T);
245VOID_T tuya_os_bt_intf_init(VOID_T);
255OPERATE_RET tuya_hal_bt_get_mac(
NW_MAC_S *mac);
264OPERATE_RET tuya_hal_bt_set_mac(CONST
NW_MAC_S *mac);
Definition: tuya_cloud_types.h:208
Common process - Initialization