How are Tracklog Timestamps and Time Zones stored and used in Basecamp?

When I look at the properties of a track that I have imported to Basecamp from my Garmin GPSMAP 62stc the Time column appears to have been adjusted back to GMT (I live in the UK) from the time where the track was recorded (in this case in Oman at GMT -4).
I don't have control of the time while it is being tracked because GPS always uses the local time.
I do have control of the time stamps on my photographs because the camera allows it.
Usually I remember to change the camera time to match local time and I take a photo just after I start tracking so I can synchronize the track and photo times and, if necessary, use the beautiful Geotag Photos /Photo Import/ Timeshift field in Basecamp.
However:
I had divided up my two weeks of tracklogs into a total of 87 Basecamp tracks so I could colour code each track to show the activity of that portion (e.g walking, driving, boating and using 4WD). Then, To geotag all my photos I had to select each track in turn, and set the timeshift to -4 every time!
If only it were possible to have a the timestamps left at local times and/or an option to tell Basecamp a Timeshift value to apply until I change it to something else, I could have got on a lot faster.

My question to Basecamp is: have I missed an option that would avoid my timezone timeshift problem?
If not, could someone please explain how the 62stc and Basecamp store the timezone of a track.

It is quite hard work looking at a detailed track log with GMT timestamps and doing the arithmetic to match the notes I make as I go along the actual trip. It is worse around midnight when GMT is the day before the actual recording.

I upgraded to the 62stc originally because it has a built-in 5mp camera which automatically geotags those pictures (ideal for photos of potholes which you want to report to the council for repairs!). Unfortunately my 62stc camera does not work any more after I dropped the unit. Everything else works - I expect the camera was not quite as rugged as the rest of the unit. Hence I can only use an independent camera.

Of course Basecamp's geotag feature saves me from taking a waypoint for every group of photos - which is great.

Any information and advice and any relevant new tweaks to Basecamp would be much appreciated.
Peter
  • So I've taken a brute-force approach that involves embedding the number of hours to add or subtract from GMT to yield local time for that file on that day into the filename: 14 10 09 (+7).


    That's a good solution.

    . o O (Why didn't I think of that?)

    PS: Of course the same trick could be used with track names in MapSource/BaseCamp/other.
  • A practical idea. Your approach means the offset needed will be easily available to input to Basecamp if they ever add a timezone option that can be set and changed by the user when running a set of any of Basecamp's tracklog and geotagging functions....
  • Actually, the GPS system uses GPS time. When the system came on line, GPS and UTC were the same. Since then, UTC occasionally adds/subtracts leap seconds to adjust for the earth’s rotation. GPS time ignores these changes, but one of the parameters sent by satellites is a correction for GPS to UTC.

    UTC is really the best choice for the global use of time since it occurs at the exact same moment everywhere, regardless of local time and whether or not daylight savings time is in effect.

    There are issues with using local time. For one, you could find yourself traveling backward in time in a track should you cross a time zone in one direction or your trip could take much longer than expected if crossed in the other direction. Both could foul up the summary data.

    With respect to cameras storing only local time, the same sorts of problems could occur. Your GPS might know or think you have crossed a time zone, but your camera will not. You could also forget to reset the local time on the camera. The use of UTC by both devices avoids such conflicts/issues and would greatly improve the syncing of data from different devices.
  • Thanks for this detailed explanation of GPS and UTC differences. Problem solving is so much easier when you have facts rather than guesses or assertions to go on. I take your point about the problems of tracking across a timezone boundary!
  • Actually, the GPS system uses GPS time. When the system came on line, GPS and UTC were the same. Since then, UTC occasionally adds/subtracts leap seconds to adjust for the earth’s rotation. GPS time ignores these changes, but one of the parameters sent by satellites is a correction for GPS to UTC.


    Thanks for the correction. It doesn't affect my "assertion" that GPS receivers use UTC +/- timezone offset for displaying local time and UTC in track logs (Garmin at least) but whatever.

    https://en.wikipedia.org/wiki/Global_Positioning_System#Timekeeping
  • GPS time vs. UTC is just a fun fact. There is nothing wrong with the idea of Garmin storing the UTC time and local time offset value with data points and I was not commenting on it. GPS devices do store UTC time and convert it a local time based on an offset value the value is output.

    My points were more as to why UTC time is stored vs. local time and with the issues of synchronizing data between different devices of any type when time is used as the method of synchronization. If clocks in cameras were set to and stored UTC time and displayed a value corrected for local time many of the issues with geotagging photos would be reduced. Something as simple as forgetting to change the offset on a camera wouldn’t affect the ability to geotag if the overall process was uniformly based on UTC time vs. local time.
  • When I look at the properties of a track that I have imported to Basecamp from my Garmin GPSMAP 62stc the Time column appears to have been adjusted back to GMT (I live in the UK) from the time where the track was recorded (in this case in Oman at GMT -4).
    [...]
    Then, To geotag all my photos I had to select each track in turn, and set the timeshift to -4 every time!
    [...]

    Oman local time should be UTC +4. Therefore, should not have been the timeshift set to +4 in the tracks?

    Canario
  • Oman local time should be UTC +4. Therefore, should not have been the timeshift set to +4 in the tracks?

    Canario


    Well spotted!. I guess Basecamp is using its timeshift parameter to add (hence in my Oman case add minus 4 hours) to the time stored in the EXIF of the photos submitted to it to geotag using the input tracklog whose time is already in UTC (as I have learned from contributions to this thread).
    In fact Basecamp design is even more sophisticated in that its timeshift field includes minutes and seconds which could be useful if your camera clock is not exactly matching UTC +-Zoneshift. This is also why I deliberately take a photo at the start of each new track - so that I can detect and adjust for (if necessary/worth it) a shift of minutes and/or seconds.
  • I guess Basecamp is using its timeshift parameter to add (hence in my Oman case add minus 4 hours) to the time stored in the EXIF of the photos submitted to it to geotag using the input tracklog whose time is already in UTC (as I have learned from contributions to this thread).


    I believe that Windows sets the computer clock to UTC time and displays times using the time zone offset set by the user - same as GPS devices. BaseCamp uses the computer time zone offset when displaying times. If you change the time zone on you computer, you will see the change in times displayed within BaseCamp. Windows does or did the same thing with their displayed time stamps. So, if you change the time zone to that for Oman (or possibly an adjacent one if then was daylights saving and now isn't or vice versa - not sure about this), then the track times will be displayed in the Oman local time when they were recorded.

    I have no idea whether this helps with geotagging within BaseCamp as I have never done it. This is just an explanation of how BaseCamp displays times.
  • I believe that Windows sets the computer clock to UTC time and displays times using the time zone offset set by the user...


    Yep. All versions of WinNT (even prior to Win2K) and new Windows OS'es do that. Win 3.1 (and variants), Win95-98 and WinME only stored local time.

    File timestamps change when you (or daylight saving) change the timezone.

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms724290(v=vs.85).aspx