This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LAUNCHXL-CC26X2R1:器件未发送自动报告

Guru**** 3001220 points

Other Parts Discussed in Thread: SIMPLELINK-CC13X2-26X2-SDK

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1031874/launchxl-cc26x2r1-device-not-sending-automatic-reports

器件型号:LAUNCHXL-CC26X2R1
主题中讨论的其他器件:SIMPLELINK-CC13X2-26X2-SDK

我不熟悉 ZigBee。 我有一个 TI 器件在模仿光线。 我正在尝试运行  gw_set_attribute_reporting_Req 命令、使其向网关发送常规属性报告。  

当我立即收到 STATUS_SUCCESS 响应时、该命令似乎起作用、但没有报告进入。  

此外、我可以发送命令以返回光的单个属性报告、并返回正确的结果、因此我知道参数是正确的。  

你能告诉我我我出了什么问题吗? 非常感谢。

以下是我的代码:

public int hagwSetAttributeReportReq (final long devIee、final int EP、final short att吸引人 ReqClusterId、 
final short attrReqAttrId、final int attype、final int minInterval、
final int maxInterval、HagatewayZclCallback zclCallback ){
final GwSetAttributeReportingReq.Builder gwSetAttrReportingReq = GwSetAttributeReportingReq.newBuilder ();

gwSetAttrReportingReq.clear();
gwSetAttrReportingReq.setCmdId(gwCmdId_t.GW_SET_ATTRIBUTE_REPORTING_REQ);
gwSetAttrReportingReq.setClusterId(attrReqClusterId);

//set dst addr
gwSetAttrReportingReq.getDstAddressBuilder ().setAddressType (gwAddressType_t.unicast);
gwSetAttrReportingReq.getDstAddressBuilder ().setIeeAddr (devIeee);
gwSetAttrReportingReq.getDstAddressBuilder ().setEndpointId (EP);

gwAttributeReport_t.Builder attr = gwAttributeReport_t.newBuilder ();
attr.setAttributeId(attrReqAttrId);
attr.setAttributeType(gwZclAttributeDataTypes_t.forNumber(attrType));
attr.setMinReportInterval(minInterval);
attr.setMaxReportInterval(maxInterval);
attr.addReportableChange (0);
attr.setReportableChange(0,0);
gwSetAttrReportingReq.addAttributeReportList(attr);



<String>Registered= gwSetAttrReportingReq.findInitializationErrors();
如果(!err.IsEmpty()){
system.out.println ("hagwWriteAttrReq 错误-"+ err.toString());
返回-1;
}

最终字节 pkt[]=新字节[gwSetAttrReportingReq.build()。getSerializedSize()
+ PKT_HEADER_SIZE];

PKT[PKT_HEADER_LEN_FIELD]=(字节)(gwSetAttrReportingReq.build()
.getSerializedSize()& 0xFF);
PKT[PKT_HEADER_LEN_FIELD +1]=(字节)((gwSetAttrReportingReq.build ()
.getSerializedSize()& 0xFF00)<<8);
PKT[PKT_HEADER_SUBSYS_FIELD]= zStackGwSysId_t.RPC_SYS_PB_GW_VALUE;
PKT[PKT_HEADER_CMDID 字段]= gwCmdId_t.gw_set_attribute_reporting_Req_value;

for (int pktIdx=0;pktIdx<gwSetAttrReportingReq.build().toByteArray().length;pktIdx++){
pkt[PKT_HEADER_DATA_FIELD + pktIdx]= gwSetAttrReportingReq.build()
toByteArray()[pktIdx];
}

sendMessage (pktt);



}
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Michael、

    是否有任何报告通过监听器日志确认的无线发送?  您需要在网关应用程序中添加属性报告处理。  ‘,将以下情况添加到'网 关:gw:report’,function (data) of nodejs_ZB_gateway/ZB_gateway/ZB-gateway.js 中:

          case ZBL.HA_CLUSTER_ID.ON_OFF:
            if((data.attributeRecordList[0].attributeId === ZBL.ON_OFF_CLUSTER.OnOff)) {
              var on = parseInt((data.attributeRecordList[0].attributeValue).toString('hex'), 16);
              console.log("Zb-Gateway: The light is: ", on);  
    
              var on_data = {
                guid: data.guid,
                on: on
              };
    
              ZigbeeGatewayInstance.emit('zb-gateway:light_device:state', on_data);
            }
          break;
    

    此致、
    Ryan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Ryan、

    感谢您回来。 除非我向 ZigBee 发送消息、否则 zigbeeHAGw 应用程序不会显示任何活动。 当我发送初始 的 Gw_set_attribute_reporting_Req  请求时、网关应用程序会显示该请求进入 ZigBee 并返回一个响应、但之后没有任何响应。 Wireshark 会记录 我自己的应用程序和网关之间的活动、但仅在我发送消息时才会记录活动、并且不会定期发生任何事件。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Michael、

    您能否提供监听器日志?  您的属性报告请求的参数是什么?  您是否使用 SIMPLELINK-CC13X2-26X2-SDK v5.20中的默认[ZR/Zed]_light_CC26X2R1_LAUNCHXL 示例?  您能否调试此项目以确定它如何处理 zclParseInReadReportCfgRspCmd?

    此致、
    Ryan