3

Most LoRaWAN nodes do not have a battery-backed RTC (real-time clock). The only clock available is the "time since startup" counter in the controller. Although LoRaWAN packets are timestamped upon receipt in the gateway, there is no strict relation between events on the node and real time (say, UTC). This is especially important if events are queued in the node before transmitting them via LoRa. So, is there a mechanism by which real time can be deployed to a node in a reasonably exact way? For sure it is not sufficient to send a real time marker as an upload telegram to node upon next message receipt. Are timestamps sent within the scope of a Join?

Stefan
  • 1,036
  • 10
  • 32

1 Answers1

4

In LoRaWAN specification v1.0.3 you will have the DeviceTimeReq / DeviceTimeAns command doing just that.

DeviceTimeReq is sent by the device and the NS is answering with a DeviceTimeAns message containing an GPS Epoch time (without the leap seconds) based on the network time.

I don't know what time precision you want to achieve but you may need to issue that command regularly to compensate for your node's clock drift

In < 1.0.3, it's also possible to have some kind of synchronization using Class B : a beacon is sent exactly every 128s (if your base station is GPS sychronized) so you can use that to get a time reference on your node.

Pierre DUFOUR
  • 106
  • 1
  • 2