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.

[参考译文] CC2652R:CCA RSSI 阈值变化未生效

Guru**** 1855670 points
Other Parts Discussed in Thread: CC2592, CC2652R, LAUNCHXL-CC1352P, SMARTRFTM-STUDIO, SIMPLELINK-2-4GHZ-DESIGN-REVIEWS, LAUNCHXL-CC26X2R1
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/972957/cc2652r-cca-rssi-threshold-changes-not-taking-effect

器件型号:CC2652R
主题中讨论的其他器件:CC2592LAUNCHXL-CC1352PSMARTRFTM-STUDIOSIMPLELINK-2-4GHz-设计评审LAUNCHXL-CC26X2R1

大家好、我们有一个基于 CC2652R 的器件、在传输 Zigbee 数据包时遇到问题。  我们将 CC2652R 与 CC2592范围扩展器配对,并使用 SimpleLink CC13x2 26x2 SDK 4.20.1.04。  我们的产品不使用电池电源运行、因此我们的近场电本底噪声不是那么安静。

我们得到了相当多的数据,表明问题是 CSMA 逻辑。  我们的天线非常敏感、我怀疑即使在空闲通道上、正常工作本底噪声也非常接近 CSMA 逻辑的 RSSI 阈值。  由于基线测量的 RSSI 通常超过阈值、因此 CSMA 逻辑会超时尝试发送数据包、结果导致数据包严重丢失。

我遵循链接线程中的建议、更改了 mac_settings.c 中的 RF_cmdIEEERx.ccaRssiThr 值  我没有看到任何行为变化,进一步的调查显示,该字段在初始化之后稍后被堆栈中的其他内容更改。

我还尝试在我的代码中稍后更改 RF_cmdIEEERx.ccaRssiThr 的值,然后调用 macSetupReceiveCmd ()尝试复制 mac_settings.c 中的一些代码  虽然我确实看到我对 RF_cmdIEEERx.ccaRssiThr 的更改是永久性的,但它看起来不像是我的值实际被发送到硬件。

我现在遇到的第一个也是最重要的问题是更改 RF_cmdIEEERx.ccaRssiThr 值的正确方法是什么?  正如我说过的,在 mac_settings.c 中更改它似乎不会粘滞。  是否有方法从硬件读回当前值?

顺便说一下、我还尝试按照另一个线程中的建议更改 macMaxBE、BE 和 macMaxCSMABackbose、这些值也会被覆盖。  实际上、我被困在代码中定期更改它们、堆栈中的其他内容将持续覆盖我的更改。  如果对此有任何深入了解,也将不胜感激。

此致、

中国赠款

WattIQ

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

    尊敬的 Grant:

    您是否已使用 SMARTRFTM-Studio 评估了硬件的射频无线电功能?  此外、您是否在您的环境中尝试过使用 LAUNCHXL-CC1352P (-2)或 LAUNCHXL-CC26X2R1?  在大多数应用中、无需修改 CSMA。  我建议您将硬件设计提交至 SIMPLELINK-2-4GHz-design-reviews。

    此致、
    Ryan

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

    您好、Ryan、感谢您的回答。  我们的硬件团队仍在讨论提交我们的硬件设计。  同时、您正在从 SmartRF Studio 中寻找哪些类型的值?  当我在闲置的 Zigbee 通道上启动"连续 RX"测试时、我在图中看到一条相当平坦的线、范围从-80dBm 到-86dBm、平均值约为-84dBm。

    如前所述、我们的电路板不是由电池供电的、这意味着它通常由120V 交流壁式电源供电。  在电路板插入交流电源时连接 JTAG 是一个糟糕的主意、因此当电路板完全由 JTAG 供电时、我只能运行 SmartRF Studio。  在由交流壁式电源供电的正常操作中、系统中可能会有更多的噪声、无线电中可能会有更高的本底噪声。

    此外、我还检测了我们的固件、以便在调试器控制台中定期输出 RF_cmdIEEECsma.lastRssi 的值。  该值的范围为-75至-85。  同样、这是电路板由 JTAG 供电时的情况、因此当电路板插入交流壁式电源时、本底噪声可能会更高。

    此致、

    授予

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

    您已经知道代码中的 RSSI 阈值位置。  默认 RF_cmdIEEERx.ccaRssiThr 值为0x64、因此交流壁式电源可能会引入大量噪声。 我认为、如果仅通过 JTAG 为您的电路板供电、则可以很好地查看问题是否出现。   

    此致、
    Ryan

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

    您好、Ryan、我想知道如何更改 RF_cmdIEEERx.ccaRssiThr 的值并使其坚持。  该字段看起来会被 mac_cfg.c 文件中 macPibDefaults 结构的 rssiThreshold 字段中的值覆盖。  mac_cfg.c 中的默认值为-83。  如果我将该值设置得比我在硬件上看到的平均基线 RSSI 值高、那么我的发送问题就可以解决很多了。

    我将注意到、原始线程中提供的信息似乎不正确、至少对于我正在使用的 SimpleLink 版本而言是错误的。  在 mac_settings.c 中更改 rf_cmdIEEERx.ccaRssiThr 的值不起作用、因为该值会被栈中的其他内容使用 mac_cfg.c 中的值覆盖

    在我将此问题标记为已解决之前、mac_settings.c 文件中的 macPibDefaults 结构中是否有任何其他字段会影响无线电性能、我应该知道这些字段?  是否有任何有关该结构的文档?

    谢谢、

    授予

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

    尊敬的 Grant:

    很高兴听到您在 RSSI 阈值方面取得了进展、感谢您提供了更新。  没有有关 MAC PIB 结构的更多文档、您可能对 MAC_DEFAULT_[MIN/MAX]_BY 感兴趣、但我看不到任何其他值需要进一步评估。

    此致、
    Ryan