xref: /freebsd/contrib/ntp/html/drivers/mx4200data.html (revision fed1ca4b719c56c930f2259d80663cd34be812bb)
1<html>
2
3	<head>
4		<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
5		<title>MX4200 Receiver Data Format</title>
6		<link href="../scripts/style.css" type="text/css" rel="stylesheet">
7	</head>
8
9	<body>
10		<h1>MX4200 Receiver Data Format</h1>
11<p>Last update:
12  <!-- #BeginDate format:En2m -->21-Oct-2010  23:44<!-- #EndDate -->
13  UTC</p>
14		<hr>
15		<h2>Table of Contents</h2>
16		<ul>
17			<li><a href="#control">Control Port Sentences</a>
18			<li><a href="#input">Control Port Input Sentences</a>
19				<ul>
20					<li><a href="#input_000">$PMVXG,000</a> Initialization/Mode Control - Part A
21					<li><a href="#input_001">$PMVXG,001</a> Initialization/Mode Control - Part B
22					<li><a href="#input_007">$PMVXG,007</a> Control Port Configuration
23					<li><a href="#input_023">$PMVXG,023</a> Time Recovery Configuration
24					<li><a href="#input_gpq">$CDGPQ,YYY</a> Query From a Remote Device / Request to Output a Sentence
25				</ul>
26			<li><a href="#output">Control Port Output Sentences</a>
27				<ul>
28					<li><a href="#output_000">$PMVXG,000</a> Receiver Status
29					<li><a href="#output_021">$PMVXG,021</a> Position, Height, Velocity
30					<li><a href="#output_022">$PMVXG,022</a> DOPs
31					<li><a href="#output_030">$PMVXG,030</a> Software Configuration
32					<li><a href="#output_101">$PMVXG,101</a> Control Sentence Accept/Reject
33					<li><a href="#output_523">$PMVXG,523</a> Time Recovery Configuration
34					<li><a href="#output_830">$PMVXG,830</a> Time Recovery Results
35				</ul>
36		</ul>
37		<hr>
38		<h2><a name="control">Control Port Sentences</a></h2>
39		<p>The Control (CDU) Port is used to initialize, monitor, and control the receiver. The structure of the control port sentences is based on the <cite>NMEA-0183</cite> Standard for Interfacing Marine Electronics Navigation Devices (version 1.5). For more details, please refer to the <cite>NMEA-0183</cite> Specification available from the <a href="http://www.nmea.org/">National Marine Electronics Association</a>.</p>
40		<p>Reserved characters are used to indicate the beginning and the end of records in the data stream, and to delimit data fields within a sentence. Only printable ASCII characters (Hex 20 through 7F) may be used in a sentence. <a href="#table_2">Table 2</a> lists the reserved characters and defines their usage. <a href="#table_1">Table 1</a> illustrates the general Magnavox proprietary NMEA sentence format.</p>
41		<h4><a name="table_1">Table 1. Magnavox Proprietary NMEA Sentence Format</a></h4>
42		<code>$PMVXG,XXX,...................*CK </code>
43		<p></p>
44		<table border>
45			<tr>
46				<th>Character</th>
47				<th>Meaning</th>
48			</tr>
49			<tr>
50				<td><code>$</code></td>
51				<td>Sentence Start Character</td>
52			</tr>
53			<tr>
54				<td><code>P</code></td>
55				<td>Special ID (P = Proprietary)</td>
56			</tr>
57			<tr>
58				<td><code>MVX</code></td>
59				<td>Originator ID (MVX = Magnavox)</td>
60			</tr>
61			<tr>
62				<td><code>G</code></td>
63				<td>Interface ID (G = GPS)</td>
64			</tr>
65			<tr>
66				<td><code>XXX</code></td>
67				<td>Sentence Type</td>
68			</tr>
69			<tr>
70				<td><code>...</code></td>
71				<td>Data</td>
72			</tr>
73			<tr>
74				<td><code>*</code></td>
75				<td>Optional Checksum Field Delimiter</td>
76			</tr>
77			<tr>
78				<td><code>CK</code></td>
79				<td>Optional Checksum</td>
80			</tr>
81		</table>
82		<h4><a name="table_2">Table 2. NMEA Sentence Reserved Characters</a></h4>
83		<table border>
84			<tr>
85				<th>Character</th>
86				<th>Hex Value</th>
87				<th>Usage</th>
88			</tr>
89			<tr>
90				<td><code>$</code></td>
91				<td>24</td>
92				<td>Start of Sentence Identifier</td>
93			</tr>
94			<tr>
95				<td><code>{cr}{lf}</code></td>
96				<td>0D 0A</td>
97				<td>End of Sentence Identifier</td>
98			</tr>
99			<tr>
100				<td><code>,</code></td>
101				<td>2C</td>
102				<td>Sentence Delimiter</td>
103			</tr>
104			<tr>
105				<td><code>*</code></td>
106				<td>2A</td>
107				<td>Optional Checksum Field Delimiter</td>
108			</tr>
109		</table>
110		<p>Following the start character <code>$</code>, are five characters which constitute the block label of the sentence. For Magnavox proprietary sentences, this label is always <code>PMVXG</code>. The next field after the block label is the sentence type, consisting of three decimal digits.</p>
111		<p>The data, delimited by commas, follows the sentence type. Note that the receiver uses a free-format parsing algorithm, so you need not send the exact number of characters shown in the examples. You will need to use the commas to determine how many bytes of data need to be retrieved.</p>
112		<p>The notation <code>CK</code> shown in <a href="#table_1">Table 1</a> symbolically indicates the optional checksum in the examples. The checksum is computed by exclusive-ORing all of the bytes between the <code>$</code> and the <code>*</code> characters. The <code>$</code>, <code>*</code> and the checksum are not included in the checksum computation.</p>
113		<p>Checksums are optional for Control Port input sentences, but are highly recommended to limit the effects of communication errors. Magnavox receivers always generate checksums for Control Port output sentences.</p>
114		<p>ASCII data characters are transmitted in the following format:</p>
115		<table border>
116			<tr>
117				<td>Data Bits</td>
118				<td>8 (msb always 0)</td>
119			</tr>
120			<tr>
121				<td>Parity</td>
122				<td>None</td>
123			</tr>
124			<tr>
125				<td>Stop Bits</td>
126				<td>1</td>
127			</tr>
128		</table>
129		<p>NULL fields are fields which do not contain any data. They would appear as two commas together in the sentence format, except for the final field. Some Magnavox proprietary sentences require that the format contain NULL fields. mandatory NULL fields are identified by an '*' next to the respective field.</p>
130		<hr>
131		<h2><a name="input">Control Port Input Sentences</a></h2>
132		These are the subset of the MX4200 control port input sentences sent by the NTP driver to the GPS receiver.
133		<hr>
134		<h3><a name="input_000">$PMVXG,000</a></h3>
135		<h4>Initialization/Mode Control - Part A</h4>
136		Initializes the time, position and antenna height of the MX4200.
137		<p></p>
138		<table border>
139			<tr>
140				<th>Field</th>
141				<th>Description</th>
142				<th>Units</th>
143				<th>Format</th>
144				<th>Default</th>
145				<th>Range</th>
146			</tr>
147			<tr>
148				<td>1</td>
149				<td>Day</td>
150				<td>&nbsp;</td>
151				<td>Int</td>
152				<td>&nbsp;</td>
153				<td>1-31</td>
154			</tr>
155			<tr>
156				<td>2</td>
157				<td>Month</td>
158				<td>&nbsp;</td>
159				<td>Int</td>
160				<td>&nbsp;</td>
161				<td>1-12</td>
162			</tr>
163			<tr>
164				<td>3</td>
165				<td>Year</td>
166				<td>&nbsp;</td>
167				<td>Int</td>
168				<td>&nbsp;</td>
169				<td>1991-9999</td>
170			</tr>
171			<tr>
172				<td>4</td>
173				<td>GMT Time</td>
174				<td>HHMMSS</td>
175				<td>Int</td>
176				<td>&nbsp;</td>
177				<td>000000-235959</td>
178			</tr>
179			<tr>
180				<td>5</td>
181				<td>WGS-84 Latitude</td>
182				<td>DDMM.MMMM</td>
183				<td>Float</td>
184				<td>0.0</td>
185				<td>0 - 8959.9999</td>
186			</tr>
187			<tr>
188				<td>6</td>
189				<td>North/South Indicator</td>
190				<td>&nbsp;</td>
191				<td>Char</td>
192				<td>N</td>
193				<td>N,S</td>
194			</tr>
195			<tr>
196				<td>7</td>
197				<td>WGS-84 Longitude</td>
198				<td>DDDMM.MMMM</td>
199				<td>Float</td>
200				<td>0.0</td>
201				<td>0 - 17959.9999</td>
202			</tr>
203			<tr>
204				<td>8</td>
205				<td>East/West Indicator</td>
206				<td>&nbsp;</td>
207				<td>Char</td>
208				<td>E</td>
209				<td>E,W</td>
210			</tr>
211			<tr>
212				<td>9</td>
213				<td>Altitude (height above Mean Sea Level) in meters (WGS-84)</td>
214				<td>Meters</td>
215				<td>Float</td>
216				<td>0.0</td>
217				<td>+/-99999.0</td>
218			</tr>
219			<tr>
220				<td>10</td>
221				<td>Not Used</td>
222				<td>&nbsp;</td>
223				<td>&nbsp;</td>
224				<td>&nbsp;</td>
225				<td>&nbsp;</td>
226			</tr>
227		</table>
228		Example:<br>
229		<code>$PMVXG,000,,,,,,,,,,*48</code><br>
230		<code>$PMVXG,000,,,,,5128.4651,N,00020.0715,W,58.04,*4F</code>
231		<hr>
232		<h3><a name="input_001">$PMVXG,001</a></h3>
233		<h4>Initialization/Mode Control - Part B</h4>
234		Specifies various navigation parameters: Altitude aiding, acceleration DOP limits, and satellite elevation limits.
235		<p></p>
236		<table border>
237			<tr>
238				<th>Field</th>
239				<th>Description</th>
240				<th>Units</th>
241				<th>Format</th>
242				<th>Default</th>
243				<th>Range</th>
244			</tr>
245			<tr>
246				<td>*1</td>
247				<td>Constrain Altitude</td>
248				<td>&nbsp;</td>
249				<td>Int</td>
250				<td>1</td>
251				<td>0=3D Only<br>
252					1=Auto<br>
253					2=2D Only</td>
254			</tr>
255			<tr>
256				<td>2</td>
257				<td>Not Used</td>
258				<td>&nbsp;</td>
259				<td>&nbsp;</td>
260				<td>&nbsp;</td>
261				<td>&nbsp;</td>
262			</tr>
263			<tr>
264				<td>*3</td>
265				<td>Horizontal Acceleration Factor</td>
266				<td>m/sec^2</td>
267				<td>Float</td>
268				<td>1.0</td>
269				<td>0.5-10.0</td>
270			</tr>
271			<tr>
272				<td>*4</td>
273				<td>Not Used</td>
274				<td>&nbsp;</td>
275				<td>&nbsp;</td>
276				<td>&nbsp;</td>
277				<td>&nbsp;</td>
278			</tr>
279			<tr>
280				<td>*5</td>
281				<td>VDOP Limit</td>
282				<td>&nbsp;</td>
283				<td>Int</td>
284				<td>10</td>
285				<td>1-9999</td>
286			</tr>
287			<tr>
288				<td>*6</td>
289				<td>HDOP Limit</td>
290				<td>&nbsp;</td>
291				<td>Int</td>
292				<td>10</td>
293				<td>1-9999</td>
294			</tr>
295			<tr>
296				<td>7</td>
297				<td>Elevation Limit</td>
298				<td>Deg</td>
299				<td>Int</td>
300				<td>5</td>
301				<td>0-90</td>
302			</tr>
303			<tr>
304				<td>8</td>
305				<td>Time Output Mode</td>
306				<td>&nbsp;</td>
307				<td>Char</td>
308				<td>U</td>
309				<td>U=UTC<br>
310					L=Local Time</td>
311			</tr>
312			<tr>
313				<td>9</td>
314				<td>Local Time Offset</td>
315				<td>HHMM</td>
316				<td>Int</td>
317				<td>0</td>
318				<td>+/- 0-2359</td>
319			</tr>
320		</table>
321		Example:<br>
322		<code>$PMVXG,001,3,,0.1,0.1,10,10,5,U,0*06</code>
323		<hr>
324		<h3><a name="input_007">$PMVXG,007</a></h3>
325		<h4>Control Port Output Configuration</h4>
326		This message enables or disables output of the specified sentence and defines the output rate. The user sends this message for each sentence that the receiver is to output.
327		<p></p>
328		<table border>
329			<tr>
330				<th>Field</th>
331				<th>Description</th>
332				<th>Units</th>
333				<th>Format</th>
334				<th>Default</th>
335				<th>Range</th>
336			</tr>
337			<tr>
338				<td>1</td>
339				<td>Control Port Output Block Label</td>
340				<td>&nbsp;</td>
341				<td>Char</td>
342				<td>&nbsp;</td>
343				<td>&nbsp;</td>
344			</tr>
345			<tr>
346				<td>2</td>
347				<td>Clear Current Output List</td>
348				<td>&nbsp;</td>
349				<td>Int</td>
350				<td>&nbsp;</td>
351				<td>0=No<br>
352					1=Yes</td>
353			</tr>
354			<tr>
355				<td>3</td>
356				<td>Add/Delete Sentence from List</td>
357				<td>&nbsp;</td>
358				<td>Int</td>
359				<td>&nbsp;</td>
360				<td>1=Append<br>
361					2=Delete</td>
362			</tr>
363			<tr>
364				<td>4</td>
365				<td>Not Used</td>
366				<td>&nbsp;</td>
367				<td>&nbsp;</td>
368				<td>&nbsp;</td>
369				<td>&nbsp;</td>
370			</tr>
371			<tr>
372				<td>5</td>
373				<td>Sentence Output Rate</td>
374				<td>Sec</td>
375				<td>Int</td>
376				<td>&nbsp;</td>
377				<td>1-9999</td>
378			</tr>
379			<tr>
380				<td>6</td>
381				<td># digits of Precision for CGA and GLL sentences</td>
382				<td>&nbsp;</td>
383				<td>Int</td>
384				<td>2</td>
385				<td>2-4</td>
386			</tr>
387			<tr>
388				<td>7</td>
389				<td>Not Used</td>
390				<td>&nbsp;</td>
391				<td>&nbsp;</td>
392				<td>&nbsp;</td>
393				<td>&nbsp;</td>
394			</tr>
395			<tr>
396				<td>8</td>
397				<td>Not Used</td>
398				<td>&nbsp;</td>
399				<td>&nbsp;</td>
400				<td>&nbsp;</td>
401				<td>&nbsp;</td>
402			</tr>
403		</table>
404		Example:<br>
405		<code>$PMVXG,007,022,0,1,,1,,,*4F</code>
406		<hr>
407		<h3><a name="input_023">$PMVXG,023</a></h3>
408		<h4>Time Recovery Configuration</h4>
409		This message is used to enable/disable the time recovery feature of the receiver. The time synchronization for the 1PPS output is specified in addition to a user time bias and an error tolerance for a valid pulse. This record is accepted in units configured for time recovery. If the back panel contains a 1PPS outlet, the receiver is a time recovery unit.
410		<p></p>
411		<table border>
412			<tr>
413				<th>Field</th>
414				<th>Description</th>
415				<th>Units</th>
416				<th>Format</th>
417				<th>Default</th>
418				<th>Range</th>
419			</tr>
420			<tr>
421				<td>*1</td>
422				<td>Time Recovery Mode</td>
423				<td>&nbsp;</td>
424				<td>Char</td>
425				<td>D</td>
426				<td>D=Dynamic<br>
427					S=Static<br>
428					K=Known Position<br>
429					N=No Time Recovery</td>
430			</tr>
431			<tr>
432				<td>2</td>
433				<td>Time Synchronization</td>
434				<td>&nbsp;</td>
435				<td>Char</td>
436				<td>G</td>
437				<td>U=UTC<br>
438					G=GPS</td>
439			</tr>
440			<tr>
441				<td>3</td>
442				<td>Time Mark Mode</td>
443				<td>&nbsp;</td>
444				<td>Char</td>
445				<td>A</td>
446				<td>A=Always<br>
447					V=Valid Pulses Only</td>
448			</tr>
449			<tr>
450				<td>4</td>
451				<td>Maximum Time Error</td>
452				<td>Nsec</td>
453				<td>Int</td>
454				<td>100</td>
455				<td>50-1000</td>
456			</tr>
457			<tr>
458				<td>5</td>
459				<td>User Time Bias</td>
460				<td>Nsec</td>
461				<td>Int</td>
462				<td>0</td>
463				<td>+/- 99999</td>
464			</tr>
465			<tr>
466				<td>6</td>
467				<td>ASCII Time Message Control</td>
468				<td>&nbsp;</td>
469				<td>Int</td>
470				<td>0</td>
471				<td>0=No Output<br>
472					1=830 to Control Port<br>
473					2=830 to Equipment Port</td>
474			</tr>
475			<tr>
476				<td>7</td>
477				<td>Known Pos PRN</td>
478				<td>&nbsp;</td>
479				<td>Int</td>
480				<td>0</td>
481				<td>1-32<br>
482					0=Track All Sats</td>
483			</tr>
484		</table>
485		Example:<br>
486		<code>$PMVXG,023,S,U,A,500,0,1,*16</code>
487		<hr>
488		<h3><a name="input_gpq">$CDGPQ,YYY</a></h3>
489		<h4>Query From a Remote Device / Request to Output a Sentence</h4>
490		Enables the controller to request a one-time transmission of a specific block label. To output messages at a periodic rate, refer to input sentence <a href="#input_007">$PMVXG,007</a>.
491		<p></p>
492		<table border>
493			<tr>
494				<th>Field</th>
495				<th>Description</th>
496				<th>Units</th>
497				<th>Format</th>
498				<th>Default</th>
499				<th>Range</th>
500			</tr>
501			<tr>
502				<td>1:CD</td>
503				<td>ID of Remote Device</td>
504				<td>&nbsp;</td>
505				<td>Char</td>
506				<td>&nbsp;</td>
507				<td>(See <cite>NMEA-0183</cite>)</td>
508			</tr>
509			<tr>
510				<td>2:GP</td>
511				<td>GPS</td>
512				<td>&nbsp;</td>
513				<td>Char</td>
514				<td>&nbsp;</td>
515				<td>(See <cite>NMEA-0183</cite>)</td>
516			</tr>
517			<tr>
518				<td>3:Q</td>
519				<td>Query</td>
520				<td>&nbsp;</td>
521				<td>Char</td>
522				<td>&nbsp;</td>
523				<td>(See <cite>NMEA-0183</cite>)</td>
524			</tr>
525			<tr>
526				<td>4:YYY</td>
527				<td>Label of Desired Sentence</td>
528				<td>&nbsp;</td>
529				<td>Char</td>
530				<td>&nbsp;</td>
531				<td>Any Valid NMEA or Magnavox Sentence Type</td>
532			</tr>
533		</table>
534		Example:<br>
535		<code>$CDGPQ,030*5E</code>
536		<hr>
537		<h2><a name="output">Control Port Output Sentences</a></h2>
538		These are the subset of the MX4200 control port output sentences recognized by the NTP driver.
539		<hr>
540		<h3><a name="output_000">$PMVXG,000</a></h3>
541		<h4>Receiver Status</h4>
542		Returns the current status of the receiver including the operating mode, number of satellites visible, and the number of satellites being tracked.
543		<p></p>
544		<table border>
545			<tr>
546				<th>Field</th>
547				<th>Description</th>
548				<th>Units</th>
549				<th>Format</th>
550				<th>Range</th>
551			</tr>
552			<tr>
553				<td>1</td>
554				<td>Current Receiver Status</td>
555				<td>&nbsp;</td>
556				<td>Char</td>
557				<td>ACQ=Reacquisition<br>
558					ALT=Constellation Selection<br>
559					IAC=Initial Acquisition<br>
560					IDL=Idle, No Satellites<br>
561					NAV=Navigating<br>
562					STS=Search The Sky<br>
563					TRK=Tracking</td>
564			</tr>
565			<tr>
566				<td>2</td>
567				<td>Number of Satellites that should be Visible</td>
568				<td>&nbsp;</td>
569				<td>Int</td>
570				<td>0-12</td>
571			</tr>
572			<tr>
573				<td>3</td>
574				<td>Number of Satellites being Tracked</td>
575				<td>&nbsp;</td>
576				<td>Int</td>
577				<td>0-12</td>
578			</tr>
579			<tr>
580				<td>4</td>
581				<td>Time since Last Navigation</td>
582				<td>HHMM</td>
583				<td>Int</td>
584				<td>0-2359</td>
585			</tr>
586			<tr>
587				<td>5</td>
588				<td>Initialization Status</td>
589				<td>&nbsp;</td>
590				<td>Int</td>
591				<td>0=Waiting for Initialization<br>
592					1=Initialization Complete</td>
593			</tr>
594		</table>
595		Example:<br>
596		<code>$PMVXG,000,TRK,3,3,0122,1*19</code>
597		<hr>
598		<h3><a name="output_021">$PMVXG,021</a></h3>
599		<h4>Position, Height, Velocity</h4>
600		This sentence gives the receiver position, height, navigation mode and velocity north/east. <em>This sentence is intended for post analysis applications.</em>
601		<p></p>
602		<table border>
603			<tr>
604				<th>Field</th>
605				<th>Description</th>
606				<th>Units</th>
607				<th>Format</th>
608				<th>Range</th>
609			</tr>
610			<tr>
611				<td>1</td>
612				<td>UTC Measurement Time</td>
613				<td>Seconds into the week</td>
614				<td>Float</td>
615				<td>0-604800.00</td>
616			</tr>
617			<tr>
618				<td>2</td>
619				<td>WGS-84 Latitude</td>
620				<td>DDMM.MMMM</td>
621				<td>Float</td>
622				<td>0-89.9999</td>
623			</tr>
624			<tr>
625				<td>3</td>
626				<td>North/South Indicator</td>
627				<td>&nbsp;</td>
628				<td>Char</td>
629				<td>N, S</td>
630			</tr>
631			<tr>
632				<td>4</td>
633				<td>WGS-84 Longitude</td>
634				<td>DDDMM.MMMM</td>
635				<td>Float</td>
636				<td>0-179.9999</td>
637			</tr>
638			<tr>
639				<td>5</td>
640				<td>East/West Indicator</td>
641				<td>&nbsp;</td>
642				<td>Char</td>
643				<td>E, W</td>
644			</tr>
645			<tr>
646				<td>6</td>
647				<td>Altitude (MSL)</td>
648				<td>Meters</td>
649				<td>Float</td>
650				<td>&nbsp;</td>
651			</tr>
652			<tr>
653				<td>7</td>
654				<td>Geoidal Height</td>
655				<td>Meters</td>
656				<td>Float</td>
657				<td>&nbsp;</td>
658			</tr>
659			<tr>
660				<td>8</td>
661				<td>Velocity East</td>
662				<td>M/Sec</td>
663				<td>Float</td>
664				<td>&nbsp;</td>
665			</tr>
666			<tr>
667				<td>9</td>
668				<td>Velocity North</td>
669				<td>M/Sec</td>
670				<td>Float</td>
671				<td>&nbsp;</td>
672			</tr>
673			<tr>
674				<td>10</td>
675				<td>Navigation Mode</td>
676				<td>&nbsp;</td>
677				<td>Int</td>
678				<td><em>Navigating</em><br>
679					1=Position From a Remote Device<br>
680					2=2D<br>
681					3=3D<br>
682					4=2D differential<br>
683					5=3D differential<br>
684					<em>Not Navigating</em><br>
685					51=Too Few Satellites<br>
686					52=DOPs too large<br>
687					53=Position STD too large<br>
688					54=Velocity STD too large<br>
689					55=Too many iterations for velocity<br>
690					56=Too many iterations for position<br>
691					57=3 Sat Startup failed</td>
692			</tr>
693		</table>
694		Example:<br>
695		<code>$PMVXG,021,142244.00,5128.4744,N,00020.0593,W,00054.4,0047.4,0000.1,-000.2,03*66</code>
696		<hr>
697		<h3><a name="output_022">$PMVXG,022</a></h3>
698		<h4>DOPs</h4>
699		This sentence reports the DOP (Dilution Of Precision) values actually used in the measurement processing corresponding to the satellites listed. The satellites are listed in receiver channel order. Fields 11-16 are output only on 12-channel receivers.
700		<p></p>
701		<table border>
702			<tr>
703				<th>Field</th>
704				<th>Description</th>
705				<th>Units</th>
706				<th>Format</th>
707				<th>Range</th>
708			</tr>
709			<tr>
710				<td>1</td>
711				<td>UTC Measurement Time</td>
712				<td>Seconds into the week</td>
713				<td>Float</td>
714				<td>0-604800.00</td>
715			</tr>
716			<tr>
717				<td>2</td>
718				<td>East DOP (EDOP)</td>
719				<td>&nbsp;</td>
720				<td>Float</td>
721				<td>&nbsp;</td>
722			</tr>
723			<tr>
724				<td>3</td>
725				<td>North DOP (NDOP)</td>
726				<td>&nbsp;</td>
727				<td>Float</td>
728				<td>&nbsp;</td>
729			</tr>
730			<tr>
731				<td>4</td>
732				<td>Vertical DOP (VDOP)</td>
733				<td>&nbsp;</td>
734				<td>Float</td>
735				<td>&nbsp;</td>
736			</tr>
737			<tr>
738				<td>5</td>
739				<td>PRN on Channel #1</td>
740				<td>&nbsp;</td>
741				<td>Int</td>
742				<td>1-32</td>
743			</tr>
744			<tr>
745				<td>6</td>
746				<td>PRN on Channel #2</td>
747				<td>&nbsp;</td>
748				<td>Int</td>
749				<td>1-32</td>
750			</tr>
751			<tr>
752				<td>7</td>
753				<td>PRN on Channel #3</td>
754				<td>&nbsp;</td>
755				<td>Int</td>
756				<td>1-32</td>
757			</tr>
758			<tr>
759				<td>8</td>
760				<td>PRN on Channel #4</td>
761				<td>&nbsp;</td>
762				<td>Int</td>
763				<td>1-32</td>
764			</tr>
765			<tr>
766				<td>9</td>
767				<td>PRN on Channel #5</td>
768				<td>&nbsp;</td>
769				<td>Int</td>
770				<td>1-32</td>
771			</tr>
772			<tr>
773				<td>10</td>
774				<td>PRN on Channel #6</td>
775				<td>&nbsp;</td>
776				<td>Int</td>
777				<td>1-32</td>
778			</tr>
779			<tr>
780				<td>11</td>
781				<td>PRN on Channel #7</td>
782				<td>&nbsp;</td>
783				<td>Int</td>
784				<td>1-32</td>
785			</tr>
786			<tr>
787				<td>12</td>
788				<td>PRN on Channel #8</td>
789				<td>&nbsp;</td>
790				<td>Int</td>
791				<td>1-32</td>
792			</tr>
793			<tr>
794				<td>13</td>
795				<td>PRN on Channel #9</td>
796				<td>&nbsp;</td>
797				<td>Int</td>
798				<td>1-32</td>
799			</tr>
800			<tr>
801				<td>14</td>
802				<td>PRN on Channel #10</td>
803				<td>&nbsp;</td>
804				<td>Int</td>
805				<td>1-32</td>
806			</tr>
807			<tr>
808				<td>15</td>
809				<td>PRN on Channel #11</td>
810				<td>&nbsp;</td>
811				<td>Int</td>
812				<td>1-32</td>
813			</tr>
814			<tr>
815				<td>16</td>
816				<td>PRN on Channel #12</td>
817				<td>&nbsp;</td>
818				<td>Int</td>
819				<td>1-32</td>
820			</tr>
821		</table>
822		Example:<br>
823		<code>$PMVXG,022,142243.00,00.7,00.8,01.9,27,26,10,09,13,23*77</code>
824		<hr>
825		<h3><a name="output_030">$PMVXG,030</a></h3>
826		<h4>Software Configuration</h4>
827		This sentence contains the navigation processor and baseband firmware version numbers.
828		<p></p>
829		<table border>
830			<tr>
831				<th>Field</th>
832				<th>Description</th>
833				<th>Units</th>
834				<th>Format</th>
835				<th>Range</th>
836			</tr>
837			<tr>
838				<td>1</td>
839				<td>Nav Processor Version Number</td>
840				<td>&nbsp;</td>
841				<td>Char</td>
842				<td>&nbsp;</td>
843			</tr>
844			<tr>
845				<td>2</td>
846				<td>Baseband Firmware Version Number</td>
847				<td>&nbsp;</td>
848				<td>Char</td>
849				<td>&nbsp;</td>
850			</tr>
851		</table>
852		Example:<br>
853		<code>$PMVXG,030,DA35,015</code>
854		<hr>
855		<h3><a name="output_101">$PMVXG,101</a></h3>
856		<h4>Control Sentence Accept/Reject</h4>
857		This sentence is returned (on the Control Port) for every <strong>$PMVXG</strong> and <strong>$XXGPQ</strong> sentence that is received.
858		<p></p>
859		<table border>
860			<tr>
861				<th>Field</th>
862				<th>Description</th>
863				<th>Units</th>
864				<th>Format</th>
865				<th>Range</th>
866			</tr>
867			<tr>
868				<td>1</td>
869				<td>Sentence ID</td>
870				<td>&nbsp;</td>
871				<td>Char</td>
872				<td>&nbsp;</td>
873			</tr>
874			<tr>
875				<td>2</td>
876				<td>Accept/Reject Status</td>
877				<td>&nbsp;</td>
878				<td>Int</td>
879				<td>0=Sentence Accepted<br>
880					1=Bad Checksum<br>
881					2=Illegal Value<br>
882					3=Unrecognized ID<br>
883					4=Wrong # of fields<br>
884					5=Required Data Field Missing<br>
885					6=Requested Sentence Unavailable</td>
886			</tr>
887			<tr>
888				<td>3</td>
889				<td>Bad Field Index</td>
890				<td>&nbsp;</td>
891				<td>Int</td>
892				<td>&nbsp;</td>
893			</tr>
894			<tr>
895				<td>4</td>
896				<td>Requested Sentence ID (If field #1 = GPQ)</td>
897				<td>&nbsp;</td>
898				<td>Char</td>
899				<td>&nbsp;</td>
900			</tr>
901		</table>
902		Example:<br>
903		<code>$PMVXG,101,GPQ,0,,030*0D</code>
904		<hr>
905		<h3><a name="output_523">$PMVXG,523</a></h3>
906		<h4>Time Recovery Configuration</h4>
907		This sentence contains the configuration of the time recovery function of the receiver.
908		<p></p>
909		<table border>
910			<tr>
911				<th>Field</th>
912				<th>Description</th>
913				<th>Units</th>
914				<th>Format</th>
915				<th>Range</th>
916			</tr>
917			<tr>
918				<td>1</td>
919				<td>Time Recovery Mode</td>
920				<td>&nbsp;</td>
921				<td>Char</td>
922				<td>D=Dynamic<br>
923					S=Static<br>
924					K=Known Position<br>
925					N=No Time Recovery</td>
926			</tr>
927			<tr>
928				<td>2</td>
929				<td>Time Synchronization</td>
930				<td>&nbsp;</td>
931				<td>Char</td>
932				<td>U=UTC Time<br>
933					G=GPS Time</td>
934			</tr>
935			<tr>
936				<td>3</td>
937				<td>Time Mark Mode</td>
938				<td>&nbsp;</td>
939				<td>Char</td>
940				<td>A=Always Output Time Pulse<br>
941					V=Only when Valid</td>
942			</tr>
943			<tr>
944				<td>4</td>
945				<td>Maximum Time Error for which a time mark will be considered valid</td>
946				<td>Nsec</td>
947				<td>Int</td>
948				<td>&nbsp;</td>
949			</tr>
950			<tr>
951				<td>5</td>
952				<td>User Time Bias</td>
953				<td>Nsec</td>
954				<td>Int</td>
955				<td>&nbsp;</td>
956			</tr>
957			<tr>
958				<td>6</td>
959				<td>Time Message Control</td>
960				<td>&nbsp;</td>
961				<td>Int</td>
962				<td>0=No Message<br>
963					1=830 to Control Port<br>
964					2=830 to Equipment Port</td>
965			</tr>
966			<tr>
967				<td>7</td>
968				<td>Not Used</td>
969				<td>&nbsp;</td>
970				<td>&nbsp;</td>
971				<td>&nbsp;</td>
972			</tr>
973		</table>
974		Example:<br>
975		<code>$PMVXG,523,S,U,A,0500,000000,1,0*23</code>
976		<hr>
977		<h3><a name="output_830">$PMVXG,830</a></h3>
978		<h4>Time Recovery Results</h4>
979		This sentence is output approximately 1 second preceding the 1PPS output. It indicates the exact time of the next pulse, whether or not the time mark will be valid (based on operator-specified error tolerance), the time to which the pulse is synchronized, the receiver operating mode, and the time error of the <strong>last</strong> 1PPS output. The leap second flag (Field #11) is not output by older receivers.
980		<p></p>
981		<table border>
982			<tr>
983				<th>Field</th>
984				<th>Description</th>
985				<th>Units</th>
986				<th>Format</th>
987				<th>Range</th>
988			</tr>
989			<tr>
990				<td>1</td>
991				<td>Time Mark Valid</td>
992				<td>&nbsp;</td>
993				<td>Char</td>
994				<td>T=Valid<br>
995					F=Not Valid</td>
996			</tr>
997			<tr>
998				<td>2</td>
999				<td>Year</td>
1000				<td>&nbsp;</td>
1001				<td>Int</td>
1002				<td>1993-</td>
1003			</tr>
1004			<tr>
1005				<td>3</td>
1006				<td>Month</td>
1007				<td>&nbsp;</td>
1008				<td>Int</td>
1009				<td>1-12</td>
1010			</tr>
1011			<tr>
1012				<td>4</td>
1013				<td>Day</td>
1014				<td>Nsec</td>
1015				<td>Int</td>
1016				<td>1-31</td>
1017			</tr>
1018			<tr>
1019				<td>5</td>
1020				<td>Time</td>
1021				<td>HH:MM:SS</td>
1022				<td>Int</td>
1023				<td>00:00:00-23:59:59</td>
1024			</tr>
1025			<tr>
1026				<td>6</td>
1027				<td>Time Synchronization</td>
1028				<td>&nbsp;</td>
1029				<td>Char</td>
1030				<td>U=UTC<br>
1031					G=GPS</td>
1032			</tr>
1033			<tr>
1034				<td>7</td>
1035				<td>Operating Mode</td>
1036				<td>&nbsp;</td>
1037				<td>Char</td>
1038				<td>D=Dynamic<br>
1039					S=Static<br>
1040					K=Known Position</td>
1041			</tr>
1042			<tr>
1043				<td>8</td>
1044				<td>Oscillator Offset - estimate of oscillator frequency error</td>
1045				<td>PPB</td>
1046				<td>Int</td>
1047				<td>&nbsp;</td>
1048			</tr>
1049			<tr>
1050				<td>9</td>
1051				<td>Time Mark Error of last pulse</td>
1052				<td>Nsec</td>
1053				<td>Int</td>
1054				<td>&nbsp;</td>
1055			</tr>
1056			<tr>
1057				<td>10</td>
1058				<td>User Time Bias</td>
1059				<td>Nsec</td>
1060				<td>Int</td>
1061				<td>&nbsp;</td>
1062			</tr>
1063			<tr>
1064				<td>11</td>
1065				<td>Leap Second Flag - indicates that a leap second will occur. This value is usually zero except during the week prior to a leap second occurrence, when this value will be set to +/-1. A value of +1 indicates that GPS time will be 1 second further ahead of UTC time.</td>
1066				<td>&nbsp;</td>
1067				<td>Int</td>
1068				<td>-1,0,1</td>
1069			</tr>
1070		</table>
1071		Example:<br>
1072		<code>$PMVXG,830,T,1998,10,12,15:30:46,U,S,000298,00003,000000,01*02</code>
1073		<hr>
1074		<script type="text/javascript" language="javascript" src="../scripts/footer.txt"></script>
1075	</body>
1076
1077</html>
1078