12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732 |
- = NMEA Revealed =
- :description: A programmer's guide to NMEA0183, the GPS protocol reporting standard
- :keywords: NMEA0183, GPS, standard, protocol
- Eric S. Raymond <esr@thyrsus.com>
- v2.23, Mar 2019
- NMEA 0183 is a proprietary protocol issued by the National Marine
- Electronics Association for use in boat navigation and control
- systems. Because early GPS sensors were designed for compatibility
- with these systems, GPS reporting protocols are often a small
- subset of NMEA 0183 or mutated from such as subset. AIS, the
- Marine Automatic Identification system, also uses NMEA0183-like
- packet formats.
- This document is a list of NMEA 0183 sentences with field descriptions.
- It is primarily intended to help people understand GPS reports, but
- also exists because the author finds life-critical protocols with
- only closed/proprietary documentation deeply offensive.
- The master of this document is in asciidoc format at the GPSD project
- website; you are probably seeing it as a web page. You may encounter
- versions of it, in plain ASCII, that do not have a revision number and
- do not list an editor. These are older and should be considered
- obsolescent.
- == Sources and Applicable Standards ==
- This collection may originally have been redacted from the document
- cited as <<BETKE>>; see the list of sources at the end of this
- document. The official NMEA 0183 standard was not consulted at any
- point, thus this document is not a derivative work of that standard
- and is not controlled by the rapacious lawyers of NMEA.
- It appears there is an international standard, IEC 61162-1, published
- in 2000, that is essentially NMEA 0183. <<IEC61162-1>> says it "is closely
- aligned with NMEA 0183 version 2.30". Unfortunately, it costs money
- and is not redistributable.
- This collection of sentences is originally from the gpsdrive
- distribution, but adds more information on the following topics:
- * Old and new forms of VTG
- * Units used in GGA
- * Vendor extensions PRWIZCH and PMGNST
- * FAA Mode Indicator field for RMC, RMB, VTG, GLL, BWC, XTE.
- * New documentation on BWC, DTM, GBS, GNS, GRS, GST, MSK, and MSS sentences.
- * Sentence examples merged from <<GIDS>>
- * Sentence explanations from <<GIDS>> and elsewhere
- * Corrected badly mangled ZDA description.
- * Corrected DPT titling
- * Common talker IDs
- * Sentences HFB, ITS, TPC, TDS, TFI, TPC, TPR, TPT from GLOBALSAT.
- * Sentence PASHR from <<PASHR>>.
- * Satellite IDs: PRN vs NMEA-ID.
- * Error status indications.
- == Relationship to NMEA 2000 ==
- Recently the National Marine Electronics Association has attempted to
- replace NMEA 0183 with a very differently structured protocol named
- NMEA 2000. It is binary rather than textual, a profile or
- interpretation of the Controller Area Network (CAN) protocol used in
- automotive networking. Unlike NMEA 0183 it is frame-based and cannot
- be transmitted over serial links.
- While newer marine electronics uses this protocol, general-purpose
- GPSes have not adopted it. Thus we do not attempt to document NMEA
- 2000 here; see <<CANBUS>>, <<NMEA2000>>, and <<KEVERSOFT>> instead.
- == NMEA version timeline ==
- |========================================================================
- |NMEA 2.00 | January 1992
- |NMEA 2.01 | August 1994
- |NMEA 2.10 | October 1995
- |NMEA 2.20 | January 1997
- |NMEA 2.30 | March 1998
- |NMEA 3.00 | July 2000
- |NMEA 3.01 | January 2002
- |NMEA 4.00 | November 2008
- |NMEA 4.10 | July 2012
- |========================================================================
- No version earlier than 2.00 is listed or archived on the NMEA website.
- The NMEA 4.00 standard states, provocatively, that it is "in theory"
- backwards compatible to 2.00, and that versions before 2.00 are not
- forward-compatible <<ANON>>.
- == NMEA 0183 physical protocol layer ==
- The NMEA specification requires a physical-level protocol compatible
- with RS422 at 4800bps, 8N1 or 7N2. It is RS422 rather than RS232
- because NMEA expects many navigational devices to feed a common serial
- bus. The data encoding is ASCII with the high data bit not used and
- zeroed.
- Consumer-grade GPS sensors normally report over an RS232 port or a USB
- port emulating an RS232 serial device; some use Bluetooth. Baud rate
- is variable, with 9600 probably the most common. Most devices use
- 8N1; there are rare exceptions that use 7N2 (San Jose Navigation) or
- even 8O1 (Trimble).
- == Sentence Mixes and NMEA Variations ==
- Most GPS sensors emit only RMC, GSA, GSV, GLL, VTG, and (rarely) ZDA.
- Newer ones conforming to NMEA 3.x may emit GBS as well. Other NMEA
- sentences are usually only emitted by high-end maritime navigation
- systems.
- The form of VTG is incompatibly variable with NMEA version. See
- the detailed description of that sentence for details.
- In NMEA 2.3, several sentences (APB, BWC, BWR, GLL, RMA, RMB, RMC,
- VTG, WCV, and XTE) got a new last field carrying the signal integrity
- information needed by the FAA. (The values in the GGA mode field were
- extended to carry this information as well.) Here are the values:
- FAA Mode Indicator
- A = Autonomous mode
- D = Differential Mode
- E = Estimated (dead-reckoning) mode
- F = RTK Float mode
- M = Manual Input Mode
- N = Data Not Valid
- P = Precise (4.00 and later)
- R = RTK Integer mode
- S = Simulated Mode
- This field may be empty. In pre-2.3 versions it is omitted. <<NTUM>> says
- that according to the NMEA specification, it dominates the Status field --
- the Status field will be set to "A" (data valid) for Mode Indicators A
- and D, and to "V" (data invalid) for all other values of the Mode
- Indicator. This is confirmed by <<IEC>>.
- In NMEA 3.0, the GBS sentence reports a complete set of error estimates. Note
- however that many receivers claiming to emit "3.0" or "3.01" don't
- actually ship this sentence.
- == NMEA Encoding Conventions ==
- Data is transmitted in serial async, 1 start-bit, 8 data-bits,
- 1 stop-bit, no parity. Data-bits are in least-significant-bit
- order. The standard specifies 4800 as the speed, but this is no
- longer common. The most-signifacant-bit is always zero.
- An NMEA sentence consists of a start delimiter, followed by a
- comma-separated sequence of fields, followed by the character '*'
- (ASCII 42), the checksum and an end-of-line marker.
- The start delimiter is normally '$' (ASCII 36). Packets of AIVDM/AIVDO
- data, which are otherwise formatted like NMEA, use '!'. Up to 4.00
- these are the only permitted start characters <<ANON>>.
- The first field of a sentence is called the "tag" and normally
- consists of a two-letter talker ID followed by a three-letter
- type code.
- Where a numeric latitude or longitude is given, the two digits
- immediately to the left of the decimal point are whole minutes, to the
- right are decimals of minutes, and the remaining digits to the left of
- the whole minutes are whole degrees.
- Eg. 4533.35 is 45 degrees and 33.35 minutes. ".35" of a minute is
- exactly 21 seconds.
- Eg. 16708.033 is 167 degrees and 8.033 minutes. ".033" of a minute is
- about 2 seconds.
- In NMEA 3.01 (and possibly some earlier versions), the character "^"
- (HEX 5E) is reserved as an introducer for two-character hex escapes
- using 0-9 and A-F, expressing an ISO 8859-1 (Latin-1) character <<ANON>>.
- The Checksum is mandatory, and the last field in a sentence. It is
- the 8-bit XOR of all characters in the sentence, excluding the "$", "I",
- or "*" characters; but including all "," and "^". It is encoded as
- two hexadecimal characters (0-9, A-F), the most-significant-nibble
- being sent first.
- Sentences are terminated by a <CR><LF> sequence.
- Maximum sentence length, including the $ and <CR><LF> is 82 bytes.
- According to <<UNMEA>>, the NMEA standard requires that a field (such as
- altitude, latitude, or longitude) must be left empty when the GPS has
- no valid data for it. However, many receivers violate this. It's
- common, for example, to see latitude/longitude/altitude figures filled
- with zeros when the GPS has no valid data.
- == Dates and times ==
- NMEA devices report date and time in UTC, aka GMT, aka Zulu time (as
- opposed to local time). But the way this report is computed results
- in some odd bugs and inaccuracies.
- Date and time in GPS is represented as number of weeks from the start
- of zero second of 6 January 1980, plus number of seconds into the
- week. GPS time is not leap-second corrected, though satellites also
- broadcast a current leap-second correction which may be updated on
- three-month boundaries according to rotational bulletins issued by the
- International Earth Rotation and Reference Systems Service (IERS).
- The leap-second correction is only included in the multiplexed satellite
- subframe broadcast, once every 12.5 minutes. While the satellites do
- notify GPSes of upcoming leap-seconds, this notification is not
- necessarily processed correctly on consumer-grade devices, and may not
- be available at all when a GPS receiver has just cold-booted. Thus,
- reported UTC time may be slightly inaccurate between a cold boot or leap
- second and the following subframe broadcast.
- GPS date and time are subject to a rollover problem in the 10-bit week
- number counter, which will re-zero every 1024 weeks (roughly every 19.6
- years). The first rollover since GPS went live in 1980 was in Aug-1999,
- followed by Apr-2019, the next will be in Nov-2038 (the 32-bit and POSIX
- issues will probably be more important by then). The new "CNAV" data
- format extends the week number to 13 bits, with the first rollover
- occurring in Jan-2137, but this is only used with some newly added GPS
- signals, and is unlikely to be usable in most consumer-grade receivers
- currently.
- For accurate time reporting, therefore, a GPS requires a supplemental
- time references sufficient to identify the current rollover period,
- e.g. accurate to within 512 weeks. Many NMEA GPSes have a wired-in
- assumption about the UTC time of the last rollover and will thus report
- incorrect times outside the rollover period they were designed in.
- For these reasons, NMEA GPSes should not be considered high-quality
- references for absolute time. Some do, however, emit pulse-per-second
- RS232 signals which can be used to improve the precision of an
- external clock. See <<PPS>> for discussion.
- == Error status indications
- The NMEA sentences in the normal GPS inventory return four kinds of
- validity flags: Mode, Status, the Active/Void bit, and in later
- versions the FAA indicator mode. The FAA mode field is legally
- required and orthogonal to the others. Here's how the first three used
- in various sentences:
- [frame="topbot",options="header"]
- |========================================================
- | | GPRMC | GPGLL | GPGGA | GPGSA
- |Returns A/V | Yes | Yes | No | No
- |Returns mode | No | No | No | Yes
- |Returns status | No | Yes | Yes | No
- |========================================================
- The "Navigation receiver warning" is 'A' for Active and 'V' for Void.
- (or warning). You will see it when either there is no satellite lock,
- or to indicate a valid fix that has a DOP too high, or which fails an
- elevation test. In the latter case the visible sats are below some
- fixed elevation of the horizon (usually 15%, but some GPSes make this
- adjustable) making position unreliable due to poor geometry and more
- variable signal lag induced by lengthened atmosphere transit.
- Mode is associated with the GSA sentence associated with the last fix.
- It reports whether the fix was no good, sufficient for 2D, or
- sufficient for 3D (values 1, 2, and 3).
- Status will be 0 when the sample from which the reporting
- sentence was generated does not have a valid fix, 1 when it has
- a valid (normal-precision) fix, and 2 when the fig is DGPS corrected
- (reducing the base error).
- In addition, some sentences may use empty fields to signify invalid
- data. It is not clear whether NMEA 0183 allows this, but real-world
- software must cope.
- .FAA Mode Indicator
- |================================================================
- |A | Autonomous mode
- |D | Differential mode
- |E | Estimated (dead reckoning) mode
- |M | Manual input mode
- |S | Simulator mode
- |N | Data not valid
- |================================================================
- == Talker IDs ==
- NMEA sentences do not identify the individual device that issued
- them; the format was originally designed for shipboard multidrop
- networks on which it's possible only to broadcast to all devices, not
- address a specific one.
- NMEA sentences do, however, include a "talker ID" a two-character
- prefix that identifies the type of the transmitting unit. By far the
- most common talker ID is "GP", identifying a generic GPS, but all of
- the following are well known:
- .Common talker IDs
- |================================================================
- |BD | BeiDou (China)
- |CD | Digital Selective Calling (DSC)
- |EC | Electronic Chart Display & Information System (ECDIS)
- |GA | Galileo Positioning System
- |GB | BeiDou (China)
- |GL | GLONASS, according to IEIC 61162-1
- |GN | Mixed GPS and GLONASS data, according to IEIC 61162-1
- |GP | Global Positioning System receiver
- |II | Integrated Instrumentation
- |IN | Integrated Navigation
- |LC | Loran-C receiver (obsolete)
- |QZ | QZSS regional GPS augmentation system (Japan)
- |================================================================
- EC -- ECDIS is a specialized geographical information system intended
- to support professional maritime navigation. NMEA talker units
- meeting the ECDIS standard use this prefix. Some of these emit GLL.
- II -- II is emitted by the NMEA interfaces of several widely-used lines
- of marine-navigation electronics. One is the AutoHelm system by
- Raymarine; see also <<SEATALK>> for the native protocol of these
- devices.
- IN -- Some Garmin GPS units use an IN talker ID.
- CD -- Modern marine VHF radios use conventions collectively known as
- Digital Selective Calling (DSC). These radios typically take data
- from a local position indicating device. This data is used in
- conjunction with a unique (FCC assigned) ID to cause your radio to
- broadcast your position data to others. Conversely, these radios are
- capable of recieving position data of other stations and emitting
- sentences indicating other station positions. This lets you plot the
- position of other vessels on a chart, for instance. There has been at
- least one instance of a DSC enabled radio overloading (mis-using) the
- LC talker prefix for this purpose. Otherwise they use the CD prefix.
- A vessel's nav system is likely to have both CD and some other
- position indicating talker on its bus(es).
- LC -- Loran-C is a marine navigation system formerly run by many
- governments (USA, Canada, Russia, etc.). It was shut down in most
- countries by the end of 2010. Norway and France shutdown their's in
- 2015. Some non-Loran devices emit GLL but use this talker ID for
- backward-compatibility reasons, so it outlasted the actual Loran-C
- system.
- Until the U.S. Coast Guard terminated the Omega Navigation System in
- 1997, another common talker prefix was "OM" for an Omega Navigation
- System receiver.
- Here is a more complete list of talker ID prefixes. Most are not
- relevant to GPS systems.
- Note that talker IDs made obsolete by newer revisions of the
- standards may still be emitted by older devices. Support
- for them may be present in the GPSD project.
- .Big list of talker IDs
- |================================================================
- |AB | Independent AIS Base Station
- |AD | Dependent AIS Base Station
- |AG | Autopilot - General
- |AP | Autopilot - Magnetic
- |BD | BeiDou (China)
- |BN | Bridge navigational watch alarm system
- |CC | Computer - Programmed Calculator (obsolete)
- |CD | Communications - Digital Selective Calling (DSC)
- |CM | Computer - Memory Data (obsolete)
- |CS | Communications - Satellite
- |CT | Communications - Radio-Telephone (MF/HF)
- |CV | Communications - Radio-Telephone (VHF)
- |CX | Communications - Scanning Receiver
- |DE | DECCA Navigation (obsolete)
- |DF | Direction Finder
- |DM | Velocity Sensor, Speed Log, Water, Magnetic
- |DU | Duplex repeater station
- |EC | Electronic Chart Display & Information System (ECDIS)
- |EP | Emergency Position Indicating Beacon (EPIRB)
- |ER | Engine Room Monitoring Systems
- |GA | Galileo Positioning System
- |GB | BeiDou (China)
- |GL | GLONASS, according to IEIC 61162-1
- |GN | Mixed GPS and GLONASS data, according to IEIC 61162-1
- |GP | Global Positioning System (GPS)
- |HC | Heading - Magnetic Compass
- |HE | Heading - North Seeking Gyro
- |HN | Heading - Non North Seeking Gyro
- |II | Integrated Instrumentation
- |IN | Integrated Navigation
- |LA | Loran A (obsolete)
- |LC | Loran C (obsolete)
- |MP | Microwave Positioning System (obsolete)
- |NL | Navigation light controller
- |OM | OMEGA Navigation System (obsolete)
- |OS | Distress Alarm System (obsolete)
- |P | Vendor specific
- |QZ | QZSS regional GPS augmentation system (Japan)
- |RA | RADAR and/or ARPA
- |SD | Depth Sounder
- |SN | Electronic Positioning System, other/general
- |SS | Scanning Sounder
- |ST | Skytraq debug output
- |TI | Turn Rate Indicator
- |TR | TRANSIT Navigation System
- |U# | '#' is a digit 0 ... 9; User Configured
- |UP | Microprocessor controller
- |VD | Velocity Sensor, Doppler, other/general
- |VW | Velocity Sensor, Speed Log, Water, Mechanical
- |WI | Weather Instruments
- |YC | Transducer - Temperature (obsolete)
- |YD | Transducer - Displacement, Angular or Linear (obsolete)
- |YF | Transducer - Frequency (obsolete)
- |YL | Transducer - Level (obsolete)
- |YP | Transducer - Pressure (obsolete)
- |YR | Transducer - Flow Rate (obsolete)
- |YT | Transducer - Tachometer (obsolete)
- |YV | Transducer - Volume (obsolete)
- |YX | Transducer
- |ZA | Timekeeper - Atomic Clock
- |ZC | Timekeeper - Chronometer
- |ZQ | Timekeeper - Quartz
- |ZV | Timekeeper - Radio Update, WWV or WWVH
- |================================================================
- == Satellite IDs ==
- Satellites may be identified by one of two different numbers in
- sentences such as GSV: a PRN number associated with their radio code,
- or an NMEA-ID.
- For satellites 1-32, the GPS constellation, these numbers are the
- same. For satellites associated with WAAS (Wide Area Augmentation
- System), EGNOS (European Geostationary Navigation Overlay Service),
- and MSAS (Multi-functional Satellite Augmentation System), they are
- different.
- Here is a table of NMEA-ID allocations above 32 as of March 2010:
- [frame="topbot",options="header"]
- |====================================================
- |System |Satellite |PRN |NMEA-ID
- |EGNOS |AOR-E |120 |33
- |EGNOS |Artemis |124 |37
- |EGNOS |IOR-W |126 |39
- |MSAS |MTSAT-1 |129 |42
- |EGNOS |IOR-E |131 |44
- |WAAS |AMR |133 |46
- |WAAS |PanAm |135 |48
- |MSAS |MTSAT-2 |137 |50
- |WAAS |Anik |138 |51
- |====================================================
- Theoretically, all NMEA-emitting devices should emit NMEA-IDs. In
- practice, some pass through PRNs.
- To avoid possible confusion caused by repetition of satellite ID
- numbers when using multiple satellite systems, the following
- convention has been adopted:
- a. GPS satellites are identified by their PRN numbers, which range from 1 to 32.
- b. The numbers 33-64 are reserved for WAAS satellites. The WAAS system
- PRN numbers are 120-138. The offset from NMEA WAAS SV ID to WAAS PRN
- number is 87. A WAAS PRN number of 120 minus 87 yields the SV ID of 33.
- The addition of 87 to the SV ID yields the WAAS PRN number.
- c. The numbers 65-96 are reserved for GLONASS satellites. GLONASS
- satellites are identified by 64+satellite slot number. The slot
- numbers are 1 through 24 for the full constellation of 24 satellites,
- this gives a range of 65 through 88. The numbers 89 through 96 are
- available if slot numbers above 24 are allocated to on-orbit spares.
- Other sources such as <<SATSTAT>> confirm that the NMEA standard
- assigns NMEA IDs 65-96 to GLONASS. The following
- table is our best guess of NMEA usage in 2018:
- [frame="topbot",options="header"]
- |====================================================
- | 1 - 32 | GPS
- | 33 - 54 | Various SBAS systems (EGNOS, WAAS, SDCM, GAGAN, MSAS)
- | 55 - 64 | not used (might be assigned to further SBAS systems)
- | 65 - 88 | GLONASS
- | 89 - 96 | GLONASS (future extensions?)
- | 97 - 119 | not used
- | 120 - 151 | not used (SBAS PRNs occupy this range)
- | 152 - 158 | Various SBAS systems (EGNOS, WAAS, SDCM, GAGAN, MSAS)
- | 159 - 172 | not used
- | 173 - 182 | IMES
- | 193 - 197 | QZSS
- | 196 - 200 | QZSS (future extensions?)
- | 201 - 235 | BeiDou (u-blox, not NMEA)
- | 301 - 336 | GALILEO
- | 401 - 437 | BeiDou (NMEA)
- |====================================================
- GLONASS satellite numbers come in two flavors. If a sentence
- has a GL talker ID, expect the skyviews to be GLONASS-only and
- in the range 1-32; you must add 64 to get a globally-unique
- NMEA ID. If the sentence has a GN talker ID, the device emits
- a multi-constellation skyview with GLONASS IDs already in
- the 65-96 range.
- QZSS is a geosynchronous (*not geostationary*) system of three
- (possibly four) satellites in highly elliptical, inclined,
- orbits. It is designed to provide coverage in Japan's
- urban canyons.
- BeiDou-1 consists of 4 geostationary satellites operated by China,
- operational since 2004. Coverage area is the Chinese mainland.
- gpsd does not support this, as this requires special hardware,
- and prior arrangements with the operator, who calculates and
- returns the position fix.
- BeiDou-2 (earlier known as COMPASS) is a system of 35 satellites,
- including 5 geostationary for compatibility with BeiDou-1.
- As of late 2015, coverage is complete over most of Asia and the
- West Pacific. It is expected to be fully operational by 2020, by
- when coverage area is expected to be worldwide.
- Note that the PRN system is becoming increasingly fragmented and
- unworkable. New GPS denote each satellite, and their signals, by their
- constellation (gnssID), satellite id in that constellation (svId), and
- signal type (sigId). NMEA, as of version 4, has not adapted.
- == Obsolete sentences ==
- Note that sentences made obsolete by newer revisions of the
- standards may still be emitted by devices.
- Support for them may be present in the GPSD project.
- The following NMEA sentences have been designated "obsolete" in a
- publicly available NMEA document dated 2009.
- |================================================================
- |APA | Autopilot Sentence "A"
- |BER | Bearing & Distance to Waypoint, Dead Reckoning, Rhumb Line
- |BPI | Bearing & Distance to Point of Interest
- |DBK | Depth Below Keel
- |DBS | Depth Below Surface
- |DRU | Dual Doppler Auxiliary Data
- |GDA | Dead Reckoning Positions
- |GLA | Loran-C Positions
- |GOA | OMEGA Positions
- |GXA | TRANSIT Positions
- |GTD | Geographical Position, Loran-C TDs
- |GXA | TRANSIT Position
- |HCC | Compass Heading
- |HCD | Heading and Deviation
- |HDM | Heading, Magnetic
- |HDT | Heading, True
- |HVD | Magnetic Variation, Automatic
- |HVM | Magnetic Variation, Manually Set
- |IMA | Vessel Identification
- |MDA | Meteorological Composite
- |MHU | Humidity
- |MMB | Barometer
- |MTA | Air Temperature
- |MWH | Wave Height
- |MWS | Wind & Sea State
- |Rnn | Routes
- |SBK | Loran-C Blink Status
- |SCY | Loran-C Cycle Lock Status
- |SCD | Loran-C ECDs
- |SDB | Loran-C Signal Strength
- |SGD | Position Accuracy Estimate
- |SGR | Loran-C Chain Identifier
- |SIU | Loran-C Stations in Use
- |SLC | Loran-C Status
- |SNC | Navigation Calculation Basis
- |SNU | Loran-C SNR Status
- |SPS | Loran-C Predicted Signal Strength
- |SSF | Position Correction Offset
- |STC | Time Constant
- |STR | Tracking Reference
- |SYS | Hybrid System Configuration
- |================================================================
- == NMEA-Standard Sentences ==
- Here are the NMEA-standard sentences we know about:
- === AAM - Waypoint Arrival Alarm ===
- This sentence is generated by some units to indicate the status of
- arrival (entering the arrival circle, or passing the perpendicular of
- the course line) at the destination waypoint.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6
- | | | | | |
- $--AAM,A,A,x.x,N,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Status, BOOLEAN, A = Arrival circle entered, V = not passed
- 2. Status, BOOLEAN, A = perpendicular passed at waypoint, V = not passed
- 3. Arrival circle radius
- 4. Units of radius, nautical miles
- 5. Waypoint ID
- 6. Checksum
- Example: GPAAM,A,A,0.10,N,WPTNME*43
- WPTNME is the waypoint name.
- === ALM - GPS Almanac Data ===
- This sentence expresses orbital data for a specified GPS satellite.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
- | | | | | | | | | | | | | | | |
- $--ALM,x.x,x.x,xx,x.x,hh,hhhh,hh,hhhh,hhhh,hhhhhh,hhhhhh,hhhhhh,hhhhhh,hhh,hhh,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Total number of messages
- 2. Sentence Number
- 3. Satellite PRN number (01 to 32)
- 4. GPS Week Number
- 5. SV health, bits 17-24 of each almanac page
- 6. Eccentricity
- 7. Almanac Reference Time
- 8. Inclination Angle
- 9. Rate of Right Ascension
- 10. Root of semi-major axis
- 11. Argument of perigee
- 12. Longitude of ascension node
- 13. Mean anomaly
- 14. F0 Clock Parameter
- 15. F1 Clock Parameter
- 16. Checksum
- Fields 5 through 15 are dumped as raw hex.
- Example:
- $GPALM,1,1,15,1159,00,441d,4e,16be,fd5e,a10c9f,4a2da4,686e81,58cbe1,0a4,001*5B
- === APA - Autopilot Sentence "A" ===
- This sentence is sent by some GPS receivers to allow them to be used
- to control an autopilot unit. This sentence is commonly used by
- autopilots and contains navigation receiver warning flag status,
- cross-track-error, waypoint arrival status, initial bearing from
- origin waypoint to the destination, continuous bearing from present
- position to destination and recommended heading-to-steer to
- destination waypoint for the active navigation leg of the journey.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11
- | | | | | | | | | | |
- $--APA,A,A,x.xx,L,N,A,A,xxx,M,c---c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Status
- V = Loran-C Blink or SNR warning
- V = general warning flag or other navigation systems when a reliable
- fix is not available
- 2. Status
- V = Loran-C Cycle Lock warning flag
- A = OK or not used
- 3. Cross Track Error Magnitude
- 4. Direction to steer, L or R
- 5. Cross Track Units (Nautic miles or kilometers)
- 6. Status
- A = Arrival Circle Entered
- 7. Status
- A = Perpendicular passed at waypoint
- 8. Bearing origin to destination
- 9. M = Magnetic, T = True
- 10. Destination Waypoint ID
- 11. checksum
- Example: $GPAPA,A,A,0.10,R,N,V,V,011,M,DEST,011,M*82
- === APB - Autopilot Sentence "B" ===
- This is a fixed form of the APA sentence with some ambiguities removed.
- Note: Some autopilots, Robertson in particular, misinterpret "bearing
- from origin to destination" as "bearing from present position to
- destination". This is likely due to the difference between the APB
- sentence and the APA sentence. for the APA sentence this would be the
- correct thing to do for the data in the same field. APA only differs
- from APB in this one field and APA leaves off the last two fields
- where this distinction is clearly spelled out. This will result in
- poor performance if the boat is sufficiently off-course that the two
- bearings are different.
- 13 15
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11 12| 14|
- | | | | | | | | | | | | | | |
- $--APB,A,A,x.x,a,N,A,A,x.x,a,c--c,x.x,a,x.x,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Status
- A = DAta valid
- V = Loran-C Blink or SNR warning
- V = general warning flag or other navigation systems when a reliable
- fix is not available
- 2. Status
- V = Loran-C Cycle Lock warning flag
- A = OK or not used
- 3. Cross Track Error Magnitude
- 4. Direction to steer, L or R
- 5. Cross Track Units, N = Nautical Miles
- 6. Status
- A = Arrival Circle Entered
- 7. Status
- A = Perpendicular passed at waypoint
- 8. Bearing origin to destination
- 9. M = Magnetic, T = True
- 10. Destination Waypoint ID
- 11. Bearing, present position to Destination
- 12. M = Magnetic, T = True
- 13. Heading to steer to destination waypoint
- 14. M = Magnetic, T = True
- 15. Checksum
- Example: $GPAPB,A,A,0.10,R,N,V,V,011,M,DEST,011,M,011,M*82
- === BOD - Bearing - Waypoint to Waypoint ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--BOD,x.x,T,x.x,M,c--c,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Bearing Degrees, True
- 2. T = True
- 3. Bearing Degrees, Magnetic
- 4. M = Magnetic
- 5. Destination Waypoint
- 6. origin Waypoint
- 7. Checksum
- Example 1: $GPBOD,099.3,T,105.6,M,POINTB,*01
- Waypoint ID: "POINTB" Bearing 99.3 True, 105.6 Magnetic This sentence
- is transmitted in the GOTO mode, without an active route on your
- GPS. WARNING: this is the bearing from the moment you press enter in
- the GOTO page to the destination waypoint and is NOT updated
- dynamically! To update the information, (current bearing to waypoint),
- you will have to press enter in the GOTO page again.
- Example 2: $GPBOD,097.0,T,103.2,M,POINTB,POINTA*52
- This sentence is transmitted when a route is active. It contains the
- active leg information: origin waypoint "POINTA" and destination
- waypoint "POINTB", bearing between the two points 97.0 True, 103.2
- Magnetic. It does NOT display the bearing from current location to
- destination waypoint! WARNING Again this information does not change
- until you are on the next leg of the route. (The bearing from POINTA
- to POINTB does not change during the time you are on this leg.)
- This sentence has been replaced by BWW in NMEA 4.00 (and posssibly
- earlier versions) <<ANON>>.
- === BWC - Bearing & Distance to Waypoint - Great Circle ===
- ------------------------------------------------------------------------------
- 12
- 1 2 3 4 5 6 7 8 9 10 11| 13 14
- | | | | | | | | | | | | | |
- $--BWC,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x.x,T,x.x,M,x.x,N,c--c,m,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC Time or observation
- 2. Waypoint Latitude
- 3. N = North, S = South
- 4. Waypoint Longitude
- 5. E = East, W = West
- 6. Bearing, degrees True
- 7. T = True
- 8. Bearing, degrees Magnetic
- 9. M = Magnetic
- 10. Distance, Nautical Miles
- 11. N = Nautical Miles
- 12. Waypoint ID
- 13. FAA mode indicator (NMEA 2.3 and later, optional)
- 14. Checksum
- Example 1: $GPBWC,081837,,,,,,T,,M,,N,*13
- Example 2: GPBWC,220516,5130.02,N,00046.34,W,213.8,T,218.0,M,0004.6,N,EGLM*11
- === BWR - Bearing and Distance to Waypoint - Rhumb Line ===
- ------------------------------------------------------------------------------
- 11 14
- 1 2 3 4 5 6 7 8 9 10 | 12 13 |
- | | | | | | | | | | | | | |
- $--BWR,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x.x,T,x.x,M,x.x,N,c--c,m*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC Time of observation
- 2. Waypoint Latitude
- 3. N = North, S = South
- 4. Waypoint Longitude
- 5. E = East, W = West
- 6. Bearing, degrees True
- 7. T = True
- 8. Bearing, degrees Magnetic
- 9. M = Magnetic
- 10. Distance, Nautical Miles
- 11. N = Nautical Miles
- 12. Waypoint ID
- 13. FAA mode indicator (NMEA 2.3 and later, optional)
- 14. Checksum
- === BWW - Bearing - Waypoint to Waypoint ===
- Bearing calculated at the FROM waypoint.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--BWW,x.x,T,x.x,M,c--c,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Bearing, degrees True
- 2. T = True
- 3. Bearing Degrees, Magnetic
- 4. M = Magnetic
- 5. TO Waypoint ID
- 6. FROM Waypoint ID
- 7. Checksum
- === DBK - Depth Below Keel ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--DBK,x.x,f,x.x,M,x.x,F*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Depth, feet
- 2. f = feet
- 3. Depth, meters
- 4. M = meters
- 5. Depth, Fathoms
- 6. F = Fathoms
- 7. Checksum
- === DBS - Depth Below Surface ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--DBS,x.x,f,x.x,M,x.x,F*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Depth, feet
- 2. f = feet
- 3. Depth, meters
- 4. M = meters
- 5. Depth, Fathoms
- 6. F = Fathoms
- 7. Checksum
- === DBT - Depth below transducer ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--DBT,x.x,f,x.x,M,x.x,F*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Water depth, feet
- 2. f = feet
- 3. Water depth, meters
- 4. M = meters
- 5. Water depth, Fathoms
- 6. F = Fathoms
- 7. Checksum
- In real-world sensors, sometimes not all three conversions are reported.
- So you might see something like $SDDBT,,f,22.5,M,,F*cs
- Example: $SDDBT,7.8,f,2.4,M,1.3,F*0D
- === DCN - Decca Position ===
- ------------------------------------------------------------------------------
- 11 13 16
- 1 2 3 4 5 6 7 8 9 10| 12| 14 15| 17
- | | | | | | | | | | | | | | | | |
- $--DCN,xx,cc,x.x,A,cc,x.x,A,cc,x.x,A,A,A,A,x.x,N,x*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Decca chain identifier
- 2. Red Zone Identifier
- 3. Red Line Of Position
- 4. Red Master Line Status
- 5. Green Zone Identifier
- 6. Green Line Of Position
- 7. Green Master Line Status
- 8. Purple Zone Identifier
- 9. Purple Line Of Position
- 10. Purple Master Line Status
- 11. Red Line Navigation Use
- 12. Green Line Navigation Use
- 13. Purple Line Navigation Use
- 14. Position Uncertainity
- 15. N = Nautical Miles
- 16. Fix Data Basis
- - 1 = Normal Pattern
- - 2 = Lane Identification Pattern
- - 3 = Lane Identification Transmissions
- 17. Checksum
- (The DCN sentence is obsolete as of 3.01)
- === DPT - Depth of Water ===
- ------------------------------------------------------------------------------
- 1 2 3 4
- | | | |
- $--DPT,x.x,x.x,x.x*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Water depth relative to transducer, meters
- 2. Offset from transducer, meters
- positive means distance from tansducer to water line
- negative means distance from transducer to keel
- 3. Maximum range scale in use (NMEA 3.0 and above)
- 4. Checksum
- This sentence was incorrectly titled "Heading - Deviation & Variation"
- in <<BETKE>>. It's documented at
- <http://www.humminbird.com/normal.asp?id=853>
- Example: $INDPT,2.3,0.0*46
- === DTM - Datum Reference ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9
- | | | | | | | | |
- $ --DTM,ref,x,llll,c,llll,c,aaa,ref*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Local datum code.
- 2. Local datum subcode. May be blank.
- 3. Latitude offset (minutes)
- 4. N or S
- 5. Longitude offset (minutes)
- 6. E or W
- 7. Altitude offset in meters
- 8. Datum name. What's usually seen here is "W84", the standard
- WGS84 datum used by GPS.
- 9. Checksum.
- Example: $GPDTM,W84,C*52
- === FSI - Frequency Set Information ===
- Set (or report) frequency, mode of operation and transmitter power level of a
- radiotelephone.
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--FSI,xxxxxx,xxxxxx,c,x*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Transmitting Frequency
- 2. Receiving Frequency
- 3. Communications Mode (NMEA Syntax 2)
- 4. Power Level (0 = standby, 1 = lowest, 9 = highest)
- 5. Checksum
- === GBS - GPS Satellite Fault Detection ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9
- | | | | | | | | |
- $--GBS,hhmmss.ss,x.x,x.x,x.x,x.x,x.x,x.x,x.x*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC time of the GGA or GNS fix associated with this sentence
- 2. Expected 1-sigma error in latitude (meters)
- 3. Expected 1-sigma error in longitude (meters)
- 4. Expected 1-sigma error in altitude (meters)
- 5. ID of most likely failed satellite (1 to 138)
- 6. Probability of missed detection for most likely failed satellite
- 7. Estimate of bias in meters on most likely failed satellite
- 8. Standard deviation of bias estimate
- 9. Checksum
- Note: Source <<MX521>> describes a proprietary extension of GBS with
- a 9th data field. The 8-field version is in NMEA 3.0.
- Example: $GPGBS,125027,23.43,M,13.91,M,34.01,M*07
- === GGA - Global Positioning System Fix Data ===
- This is one of the sentences commonly emitted by GPS units.
- Time, Position and fix related data for a GPS receiver.
- ------------------------------------------------------------------------------
- 11
- 1 2 3 4 5 6 7 8 9 10 | 12 13 14 15
- | | | | | | | | | | | | | | |
- $--GGA,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxxx*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC of this position report
- 2. Latitude
- 3. N or S (North or South)
- 4. Longitude
- 5. E or W (East or West)
- 6. GPS Quality Indicator (non null)
- - 0 - fix not available,
- - 1 - GPS fix,
- - 2 - Differential GPS fix
- (values above 2 are 2.3 features)
- - 3 = PPS fix
- - 4 = Real Time Kinematic
- - 5 = Float RTK
- - 6 = estimated (dead reckoning)
- - 7 = Manual input mode
- - 8 = Simulation mode
- 7. Number of satellites in use, 00 - 12
- 8. Horizontal Dilution of precision (meters)
- 9. Antenna Altitude above/below mean-sea-level (geoid) (in meters)
- 10. Units of antenna altitude, meters
- 11. Geoidal separation, the difference between the WGS-84 earth
- ellipsoid and mean-sea-level (geoid), "-" means mean-sea-level
- below ellipsoid
- 12. Units of geoidal separation, meters
- 13. Age of differential GPS data, time in seconds since last SC104
- type 1 or 9 update, null field when DGPS is not used
- 14. Differential reference station ID, 0000-1023
- 15. Checksum
- Example:
- $GNGGA,001043.00,4404.14036,N,12118.85961,W,1,12,0.98,1113.0,M,-21.3,M,,*47
- === GLC - Geographic Position, Loran-C ===
- This sentence is obsolete over most of its former coverage area. The
- US/Canadian/Russian Loran-C network was shut down in 2010; it is still
- as of 2015 in limited use in Europe. Loran-C operations in Norway
- will cease from 1st Jan 2016. <<NORWAY>>
- ------------------------------------------------------------------------------
- 12 14
- 1 2 3 4 5 6 7 8 9 10 11| 13|
- | | | | | | | | | | | | | |
- $--GLC,xxxx,x.x,a,x.x,a,x.x,a.x,x,a,x.x,a,x.x,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. GRI Microseconds/10
- 2. Master TOA Microseconds
- 3. Master TOA Signal Status
- 4. Time Difference 1 Microseconds
- 5. Time Difference 1 Signal Status
- 6. Time Difference 2 Microseconds
- 7. Time Difference 2 Signal Status
- 8. Time Difference 3 Microseconds
- 9. Time Difference 3 Signal Status
- 10. Time Difference 4 Microseconds
- 11. Time Difference 4 Signal Status
- 12. Time Difference 5 Microseconds
- 13. Time Difference 5 Signal Status
- 14. Checksum
- === GLL - Geographic Position - Latitude/Longitude ===
- This is one of the sentences commonly emitted by GPS units.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8
- | | | | | | | |
- $--GLL,llll.ll,a,yyyyy.yy,a,hhmmss.ss,a,m,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Latitude
- 2. N or S (North or South)
- 3. Longitude
- 4. E or W (East or West)
- 5. UTC of this position
- 6. Status A - Data Valid, V - Data Invalid
- 7. FAA mode indicator (NMEA 2.3 and later)
- 8. Checksum
- Example: $GNGLL,4404.14012,N,12118.85993,W,001037.00,A,A*67
- === GNS - Fix data ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11 12 13
- | | | | | | | | | | | | |
- $--GNS,hhmmss.ss,llll.ll,a,yyyyy.yy,a,c--c,xx,x.x,x.x,x.x,x.x,x.x*hh
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC of position
- 2. Latitude
- 3. N or S (North or South)
- 4. Longitude
- 5. E or W (East or West)
- 6. Mode indicator (non-null)
- 7. Total number of satelites in use, 00-99
- 8. Horizontal Dilution of Precision, HDOP
- 9. Antenna altitude, meters, re:mean-sea-level(geoid).
- 10. Goeidal separation meters
- 11. Age of differential data
- 12. Differential reference station ID
- 13. Navigational status (optional)
- S = Safe
- C = Caution
- U = Unsafe
- V = Not valid for navigation
- 14. Checksum
- The Mode indicator is one to four characters, with the first and second
- defined for GPS and GLONASS. Further characters may be defined. For
- each system, the character can have a value (table may be incomplete):
- * A = Autonomous (non-differential)
- * D = Differential mode
- * E = Estimated (dead reckoning) Mode
- * F = RTK Float
- * M = Manual Input Mode
- * N = Constellation not in use, or no valid fix
- * P = Precise (no degradation, like Selective Availability, and hires)
- * R = RTK Integer
- * S = Simulator Mode
- Example: $GPGNS,112257.00,3844.24011,N,00908.43828,W,AN,03,10.5,,,,*57
- === GRS - GPS Range Residuals ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- | | | | | | | | | | | | | | |
- $ --GRS,hhmmss.ss,m,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC time of associated GGA fix
- 2. 0 = Residuals used in GGA, 1 = residuals calculated after GGA
- 3. Satellite 1 residual in meters
- 4. Satellite 2 residual in meters
- 5. Satellite 3 residual in meters
- 6. Satellite 4 residual in meters (blank if unused)
- 7. Satellite 5 residual in meters (blank if unused)
- 8. Satellite 6 residual in meters (blank if unused)
- 9. Satellite 7 residual in meters (blank if unused)
- 10. Satellite 8 residual in meters (blank if unused)
- 11. Satellite 9 residual in meters (blank if unused)
- 12. Satellite 10 residual in meters (blank if unused)
- 13. Satellite 11 residual in meters (blank if unused)
- 14. Satellite 12 residual in meters (blank if unused)
- 15. Checksum
- The order of satellites MUST match those in the last GSA.
- Example: $GPGRS,024603.00,1,-1.8,-2.7,0.3,,,,,,,,,*6C
- Note that the talker ID may be GP, GL, or GN, depending on if the residuals
- are for GPS-only, GLONASS-only, or combined solution, respectively.
- === GST - GPS Pseudorange Noise Statistics ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9
- | | | | | | | | |
- $ --GST,hhmmss.ss,x,x,x,x,x,x,x,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. TC time of associated GGA fix
- 2. Total RMS standard deviation of ranges inputs to the navigation solution
- 3. Standard deviation (meters) of semi-major axis of error ellipse
- 4. Standard deviation (meters) of semi-minor axis of error ellipse
- 5. Orientation of semi-major axis of error ellipse (true north degrees)
- 6. Standard deviation (meters) of latitude error
- 7. Standard deviation (meters) of longitude error
- 8. Standard deviation (meters) of altitude error
- 9. Checksum
- Example: $GPGST,182141.000,15.5,15.3,7.2,21.8,0.9,0.5,0.8*54
- === GSA - GPS DOP and active satellites ===
- This is one of the sentences commonly emitted by GPS units.
- ------------------------------------------------------------------------------
- 1 2 3 14 15 16 17 18
- | | | | | | | |
- $--GSA,a,a,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x.x,x.x,x.x*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Selection mode: M=Manual, forced to operate in 2D or 3D, A=Automatic, 2D/3D
- 2. Mode (1 = no fix, 2 = 2D fix, 3 = 3D fix)
- 3. ID of 1st satellite used for fix
- 4. ID of 2nd satellite used for fix
- 5. ID of 3rd satellite used for fix
- 6. ID of 4th satellite used for fix
- 7. ID of 5th satellite used for fix
- 8. ID of 6th satellite used for fix
- 9. ID of 7th satellite used for fix
- 10. ID of 8th satellite used for fix
- 11. ID of 9th satellite used for fix
- 12. ID of 10th satellite used for fix
- 13. ID of 11th satellite used for fix
- 14. ID of 12th satellite used for fix
- 15. PDOP
- 16. HDOP
- 17. VDOP
- 18. Checksum
- Example: $GNGSA,A,3,80,71,73,79,69,,,,,,,,1.83,1.09,1.47*17
- Note: NMEA 4.1+ systems (in particular u-blox 9) emit an extra field
- just before the checksum.
- -----------------------------------------------
- 1 = GPS L1C/A, L2CL, L2CM
- 2 = GLONASS L1 OF, L2 OF
- 3 = Galileo E1C, E1B, E5 bl, E5 bQ
- 4 = BeiDou B1I D1, B1I D2, B2I D1, B2I D12
- -----------------------------------------------
- === GSV - Satellites in view ===
- This is one of the sentences commonly emitted by GPS units.
- These sentences describe the sky position of a UPS satellite in view.
- Typically they're shipped in a group of 2 or 3.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 n
- | | | | | | | |
- $--GSV,x,x,x,x,x,x,x,...*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. total number of GSV sentences to be transmitted in this group
- 2. Sentence number, 1-9 of this GSV message within current group
- 3. total number of satellites in view (leading zeros sent)
- 4. satellite ID number (leading zeros sent)
- 5. elevation in degrees (-90 to 90) (leading zeros sent)
- 6. azimuth in degrees to true north (000 to 359) (leading zeros sent)
- 7. SNR in dB (00-99) (leading zeros sent)
- more satellite info quadruples like 4-7
- n) checksum
- Example:
- $GPGSV,3,1,11,03,03,111,00,04,15,270,00,06,01,010,00,13,06,292,00*74
- $GPGSV,3,2,11,14,25,170,00,16,57,208,39,18,67,296,40,19,40,246,00*74
- $GPGSV,3,3,11,22,42,067,42,24,14,311,43,27,05,244,00,,,,*4D
- Some GPS receivers may emit more than 12 quadruples (more than three
- GPGSV sentences), even though NMEA-0813 doesn't allow this. (The
- extras might be WAAS satellites, for example.) Receivers may also
- report quads for satellites they aren't tracking, in which case the
- SNR field will be null; we don't know whether this is formally allowed
- or not.
- Example: $GLGSV,3,3,09,88,07,028,*51
- === GTD - Geographic Location in Time Differences ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6
- | | | | | |
- $--GTD,x.x,x.x,x.x,x.x,x.x*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. time difference
- 2. time difference
- 3. time difference
- 4. time difference
- 5. time difference
- n) checksum
- === GXA - TRANSIT Position - Latitude/Longitude ===
- Location and time of TRANSIT fix at waypoint
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8
- | | | | | | | |
- $--GXA,hhmmss.ss,llll.ll,a,yyyyy.yy,a,c--c,X*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC of position fix
- 2. Latitude
- 3. East or West
- 4. Longitude
- 5. North or South
- 6. Waypoint ID
- 7. Satelite number
- 8. Checksum
- (The GXA sentence is obsolete as of 3.01.)
- === HDG - Heading - Deviation & Variation ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6
- | | | | | |
- $--HDG,x.x,x.x,a,x.x,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Magnetic Sensor heading in degrees
- 2. Magnetic Deviation, degrees
- 3. Magnetic Deviation direction, E = Easterly, W = Westerly
- 4. Magnetic Variation degrees
- 5. Magnetic Variation direction, E = Easterly, W = Westerly
- 6. Checksum
- === HDM - Heading - Magnetic ===
- Vessel heading in degrees with respect to magnetic north produced by
- any device or system producing magnetic heading.
- ------------------------------------------------------------------------------
- 1 2 3
- | | |
- $--HDM,x.x,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Heading Degrees, magnetic
- 2. M = magnetic
- 3. Checksum
- === HDT - Heading - True ===
- Actual vessel heading in degrees true produced by any device or system
- producing true heading.
- ------------------------------------------------------------------------------
- 1 2 3
- | | |
- $--HDT,x.x,T*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Heading, degrees True
- 2. T = True
- 3. Checksum
- Example: $GPHDT,274.07,T*03
- === HFB - Trawl Headrope to Footrope and Bottom ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--HFB,x.x,M,y.y,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Distance from headrope to footrope
- 2. Meters (0-100)
- 3. Distance from headrope to bottom
- 4. Meters (0-100)
- 5. Checksum
- From <<GLOBALSAT>>. Shown with a "@II" leader rather than "$GP".
- === HSC - Heading Steering Command ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--HSC,x.x,T,x.x,M,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Heading Degrees, True
- 2. T = True
- 3. Heading Degrees, Magnetic
- 4. M = Magnetic
- 5. Checksum
- <<GLOBALSAT>> describes a completely different meaning for this
- sentence, having to do with water temperature sensors. It is
- unclear which is correct.
- === ITS - Trawl Door Spread 2 Distance ===
- ------------------------------------------------------------------------------
- 1 2 3
- | | |
- $--ITS,x.x,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number)
- 1. Second spread distance
- 2. Meters
- 3. Checksum.
- From <<GLOBALSAT>>. Shown with a "@II" leader rather than "$GP".
- === LCD - Loran-C Signal Data ===
- Obsolete.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14
- | | | | | | | | | | | | | |
- $--LCD,xxxx,xxx,xxx,xxx,xxx,xxx,xxx,xxx,xxx,xxx,xxx,xxx,xxx*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. GRI Microseconds/10
- 2. Master Relative SNR
- 3. Master Relative ECD
- 4. Time Difference 1 Microseconds
- 5. Time Difference 1 Signal Status
- 6. Time Difference 2 Microseconds
- 7. Time Difference 2 Signal Status
- 8. Time Difference 3 Microseconds
- 9. Time Difference 3 Signal Status
- 10. Time Difference 4 Microseconds
- 11. Time Difference 4 Signal Status
- 12. Time Difference 5 Microseconds
- 13. Time Difference 5 Signal Status
- 14. Checksum
- === MDA - Meteorilogical Composite ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
- | | | | | | | | | | | | | | | | | | | | |
- $--MDA,n.nn,I,n.nnn,B,n.n,C,n.C,n.n,n,n.n,C,n.n,T,n.n,M,n.n,N,n.n,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Barometric pressure, inches of mercury, to the nearest 0.01 inch
- 2. I = inches of mercury
- 3. Barometric pressure, bars, to the nearest .001 bar
- 4. B = bars
- 5. Air temperature, degrees C, to the nearest 0.1 degree C
- 6. C = degrees C
- 7. Water temperature, degrees C (this field left blank by WeatherStation)
- 8. C = degrees C
- 9. Relative humidity, percent, to the nearest 0.1 percent
- 10. Absolute humidity, percent
- 11. Dew point, degrees C, to the nearest 0.1 degree C
- 12. C = degrees C
- 13. Wind direction, degrees True, to the nearest 0.1 degree
- 14. T = true
- 15. Wind direction, degrees Magnetic, to the nearest 0.1 degree
- 16. M = magnetic
- 17. Wind speed, knots, to the nearest 0.1 knot
- 18. N = knots
- 19. Wind speed, meters per second, to the nearest 0.1 m/s
- 20. M = meters per second
- 21. Checksum
- Obsolete as of 2009.
- === MSK - Control for a Beacon Receiver ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6
- | | | | | |
- $--MSK,nnn,m,nnn,m,nnn*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Beacon frequency to use, 283.5-325.0 kHz
- 2. Frequency mode, A=auto, M=manual
- 3. Beacon bit rate (25, 50, 100, 200)
- 4. Bitrate, A=auto, M=manual
- 5. Interval for MSS message status (null for no status), seconds
- 6. Checksum
- === MSS - Beacon Receiver Status ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6
- | | | | | |
- $--MSS,nn,nn,fff,bbb,xxx*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Signal strength (dB 1uV)
- 2. Signal to noise ratio (dB)
- 3. Beacon frequency,283.5-325.0 kHz
- 4. Beacon data rate, 25, 50, 100, 200 bps
- 5. Channel number
- 6. Checksum
- Example: $GPMSS,0,0,0.000000,200,*5A
- === MTW - Mean Temperature of Water ===
- ------------------------------------------------------------------------------
- 1 2 3
- | | |
- $--MTW,x.x,C*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Temperature, degrees
- 2. Unit of Measurement, Celcius
- 3. Checksum
- <<GLOBALSAT>> lists this as "Meteorological Temperature of Water", which
- is probably incorrect.
- Example: $INMTW,17.9,C*1B
- === MWV - Wind Speed and Angle ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--MWV,x.x,a,x.x,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Wind Angle, 0 to 359 degrees
- 2. Reference, R = Relative, T = True
- 3. Wind Speed
- 4. Wind Speed Units, K/M/
- 5. Status, A = Data Valid, V = Invalid
- 6. Checksum
- === OLN - Omega Lane Numbers ===
- Obsolete.
- ------------------------------------------------------------------------------
- 1 2 3 4
- |--------+ |--------+ |--------+ |
- $--OLN,aa,xxx,xxx,aa,xxx,xxx,aa,xxx,xxx*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Omega Pair 1
- 2. Omega Pair 1
- 3. Omega Pair 1
- 4. Checksum
- (The OLN sentence is obsolete as of 2.30)
- === OSD - Own Ship Data ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10
- | | | | | | | | | |
- $--OSD,x.x,A,x.x,a,x.x,a,x.x,x.x,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Heading, degrees True
- 2. Status, A = Data Valid, V = Invalid
- 3. Vessel Course, degrees True
- 4. Course Reference B/M/W/R/P
- 5. Vessel Speed
- 6. Speed Reference B/M/W/R/P
- 7. Vessel Set, degrees True
- 8. Vessel drift (speed)
- 9. Speed Units K/N
- 10. Checksum
- === R00 - Waypoints in active route ===
- ------------------------------------------------------------------------------
- 1 n
- | |
- $--R00,c---c,c---c,....*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. waypoint ID
- ...
- n) checksum
- === RMA - Recommended Minimum Navigation Information ===
- ------------------------------------------------------------------------------
- 12
- 1 2 3 4 5 6 7 8 9 10 11|
- | | | | | | | | | | | |
- $--RMA,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,x.x,x.x,x.x,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Status, A = Valid, V = Invalid
- 2. Latitude
- 3. N or S
- 4. Longitude
- 5. E or W
- 6. Time Difference A, uS
- 7. Time Difference B, uS
- 8. Speed Over Ground, Knots
- 9. Track Made Good, degrees True
- 10. Magnetic Variation, degrees
- 11. E or W
- 12. Checksum
- === RMB - Recommended Minimum Navigation Information ===
- To be sent by a navigation receiver when a destination waypoint is active.
- ------------------------------------------------------------------------------
- 14
- 1 2 3 4 5 6 7 8 9 10 11 12 13| 15
- | | | | | | | | | | | | | | |
- $--RMB,A,x.x,a,c--c,c--c,llll.ll,a,yyyyy.yy,a,x.x,x.x,x.x,A,m,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Status, A = Active, V = Invalid
- 2. Cross Track error - nautical miles
- 3. Direction to Steer, Left or Right
- 4. Origin Waypoint ID
- 5. Destination Waypoint ID
- 6. Destination Waypoint Latitude
- 7. N or S
- 8. Destination Waypoint Longitude
- 9. E or W
- 10. Range to destination in nautical miles
- 11. Bearing to destination in degrees True
- 12. Destination closing velocity in knots
- 13. Arrival Status, A = Arrival Circle Entered. V = not entered/passed
- 14. FAA mode indicator (NMEA 2.3 and later)
- 15. Checksum
- Example: $GPRMB,A,0.66,L,003,004,4917.24,N,12309.57,W,001.3,052.5,000.5,V*0B
- === RMC - Recommended Minimum Navigation Information ===
- This is one of the sentences commonly emitted by GPS units.
- ------------------------------------------------------------------------------
- 12
- 1 2 3 4 5 6 7 8 9 10 11| 13
- | | | | | | | | | | | | |
- $--RMC,hhmmss.ss,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,xxxx,x.x,a,m,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC Time of postion
- 2. Status, A = Valid, V = Warning
- 3. Latitude
- 4. N or S
- 5. Longitude
- 6. E or W
- 7. Speed over ground, knots
- 8. Track made good, degrees true
- 9. Date, ddmmyy
- 10. Magnetic Variation, degrees
- 11. E or W
- 12. FAA mode indicator (NMEA 2.3 and later)
- 13. Checksum
- A status of V means the GPS has a valid fix that is below an internal
- quality threshold, e.g. because the dilution of precision is too high
- or an elevation mask test failed.
- Example: $GNRMC,001031.00,A,4404.13993,N,12118.86023,W,0.146,,100117,,,A*7B
- === ROT - Rate Of Turn ===
- ------------------------------------------------------------------------------
- 1 2 3
- | | |
- $--ROT,x.x,A*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Rate Of Turn, degrees per minute, "-" means bow turns to port
- 2. Status, A means data is valid
- 3. Checksum
- Example: $HEROT,0.0,A*2B
- === RPM - Revolutions ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6
- | | | | | |
- $--RPM,a,x,x.x,x.x,A*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Source, S = Shaft, E = Engine
- 2. Engine or shaft number
- 3. Speed, Revolutions per minute
- 4. Propeller pitch, % of maximum, "-" means astern
- 5. Status, A = Valid, V = Invalid
- 6. Checksum
- === RSA - Rudder Sensor Angle ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--RSA,x.x,A,x.x,A*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Starboard (or single) rudder sensor, "-" means Turn To Port
- 2. Status, A = valid, V = Invalid
- 3. Port rudder sensor
- 4. Status, A = valid, V = Invalid
- 5. Checksum
- === RSD - RADAR System Data ===
- ------------------------------------------------------------------------------
- 14
- 1 2 3 4 5 6 7 8 9 10 11 12 13|
- | | | | | | | | | | | | | |
- $--RSD,x.x,x.x,x.x,x.x,x.x,x.x,x.x,x.x,x.x,x.x,x.x,a,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- (Some fields are missing from this description.)
- Field Number:
- 1. Origin 1 range
- 2. Origin 1 bearing
- 3. Variable Rangs Marker 1
- 4. Bearing Line 1
- 5. Origin 2 range
- 6. Origin 2 bearing
- 7. Variable Range Marker 2
- 8. Bearing Line 2
- 9. Cursor Range From Own Ship
- 10. Cursor Bearing Degrees Clockwise From Zero
- 11. Range Scale
- 12. Range Units
- 13. Display rotation (C = course up, H = heading up, N - North up)
- 14. Checksum
- === RTE - Routes ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 x n
- | | | | | | |
- $--RTE,x.x,x.x,a,c--c,c--c, ..... c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Total number of RE sentences being transmitted
- 2. Sentence Number
- 3. Sentence mode
- c = complete route, all waypoints
- w = working route, the waypoint you just left, the waypoint
- you're heading to, then all the rest
- 4. Route ID
- 5. Waypoint ID
- 6. Additiobal waypint IDs
- More waypoints follow. Last field is a checksum as usual.
- The Garmin 65 and possibly other units report a $GPR00 in the same format.
- Example: $GPRTE,1,1,c,0*07
- === SFI - Scanning Frequency Information ===
- ------------------------------------------------------------------------------
- 1 2 3 4 x
- | | | | |
- $--SFI,x.x,x.x,xxxxxx,c .......... xxxxxx,c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Total Number Of sentences
- 2. Sentenence Number
- 3. Frequency 1
- 4. Mode 1
- 5. Additional Frequency, Mode pairs
- x. Checksum
- === STN - Multiple Data ID ===
- This sentence is transmitted before each individual sentence where
- there is a need for the Listener to determine the exact source of data
- in the system. Examples might include dual-frequency depthsounding
- equipment or equipment that integrates data from a number of sources
- and produces a single output.
- ------------------------------------------------------------------------------
- 1 2
- | |
- $--STN,x.x,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Talker ID Number
- 2. Checksum
- === TDS - Trawl Door Spread Distance ===
- ------------------------------------------------------------------------------
- 1 2 3
- | | |
- $--TDS,x.x,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number)
- 1. Distance between trawl doors
- 2. Meters (0-300)
- 3. Checksum.
- From <<GLOBALSAT>>. Shown with a "@II" leader rather than "$GP".
- === TFI - Trawl Filling Indicator ===
- ------------------------------------------------------------------------------
- 1 2 3 4
- | | | |
- $--TFI,x,y,z*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field number:
- 1. Catch sensor #1 (0 = off, 1 = on, 2 = no answer)
- 2. Catch sensor #2 (0 = off, 1 = on, 2 = no answer)
- 3. Catch sensor #3 (0 = off, 1 = on, 2 = no answer)
- From <<GLOBALSAT>>. Shown with a "@II" leader rather than "$GP".
- === TLB - Target Label ===
- ------------------------------------------------------------------------------
- 1 2 (3) (4) 5
- | | | | |
- $--TLB,x.x,c--c,x.x,c--c,...,x.x,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Target Number (0-99)
- 2. Label assigned to target
- 3. (Target number 2)
- 4. (Label assigned to target number 2)
- 5. Checksum
- Message can contain target number + label pairs up to maximum NMEA message length.
- Target number references to target number in TTM (and/or TLL) messages.
- === TLL - Target Latitude and Longitude ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10
- | | | | | | | | | |
- $--TLL,xx,llll.ll,a,yyyyy.yy,a,c--c,hhmmss.ss,a,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Target Number (0-99)
- 2. Target Latitude
- 3. N=north, S=south
- 4. Target Longitude
- 5. E=east, W=west
- 6. Target name
- 7. UTC of data
- 8. Status (L=lost, Q=acquisition, T=tracking)
- 9. R= reference target; null (,,)= otherwise
- === TPC - Trawl Position Cartesian Coordinates ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--TPC,x,M,y,P,z.z,M*hh,<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Horizontal distance from the vessel center line
- 2. Meters
- 3. Horizontal distance from the transducer to the trawl along the
- vessel center line. The value is normally positive assuming the
- trawl is located behind the vessel.
- 4. Meters
- 5. Depth of the trawl below the surface
- 6. Meters
- 7. Checksum
- From <<GLOBALSAT>>. Shown with a "@II" leader rather than "$GP".
- This entry actually merges their TPC description with another
- entry labeled (apparently incorrectly) TPT, which differs from the
- TPT shown below.
- === TPR - Trawl Position Relative Vessel ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--TPR,x,M,y,P,z.z,M*hh,<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Horizontal range relative to target
- 2. Meters (0-4000)
- 3. Bearing to target relative to vessel heading. Resolution is one degree.
- 4. Separator
- 5. Depth of trawl below the surface
- 6. Meters (0-2000)
- 7. Checksum
- From <<GLOBALSAT>>. Shown with a "@II" leader rather than "$GP".
- === TPT - Trawl Position True ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--TPT,x,M,y,P,z.z,M*hh,<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Horizontal range relative to target
- 2. Meters (0-4000)
- 3. True bearing to taget (ie. relative north). Resolution is one degree.
- 4. Separator
- 5. Depth of trawl below the surface
- 6. Meters (0-2000)
- 7. Checksum
- From <<GLOBALSAT>>. Shown with a "@II" leader rather than "$GP".
- === TRF - TRANSIT Fix Data ===
- ------------------------------------------------------------------------------
- 13
- 1 2 3 4 5 6 7 8 9 10 11 12|
- | | | | | | | | | | | | |
- $--TRF,hhmmss.ss,xxxxxx,llll.ll,a,yyyyy.yy,a,x.x,x.x,x.x,x.x,xxx,A*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC Time
- 2. Date, ddmmyy
- 3. Latitude
- 4. N or S
- 5. Longitude
- 6. E or W
- 7. Elevation Angle
- 8. Number of iterations
- 9. Number of Doppler intervals
- 10. Update distance, nautical miles
- 11. Satellite ID
- 12. Data Validity
- 13. Checksum
- (The TRF sentence is obsolete as of 2.3.0)
- === TTM - Tracked Target Message ===
- ------------------------------------------------------------------------------
- 11 13 16
- 1 2 3 4 5 6 7 8 9 10| 12| 14 15 |
- | | | | | | | | | | | | | | | |
- $--TTM,xx,x.x,x.x,a,x.x,x.x,a,x.x,x.x,a,c--c,a,a,hhmmss.ss,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Target Number (0-99)
- 2. Target Distance
- 3. Bearing from own ship
- 4. T = True, R = Relative
- 5. Target Speed
- 6. Target Course
- 7. T = True, R = Relative
- 8. Distance of closest-point-of-approach
- 9. Time until closest-point-of-approach "-" means increasing
- 10. Speed/distance units, K/N
- 11. Target name
- 12. Target Status
- 13. Reference Target
- 14. UTC of data (NMEA 3 and above)
- 15. Type, A = Auto, M = Manual, R = Reported (NMEA 3 and above)
- 16. Checksum
- <<GLOBALSAT>> gives this in a slightly different form, with 14th and
- 15th fields conveying time of observation and whether target
- acquisition was automatic or manual.
- === VBW - Dual Ground/Water Speed ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 0 10 11
- | | | | | | | | | | |
- $--VBW,x.x,x.x,A,x.x,x.x,A,x.x,A,x.x,A*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Longitudinal water speed, "-" means astern, knots
- 2. Transverse water speed, "-" means port, knots
- 3. Status, A = Data Valid
- 4. Longitudinal ground speed, "-" means astern, knots
- 5. Transverse ground speed, "-" means port, knots
- 6. Status, A = Data Valid
- 7. Stern traverse water speed, knots *NMEA 3 and above)
- 8. Status, stern traverse water speed A = Valid (NMEA 3 and above)
- 9. Stern traverse ground speed, knots *NMEA 3 and above)
- 10. Status, stern ground speed A = Valid (NMEA 3 and above)
- 11. Checksum
- === VDR - Set and Drift ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--VDR,x.x,T,x.x,M,x.x,N*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Direction degress, True
- 2. T = True
- 3. Direction degrees Magnetic
- 4. M = Magnetic
- 5. Current speed, knots
- 6. N = Knots
- 7. Checksum
- === VHW - Water speed and heading ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9
- | | | | | | | | |
- $--VHW,x.x,T,x.x,M,x.x,N,x.x,K*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Heading degress, True
- 2. T = True
- 3. Heading degrees, Magnetic
- 4. M = Magnetic
- 5. Speed of vessel relative to the water, knots
- 6. N = Knots
- 7. Speed of vessel relative to the water, km/hr
- 8. K = Kilometers
- 9. Checksum
- <<GLOBALSAT>> describes a different format in which the first three
- fields are water-temperature measurements. It's not clear which
- is correct.
- === VLW - Distance Traveled through Water ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9
- | | | | | | | | |
- $--VLW,x.x,N,x.x,N,x.x,N,x.x,N*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Total cumulative water distance, nm
- 2. N = Nautical Miles
- 3. Water distance since Reset, nm
- 4. N = Nautical Miles
- 5. Total cumulative ground distance, nm (NMEA 3 and above)
- 6. N = Nautical Miles (NMEA 3 and above)
- 7. Ground distance since reset, nm (NMEA 3 and above)
- 8. N = Nautical Miles (NMEA 3 and above)
- 9. Checksum
- === VPW - Speed - Measured Parallel to Wind ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--VPW,x.x,N,x.x,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Speed, "-" means downwind, knots
- 2. N = Knots
- 3. Speed, "-" means downwind, m/s
- 4. M = Meters per second
- 5. Checksum
- === VTG - Track made good and Ground speed ===
- This is one of the sentences commonly emitted by GPS units.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10
- | | | | | | | | | |
- $--VTG,x.x,T,x.x,M,x.x,N,x.x,K,m,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Course over ground, degrees True
- 2. T = True
- 3. Course over ground, degrees Magnetic
- 4. M = Magnetic
- 5. Speed over ground, knots
- 6. N = Knots
- 7. Speed over ground, km/hr
- 8. K = Kilometers Per Hour
- 9. FAA mode indicator (NMEA 2.3 and later)
- 10. Checksum
- Note: in some older versions of NMEA 0183, the sentence looks like this:
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--VTG,x.x,x,x.x,x.x,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. True course over ground (degrees) 000 to 359
- 2. Magnetic course over ground 000 to 359
- 3. Speed over ground (knots) 00.0 to 99.9
- 4. Speed over ground (kilometers) 00.0 to 99.9
- 5. Checksum
- The two forms can be distinguished by field 2, which will be
- the fixed text 'T' in the newer form. The new form appears
- to have been introduced with NMEA 3.01 in 2002.
- Some devices, such as those described in <<GLOBALSAT>>, leave the
- magnetic-bearing fields 3 and 4 empty.
- Example: $GPVTG,220.86,T,,M,2.550,N,4.724,K,A*34
- === VWR - Relative Wind Speed and Angle ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9
- | | | | | | | | |
- $--VWR,x.x,a,x.x,N,x.x,M,x.x,K*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Wind direction magnitude in degrees
- 2. Wind direction Left/Right of bow
- 3. Speed
- 4. N = Knots
- 5. Speed
- 6. M = Meters Per Second
- 7. Speed
- 8. K = Kilometers Per Hour
- 9. Checksum
- === WCV - Waypoint Closure Velocity ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5
- | | | | |
- $--WCV,x.x,N,c--c,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Velocity, knots
- 2. N = knots
- 3. Waypoint ID
- 4. FAA Mode indicator, not null (NMEA 3 and above)
- 5. Checksum
- === WNC - Distance - Waypoint to Waypoint ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--WNC,x.x,N,x.x,K,c--c,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Distance, Nautical Miles
- 2. N = Nautical Miles
- 3. Distance, Kilometers
- 4. K = Kilometers
- 5. TO Waypoint
- 6. FROM Waypoint
- 7. Checksum
- === WPL - Waypoint Location ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6
- | | | | | |
- $--WPL,llll.ll,a,yyyyy.yy,a,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Latitude
- 2. N or S (North or South)
- 3. Longitude
- 4. E or W (East or West)
- 5. Waypoint name
- 6. Checksum
- === XDR - Transducer Measurement ===
- ------------------------------------------------------------------------------
- 1 2 3 4 n
- | | | | |
- $--XDR,a,x.x,a,c--c, ..... *hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Transducer Type
- 2. Measurement Data
- 3. Units of measurement
- 4. Name of transducer
- There may be any number of quadruplets like this, each describing a
- sensor. The last field will be a checksum as usual.
- Example:
- $HCXDR,A,171,D,PITCH,A,-37,D,ROLL,G,367,,MAGX,G,2420,,MAGY,G,-8984,,MAGZ*41
- === XTE - Cross-Track Error, Measured ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--XTE,A,A,x.x,a,N,m,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Status
- - A - Valid
- - V = Loran-C Blink or SNR warning
- - V = general warning flag or other navigation systems when a reliable
- fix is not available
- 2. Status
- - V = Loran-C Cycle Lock warning flag
- - A = Valid
- 3. Cross Track Error Magnitude
- 4. Direction to steer, L or R
- 5. Cross Track Units, N = Nautical Miles
- 6. FAA mode indicator (NMEA 2.3 and later, optional)
- 7. Checksum
- Example: $GPXTE,V,V,,,N,S*43
- === XTR - Cross Track Error - Dead Reckoning ===
- ------------------------------------------------------------------------------
- 1 2 3 4
- | | | |
- $--XTR,x.x,a,N*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Magnitude of cross track error
- 2. Direction to steer, L or R
- 3. Units, N = Nautical Miles
- 4. Checksum
- === ZDA - Time & Date - UTC, day, month, year and local time zone ===
- This is one of the sentences commonly emitted by GPS units.
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $--ZDA,hhmmss.ss,xx,xx,xxxx,xx,xx*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC time (hours, minutes, seconds, may have fractional subsecond)
- 2. Day, 01 to 31
- 3. Month, 01 to 12
- 4. Year (4 digits)
- 5. Local zone description, 00 to +- 13 hours
- 6. Local zone minutes description, 00 to 59, apply same sign as local hours
- 7. Checksum
- Example: $GPZDA,160012.71,11,03,2004,-1,00*7D
- === ZFO - UTC & Time from origin Waypoint ===
- ------------------------------------------------------------------------------
- 1 2 3 4
- | | | |
- $--ZFO,hhmmss.ss,hhmmss.ss,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Universal Time Coordinated (UTC)
- 2. Elapsed Time
- 3. Origin Waypoint ID
- 4. Checksum
- === ZTG - UTC & Time to Destination Waypoint ===
- ------------------------------------------------------------------------------
- 1 2 3 4
- | | | |
- $--ZTG,hhmmss.ss,hhmmss.ss,c--c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. UTC of observation
- 2. Time Remaining
- 3. Destination Waypoint ID
- 4. Checksum
- === Other sentences ===
- There is evidence for the existence of the following NMEA sentences
- on the Web:
- |======================================================
- |ACK - Alarm Acknowldgement
- |ADS - Automatic Device Status
- |AKD - Acknowledge Detail Alarm Condition
- |ALA - Set Detail Alarm Condition
- |ASD - Autopilot System Data
- |BEC - Bearing & Distance to Waypoint - Dead Reckoning
- |CEK - Configure Encryption Key Command
- |COP - Configure the Operational Period, Command
- |CUR - Water Current Layer
- |DCR - Device Capability Report
- |DDC - Display Dimming Control
- |DOR - Door Status Detection
- |DSC - Digital Selective Calling Information
- |DSE - Extended DSC
- |DSI - DSC Transponder Initiate
- |DSR - DSC Transponder Response
- |ETL - Engine Telegraph Operation Status
- |EVE - General Event Message
- |FIR - Fire Detection
- |MWD - Wind Direction & Speed
- |WDR - Distance to Waypoint - Rhumb Line
- |WDC - Distance to Waypoint - Great Circle
- |ZDL - Time and Distance to Variable Point
- |======================================================
- $CDDSC is described in <<CDDSC>>.
- == Vendor extensions ==
- This list is very incomplete.
- === PASHR - RT300 proprietary roll and pitch sentence ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8 9 10 11 12
- | | | | | | | | | | | |
- $PASHR,hhmmss.sss,hhh.hh,T,rrr.rr,ppp.pp,xxx.xx,a.aaa,b.bbb,c.ccc,d,e*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field number:
- 1. hhmmss.sss - UTC time
- 2. hhh.hh - Heading in degrees
- 3. T - flag to indicate that the Heading is True Heading (i.e. to True North)
- 4. rrr.rr - Roll Angle in degrees
- 5. ppp.pp - Pitch Angle in degrees
- 6. xxx.xx - Heave
- 7. a.aaa - Roll Angle Accuracy Estimate (Stdev) in degrees
- 8. b.bbb - Pitch Angle Accuracy Estimate (Stdev) in degrees
- 9. c.ccc - Heading Angle Accuracy Estimate (Stdev) in degrees
- 10. d - Aiding Status
- 11. e - IMU Status
- 12. hh - Checksum
- <<PASHR>> describes this sentence as NMEA, though other sources say it
- is Ashtech proprietary and describe a different format.
- Example:
- $PASHR,085335.000,224.19,T,-01.26,+00.83,+00.00,0.101,0.113,0.267,1,0*06
- === PGRME - Garmin Estimated Error ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7
- | | | | | | |
- $PGRME,hhh,M,vvv,M,ttt,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Estimated horizontal position error (HPE),
- 2. M=meters
- 3. Estimated vertical position error (VPE)
- 4. M=meters
- 5. Overall spherical equivalent position error
- 6. M=meters
- 7. Checksum
- Example: $PGRME,15.0,M,45.0,M,25.0,M*22
- === PGRMZ - Garmin Altitude ===
- ------------------------------------------------------------------------------
- 1 2 3 4
- | | | |
- $PGRMZ,hhh,f,M*hh<CR><LF>
- ------------------------------------------------------------------------------
- Field Number:
- 1. Current Altitude Feet
- 2. f=feet
- 3. Mode (1 = no fix, 2 = 2D fix, 3 = 3D fix)
- 4. Checksum
- Example: $PGRMZ,2282,f,3*21
- === PMGNST - Magellan Status ===
- ------------------------------------------------------------------------------
- 1 2 3 4 5 6 7 8
- | | | | | | | |
- $PMGNST,xx.xx,m,t,nnn,xx.xx,nnn,nn,c
- ------------------------------------------------------------------------------
- Field Number:
- 1. Firmware version number?
- 2. Mode (1 = no fix, 2 = 2D fix, 3 = 3D fix)
- 3. T if we have a fix
- 4. numbers change - unknown
- 5. time left on the GPS battery in hours
- 6. numbers change (freq. compensation?)
- 7. PRN number receiving current focus
- 8. nmea_checksum
- Only supported on Magellan GPSes.
- === PRWIZCH - Rockwell Channel Status ===
- ------------------------------------------------------------------------------
- $PRWIZCH,n,s,n,s,n,s,n,s,n,s,n,s,n,s,n,s,n,s,n,s,n,s,n,s,c*hh<CR><LF>
- ------------------------------------------------------------------------------
- Fields consist of 12 pairs of a satellite PRN followed by a
- signal quality number in the range 0-7 (0 worst, 7 best).
- Only emitted by the now-obsolete Zodiac (Rockwell) chipset.
- === PUBX 00 - u-blox Lat/Long Position Data ===
- ------------------------------------------------------------------------------
- $PUBX,00,hhmmss.ss,Latitude,N,Longitude,E,AltRef,NavStat,Hacc,Vacc,SOG,COG,Vvel,+ageC,HDOP,VDOP,TDOP,GU,RU,DR,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Example:
- $PUBX,00,081350.00,4717.113210,N,00833.915187,E,546.589,G3,2.1,2.0,0.007,77.52,0+.007,,0.92,1.19,0.77,9,0,0*5F<CR><LF>
- Only emitted by u-blox Antaris chipset.
- === PUBX 01 - u-blox UTM Position Data ===
- The $PUBX,01 is a UTM (Universal Transverse Mercator projection) version
- of the $PUBX,00 sentence.
- ------------------------------------------------------------------------------
- $PUBX,01,hhmmss.ss,Easting,E,Northing,N,AltMSL,NavStat,Hacc,Vacc,SOG,COG,Vvel,ag+eC,HDOP,VDOP,TDOP,GU,RU,DR,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Example:
- $PUBX,01,075142.00,467125.245,E,5236949.763,N,498.235,G3,2.1,1.9,0.005,85.63,0.0+00,,0.78,0.90,0.52,12,0,0*65
- Only emitted by u-blox Antaris chipset.
- === PUBX 03 - u-blox Satellite Status ===
- ------------------------------------------------------------------------------
- $PUBX,03,GT{,ID,s,AZM,EL,SN,LK},*hh<CR><LF>
- ------------------------------------------------------------------------------
- Example:
- $PUBX,03,11,23,-,,,45,010,29,-,,,46,013,07,-,,,42,015,08,U,067,31,42,025,10,U,19+5,33,46,026,18,U,326,08,39,026,17,-,,,32,015,26,U,306,66,48,025,27,U,073,10,36,+026,28,U,089,61,46,024,15,-,,,39,014*0D
- Only emitted by u-blox Antaris chipset.
- (There's no PUBX 02)
- === PUBX 04 - u-blox Time of Day and Clock Information ===
- ------------------------------------------------------------------------------
- $PUBX,04,hhmmss.ss,ddmmyy,UTC_TOW,week,reserved,Clk_B,Clk_D,PG,*hh<CR><LF>
- ------------------------------------------------------------------------------
- Example:
- $PUBX,04,073731.00,091202,113851.00,1196,113851.00,1930035,-2660.664,43,*3C<CR><+LF>
- Only emitted by u-blox Antaris chipset.
- === TMVTD - Transas VTS / SML tracking system report ===
- ------------------------------------------------------------------------------
- $TMVTD,DDMMYY,hhmmss.ss,a,xxxx,c—c,llll.llll,a,yyyyy.yyyy,a,x.x,a,x.x,a,a*hh<CR><LF>
- ------------------------------------------------------------------------------
- ‘TM’ indicates message generated by SML tracking system. ‘VTD’ is
- name of the message.
- Field Number:
- 1. Day/month/year (two-digit year, unknown base century)
- 2. Hour/minute/second to 0.1 sec precion, UTC.
- 3. ‘R’ indicates that this is an update for a radar track. No other
- values are valid
- 4. Internal unique ID number. Can’t be changed even when target is
- re-identified
- 5. Target alias. Can be changed when the target identification data is
- edited. Symbols “$”, “*” “,” and “.” are not allowed to be used
- within the alias word. This field is variable length, at most 21v
- characters.
- 6. Latitude in degrees (two leading digits) and decimal minutes
- (trailing digits).
- 7. N or S for North or South latitude.
- 8. Longitude in degrees (three leading digits) and decimal minutes
- (trailing digits).
- 9. E or W for East or West longitude.
- 10. Target course in decimal degrees.
- 11. Fixed to T, indicates true course.
- 12. Target speed in decimal knots.
- 13. Fixed to N, indicates decimal speed in knots.
- 14. T or D. T = tracked, D = dropped. Message with status
- “dropped” is sent only once after target is dropped.
- 15. NMEA checksum.
- Transas is a mnanufacturer of proprietary ECDIS systems.
- Described in <<MALTESE>>, actually a Maltese government document.
- == References ==
- [bibliography]
- - [[[BETKE]]]
- "The NMEA 0183 protocol"
- http://www.scribd.com/mcocco/d/6365285-The-NMEA-0183-Protocol
- Probably the ancestor of this document. Compiled by Klaus Betke
- and dated May 2000 with a revision in 2001.
- - [[[CANBUS]]]
- "Wikipedia: CAN bus"
- https://en.wikipedia.org/wiki/CAN_bus
- - [[[NMEA2000]]]
- "Wikipedia: NMEA 2000"
- https://en.wikipedia.org/wiki/NMEA_2000
- - [[[KEVERSOFT]]]
- http://www.keversoft.com/downloads/packetlogger_20120305_explain.txt
- - [[[DEPRIEST]]]
- "NMEA data"
- http://www.gpsinformation.org/dale/nmea.htm
- Used for PMGNST and the FAA mode code.
- - [[[MX521]]]
- "MX521 GPS/DGPS Sensor Installation Manual"
- http://www.mx-marine.com/downloads/MX521_Install_manual_051804.pdf
- Used for GBS, GRS.
- - [[[MX535]]]
- "MX535 UAIS Ship Borne Class A Transponder Unit Techical & Installation Manual"
- http://www.mx-marine.com/downloads/mx535/MX535_Tech_Manual_Rev_E.pdf
- Used for GNS.
- - [[[ZODIAC]]]
- "Zodiac Serial Data Interface Specification"
- http://users.rcn.com/mardor/serial.pdf
- Used for PRWIZCH.
- - [[[GH79L4N]]]
- "Specifications for GPS Receiver GH-79L4-N"
- http://www.tecsys.de/db/gps/gh79l1an_intant.pdf
- Used for GPDTM.
- - [[[GIDS]]]
- "GPS - NMEA sentence information"
- http://aprs.gids.nl/nmea/
- Used for BWC, MSK, MSS.
- - [[[NMEAFAQ]]]
- "The NMEA FAQ"
- http://vancouver-webpages.com/peter/nmeafaq.txt
- Used for R00.
- - [[[UNMEA]]]
- "Understanding NMEA 0183"
- http://pcptpp030.psychologie.uni-regensburg.de/trafficresearch/NMEA0183/
- Source for the claim that NMEA requires undefined data fields to
- be empty.
- - [[[NTUM]]]
- "NemaTalker User Manual"
- http://www.sailsoft.nl/NemaTalker/UserManual/InstrGPS.htm
- Source for the claim that Mode Indicator dominates Status.
- - [[[IEC61162-1]]]
- "International Standard IEC 61162-1" (preview)
- http://domino.iec.ch/preview/info_iec61162-1%7Bed2.0%7Den.pdf
- - [[[SEATALK]]]
- "SeaTalk Technical Reference"
- http://www.thomasknauf.de/seatalk.htm
- - [[[SATSTAT]]] "NMEA IDs" https://github.com/mvglasow/satstat/wiki/NMEA-IDs
- - [[[PASHR]]]
- "News - NMEA PASHR Output Format Added"
- http://www.oxts.com/default.asp?pageRef=76&newsID=69
- - [[[WAAS]]]
- "WAAS Information"
- http://gpsinformation.net/exe/waas.html
- - [[[PPS]]]
- "Pulse per second"
- https://en.wikipedia.org/wiki/Pulse_per_second
- - [[[MALTESE]]]
- "Procurement of a Fixed-Wing Maritime Patrol Aircraft"
- https://secure2.gov.mt/eprocurement/Tenders/file.ashx?f=9832DB05E65C774258580284031EC72CC315D954A7108B5E.
- - [[NMEA-ADVANCE]]
- "NMEA 0183 Advancements" (describes 'P' value of FAA mode)
- http://www.nmea.org/Assets/0183_advancements_nmea_oct_1_2010%20(2).pdf
- - [[CDDSC]]
- "Data Interface in Digital Selective Calling Class-D Radios"
- http://continuouswave.com/whaler/reference/DSC_Datagrams.html
- - [[ANON]]
- Anonymous commentator(s) are persons who have volunteered information
- about the NMEA standard(s) but do not wish to be identified.
- - [[[NORWAY]]]
- "Etterretninger for sjøfarende" Notoces for Mariners, see p26
- https://kartverket.no/efs-documents/editions/2015/efs01-2015.pdf
|