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.

[参考译文] LP-EM-CC1354P10:Wi-SUN ns_br 中止 — 需要诊断帮助

Guru**** 2553450 points
Other Parts Discussed in Thread: SYSBIOS, CCSTUDIO

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1552772/lp-em-cc1354p10-wi-sun-ns_br-abort---need-help-diagnosing

部件号:LP-EM-CC1354P10
主题中讨论的其他器件:SYSBIOSCCSTUDIO

工具/软件:

您好:

 我在默认 ~/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01.中安装的 Fedora 下使用 TI Simplelink SDK 8.30.01.01

 我使用两块 LP-EM-CC1354P10-1 电路板、在一个电路板上运行修改后的路由器(即终端设备,节点)软件、在另一个电路板上运行几乎未修改的边界路由器。 唯一的修改是根据 simplelink Academy 将波特率更改为 460800、并根据我的地区将该区域从 NA 更改为 EU(即 868.1MHz 通道 0)。 其余设置为默认值、未更改。

 我已成功使用 wfantund 并使 UDP 正常工作。

 但后来我离开了边界路由器运行了一夜,我回来发现它滞留在中止处理程序。 遗憾的是、除了此堆栈跟踪外、我没有其他任何信息、我很高兴尝试重现并了解其中的底层、因为我计划在生产中使用它、当然我担心这种情况会在现场发生。 以下是堆栈跟踪:

```μ s

TI_SYSBIOS_RUNTIME_SysCallback_defaultAbort ()  0x0004860A
SysCallback.c113:5
TI_SYSBIOS_RUNTIME_SystemSupport_ABORT ()  0x0004860A
SysCallback.C69:5
TI_SYSBIOS_RUNTIME_System_ABORT ()  0x0004860A
System.C160:5
TI_SYSBIOS_RUNTIME_Error_raiseX ()  0x00048602
Error.c132:9
TI_SYSBIOS_FAMILY_ARM_v8m_Hwi_excHandlerMin ()  0x000456D8
Hwi.c1133:1
TI_SYSBIOS_FAMILY_ARM_v8m_Hwi_excHandlerAsm + 0x2e ()  0x0004AB2E
Hwi_asm_gcc.S293:0

```μ s

我在本地缺少异常编号、因此无法提供。

我可以了解更多信息:

我使用的是 CCS Theia。

我等待着你能给我的任何帮助。

此致、

