First post, please be gentle with me !
Does the “real” time exist within the dataflash logs. Either as hours / min. / sec. or unix time?
If I review the dataflash log in mission planner I see a date/time.
However when convert .bin to .log and look in the resulting text file I can’t find anything that looks like a time/date.
We are looking for a timestamp to apply tide corrections to bathymetric data.
Thanks in advance,
Thank you this put me on the right track.
Here is a brief work through of my solution for anyone else looking to do a similar thing.
As you pointed out the “GPS” message contains
GMS (GPS Milliseconds since week start) and
GWK (GPS Week number)
We have written a python script that… (among other things)
Converts GWK to seconds (GPS Week number * 604800)
Converts GMS to seconds (GPS Milliseconds / 1000) 1 second resolution is plenty for our application
Add those two to get GPS Epoch seconds
Account for the pesky leap seconds (currently GPS is in front of Unix by 18 seconds so subtract 18)
The GPS message is in local time (on our system anyway) and we are currently +10Hrs so subtract another 36000 seconds.
Add on the difference between the start of Unix time and the start of GPS time 315964800.
Unix timestamp = GPS epoch + 315964800 - leap seconds - timezone (seconds)
And Python deals with Unix timestamps very nicely.
Hope this helps someone else.