TuyaOS
|
This is tuya mesh file 更多...
#include "tuya_cloud_types.h"
#include "tuya_error_code.h"
#include "tal_bluetooth.h"
结构体 | |
struct | __attribute__ |
宏定义 | |
#define | COMPANY_ID (0x07D0) |
#define | MESH_GROUP_ADDR_ALL_FRND 0xFFFD |
#define | MESH_GROUP_ADDR_ALL_NODE 0xFFFF |
#define | MESH_GROUP_ADDR_ALL_PROXY 0xFFFC |
#define | MESH_GROUP_ADDR_ALL_RELAY 0xFFFE |
#define | MESH_GROUP_ADDR_DYNAMIC_END 0xFEFF |
#define | MESH_GROUP_ADDR_DYNAMIC_START 0xC000 |
#define | MESH_GROUP_ADDR_FIX_START 0xFF00 |
#define | MESH_GROUP_ADDR_MASK 0x3FFF |
#define | MESH_IS_BROADCAST_ADDR(addr) ((addr) == MESH_GROUP_ADDR_ALL_NODE) |
#define | MESH_IS_GROUP_ADDR(addr) (((addr) & 0xC000) == 0xC000) |
#define | MESH_IS_RFU_GROUP_ADDR(addr) ((addr) >= MESH_GROUP_ADDR_FIX_START && (addr) < MESH_GROUP_ADDR_ALL_PROXY) |
#define | MESH_IS_SUBSCRIBE_ADDR(addr) ((addr) != MESH_GROUP_ADDR_ALL_NODE && ((addr) & 0x8000) == 0x8000) |
#define | MESH_IS_UNASSIGNED_ADDR(addr) ((addr) == MESH_UNASSIGNED_ADDR) |
#define | MESH_IS_UNICAST_ADDR(addr) ((addr) != MESH_UNASSIGNED_ADDR && ((addr) & 0x8000) == 0x0000) |
#define | MESH_IS_VIRTUAL_ADDR(addr) (((addr) & 0xC000) == 0x8000) |
#define | MESH_NOT_BROADCAST_ADDR(addr) ((addr) != MESH_GROUP_ADDR_ALL_NODE) |
#define | MESH_NOT_GROUP_ADDR(addr) (((addr) & 0xC000) != 0xC000) |
#define | MESH_NOT_SUBSCRIBE_ADDR(addr) ((addr) == MESH_GROUP_ADDR_ALL_NODE || ((addr) & 0x8000) != 0x8000) |
#define | MESH_NOT_UNASSIGNED_ADDR(addr) ((addr) != MESH_UNASSIGNED_ADDR) |
#define | MESH_NOT_UNICAST_ADDR(addr) ((addr) == MESH_UNASSIGNED_ADDR || ((addr) & 0x8000) != 0x0000) |
#define | MESH_NOT_VIRTUAL_ADDR(addr) (((addr) & 0xC000) != 0x8000) |
#define | MESH_PROXY_DEVICE_SVC_UUID (0x1828) |
#define | MESH_PROXY_NOTIFY_CHAR_UUID (0x2ade) |
#define | MESH_PROXY_WRITE_CHAR_UUID (0x2add) |
#define | MESH_UNASSIGNED_ADDR 0x0000 |
#define | MESH_UNICAST_ADDR_MASK 0x7FFF |
#define | MESH_VIRTUAL_ADDR_MASK 0x3FFF |
#define | PACKED __attribute__ ((packed)) |
#define | TAL_MESH_EXTRN2DWORD(p) |
#define | TAL_MESH_EXTRN2WORD(p) (((*(p)) & 0xff) + ((*((p)+1)) << 8)) |
#define | TAL_MESH_OPCODE_BYTE(pbuffer, mesh_opcode) |
#define | TAL_MESH_OPCODE_CFG_APP_KEY_ADD (0x00) |
#define | TAL_MESH_OPCODE_CFG_APP_KEY_DELETE (0x8000) |
#define | TAL_MESH_OPCODE_CFG_APP_KEY_GET (0x8001) |
#define | TAL_MESH_OPCODE_CFG_APP_KEY_LIST (0x8002) |
#define | TAL_MESH_OPCODE_CFG_APP_KEY_STAT (0x8003) |
#define | TAL_MESH_OPCODE_CFG_APP_KEY_UPDATE (0x01) |
#define | TAL_MESH_OPCODE_CFG_BEACON_GET (0x8009) |
#define | TAL_MESH_OPCODE_CFG_BEACON_SET (0x800A) |
#define | TAL_MESH_OPCODE_CFG_BEACON_STAT (0x800B) |
#define | TAL_MESH_OPCODE_CFG_COMPO_DATA_GET (0x8008) |
#define | TAL_MESH_OPCODE_CFG_COMPO_DATA_STAT (0x02) |
#define | TAL_MESH_OPCODE_CFG_DEFAULT_TTL_GET (0x800C) |
#define | TAL_MESH_OPCODE_CFG_DEFAULT_TTL_SET (0x800D) |
#define | TAL_MESH_OPCODE_CFG_DEFAULT_TTL_STAT (0x800E) |
#define | TAL_MESH_OPCODE_CFG_FRND_GET (0x800F) |
#define | TAL_MESH_OPCODE_CFG_FRND_SET (0x8010) |
#define | TAL_MESH_OPCODE_CFG_FRND_STAT (0x8011) |
#define | TAL_MESH_OPCODE_CFG_HB_PUB_GET (0x8038) |
#define | TAL_MESH_OPCODE_CFG_HB_PUB_SET (0x8039) |
#define | TAL_MESH_OPCODE_CFG_HB_PUB_STAT (0x06) |
#define | TAL_MESH_OPCODE_CFG_HB_SUB_GET (0x803A) |
#define | TAL_MESH_OPCODE_CFG_HB_SUB_SET (0x803B) |
#define | TAL_MESH_OPCODE_CFG_HB_SUB_STAT (0x803C) |
#define | TAL_MESH_OPCODE_CFG_KEY_REFRESH_PHASE_GET (0x8015) |
#define | TAL_MESH_OPCODE_CFG_KEY_REFRESH_PHASE_SET (0x8016) |
#define | TAL_MESH_OPCODE_CFG_KEY_REFRESH_PHASE_STAT (0x8017) |
#define | TAL_MESH_OPCODE_CFG_LPN_POLL_TO_GET (0x802D) |
#define | TAL_MESH_OPCODE_CFG_LPN_POLL_TO_STAT (0x802E) |
#define | TAL_MESH_OPCODE_CFG_MODEL_APP_BIND (0x803D) |
#define | TAL_MESH_OPCODE_CFG_MODEL_APP_STAT (0x803E) |
#define | TAL_MESH_OPCODE_CFG_MODEL_APP_UNBIND (0x803F) |
#define | TAL_MESH_OPCODE_CFG_MODEL_PUB_GET (0x8018) |
#define | TAL_MESH_OPCODE_CFG_MODEL_PUB_SET (0x03) |
#define | TAL_MESH_OPCODE_CFG_MODEL_PUB_STAT (0x8019) |
#define | TAL_MESH_OPCODE_CFG_MODEL_PUB_VA_SET (0x801A) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_ADD (0x801B) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_DELETE (0x801C) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_DELETE_ALL (0x801D) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_OVERWRITE (0x801E) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_STAT (0x801F) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_VA_ADD (0x8020) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_VA_DELETE (0x8021) |
#define | TAL_MESH_OPCODE_CFG_MODEL_SUB_VA_OVERWRITE (0x8022) |
#define | TAL_MESH_OPCODE_CFG_NET_KEY_ADD (0x8040) |
#define | TAL_MESH_OPCODE_CFG_NET_KEY_DELETE (0x8041) |
#define | TAL_MESH_OPCODE_CFG_NET_KEY_GET (0x8042) |
#define | TAL_MESH_OPCODE_CFG_NET_KEY_LIST (0x8043) |
#define | TAL_MESH_OPCODE_CFG_NET_KEY_STAT (0x8044) |
#define | TAL_MESH_OPCODE_CFG_NET_KEY_UPDATE (0x8045) |
#define | TAL_MESH_OPCODE_CFG_NET_TRANS_GET (0x8023) |
#define | TAL_MESH_OPCODE_CFG_NET_TRANS_SET (0x8024) |
#define | TAL_MESH_OPCODE_CFG_NET_TRANS_STAT (0x8025) |
#define | TAL_MESH_OPCODE_CFG_NODE_IDENTITY_GET (0x8046) |
#define | TAL_MESH_OPCODE_CFG_NODE_IDENTITY_SET (0x8047) |
#define | TAL_MESH_OPCODE_CFG_NODE_IDENTITY_STAT (0x8048) |
#define | TAL_MESH_OPCODE_CFG_NODE_RESET (0x8049) |
#define | TAL_MESH_OPCODE_CFG_NODE_RESET_STAT (0x804A) |
#define | TAL_MESH_OPCODE_CFG_PROXY_GET (0x8012) |
#define | TAL_MESH_OPCODE_CFG_PROXY_SET (0x8013) |
#define | TAL_MESH_OPCODE_CFG_PROXY_STAT (0x8014) |
#define | TAL_MESH_OPCODE_CFG_RELAY_GET (0x8026) |
#define | TAL_MESH_OPCODE_CFG_RELAY_SET (0x8027) |
#define | TAL_MESH_OPCODE_CFG_RELAY_STAT (0x8028) |
#define | TAL_MESH_OPCODE_CFG_SIG_MODEL_APP_GET (0x804B) |
#define | TAL_MESH_OPCODE_CFG_SIG_MODEL_APP_LIST (0x804C) |
#define | TAL_MESH_OPCODE_CFG_SIG_MODEL_SUB_GET (0x8029) |
#define | TAL_MESH_OPCODE_CFG_SIG_MODEL_SUB_LIST (0x802A) |
#define | TAL_MESH_OPCODE_CFG_VENDOR_MODEL_APP_GET (0x804D) |
#define | TAL_MESH_OPCODE_CFG_VENDOR_MODEL_APP_LIST (0x804E) |
#define | TAL_MESH_OPCODE_CFG_VENDOR_MODEL_SUB_GET (0x802B) |
#define | TAL_MESH_OPCODE_CFG_VENDOR_MODEL_SUB_LIST (0x802C) |
#define | TAL_MESH_OPCODE_DATA (0xCDD007) |
#define | TAL_MESH_OPCODE_FP_COMMPLETE (0xC7D007) |
#define | TAL_MESH_OPCODE_FP_CONFIRM (0xC5D007) |
#define | TAL_MESH_OPCODE_FP_CONFIRM_STATUS (0xC6D007) |
#define | TAL_MESH_OPCODE_FP_GET_MAC (0xC0D007) |
#define | TAL_MESH_OPCODE_FP_GET_MAC_STATUS (0xC1D007) |
#define | TAL_MESH_OPCODE_FP_SET_ADDR (0xC2D007) |
#define | TAL_MESH_OPCODE_FP_SET_ADDR_STATUS (0xC3D007) |
#define | TAL_MESH_OPCODE_FP_SET_PROVISON_DATA (0xC4D007) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_GET (0x825D) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_SET (0x825E) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_SET_UNACK (0x825F) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_STAT (0x8260) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_TEMP_GET (0x8261) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_TEMP_SET (0x8264) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_TEMP_SET_UNACK (0x8265) |
#define | TAL_MESH_OPCODE_LIGHT_CTL_TEMP_STAT (0x8266) |
#define | TAL_MESH_OPCODE_LIGHT_HSL_GET (0x826D) |
#define | TAL_MESH_OPCODE_LIGHT_HSL_SET (0x8276) |
#define | TAL_MESH_OPCODE_LIGHT_HSL_SET_UNACK (0x8277) |
#define | TAL_MESH_OPCODE_LIGHT_HSL_STAT (0x8278) |
#define | TAL_MESH_OPCODE_LIGHTNESS_GET (0x824B) |
#define | TAL_MESH_OPCODE_LIGHTNESS_SET (0x824C) |
#define | TAL_MESH_OPCODE_LIGHTNESS_SET_UNACK (0x824D) |
#define | TAL_MESH_OPCODE_LIGHTNESS_STAT (0x824E) |
#define | TAL_MESH_OPCODE_LOCAL_AUTO_NOTIFY (0xD1D007) |
#define | TAL_MESH_OPCODE_LOCAL_AUTO_WRITE (0xD0D007) |
#define | TAL_MESH_OPCODE_ON_OFF_GET (0x8201) |
#define | TAL_MESH_OPCODE_ON_OFF_SET (0x8202) |
#define | TAL_MESH_OPCODE_ON_OFF_SET_UNACK (0x8203) |
#define | TAL_MESH_OPCODE_ON_OFF_STAT (0x8204) |
#define | TAL_MESH_OPCODE_READ (0xCCD007) |
#define | TAL_MESH_OPCODE_SIZE(mesh_opcode) ((mesh_opcode) >= 0xc00000 ? 3 : ((mesh_opcode) >= 0x8000 ? 2 : 1)) |
#define | TAL_MESH_OPCODE_STAT (0xCBD007) |
#define | TAL_MESH_OPCODE_WRITE (0xC9D007) |
#define | TAL_MESH_OPCODE_WRITE_UNACK (0xCAD007) |
#define | TAL_MESH_PROV_DEVICE_SVC_UUID (0x1827) |
#define | TAL_MESH_PROV_NOTIFY_CHAR_UUID (0x2adc) |
#define | TAL_MESH_PROV_SVC_SCAN_UUID (0x1827) |
#define | TAL_MESH_PROV_WRITE_CHAR_UUID (0x2adb) |
#define | TAL_MESH_PROXY_SVC_SCAN_UUID (0x1828) |
#define | TAL_MODEL_ID_CONFIG_CLIENT (0x0001) |
#define | TAL_MODEL_ID_CONFIG_SERVER (0x0000) |
#define | TAL_MODEL_ID_GENERIC_ONOFF_CLIENT (0x1001) |
#define | TAL_MODEL_ID_GENERIC_ONOFF_SERVER (0x1000) |
#define | TAL_MODEL_ID_HEALTH_CLIENT (0x0003) |
#define | TAL_MODEL_ID_HEALTH_SERVER (0x0002) |
#define | TAL_MODEL_ID_LIGHT_CTL_CLIENT (0x1305) |
#define | TAL_MODEL_ID_LIGHT_CTL_SERVER (0x1303) |
#define | TAL_MODEL_ID_LIGHT_CTL_TEMP_SERVER (0x1306) |
#define | TAL_MODEL_ID_LIGHT_HSL_CLIENT (0x1309) |
#define | TAL_MODEL_ID_LIGHT_HSL_SERVER (0x1307) |
#define | TAL_MODEL_ID_LIGHT_LIGHTNESS_CLIENT (0x1302) |
#define | TAL_MODEL_ID_LIGHT_LIGHTNESS_SERVER (0x1300) |
#define | TAL_MODEL_ID_VENDOR_CLIENT (0x000507D0) |
#define | TAL_MODEL_ID_VENDOR_SERVER (0x000407D0) |
类型定义 | |
typedef struct __attribute__ | TAL_MESH_APPKEY_DELETE_T |
typedef struct __attribute__ | TAL_MESH_APPKEY_UPDATE_T |
typedef VOID(* | TAL_MESH_EVT_FUNC_CB) (TAL_MESH_EVT_PARAMS_T *p_event) |
typedef struct __attribute__ | TAL_MESH_MODEL_APPKEY_UNBIND_T |
typedef struct __attribute__ | TAL_MESH_MODEL_SUB_DELETE_T |
typedef OPERATE_RET(* | tal_mesh_msg_recv_cb) (TAL_MESH_ACCESS_MSG_T *msg_raw, TAL_MESH_NET_PARAM_T *net_param) |
typedef struct __attribute__ | TAL_MESH_NET_TRANSMIT_STATUS_T |
typedef struct __attribute__ | TAL_MESH_NETKEY_DELETE_T |
typedef struct __attribute__ | TAL_MESH_NETKEY_UPDATE_T |
枚举 | |
enum | MESH_NETWORK_STATE_SET_T { MESH_NETWORK_RESET = 0x00 , MESH_NETWORK_RESET_WITH_RECOVER , MESH_NETWORK_RECOVER } |
enum | MESH_PROVISION_TYPE_T { MESH_PB_GATT = 0x00 , MESH_PB_ADV , MESH_PB_GATT_AND_PB_ADV , MESH_PROVISION_DISABLE } |
enum | TAL_MESH_EVT_TYPE_E { TAL_MESH_STACK_INIT = 0x01 , TAL_MESH_EVT_UNPROV_BEACON_REPORT , TAL_MESH_EVT_PRIVATE_BEACON_REPORT , TAL_MESH_EVT_INVITE_EVT , TAL_MESH_EVT_CONFIG_DATA_RX , TAL_MESH_EVT_MODEL_DATA_RX } |
enum | TAL_MESH_NET_STATE_T { TAL_MESH_POWER_ON_UNPROVISION = 0 , TAL_MESH_POWER_ON_PROVISIONED , TAL_MESH_PROVISION_SUCCESS , TAL_MESH_RESET , TAL_MESH_RESET_IN_RAM , TAL_MESH_REVERT_IN_MESH , TAL_MESH_GROUP_SUB_ADD , TAL_MESH_GROUP_SUB_DEL } |
This is tuya mesh file
#define PACKED __attribute__ ((packed)) |
Tuya Needed Definitions And Macro
#define TAL_MESH_EXTRN2DWORD | ( | p | ) |
#define TAL_MESH_OPCODE_BYTE | ( | pbuffer, | |
mesh_opcode | |||
) |
typedef struct __attribute__ TAL_MESH_APPKEY_DELETE_T |
[Mesh Profile] 4.3.2.40 Config AppKey Status
typedef VOID(* TAL_MESH_EVT_FUNC_CB) (TAL_MESH_EVT_PARAMS_T *p_event) |
Define All Configuration Structures For Mesh, Should Not Align For These Parameters!!!! [Mesh Profile] 4.3.2.4 Config Composition Data Get
typedef struct __attribute__ TAL_MESH_MODEL_APPKEY_UNBIND_T |
[Mesh Profile] 4.3.2.48 Config Model App Status
typedef struct __attribute__ TAL_MESH_MODEL_SUB_DELETE_T |
[Mesh Profile] 4.3.2.26 Config Model Subscription Status
typedef OPERATE_RET(* tal_mesh_msg_recv_cb) (TAL_MESH_ACCESS_MSG_T *msg_raw, TAL_MESH_NET_PARAM_T *net_param) |
Define parameters for mesh model
typedef struct __attribute__ TAL_MESH_NETKEY_UPDATE_T |
[Mesh Profile] 4.3.2.34 Config NetKey Status
enum TAL_MESH_EVT_TYPE_E |
< Define parameters for mesh provisioner