Alon

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

    尊敬的 Alon:

    1. 是否也有来自 wfantud 控制台的输出?
    2. 您正在使用哪个 wfatund 版本 (TAG)?
    3. 您能 解释一下路由器方面的修改吗?
    4. 晚上是否有任何通信活动?

    我以前没有见过这种情况、但我建议您从  昨天发布的新 SDK 8.31 开始、并与新的 wfantund 版本相匹配。 检查是否再次发生。

    此致、

    Daniel

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

    尊敬的 Daniel:

     1.我没有复制,也没有从控制台存储输出。 下次我会再来的。

     2.我使用 commit [TI_WiSUN _STACK_01_00_08](https://github.com/TexasInstruments/ti-wisunfantund/commit/85e3af36bbb63a852be102cc9fa1cebea0d3b5c3) 、进行上面的微小更改、将波特率更改为 460800、将端口更改为 19080(因为我在主机上运行并获取 80)、默认 TTY 为 ttyUSB0(因为我使用外部 usb2serial 而非集成到 XDS110 的 usb2serial)

    3、只是波特率。 我将使用新的 SDK 重试。

    4.我离开了一个进程,每秒通过 NCP ping 路由器到边界路由器

    同时,除了这一点,我有两个问题,我需要收集更多的信息:

    1.重复跌落和重新连接 — 每 250~秒一次。 当它发生时,我看到通过“ dodagroute “,有一个路径成本为 0 — 这是一个错误吗?

    2.初始引导有时不能完成(或会有,但我停止等待~5 分钟)。 完成后、时间可长达 1:30 分钟或多分钟。 我正在查看到目前为止的网络统计数据、即加入国家 1-5 和发送/收到的 PA、PA、PC、PC 的统计数据 — 是否有更好的调试方法? 获取 wfantund 转储更多信息以通过 Wireshark 显示? 是否有任何关于调试 wisun 启动和下降的应用手册?

    提前感谢、

    此致、

    Alon

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

    ns_br_src 示例无法从源代码 (FTFS) 构建、因为缺少包含路径-**#include “rcp_mac_common.h"**失败“失败、缺少的路径为 source/ti/ti_wisunfan/rcp

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

    很抱歉噪音、实际上错误在 router.opts 中缺少定义:

    DNANOSTACK_DEVICE_TABLE_ENTRY_BR=50
    DNANOSTACK_DEVICE_TABLE_ENTRY_RN=50
    DWISUN_RCP_ENABLE

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

    尊敬的 Alon:

    关于您的第二个问题(无法构建 ns_br_src)、我相信您可能导入了一个 8.30 示例(可能是您的旧工程)、但尝试使用 8.31 SDK 进行构建。 RCP 是随 8.31 一起发布的新功能、其定义不在 8.30 上。

    因此、确保对于 8.31 SDK 工程、您实际使用的是 8.31 SDK。 从“项目属性 “>"常规“常规“>"依赖“依赖项“。

    8.30 工程也是如此、请确保选择 8.30 SDK。

    回到第一个问题:我将尝试使用 SDK 8.31 在夜间运行相同的设置、并为您提供更新。

    另外、如果您在 8.31 上运行时遇到同样的不稳定性问题、请告诉我。

    此致、

    Daniel

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

    尊敬的 Daniel:

    谢谢。 到目前为止、我未能构建 8.31ns_br_src — 您觉得它适合您;您使用的是哪个版本的 CCS Theia? 哪种操作系统? 我在 Linux 上 (Fedora 42)。 我会尝试在干净的环境中构建它。

    此致、

    Alon

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

    尊敬的 Daniel:

     我已经完全重新安装了 CCStudio 到最新版本(版本:20.2.0.12_1.8.0 从关于)、但当我转到资源管理器时、它似乎缓存了我安装了 8.30.01.01 的事实、甚至没有注意到新的 8.31.00.11 在~/ti 中 — 我还没有找到这个猜想的缓存的位置。 您知道我需要做什么来强制 CCS 重新计算产品列表吗?

    其次、您是使用 FreeRTOS 还是基于 TI-SYSBIOS 的 ns_br_src 等工程? 哪一项更成熟? 它们之间是否有性能差异?

    此致、

    Alon

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

    尊敬的 Alon:

    我使用的是 CCS 20.2、我已经在 Windows 11 和 Ubuntu 22 上构建了它。

    由于 8.31.00.11 版本是最新版本、它尚未显示在 CCS 的 Resource Explorer 中(这不是一个缓存错误)、也未显示在 嵌入式软件中 。 更新这些文件还需要几天时间。 您必须使用安装文件 SIMPLELINK-LOWPOWER-F2-SDK 软件开发套件 (SDK)| TI.com来安装 SDK。

    创建新工程时、不使用 Resource Explorer、而是使用“File > Import Projects“并从/home/user/ti/simplelink_cc13xx_cc26xx_sdk_8_31_00_11/examples.导入工程 也许这会造成问题。

    我个人使用的是 TI-RTOS、但我们确实为 Wi-SUN FAN 提供了 TI-RTOS 和 FreeRTOS 的示例。 我手头上没有任何性能测量、但我相信它们没有那么不同。 以下是我的同事的其他评论:

    LP-EM-CC1354P10:CC1354:TI-RTOS 与 FreeRTOS 比较和 Sensor Controller Studio 迁移路径 — Sub-1 GHz 论坛 — Sub-1 GHz - TI E2E 支持论坛

    CC1312PSIP:使用 TI-RTOS 时、是否迁移到 FreeRTOS? -低于 1GHz 论坛 — 低于 1GHz - TI E2E 支持论坛

    此致、

    Daniel

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

    尊敬的 Daniel:

     同时、我已经完全按照您的概述完成了、我正在运行 BR。

     基于路由器的应用程序的上一个版本 (8.30.11) 可以正常工作,发送 UDP。

     我没有让它运行很长时间、因为我想将它从 8.30.1.1 移植到 8.31.0.11 — 是否有任何相关备注? 到目前为止、我通过区分 SDK 版本之间的文件来修复初始化更改 (application.c)、设法进入第 2 阶段、但这当然是乏味的。

     您是否计划拥有一些移植注释? 您希望如何使用 API? 我从工作的 BR &路由器示例开始、然后将边界路由器的所有相关部分复制到我自己的项目中。 现在我需要迁移、这当然是次优的、因为我需要发现任何新的 API 调用。 最初我也有丢失的符号错误和定义,我发现通过对“.project"和“和“.cproject"文件“文件做区别,并通过大量的 grepping .

    此致、

    Alon

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

    尊敬的 Daniel:

     @某些 C 预处理器定义是通过 tiarmclang 的“ “支持而给出的、而另一些则是通过.cproject 设置的 makefile 参数?

     是否在不 支持 WISUN_RCP_ENABLE 和 BR 的情况下运行路由器?

    此致、

    Alon

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

    尊敬的 Alon:

    • 我在运行网络一夜之间、每秒从边界路由器 ping 路由器节点、而不会出现任何问题。 但我会不断研究这一点。
    • 目前没有从 SDK 8.30.01.01 到 8.31.00.11 的迁移指南、但应该很简单。 建议的方法是从 8.31 SDK 中的示例开始、并将您的应用代码迁移到该 SDK 中。 Wi-SUN 栈和 wfantund 的 NCP 接口保持不变。 application.c 中的所有 API 也保持不变。 但是、由于堆栈架构变化、目前所有示例都需要 WISUN_RCP_ENABLE。 我们不建议尝试反向移植到以前的 SDK 中。
    • 我还没有关于你最后一个问题的答案,关于预处理程序的定义,我稍后会回来给你。

    此致、

    Daniel