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.

[参考译文] CC1352P:如何将非信标模式下的数据发送设置为直接或间接发送?

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1403617/cc1352p-how-to-set-the-data-sending-in-non-beacon-mode-to-direct-or-indirect-sending

器件型号:CC1352P
主题中讨论的其他器件:SysConfig

工具与软件:

您好、TI:

从问题 CC1352P:如何解析15.4 stack ApiMac_mcpsDataReq ()返回 ApiMac_status_transactionOverflow? -低于1GHz 论坛-低于1GHz - TI E2E 支持论坛

我有同样的问题、但不知道如何解决、因此我想尝试在非信标模式下将发送的数据设置为直接。 当然、如果您对此有更好的建议或解决方案、我非常感谢您也告诉我。 谢谢!

https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_6_20_00_29/docs/ti154stack/html/ti154stack/non-beacon-mode.html#data-exchange

我 期待收到您的回复。

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

    您好、Yi

    当您说存在相同的问题时、您的意思是与发送数据包的频率相比、您正在排队的数据包过多、因此 Tx 缓冲区溢出?

    谢谢、

    Marie H.

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

    是的、发生了 ApiMac_STATUS_TRANSIOOverflow、无法恢复。 当我调用 ApiMac_mcpsDataReq 时、数据是否会立即发送出去、或者它是否会延迟时间?

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

    您好、Yi

    请在"TI 15.4 Stack -> Network -> Application the reporting and polling interval"下检查传感器和收集器项目的 SysConfig、并确保在发送数据后没有更快的队列数据。

    您还可以使用全局变量"Sensor_msgStats"和"Collector_Statistics" 跟踪发送和接收的消息。

    如果您仍遇到问题、请提供:
    1.传感器和控制器工程的 SysConfig TI 15.4 Stack 设置(模式、无线电、网络、应用)
    2.如何填充 Tx 缓冲区?
    3.如何发送数据?

    此致、
    等等

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

    我们的设备容易发生 ApiMac_STATUS_TransactionOverflow、然后在超过20次后无法恢复和重新启动。

    当我调用 ApiMac_mcpsDataReq (&dataReq)时、数据是否会立即发送出去? 如果没有、我如何立即将其发送出去?

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

    您好、Yi

    1.您是否使用非信标模式?

    2.您是否使用示例项目中的默认无线电设置?

    3.请与我分享一下 TI 15.4 Stack -传感器和 收集器项目的应用设置吗?

    如果您在非信标模式下调用收集器上的"ApiMac_mcpsDataReq (&dataReq)"、则消息将排队并在传感器接收到轮询请求时立即发送。  

    为了避免缓冲区溢出、您需要确保传感器轮询的频率高于收集器侧数据的排队频率。 您可以在传感器 SysConfig 中调整轮询间隔。

    此致、
    等等

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

    尊敬的 Theo:

    是的、我使用非信标模式。

    报告间隔的值为3000、轮询间隔的值为2000。这两个参数的含义是什么?
    这意味着当我调用"ApiMac_mcpsDataReq (&dataReq)"时、我的"dataReq"数据可能需要2或3秒才能发送? 这对我来说有点慢、因为我的项目发送的数据项太多、并且我希望立即发送数据、我需要怎么做?

    谢谢

    此致、

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

    您好、Yi

    在收集器 SysConfig 中、报告间隔是收集器从传感器请求的消息发送间隔。 轮询间隔是收集器向传感器请求的消息请求间隔。 这些值在传感器第一次连接到收集器后发送、作为收集器到传感器的配置消息的一部分。

    您可以调整这些值。 我建议您降低"Polling Interval"。 然后、传感器将更频繁地请求收集器发送消息、这将比更频繁地发送消息。  

    您可以在 SimpleLink Academy 中找到一个示例:
      -任务3) 9. 和任务4) 5. SimpleLink Academy:传感器和收集器 TI 15.4 Stack: https://dev.ti.com/tirex/explore/node?node=A__AchrNsM7a4pBwreGXXho7Q__com.ti.SIMPLELINK_ACADEMY_CC13XX_CC26XX_SDK__AfkT0vQ__LATEST


    此致、
    等等

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

    您好、Yi

    这是否解决了您的问题?

    此致、
    等等

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

    尊敬的 Theo:

    没有解决方案,即使我把轮询间隔设置为300ms,我的设备仍然重新启动一段时间,因为 ApiMac_status_transactionOverflow。

    此致、

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

    您好、Yi

    1.您是否也在传感器 SysConfig 中更改了轮询间隔? 如果不是、请将其设置为与收集器上的值相同。

    2.请使用监听器验证您是否每300ms 从传感器发送一次拉取请求、并向我提供日志以进行进一步调试。

    此致、
    等等

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

    您好、Yi

    您能否调整轮询间隔以便不再出现缓冲区溢出?

    此致、
    等等

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

    但我们使用的是非信标模式、传感器不会定期获取数据。

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

    尊敬的 Theo:

    所以我现在怀疑,在非信标模式下,当我调用收集器上的 ApiMac_mcpsDataReq 函数时,他不会立即执行,所以我想回到原来的问题:我如何得到 ApiMac_mcpsDataReq 函数直接发送数据时,我调用它在非信标模式?

    此致、

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

    您好、Yi

    当您使用非信标模式时、传感器将在 指定的间隔内睡眠以降低功耗。

    通过查看用户指南中的数据交换数字、您可以看到、没有延迟的直接数据交换只能从传感器到收集器、因为收集器始终处于唤醒状态(https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_6_20_00_29/docs/ti154stack/html/ti154stack/non-beacon-mode.html#fig-non-beacon-direct-data-sequence)。 另一方面、收集器只能在传感器处于唤醒状态时向传感器传输数据。 这通过传感器向收集器发送轮询请求获取信号、收集器将通过一条数据消息给传感器进行应答。 当传感器处于休眠状态且没有发送轮询请求时,当调用 ApiMac_mcpsDataReq ()(https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_6_20_00_29/docs/ti154stack/html/ti154stack/non-beacon-mode.html#fig-non-beacon-direct-data-sequence )时,数据将被写入缓冲区。 可以调节传感器的轮询间隔、如果您缩短轮询请求间隔、收集器将能够向传感器发送更频繁的消息。

    如果希望进行直接数据交换、则需要切换到信标模式(https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_6_20_00_29/docs/ti154stack/html/ti154stack/beacon-mode.html#)。

    此致、
    等等