You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have recently noticed that a lot of nodes in our mesh are sending stale time information into the mesh. This leads to lots of other nodes then syncing onto this incorrect time information.
I have captured some datapoints below - where you can see that these nodes keep sending the same time information over and over again. You can see how the difference to the real time now keeps growing over time.
I would however appreciate a review of someone more familiar with this code. I am not sure if the real time update should actually be fed in elsewhere. I have just fixed it in the spot where the incorrect information is normally sent into the mesh.
There is another minor fix in there where ignoreRequest wasn't reset and so got stuck whenever that occured until some other event might have cleared it.
One more question that arose for me - right now the code accepts time syncs from anywhere. Would it make sense to limit this to our "trusted" primary channel only? I have added that in my commit too.
@wnagele Looks good to me as well. Since indeed localPosition.time may not be available, it makes sense to me to use getValidTime() if the RTC quality is not met. Can you create a Pull Request with your changes?
One more question that arose for me - right now the code accepts time syncs from anywhere. Would it make sense to limit this to our "trusted" primary channel only? I have added that in my commit too.
That's a matter of preference and I think this makes sense.
Category
Other
Hardware
Not Applicable
Firmware Version
up to 2.2.15
Description
I have recently noticed that a lot of nodes in our mesh are sending stale time information into the mesh. This leads to lots of other nodes then syncing onto this incorrect time information.
I have captured some datapoints below - where you can see that these nodes keep sending the same time information over and over again. You can see how the difference to the real time now keeps growing over time.
I have worked on a fix for this here: wnagele@41c190c
I would however appreciate a review of someone more familiar with this code. I am not sure if the real time update should actually be fed in elsewhere. I have just fixed it in the spot where the incorrect information is normally sent into the mesh.
There is another minor fix in there where
ignoreRequest
wasn't reset and so got stuck whenever that occured until some other event might have cleared it.One more question that arose for me - right now the code accepts time syncs from anywhere. Would it make sense to limit this to our "trusted" primary channel only? I have added that in my commit too.
Let me know what you think.
Relevant log output
The text was updated successfully, but these errors were encountered: