2

I would like to know if we could change the time in GPS client when it is trying to see and lock onto the satellites.

Everytime, I start the GPS client on my Android phone, it has the month=1 and year=1980. Does this have to be this date for GPS to work or could we set it to current date so that the fixes could be accelerated?

Snippet of the logcat from my phone.

D/gpsclient(  443): gpsClient_GpsStateEventHandler : revcd commands 6
D/gpsclient(  443): Received data is a NavData callback, sending it for processing
D/gpsclient(  443): year:1980, month:1, day:6, hours:0, minutes:0, seconds:58, millis:0, Timestamp:315964858000
D/gpsclient(  443): Number of SVs is 0
D/gpsclient(  443): Callback processed
D/agpscodec(  443): Entering agpscodec_DecodeCommand
D/agpscodec(  443): Decoding Length
D/agpscodec(  443): Decoding data
D/agpscodec(  443): Command decoded
D/clientutils(  443): Received data : 510 bytes decoded to command
D/gpsclient(  443): gpsClient_GpsStateEventHandler : revcd commands 7
D/gpsclient(  443): Received is Nmea Data callback, sending it for processing
D/gpsclient(  443): NMEA UTC time : 0
D/gpsclient(  443): NMEA data: $GPGGA,000058.000,,,,,0,0,,,M,,M,,*45
D/gpsclient(  443): NMEA data: $GPGLL,,,,,000058.000,V,N*77
D/gpsclient(  443): NMEA data: $GPGSA,A,1,,,,,,,,,,,,,,,*1E
D/gpsclient(  443): NMEA data: $GPGST,000058.000,,,,0,,,*74
D/gpsclient(  443): NMEA data: $GPGSV,1,1,00*79
D/gpsclient(  443): NMEA data: $GPRMC,000058.000,V,,,,,,,,,,N*40
D/gpsclient(  443): NMEA data: $GPVTG,,T,,M,,N,,K,N*2C
D/gpsclient(  443): NMEA data: $GPZCD,107.879,+*4F
D/gpsclient(  443): Callback processed

I am trying to get a quick fix of satellites.

Thanks

  • no such thing as a "quick fix" in gps if your receiver needs to download the full gps almanac when it starts up. – Marc B Jun 18 '13 at 21:12
  • I agree. I am trying to see if I could accelerate the satellite Fix. I would like to know if the year and month has anything to do with it. Thanks. – Sadanand Hullur Jun 18 '13 at 21:27
  • what is the num of seconds till you get valid time and position now? – AlexWien Jun 20 '13 at 20:21

1 Answers1

1

The NMEA stences show that the GPS chip at start has no time. it does not show 0, or 1980, the time is simply unknown. it is a implementation detail of gps client to show 1980, which i consider as not an ideal implementation. (1980 is the start of gps sattelite time system). but 1980 is wrong, the nmea sends an invalid date with seconds set to 58. to display 1980 is an error of gps client or a simplification.

if you have direct access to the GPS chip, then you can download the almanach and set it to the GPS. (but maybe this is already done by the system). this helps to speed up to get valid time and position, which otherwise need to be downloaded via sattelite which is slower than via internet.

gps chips support setting the time, but practically i never have seen that to work, and they do not use your time immedeatly, the use it to speed up the initial calculations of time and position. practically you dont have an super acurate time, so setting the almanach is the common soultion.

AlexWien
  • 28,470
  • 6
  • 53
  • 83
  • Thanks for the answer. I too think that the year and month are implementation details of gps. Hence am curious to know if there is a way to set it to current time so that the calculations would be much faster, thereby speeding up the Sat fixes. – Sadanand Hullur Jun 19 '13 at 18:47
  • only if you have direct access to gps chip. not on android. – AlexWien Jun 20 '13 at 08:41
  • I see. This helps me not to pursue the time factor as I cannot get direct access to the chip. Thanks. – Sadanand Hullur Jun 20 '13 at 17:46