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.

[参考译文] CC2674P10:在禁用 BDB_finding_binding_capacity_enabled 的情况下保存报告配置时出现问题

Guru**** 2455560 points
Other Parts Discussed in Thread: Z-STACK

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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1448793/cc2674p10-issue-saving-reporting-configuration-with-bdb_finding_binding_capability_enabled-disabled

器件型号:CC2674P10
Thread 中讨论的其他器件:Z-stack

工具与软件:

您好!

我目前正在使用 Z-Stack 开发一种 Zigbee 应用、并且在发送时遇到问题 Config Reporting发送到终端设备的命令。

已在 endDevice 成功接收配置。 但是、当 BDB_FINDING_BINDING_CAPABILITY_ENABLED选项禁用时、Z-Stack 无法保存配置。 帮助我们简化模型 bdb_reporting.c特别是在函数中 bdb_ProcessInConfigReportCmd我发现,它失败了,因为没有一个 endPointDescriptor. 此问题位于代码的这一部分:

// Find Ep Descriptor
endPointDesc_t* epDescriptor = bdb_FindEpDesc(pInMsg->endPoint);
if (epDescriptor == NULL)
{
    return (ZInvalidParameter);
}


问题似乎源于 bdb_HeadEpDescriptorList它在时不会初始化 BDB_FINDING_BINDING_CAPABILITY_ENABLED时被禁用。 添加了新的符号 af.c内部的元素 afRegisterExtended我注意到了初始化 bdb_HeadEpDescriptorList受此选项制约:
#if (BDB_FINDING_BINDING_CAPABILITY_ENABLED == 1)
// Make sure we add at least one application endpoint
if ((epDesc->endPoint != 0) && (epDesc->endPoint < BDB_ZIGBEE_RESERVED_ENDPOINTS_START))
{
    bdb_HeadEpDescriptorList = epList;
    ep->epDesc->epType = bdb_zclFindingBindingEpType(ep->epDesc);
}
#endif


为了解决此问题、我修改了代码以bdb_HeadEpDescriptorListBDB_FINDING_BINDING_CAPABILITY_ENABLED禁用时进行初始化。 以下是更新后的代码:
// Make sure we add at least one application endpoint
if ((epDesc->endPoint != 0) && (epDesc->endPoint < BDB_ZIGBEE_RESERVED_ENDPOINTS_START))
{
    bdb_HeadEpDescriptorList = epList;
#if (BDB_FINDING_BINDING_CAPABILITY_ENABLED == 1)
    ep->epDesc->epType = bdb_zclFindingBindingEpType(ep->epDesc);
#endif
}


进行这种修改后、报告配置可正常工作、Z-Stack 会成功保存该配置。

我的问题是 :为什么是初始化的 bdb_HeadEpDescriptorList由调节 BDB_FINDING_BINDING_CAPABILITY_ENABLED有哪些不同的选择? 禁用此选项时、此逻辑似乎会阻止基本功能、例如报告。 此设计是否有具体的原因、或者是否存在我应注意的含义?

提前感谢您的见解!



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

    尊敬的 Abderrahman:

    感谢您提供所有这些详细信息。  我同意您的评估和权变措施、除了您的 其他请求外 、我将确保研发团队能够解决这一问题。

    此致、
    Ryan

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

    Zigbee 研发团队已同意 您 建议的修复方法是正确的、并将应用于 未来的 SDK 版本。

    此致、
    Ryan