A method for synchronization of an external device's
clock 324 with a GPS device 104 is provided. The method can comprise
processing one or more data sentences received at the external device 106 from the GPS device to determine a data
sentence containing the best available
time information that is most accurate among the data sentences. Also, an amount of correction can be determined to compensate for one or more
variable time delays introduced by one or more processes. The one or more processes can selected from a group consisting of a process performed by the GPS device t1b, a data
sentence transmission from the GPS device to the external device t2b, and a
data processing step performed by the external device t3b. A synchronization time using the amount of correction and the best available
time information can be provided. The method can further comprise correcting a
timing error introduced into time stamp values by the external device
clock. This step can include removing an accumulate error by restarting the method after a pre-defined amount of time (e.g., one hour).