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.

[参考译文] CC2538:接收平移间消息

Guru**** 2463330 points
Other Parts Discussed in Thread: CC2538, CC2652R, Z-STACK

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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1212706/cc2538-receive-inter-pan-messages

器件型号:CC2538
主题中讨论的其他器件: CC2652RZ-stack

我正在尝试实现 具有 OTA 软件狗 示例的协调器(cc2538与 ZStack 3.0.2)与具有通用示例的路由器(具有最新 SDK 的 cc2652R)之间的远程通信。 我从路由器发送消息、并且可以在数据包监听器中看到它、但协调器没有收到消息。 我必须做些什么才能使它正常工作?

数据包的屏幕截图:

路由器代码:

    if(_btn == gRightButtonHandle)
    {
        zstack_getZCLFrameCounterRsp_t pRsp;
        Zstackapi_getZCLFrameCounterReq(appServiceTaskId, &pRsp);


        StubAPS_SetInterPanChannel(0x0F);


        dstAddr.addrMode= afAddrBroadcast;
        dstAddr.addr.shortAddr = NWK_BROADCAST_SHORTADDR_DEVALL;
        dstAddr.endPoint = STUBAPS_INTER_PAN_EP;
        dstAddr.panId = 0xFFFF;

        static uint8_t inter_msg[] = {"HELLO, WORLD!"};

        if(AF_DataRequest(&dstAddr,
                          &zclGenericAppEpDesc,
                          0x0000,
                          sizeof(inter_msg),
                          inter_msg,
                          &(pRsp.zclFrameCounter),
                          AF_DISCV_ROUTE,
                          AF_DEFAULT_RADIUS) == afStatus_SUCCESS )
        {

        }
        else{
            StubAPS_SetIntraPanChannel();
        }
        //Zstackapi_bdbResetLocalActionReq(appServiceTaskId);
    }

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

    尊敬的 Panagiotis:

    您可以从 Z-Stack 3.0.2\documents 中的 Z-Stack 3.0开发人员指南的第18节中了解有关跨盘传输的更多信息。  请注意、ININTER_PAN 必须被定义(非默认)、并且消息通过 AF_INTRING_MSG_CMD 接收、DstEndPoint 等于 STUBAPS_ININTER_PAN_EP。  应形成 ZC 的网络、您还可以评估发送与目标的 PAN ID 匹配的 INTERPAN 消息、而不是广播。  如果您遇到更多困难、请通过 CC2538 ZC 提供更多调试信息。

    此致、
    Ryan

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

    我 建立了 ZC 的网络、我还发送了 一条与目的地的 PAN ID 匹配的 INTERPAN 消息、但我仍然无法收到它。 在 ZC 中,我已经  在 OTA_DongleEp (&OTA_DongleEp )中添加了 StubAPS_RegisterApp(&OTA_DongleEp ); 在 OTA_Dongle_Init ( byte task_id )中,我还在 OSAL_OTA_Dongle.c 中添加了 StubAPS_ProcessEvent 和 StubAPS_Init。  我是否遗漏了尚未添加的内容?

    新数据包监听器屏幕截图:

    新代码:

        if(_btn == gRightButtonHandle)
        {
            zstack_getZCLFrameCounterRsp_t pRsp;
            Zstackapi_getZCLFrameCounterReq(appServiceTaskId, &pRsp);
    
    
            StubAPS_SetInterPanChannel(0x0F);
    
    
            dstAddr.addrMode= (afAddrMode_t)Addr16Bit;
            dstAddr.addr.shortAddr = 0x0000;
            dstAddr.endPoint = STUBAPS_INTER_PAN_EP;
            dstAddr.panId = 0x0014;
    
            static uint8_t inter_msg[] = {"HELLO, WORLD!"};
    
            if(AF_DataRequest(&dstAddr,
                              &zclGenericAppEpDesc,
                              0x0000,
                              sizeof(inter_msg),
                              inter_msg,
                              &(pRsp.zclFrameCounter),
                              AF_DISCV_ROUTE,
                              AF_DEFAULT_RADIUS) == afStatus_SUCCESS )
            {
    
            }
            else{
                StubAPS_SetIntraPanChannel();
            }
        }
    

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

    我发现了问题。 我意外地在 f8wConfig.cfg 中启用了所有通道。 现在我只设置了一个通道、它可以正常工作。

    感谢您的帮助!

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

    我有疑问。 如果我 将 InterPan 通道设置为与内部 Pan 通道中的通道相同,我是否需要 在 AF_DATA_CONFIRM 之后调用 StubAPS_SetIntraPanChannel (); 因为我不调用它,一切都正常

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

    StubAPS_SetInterPanChannel 更改器件的通道以进行 PAN 间通信、StubAPS_SetIntraPanChannel 将器件的通道设置回 NIB 通道。  如果您永远不需要为泛通信更改通道、则不需要调用这些函数。

    此致、
    Ryan

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

    好的、太棒了。 另外、 内部的范围是否小于 intrapan? 我已将 ZR 设置为 每10秒发送一次平移报告、但内部 ZC 缺失了其中一些报告。 当我把它们发送给网络协调器时、它就会把它们全部发送出去

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

    设置 内部通道不会改变传输输出功率。  ZC MAC 是否对 INTERPAN 消息进行了回写?  ZR 尝试重试多少次?  您可以尝试启用 APS ACK,以便 ZC 以可由 ZR 确认的消息进行响应,否则选择再次发送消息。

    此致、
    Ryan

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

    我将启用 APS ACK。 感谢 您的帮助!!!