#define PRIVATE_ATTR_LIST \{0x0000, ATTR_INT8U_ATTRIBUTE_TYPE, 1, (ATTR_MASK_TOKEN_FAST|ATTR_MASK_SINGLETON), 0, (UINT8_T*)0x00 }, /* current positiong lift percentage*/\{0xFFFD, ATTR_INT16U_ATTRIBUTE_TYPE, 2, (ATTR_MASK_READABLE), 0, (UINT8_T *)0x0002},const TAL_ATTR_T g_private_attr_list[] = {PRIVATE_ATTR_LIST};#define DEF_CLUSTER_PRIVATE_CLUSTER_ID(a) \{ CLUSTER_PRIVATE_TUYA_CLUSTER_ID, (TAL_ATTR_T *)&((a)[0]), GET_ARRAY_LEN((a)) },CONST TAL_CLUSTER_T app_server_cluster_list[] = {DEF_CLUSTER_PRIVATE_CLUSTER_ID(g_private_attr_list)
{"firmwareInfo": {"description": "this is a demon project","dev_role":"sleep_end_dev","module_name":"ZT3L","chip_id":"TLSR8258F1KET","image_type":"0xD3A3","manufacture_id":"0x1141","model_id":"TS0202","pid": "","manufacture_name": "_TZ3210_"}}
开发时,可以使用调试面板。
TAL_MSG_RET_E tal_zcl_specific_msg_recv_callback(TAL_ZCL_MSG_T *msg)switch(msg->cluster)case 0xEF00{switch(msg->command){case 0x04 :{air_data_response(msg->dst_ep,msg->len, &(msg->playload[0]), 0x05, QOS_1)}}}...
air_data_response(uint8_t ep, uint8_t len uint8_t *data, uint8_t command_id TAL_SEND_QOS_E qos ){tal_system_memset(&send_data, 0, SIZEOF(TAL_ZG_SEND_DATA_T));send_data.qos = qos;send_data.delay_time = 0;send_data.zcl_id = 0x68;send_data.direction = ZG_ZCL_DATA_SERVER_TO_CLIENT;send_data.frame_type = ZG_ZCL_FRAME_TYPE_SPEC_TO_CLUSTER;send_data.command_id = command_id;/*respose cmd 0x05 */send_data.addr.mode = SEND_MODE_DEV;send_data.addr.type.dev.cluster_id = 0xEF00;send_data.addr.type.dev.src_ep = ep;send_data.data.private.len = len;memcpy((send_data.data.private.data), data, len);tal_zg_clear_send_data(ZG_CLEAR_ALL_ZCL_ID, &send_data.zcl_id);tal_zg_send_data(&send_data, NULL, 2000);}
tal_system_memset(&send_data, 0, SIZEOF(TAL_ZG_SEND_DATA_T));send_data.qos = QOS_1;send_data.delay_time = 0;send_data.zcl_id = 0x68;send_data.direction = ZG_ZCL_DATA_SERVER_TO_CLIENT;send_data.frame_type = ZG_ZCL_FRAME_TYPE_SPEC_TO_CLUSTER;send_data.command_id = 0x06;/*report cmd*/send_data.addr.mode = SEND_MODE_DEV;send_data.addr.type.dev.dst_addr = TUYA_GATEWAY_ADDRESS;send_data.addr.type.dev.dst_ep = 0x01;send_data.addr.type.dev.src_ep = TUYA_PRIMARY_ENDPOINT;send_data.addr.type.dev.cluster_id = CLUSTER_PRIVATE_TUYA_CLUSTER_ID;send_data.data.private.len = 7;send_data.data.private.data[2] = 101; /* DP id*/send_data.data.private.data[3] = ATTR_ENUM8_ATTRIBUTE_TYPE; /*DP type*/send_data.data.private.data[4] = 0x00;send_data.data.private.data[5] = 0x01;/*DP len*/send_data.data.private.data[6] = day_up_down_change_flag; /*DP data*/tal_zg_clear_send_data(ZG_CLEAR_ALL_ZCL_ID, &send_data.zcl_id);tal_zg_send_data(&send_data, NULL, 2000);
该内容对您有帮助吗?
是意见反馈点击获取服务和帮助
智能客服
400-881-8611
提交工单