How to tell when NEO-6M is "locked"

I have a nano configuring and monitoring a NEO-6M GPS module and it all works a treat.
It reprograms the 1PPS output to provide a 10MHz signal as a standard frequency source.
At the moment I only report "Locked" when the location and time are reported as valid, but the signal appears valid long before that (probably latches on to the first satelite) is there a better way to detect when the pulse output is "locked" ??
Thanks in advance,
Dave

Are you using a library to communicate with the GPS and if so, which one ?

I'm using "NeoGPS".

Dave

It is customary to give a link to any library that you are using that is not included with the IDE. That avoids a potential helper from having to search out the library and insures that everyone is talking about the same library.

The $GPGGA sentence has a data item with a value of 0 to 2 which indicates the Fix Quality

An example :

$GPGGA,210230,3855.4487,N,09446.0071,W,1,07,1.1,370.5,M,-29.5,M,,*7A
  

The sentence contains the following fields:

  • The sentence type
  • Current time (if available; UTC)
  • Latitude (in DDMM.MMM format)
  • Latitude compass direction
  • Longitude (in DDDMM.MMM format)
  • Longitude compass direction
  • Fix type (0 for no fix, 1 for GPS, 2 for DGPS)
  • Number of satellites used for fix
  • Horizontal dilution of precision
  • Altitude above mean sea level
  • Altitude units (M for meters)
  • Height of mean sea level above WGS-84 earth ellipsoid
  • Units of the above geoid seperation (M for meters)
  • Time since last differential correction (ignored if inactive)
  • Differential station ID (ignored if inactive)
  • The checksum validation value (in hexadecimal)

I am using that already to know if the FIX is valid.

But it's not the fix I am interested in ... I need to know when the PPS signal is locked to the satellite ... this seems to happen much earlier than the fix.

I have freq set to 1Hz and freqLocked set to 10MHz (using TP5) so that when switched on it initially pulses at 1Hz and when it is locked it switches to 10Mhz which happens well before it has a solid fix.
I could monitor the output pin but I would prefer not to do that..

Bob

What GPS data are you hoping to use ?

I have no idea - that's why I'm asking.

I just need to display a flag on an LCD screen when the PPS pulse frequency is locked to the satellite.

Dave

number of satellites > 2?

What would that achieve ?

You can monitor the 1pps LED 'signal' with an input pin and a bit of interrupt code: the time between interrupts should be 1000mS. Based on this logic, you can use a Boolean Var to control the LCD status.

Knowledge ..

Or even >1 ... yes, that's a possibility.

Dave

I am trying to avoid that as I am running out of pins on the Nano and I'd rather not move to something bigger or add complexity (size) and weight :frowning:

Dave

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.