将当前时间部署到 LoRaWAN 节点?

Deploy current time to LoRaWAN node?

大多数 LoRaWAN 节点没有电池供电的 RTC(实时时钟)。唯一可用的时钟是控制器中的 "time since startup" 计数器。 尽管 LoRaWAN 数据包在网关收到时带有时间戳,但节点上的事件与实时(例如 UTC)之间没有严格的关系。如果事件在通过 LoRa 传输之前在节点中排队,这一点尤其重要。 那么,是否有一种机制可以以合理准确的方式将实时部署到节点?可以肯定的是,在收到下一条消息时将实时标记作为上传电报发送到节点是不够的。时间戳是否在加入范围内发送?

在 LoRaWAN 规范 v1.0.3 中,您将使用 DeviceTimeReq / DeviceTimeAns 命令执行此操作。

DeviceTimeReq 由设备发送,NS 使用包含基于网络时间的 GPS 纪元时间(不含闰秒)的 DeviceTimeAns 消息进行应答。

我不知道您想达到什么时间精度,但您可能需要定期发出该命令以补偿节点的时钟漂移

在 <1.0.3 中,也可以使用 Class B 进行某种同步:每 128 秒发送一次信标(如果您的基站是 GPS 同步的),因此您可以使用它来在您的节点上获取时间参考。