This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Time synchronization in a stand-alone Mesh network

The time in a Mesh network shall be the same in every node. The SIG time model describes how to transfer time from one node to another. We already implemented this time model in our project. (Reference: SIG Mesh Model Specification 1.0.1, chapter 5, Time and Scenes).

But there is no procedure for handling the time distribution in the Mesh to keep all nodes in sync without external time source. As soon as every node reaches an uncertainty of 255 all time transfer stops and each node's time drifts away. After letting the Mesh run for weeks or even months every node runs on its own time.

This is a problem as we use the scheduler for turning on or off lights and other devices at a specific time. Even if the scheduled time is the same on all nodes the devices will switch at different times. After a long time the difference could be really large.

So my question is how to keep the Mesh in sync even without external time source. Is there any standard procedure? Does anybody have a good solution for this application?

Parents
  • Hi Andreas, 

    I'm sorry for the late response. I would need to double check with our Mesh team if there is any solution.

    However, my understanding of the time model in Bluetooth mesh spec is to be used with external time source.
    You may need to think of using your own proprietary time sync. My assumption here is that you don't plan to have very high accurate time sync. If they are a few hundred milliseconds apart it's still OK for lighting application, correct ? In that case you may consider using your own model, or use the time model but reset the uncertainty on the Mesh Time Authority just like it has an external source. The generic time will drift over time and that not possible to change (you can remedy it by doing some calibration on the Time Authority node) but at least all nodes still relatively in sync. 

Reply
  • Hi Andreas, 

    I'm sorry for the late response. I would need to double check with our Mesh team if there is any solution.

    However, my understanding of the time model in Bluetooth mesh spec is to be used with external time source.
    You may need to think of using your own proprietary time sync. My assumption here is that you don't plan to have very high accurate time sync. If they are a few hundred milliseconds apart it's still OK for lighting application, correct ? In that case you may consider using your own model, or use the time model but reset the uncertainty on the Mesh Time Authority just like it has an external source. The generic time will drift over time and that not possible to change (you can remedy it by doing some calibration on the Time Authority node) but at least all nodes still relatively in sync. 

Children
No Data
Related