Thread 中讨论的其他器件:SysConfig、 Z-stack、
我正在尝试将 NWK_INDIRECTIVE_MSG_TIMEOUT 从默认值7秒更改为30秒。
首先、我更改了 SysConfig Z-Stack -> Advanced -> Routing 设置中的值。 这更改了 ti_ZStack_config.h 中这一行的内容:
#define NWK_INDIRECT MSG_TIMEOUT 30.
NWK_INDIRECT _MSG_TIMEOUT 被 zglobals.c 中的以下初始化代码引用:
uint8_t zgIndirectMsgTimeout = NWK_INDIRT_MSG_TIMEOUT;
我可以看到 zgIndirectMsgTimeout 在这里初始化为(30)、但后来一些库代码将它改回(7)。
经过一些研究,我发现 zgIndirectMsgTimeout 被系统配置变量(Zstackapi_sysConfigReadReq ()/ Zstackapi_sysConfigWriteReq ())覆盖。 因此,我添加了一些代码来使用 Zstackapi_sysConfigWriteReq ()将 indirectMsgTimeout 变量设置为(30)。 现在、zgIndirectMsgTimeout 被初始化为(30)并在操作期间保持为(30)。
但是、即使 zgIndirectMsgTimeout 为(30)、器件(协调器)的行为就像此值为(7)一样。 例如、如果我为休眠终端设备排队等待消息、则消息将在消息排队5秒后发送 DataRequest 时发送至设备、而如果终端设备在消息排队10秒后发送 DataRequest、则消息将被丢弃。
请告知如何更改间接消息超时。
我正在使用 zc_SampleApp_LP_CC2651P3_tirtos7_ticlang (simplelink_cc13xx_cc26xx_SDK_6_41_00_17)。
谢谢。
Andy