GPS Reference Time Status
All reported receiver times are subject to a qualifying time status. The status indicates how well a time is known (see Table: GPS Reference Time Status).
There are several distinct states the receiver goes through.
When the CLOCKADJUST command is enabled:
UNKNOWN (initial state)
COARSESTEERING (initial coarse time set)
FINESTEERING (normal operating state)
FINEBACKUPSTEERING (when the backup system is used for a time)
FREEWHEELING (when range bias becomes unknown)
When the CLOCKADJUST command is disabled:
UNKNOWN (initial state)
COARSE (initial coarse time set)
FINE (normal operating state)
On startup and before any satellites are tracked, the receiver can not possibly know the current time. As such, the receiver time starts counting at GPS reference week 0 and second 0.0. The time status flag is set to UNKNOWN.
If time is input to the receiver using the SETAPPROXTIME command, the time status will be APPROXIMATE.
After time information is decoded from the navigation data and validated, the receiver time is set with an accuracy of approximately ±10 milliseconds. This state is qualified by the COARSE or COARSESTEERING time status flag depending on the state of the CLOCKADJUST switch (for more information, refer to the CLOCKADJUST command).
Once a position is known and range biases are being calculated, the internal clock model will begin modeling the range biases also known as the receiver clock offset.
Modeling will continue until the model is a good estimation of the actual receiver clock behavior. At this time, the receiver time will again be adjusted, this time to an accuracy of ±1 microsecond. This state is qualified by the FINE time status flag.
The final logical time status flag depends on whether CLOCKADJUST is enabled or not. If CLOCKADJUST is disabled, the time status flag will never improve on FINE. The time will only be adjusted again to within ±1 microsecond if the range bias gets larger than ±250 milliseconds. If CLOCKADJUST is enabled, the time status flag is set to FINESTEERING and the receiver time is continuously updated (steered) to minimize the receiver range bias.
If a solution cannot be computed with the primary satellite system, it will attempt to use a backup system (if available). When the backup system is used and time is computed, the time status is set to FINEBACKUPSTEERING. If the position is lost and the range bias cannot be calculated, the time status is degraded to FREEWHEELING.
See also Message Time Stamps and the SETTIMEBASE command.