I've been running the on board datalogger quite a bit lately and it seems to be working for the most part, but there's a lot of stuff that doesn't make sense.
For example, the GPS time data is difficult to decipher. According to the datalogging help page, the time value is the "Time of the week (UTC)" in milliseconds. What on earth does this mean? The GPS start time value is 46,017,250, which corresponds to 12.78 hours (assuming that number is actually in milliseconds...), but I started datalogging on Tuesday May 29th at 16:50, so there's no way that the beginning of the week was 12 hours ago.
Also, I left the datalogger running overnight until 09:04 and the end value is 57,847,500, which indicates that the logger only ran for 11,830,250ms (equal to 3.29 hours). I noticed that the logfile had "wrapped around" in memory when I downloaded it, so it seems like there's a maximum amount of time that the logger can actually log before overwriting data. How can I determine the time and date of my flights from this data? Or will I have to log it the old-fashioned way (pen and paper)?
I have other questions too, but I'd like to start with this for now. Could anyone please explain?
Thanks!
Replies
Okay, I think I have it figured out.
I looked up the GPS datasheet, and on page 14 it suggests that the time is output in the format hhmmss.sss - I examined the numbers I was getting using this format, and it still didn't make sense - the last data I got from the GPS time unit was 64582514, which would suggest 6 hours, 45 minutes, 82 seconds, and 514 milliseconds. Obviously 82 seconds doesn't work.
However, examining the numbers as just milliseconds again, I found that 64582514/(60*60*1000) = 17.9 hours. I got the data at about 10:55 PDT, which corresponds to 17:55 UTC. Looks like you were right, Michael! (I mean, of course, you pretty well built Ardupilot ;)
So thanks very much for the help! May I humbly suggest that the page I referenced in my first post be updated to more accurately reflect the fact that time is from the beginning of the day and not the week?
And just in case we thought the issue was resolved, I wanted to clarify another quirk about the logged time - I noticed that the GPS time data doesn't refresh at a consistent 10Hz. It looks like it takes three readings at once, then two more a few dozen ms later, and then three more, and then two more, and then it has counted one full second and the cycle starts again. Is this something that anyone else has noticed?
All the tips and suggestions are really appreciated, thanks!
to expand on this, the time on the mtk is recorded as milliseconds from midnight based on utc time.
It's known the logs are only good for maybe 3.5-4 hours based on the size of the high speed data card inlcuded. Normal flash isn't fast enough, thus why it's a special card.
Next, the logs are information from the sensors, so the GPS firmware is responsible for the unique time format.