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.

[FAQ] [参考译文] [常见问题解答] TI15.4 Stack:在收集器复位或断电后、15.4网络会发生什么情况?

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1226075/faq-ti15-4-stack-what-happens-to-a-15-4-network-after-collector-reset-or-power-loss

收集器复位后、它将丢失其在已连接器件上的信息。 但是、传感器仍具有这些引脚。

如果功率损耗导致传感器短路、从而注意到收集器已离线、则不会进入孤立状态。 由于它仍然知道网络、因此它将能够向收集器发送消息。

收集器将接收这些消息并在 MAC 层上确认它们。

但是、由于传感器不在连接设备列表中、因此不会向应用提供信息。

因为传感器仍收到确认。 因此、 即使 无法进行通信、它也会认为该连接正在进行中。

如何处理此问题:

了解此问题可帮助您通过多种方式解决它。

针对此问题、经测试的可能解决方案为:

添加

if (findDevice (&pPollInd->srcAddr)== NULL &&

          pPollInd->srcAddr.addrMode == ApiMac_addrType_short)

       {

           Cllc_sendDisassociationRequest (addr.addr.shortAddr、false);

       }

 

收集器轮询回调" PollIndCB (ApiMac_mlmePollind_t *pPollInd. ) collector.c.

这会导致收集器在接收到未知设备的消息后发送解离请求。

  

传感器项目中的系数  

Util_setEvent (&Sensor_Events、SENSOR_START_EVT);

可在 jdlc.c 中找到的 disassocIndCb()  

这将导致传感器重新启动网络。 接收到取消关联请求后。