协议栈:MESH1.0
芯片:CC2530
预编译:已开启NV
问题描述:终端关闭电源约5分钟,再打开终端。发现协调器发出leave,终端并没有rejoin。
请问是终端的原因,还是协调器端的原因。
附件中,第47行开始为终端重上电。
aa.rar
Alvin Chen:
问题应处在协调器方面,如果每次都可以复现,可以去debug一下。为什么发leave 很奇怪, leave 的option 是允许rejoin的,但是rejoin 不成功。可以看到抓包文件中的GTS是不允许加入的。
user5032796:
回复 Alvin Chen:
嗯嗯,感谢。我刚才做了几个测试(我怀疑是终端休眠导致的)
第一个是终端断电后,隔1.2分钟再重新上电。协调器并不会发出leave,并且终端能正常加入网络。如果断电时间久了,就会发出leave,并且无法重新加入了。
第二个是我把终端的POWER_SAVING关掉。然后终端无论掉电多久都可以正常再加入,并且协调器不会发出leave。
Alvin Chen:
回复 user5032796:
Power Saving 不会导致这个问题吧,你能否SDK 为改动的demo在你的相同硬件上做测试呢?
user5032796:
回复 Alvin Chen:
好的,我试试。