Moderated Discussion Areas
  ContinuousWave: Small Boat Electrical
  NMEA GPS Sentences

Post New Topic  Post Reply
search | FAQ | profile | register | author help

Author Topic:   NMEA GPS Sentences
jimh posted 09-21-2011 09:36 AM ET (US)   Profile for jimh   Send Email to jimh  
In a recent discussion about satellite based augmentation systems (SBAS) and the Wide Area Augmentation System (WAAS) in particular, reports from users of a number of different GPS receivers noted that a particular psuedo-random noise code number (PRN) was being used as the source for the correction data to obtain a precision fix.

As a follow-up to this discussion, I made an inquiry with the manufacturer of my GPS receiver regarding the method to identify which satellite (by PRN) was being used when a WAAS precision fix was obtain. My inquiry was as follows:

How can I determine which WAAS source by PRN code number is being used when my HDS-8 shows the status as "3D, WAAS"?

In reply, I received this response:

We do not display the number of the WAAS satellite being used on the unit. The unit automatically searches satellites 120 to 138 one by one and uses the one with the best signal strength.

I was skeptical of the accuracy of that statement, so I replied with a request for more verification. I got a second reply that insisted the initial response was correct.

As a result of this, I began to look at the actual data that a GPS receiver can send using the common NMEA protocol, hoping to discover what particular NMEA sentence might contain information about the PRN of a WAAS correction source. As readers may well know, the actual NMEA standards are not published and must be purchased (at rather fantastical prices) to be obtained. However, many manufacturers have disclosed some of the NMEA standards in their own literature, so we have a glimpse at this information, although perhaps an incomplete one.

Using as a source the information I could find on the world wide web, I found a website hosted in Europe with information about GPS receiver NMEA sentences:

Among the NMEA sentences listed, the only one which seems to give information about the satellites is the $GPGSV, Satellites in View message. The format for this sentence is shown here

I then set about to collect some data from a GPS receiver. I have a BU-353 GPS receiver and a GPS UTILITY application. With these two I could read and capture NMEA data from the receiver. Here is a sample of the $GPGSV information:


Parsing this data using the NMEA format, I decode it as follows


But this particular receiver appears to not have been getting any WAAS satellites, so perhaps it is not the best example to use. (The BU-353 is rated as a WAAS capable receiver, by the way.

Next I turned to the string $GPGGA Global Positioning System Fix Data. This may have some information about WAAS. There is a field in $GPGGA for "DGPS reference station id" which I suspect will be the WAAS PRN, if WAAS is being used.

Since my initial efforts to capture the raw NMEA data from my receiver lacked any sign of WAAS, I would much appreciate if someone could submit some data from their GPS receiver output which contained the $GPGAA string when the GPS receiver was in a precision fix mode with WAAS. I would like to see that the receiver had to say in its $GPGAA sentence. Thanks!

David Pendleton posted 09-21-2011 05:51 PM ET (US)     Profile for David Pendleton  Send Email to David Pendleton     
I used to do this with my Garmin GPS-V (capture and decode the NMEA sentences, that is), but my current laptop does not have a serial port.

I've been meaning to buy the USB equivalent cable, maybe I should get on that.

jimh posted 09-21-2011 08:24 PM ET (US)     Profile for jimh  Send Email to jimh     
Dave--Having a USB-Serial Port adaptor is very handy. I have one because my laptop has no serial ports. I use the KEYSPAN HS-19. This is a good device and typically has good drivers for all sorts of different operating systems. It is typically about $28 street-price.


David Pendleton posted 09-21-2011 08:30 PM ET (US)     Profile for David Pendleton  Send Email to David Pendleton     
Thanks Jim! I'm going to order one.
jimh posted 09-21-2011 08:31 PM ET (US)     Profile for jimh  Send Email to jimh     
I took the BU-353 GPS receiver to the roof of my workplace this afternoon and let it settle in with a few minutes of GPS satellite lock. Then I captured 100-seconds worth of its data. In the data there were 100 $GPGAA sentences, so I have made an inference that the NMEA data rate is 1-Hz. I parsed some of the sentences to see what sort of information I could get. Here is a brief summary:

This is the $GPGAA sentence:


Parsing this sentence I get

Sequence Identifier = $GPGGA
Time = 173102.000 UTC
Latitude = 42 19.8066, N
Longitude = 083 03.2199, W
Fix Quality = 2 (DGPS fix)
Number of satellites = 08
Horizontal dilution of precision = 1.1
Altitude = 198.8, Meters
Height of geoid above EGS84 ellipsoid = -34.0, Meters
Time since last DGPS update = 2.8 (seconds)
DGPS reference station id = 0000

Darn, no PRN of the WAAS satellite in this sentence. However, looking at the associated data for $GPGSV (satellites in view) I see


And in that data we see in the third group we have NMEA 51 (which corresponds to PRN-138) in view with an elevation of 35-degrees, azimuth of 213-degrees, and SNR of 34-dB. This is also interesting because, again, I am receiving PRN-138 in preference to PRN-133, which should be a better signal. I don't have any good explanation why this SiRF-III receiver would jump on PRN-138 before PRN-133.

Next we can look at $GPGSA to find the active satellites used in the position fix. Here is my data string:


Parsing this string I get

Mode = Automatic 3D/2D
Mode = 3D
ID of SV's used in fix = 08, 28, 24, 07, 26, 17, 19
PHOD = 1.9
HDOP = 1.1
VDOP = 1.6

This does not include any PRN for a WAAS source. It seems like you cannot deduce the WAAS source from this sentence, either.

So far the only basis to deduce that the WAAS correction was obtained from PRN-138 is because it was the only WAAS source listed as being in-view. But PRN-138 was not identified in any of the NMEA sentences as specifically being the WAAS source.

I am beginning to wonder exactly how one can determine the WAAS source PRN from the NMEA sentences?

jimh posted 09-24-2011 09:37 AM ET (US)     Profile for jimh  Send Email to jimh     
I came across this excellent source of detailed information about NMEA-0183 sentences related to GPS devices on a manufacturer's website:

Under the section "Commands and Messages" (in the left pane) select the "Data Messages" option; this reveals a detailed listing and explanation of the usual $GPxxx message formats.

Post New Topic  Post Reply
Hop to:

Contact Us | RETURN to ContinuousWave Top Page

Powered by: Ultimate Bulletin Board, Freeware Version 2000
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.