好的,我申请新版本3.11.1再试下, 另外在请教下,在数据上报时有时候会存在延迟或失败,以下是封装的发送数据函数:
void private_dpid_report(TAL_SEND_QOS_E qos, USHORT_T delay_ms, UINT8_T *data, UINT8_T len)
{
TAL_ZG_SEND_DATA_T send_data;
tal_system_memset(&send_data, 0, sizeof(TAL_ZG_SEND_DATA_T));
Code: Select all
send_data.zcl_id = 1;//++zcl_seq;
send_data.qos = qos;
send_data.frame_type = ZG_ZCL_FRAME_TYPE_SPEC_TO_CLUSTER;
send_data.direction = ZG_ZCL_DATA_SERVER_TO_CLIENT;
send_data.command_id = 0x06; // TY_MODULE_DATA_REPORT
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.delay_time = delay_ms;
send_data.random_time = 0;
send_data.data.private.len = len;
tal_system_memcpy((send_data.data.private.data),data,len);
tal_zg_send_data(&send_data, NULL, 1000);
}
调用格式:private_dpid_report(QOS_1, 0, buffer, 7);
请问下以上函数是否正确,为什么会有时候上报延时或失败,另外在同一时间内多次调用tal_zg_send_data函数是否要求