最近,我开始研究支持 LoRa 的设备,并注意到其中一些设备在未从网络服务器配置时无法处理情况。这在开发过程中经常发生(特别是如果 NS 也在开发中)。
这是发生的事情:
某些设备在重启后会再次发送 JOIN。但并非所有设备都可以重启!我见过的一些仪表在重新连接硬接线电池后拒绝工作!
设备应如何检测/处理与 NS 的这种“断开连接”是否有任何“通用”方法?
终端设备可以通过请求网络服务器的下行链路来定期检查会话。
发送确认的数据包或链接检查请求应引起服务器的响应。
ADR 将在 64 个上行链路后请求下行链路,并应收到响应。如果在 32 个额外的上行链路之后没有看到响应,则数据速率会降低。如果达到最低数据速率,则重新启用默认通道。终端设备不认为会话丢失或断开,它会继续发送数据包,直到电池耗尽。
应用程序应根据其要求和期望确定会话何时丢失。