1 /*
2  * This file is Copyright (c) 2010 by the GPSD project
3  * SPDX-License-Identifier: BSD-2-clause
4  */
5 #ifndef _GPSD_ITALK_H_
6 #define _GPSD_ITALK_H_
7 
8 /* 0 and 1 are responses to the <?> ping for iTalk and NMEA respectively */
9 #define PROTO_ITALK 0
10 #define PROTO_NMEA 1
11 
12 /*
13  * Assistance from Timo Ylhainen of Fastrax is acknowledged and appreciated.
14  *
15  * iTalk is a messaging system which communicates between tasks, which may
16  * be running on different devices (nodes). For our purposes (receiver
17  * configuration), we will probably be sending to the SYSTEM task.
18  */
19 
20 #define TASK_MASK	0x1f	/* 5 low bits of src/dst fields */
21 #define NODE_MASK	0xe0	/* 3 high bits of src/dst fields */
22 #define NODE_UNDEF	0x00	/* Used in message routing */
23 #define NODE_ITRAX	0x20	/* The receiver */
24 #define NODE_HOST	0x40	/* Software on your computer */
25 #define NODE_GPSWB	0x60	/* GPSWorkbench seems to be HOST|ITRAX */
26 
27 /* FIX-ME: These defines will likely be replaced by an enum
28  * once I map every message to the task that sent it.
29  */
30 /* System controller on the receiver */
31 #define TASK_SYSTEM	0
32 /* Acquisition & Tracking messages (PD) */
33 #define TASK_TRACK1	2
34 #define TASK_TRACK2	3
35 /* Data decoding messages (PD) */
36 #define TASK_DATA	4
37 /* Navigation messages are sent by these tasks (PD) */
38 #define TASK_NAV1	7
39 #define TASK_NAV2	8
40 #define TASK_NAV3	9
41 /* Host controller software (PD) */
42 #define TASK_HOST	31
43 
44 #define MAX_NR_VISIBLE_PRNS 16
45 
46 /* iTalk Message IDs - isuite.fastrax.fi/sdk/331/Protocols/PRO_MsgId.html */
47 #define ITALK_ACQ_DATA		1
48 #define ITALK_PRN_STATUS	2
49 #define ITALK_TRACK		3
50 #define ITALK_PSEUDO		4
51 #define ITALK_AGC		6
52 #define ITALK_NAV_FIX		7
53 #define ITALK_RAW_ALMANAC	9
54 #define ITALK_RAW_EPHEMERIS	10
55 #define ITALK_SV_HEALTH		11
56 #define ITALK_UTC_IONO_MODEL	12
57 #define ITALK_PRN_PRED		13
58 #define ITALK_FREQ_PRED		14
59 #define ITALK_SUBFRAME		15
60 #define ITALK_BIT_STREAM	18
61 #define ITALK_DBGTRACE		19
62 #define ITALK_START		64
63 #define ITALK_STOP		65
64 #define ITALK_SLEEP		66
65 #define ITALK_STATUS		67
66 #define ITALK_ITALK_CONF	68
67 #define ITALK_SYSINFO		69
68 #define ITALK_ITALK_TASK_ROUTE	70
69 #define ITALK_PARAM_CTRL	71
70 #define ITALK_PARAMS_CHANGED	72
71 #define ITALK_START_COMPLETED	73
72 #define ITALK_STOP_COMPLETED	74
73 #define ITALK_LOG_CMD		75
74 #define ITALK_SYSTEM_START	76
75 #define ITALK_STOP_SEARCH	79
76 #define ITALK_SEARCH		80
77 #define ITALK_PRED_SEARCH	81
78 #define ITALK_SEARCH_DONE	82
79 #define ITALK_TRACK_DROP	88
80 #define ITALK_TRACK_STATUS	90
81 #define ITALK_HANDOVER_DATA	92
82 #define ITALK_CORE_SYNC		93
83 #define ITALK_WAAS_RAWDATA	96
84 #define ITALK_ASSISTANCE	98
85 #define ITALK_PULL_FIX		99
86 #define ITALK_MEMCTRL		112
87 #define ITALK_STOP_TASK		255
88 
89 /* NAV_FIX */
90 #define FIX_CONV_VEL_VALID		0x0002
91 #define FIX_CONV_ACC_VALID		0x0004
92 #define FIX_CONV_DOP_VALID		0x0010
93 #define FIX_CONV_ERR_VALID		0x0020
94 #define FIX_CONV_UTC_VALID		0x0040
95 #define FIX_CONV_UND_VALID		0x0080
96 #define FIX_CONV_MAG_VALID		0x0100
97 #define FIX_CONV_GRID_VALID		0x0200
98 #define FIX_CONV_VEL_ESTIMATED		0x0400
99 
100 #define FIX_FLAG_POS_REJECT_FOM		0x0003
101 #define FIX_FLAG_POS_REJECT_DOP		0x0004
102 #define FIX_FLAG_POS_PINNING		0x0020
103 
104 #define FIX_FLAG_VEL_REJECT_RES		0x0003
105 #define FIX_FLAG_ACCELERATION		0x4000
106 #define FIX_FLAG_VEL_RELIABLE		0x0020
107 #define FIX_FLAG_VEL_RELIABLE_3D	0x0040
108 
109 #define FIX_FLAG_MASK_INVALID		0x0007
110 #define FIX_FLAG_REJECT_NUM_SV		0x0001
111 #define FIX_FLAG_REJECT_POSTRAIM	0x0002
112 #define FIX_FLAG_REJECT_OTHER		0x0007
113 #define FIX_FLAG_RELIABLE		0x0008
114 #define FIX_FLAG_PF_RAIM		0x0010
115 #define FIX_FLAG_3DFIX			0x0100
116 #define FIX_FLAG_DGPS_CORRECTION	0x0200
117 #define FIX_FLAG_TROPO			0x0400
118 #define FIX_FLAG_IONO			0x0800
119 #define FIX_FLAG_INS			0x2000
120 
121 #define FIXINFO_FLAG_VALID		0x0002
122 #define FIXINFO_FLAG_NEW_FIX		0x0004
123 #define FIXINFO_FLAG_SKY_FIX		0x0008
124 #define FIXINFO_FLAG_AID_GPSTIME	0x0010
125 #define FIXINFO_FLAG_AID_TIMESTAMP	0x0020
126 #define FIXINFO_FLAG_AID_EPHEMERIS	0x0040
127 #define FIXINFO_FLAG_AID_ALTITUDE	0x0080
128 #define FIXINFO_FLAG_KALMAN		0x1000
129 #define FIXINFO_FLAG_INTERNAL		0x2000
130 #define FIXINFO_FLAG_FIRSTFIX		0x4000
131 
132 /* PRN_STATUS */
133 #define PRN_FLAG_FOUND			0x0001
134 #define PRN_FLAG_TRACKING		0x0002
135 #define PRN_FLAG_USE_IN_NAV		0x0004
136 
137 /* UTC_IONO_MODEL */
138 #define UTC_IONO_MODEL_UTCVALID 	0x0001
139 #define UTC_IONO_MODEL_IONOVALID	0x0002
140 
141 /* SUBFRAME */
142 #define SUBFRAME_WORD_FLAG_MASK		0x03ff
143 #define SUBFRAME_GPS_PREAMBLE_INVERTED  0x0400
144 
145 /* PSEUDO */
146 #define PSEUDO_OBS_DOPPLER_OK			0x0001
147 #define PSEUDO_OBS_PSEUDORANGE_OK		0x0002
148 #define PSEUDO_OBS_TOW_OK			0x0004
149 #define PSEUDO_OBS_PRN_OK			0x0008
150 #define PSEUDO_OBS_ELEV_OK			0x0010
151 #define PSEUDO_OBS_SNR_OK			0x0020
152 #define PSEUDO_OBS_SV_HEALTHY			0x0040
153 #define PSEUDO_OBS_NO_CROSS_CORR		0x0080
154 #define PSEUDO_OBS_DATA_EXISTS			0x0100
155 #define PSEUDO_OBS_DATA_GOOD			0x0200
156 #define PSEUDO_OBS_BIT_LOCK			0x0400
157 #define PSEUDO_OBS_FIRST_MEAS			0x0800
158 #define PSEUDO_OBS_RAIM_P_OK			0x1000
159 #define PSEUDO_OBS_RAIM_V_OK			0x2000
160 #define PSEUDO_OBS_RAIM_T_OK			0x4000
161 #define PSEUDO_OBS_PLL				0x8000
162 #define PSEUDO_OBS_MEAS_OK		( PSEUDO_OBS_ELEV_OK | PSEUDO_OBS_SNR_OK | PSEUDO_OBS_PRN_OK | PSEUDO_OBS_NO_CROSS_CORR | PSEUDO_OBS_SV_HEALTHY | PSEUDO_OBS_DATA_EXISTS | PSEUDO_OBS_DATA_GOOD | PSEUDO_OBS_PSEUDORANGE_OK )
163 #define PSEUDO_OBS_DOPPLER_MEAS_OK	( PSEUDO_OBS_ELEV_OK | PSEUDO_OBS_SNR_OK | PSEUDO_OBS_PRN_OK | PSEUDO_OBS_NO_CROSS_CORR | PSEUDO_OBS_SV_HEALTHY | PSEUDO_OBS_DATA_EXISTS | PSEUDO_OBS_DATA_GOOD | PSEUDO_OBS_DOPPLER_OK )
164 
165 #define PSEUDO_TOW_WEEK_OK			0x0001
166 #define PSEUDO_TOW_OK				0x0002
167 #define PSEUDO_RESYNCH				0x0004
168 #define PSEUDO_FIRST_MEAS			0x0008
169 #define PSEUDO_UNSCHEDULED			0x0010
170 
171 #define PSEUDO_OBS_CORRECTED_AMBIGUOUS		0x0001
172 #define PSEUDO_OBS_CORRECTED_BY_SMOOTHING	0x0002
173 #define PSEUDO_OBS_CORRECTED_BY_IONO		0x0008
174 #define PSEUDO_OBS_CORRECTED_BY_TROPO		0x0010
175 #define PSEUDO_OBS_CORRECTED_BY_FAST_CORR	0x0020
176 #define PSEUDO_OBS_CORRECTED_BY_DGPS		0x0040
177 #define PSEUDO_OBS_CORRECTED_BY_SLOW_CORR	0x0080
178 #define PSEUDO_OBS_CORRECTED_BY_WAAS_IONO	0x0100
179 #define PSEUDO_OBS_CORR_POSSIBLE_XCORR		0x4000
180 #define PSEUDO_OBS_CORR_FRAME_LOCK		0x8000
181 #define PSEUDO_OBS_CORRECTED_BY_WAAS	( PSEUDO_OBS_CORRECTED_BY_WAAS_IONO | PSEUDO_OBS_CORRECTED_BY_FAST_CORR)
182 
183 /* MEMCTRL */
184 #define MEM_WRITE		0x0002
185 #define MEM_READD		0x0003
186 #define MEM_BOOT		0x0004
187 #define MEM_ERASE		0x0006
188 #define MEM_XTAL_CALIBRATE	0x000a
189 /* BOOT flags based on isuite.fastrax.fi/sdk/331/Protocols/PRO_NMEA.html */
190 #define MEM_BOOT_NORMAL		0x0000
191 #define MEM_BOOT_INT_FWLOADER	0x0001
192 #define MEM_BOOT_DL_FWLOADER	0x0002
193 #define MEM_BOOT_RELOC_ALTFW	0x0003
194 
195 /* Config Parameters - isuite.fastrax.fi/sdk/331/System/SYS_Parameters.html */
196 /* System parameters */
197 #define SYS_SET_ID			0x0001
198 #define SYS_FACTORY_SET_ID		0x0002
199 #define SYS_AUTOSTART			0x0380
200 #define START_MODE_AUTO			0x0301
201 #define SYS_LKG_SAVE_TIME_LIMIT		0x0008
202 #define SYS_LKG_SAVE_DIST_LIMIT		0x0009
203 #define SYS_LKG_SAVE_STOP_TIME_LIMIT	0x000a
204 #define SYS_WATCHDOG			0x0028
205 #define SYS_WATCHDOG_TIMEOUT		0x0029
206 #define SYS_BOOT_ERASE_PARAMS		0x0080
207 #define SYS_ENABLE_UI_LEDS		0x0081
208 
209 /* Protocols parameters */
210 #define SYS_ITALK_PORT			0x0010
211 #define SYS_ITALK_SPEED			0x0011
212 #define SYS_ITALK_MASK			0x0012
213 #define SYS_NMEA_PORT			0x0020
214 #define SYS_NMEA_SPEED			0x0021
215 #define SYS_NMEA_MASK			0x0022
216 #define TRACK_ALT_MSG_ROUTING		0x047f
217 #define OBS_ALT_MSG_ROUTING		0x047e
218 
219 /* Fix Conversion parameters */
220 #define NAV_DATUM_ID			0x0b08
221 #define NAV_GRID_ID			0x0b09
222 #define NAV_GRID_NUMBER			0x0b0a
223 #define NAV_HEAD_VEL_THR		0x0b0b
224 #define NAV_HEAD_VEL_FILTER		0x0b0c
225 #define NAV_HEAD_VEL_THRMAX		0x0b0d
226 #define NAV_HEAD_VEL_THR_PLL		0x0b0e
227 #define NAV_HEAD_VEL_THRMAX_PLL		0x0b0f
228 #define NAV_HOLD_HEADING_IF_NO_FIX	0x0bd0
229 
230 /* General navigation parameters */
231 #define NAV_MODE			0x0b01
232 #define NAV_FIX_INTERVAL		0x0b02
233 #define NAV_OUTPUT_INTERVAL		0x0b03
234 #define NAV_FOM_LIMIT			0x0b10
235 #define NAV_VEL_FOM_LIMIT		0x0b15
236 #define NAV_HDOP_LIMIT			0x0b11
237 #define NAV_VDOP_LIMIT			0x0b12
238 #define NAV_ALT_LIMIT			0x0b13
239 #define NAV_VEL_LIMIT			0x0b14
240 #define NAV_EXT_AIDING_ALT		0x0b20
241 #define NAV_CS_INIT_VAR			0x0b30
242 #define NAV_CS_PROC_VAR			0x0b31
243 #define NAV_CS_MEAS_VAR			0x0b32
244 #define NAV_FILTER_VEL_LOW		0x0b33
245 #define NAV_FILTER_VEL_HIGH		0x0b34
246 #define NAV_MAX_LKGAGE			0x0b40
247 #define NAV_MAX_2D_FIX_SEC		0x0b41
248 #define NAV_CARRIERSMOOTHING_ENA	0x0b81
249 #define NAV_OLD_DATA_ENA		0x0b82
250 #define NAV_SNR_WEIGHTING_ENA		0x0b83
251 #define NAV_NORMAL_ENV_ENA		0x0b84
252 #define NAV_IONO_ENA			0x0b85
253 #define NAV_TROPO_ENA			0x0b87
254 #define NAV_DGPS_ENA			0x0b88
255 #define NAV_VEL_FILTER_ENA		0x0b8b
256 #define NAV_ALT_LIMIT_ENA		0x0b8c
257 #define NAV_VEL_LIMIT_ENA		0x0b8d
258 #define NAV_EXT_AIDING_ALT_ENA		0x0b8e
259 #define NAV_FOM_ENA			0x0b8f
260 #define NAV_HDOP_ENA			0x0b90
261 #define NAV_VDOP_ENA			0x0b91
262 #define NAV_TENTATIVE_ENA		0x0b96
263 #define NAV_PULLFIX_ENA			0x0b97
264 #define NAV_2D_FIX_ENA			0x0ba0
265 #define NAV_RESERVED_001		0x0ba1
266 #define NAV_OUTPUT_LAST_POS_IF_NO_FIX	0x0bb0
267 #define NAV_ESTIMATE_VEL_WITHOUT_PLL	0x0bb1
268 #define NAV_OUTPUT_LAST_VEL_IF_NO_FIX	0x0bb2
269 
270 /* Position pinning parameters */
271 #define NAV_PIN_VEL			0x0b35
272 #define NAV_PIN_DRIFT_ERR		0x0b36
273 #define NAV_PIN_XYZ_ERR			0x0b37
274 #define NAV_PIN_TIMEOUT			0x0b38
275 #define NAV_PIN_START_DELAY		0x0b39
276 #define NAV_PINNING_ENA			0x0b8a
277 
278 /* Interval mode parameters */
279 #define NAV_INTMODE_NBR_FIXES		0x0b22
280 #define NAV_INTMODE_FIX_INTERVAL	0x0b23
281 #define NAV_INTMODE_TRY_FIND_SV		0x0b24
282 #define NAV_INTMODE_TRY_GET_FIX		0x0b25
283 #define NAV_INTMODE_MAX_STAY_UP		0x0b26
284 #define NAV_INTMODE_NUM_IGNORED_FIXES	0x0b27
285 #define NAV_INTERVAL_MODE_ENA		0x0ba2
286 
287 /* Kalman navigation parameters */
288 #define KLM_MODE			0x0801
289 #define KLM_MAX_NUM_STATES		0x0802
290 #define KLM_START_FLAGS			0x0803
291 #define KLM_OUTPUT_FLAGS		0x0804
292 #define KLM_NUM_OBS_LIMIT		0x0805
293 #define KLM_MEAS_FLAGS			0x0806
294 #define KLM_COV_LIMIT			0x0807
295 #define KLM_DOPPLER_NOISE		0x0810
296 #define KLM_RANGE_NOISE			0x0811
297 #define KLM_DOPPLER_NOISE_LOW		0x0812
298 #define KLM_RANGE_NOISE_LOW		0x0813
299 #define KLM_NOISE_SNR_LOW		0x0814
300 #define KLM_DOPPLER_NOISE_PLL		0x0815
301 #define KLM_RANGE_NOISE_PLL		0x0816
302 #define KLM_CLOCK_OFFSET_NOISE		0x0820
303 #define KLM_CLOCK_DRIFT_NOISE		0x0821
304 #define KLM_POS_NOISE			0x0822
305 #define KLM_POS_NOISE_VERT		0x0823
306 #define KLM_VEL_NOISE			0x0824
307 #define KLM_VEL_NOISE_VERT		0x0825
308 #define KLM_ACC_NOISE			0x0826
309 #define KLM_ACC_NOISE_VERT		0x0827
310 #define KLM_ACC_NOISE_PARAM		0x0828
311 #define KLM_POS_INIT_UNC		0x0830
312 #define KLM_VEL_INIT_UNC		0x0831
313 #define KLM_CLOCK_OFFSET_INIT_UNC	0x0832
314 #define KLM_CLOCK_DRIFT_INIT_UNC	0x0833
315 #define KLM_RESERVED_001		0x0841
316 #define KLM_RESERVED_002		0x0842
317 #define KLM_RESERVED_003		0x0843
318 #define KLM_RESERVED_004		0x0844
319 #define KLM_RESERVED_005		0x0845
320 #define KLM_RESERVED_006		0x0846
321 #define KLM_RESERVED_007		0x0847
322 #define KLM_RESERVED_008		0x0848
323 
324 /* Observation parameters */
325 #define TRACK_MEAS_INTERVAL		0x0420
326 #define TRACK_CHANNELS			0x041d
327 #define OBS_ELEV_LIMIT			0x0101
328 #define OBS_SNR_LIMIT			0x0102
329 #define OBS_SNR_RAIM_LIMIT		0x0103
330 #define OBS_CROSS_CORR_SNR_DIFF		0x0120
331 #define OBS_MAX_SNR			0x0121
332 #define OBS_PLL_CROSS_CORR_THR		0x0122
333 #define OBS_FLL_CROSS_CORR_THR		0x0123
334 #define OBS_FREQ_CROSS_CORR_THR		0x0124
335 #define OBS_EPOCH_LIMIT			0x0130
336 #define OBS_ELEV_LIMIT_ENA		0x0181
337 #define OBS_SNR_LIMIT_ENA		0x0182
338 #define OBS_SNR_RAIM_ENA		0x0183
339 #define SAT_ORBIT_FIT_UPDATE		0x0203
340 #define SAT_FIRST_WEEK			0x0204
341 #define SAT_NUM_LEAP			0x0205
342 #define SAT_PRED_MAX_LKGAGE		0x0220
343 #define SAT_PRED_PHASE_TIMEOUT		0x0221
344 #define SAT_PRED_LKG_TIMEOUT		0x0222
345 #define SAT_ORBIT_CHECK			0x0281
346 
347 /* Unav Tracking parameters */
348 #define TRACK_DLL_ALPHA			0x0401
349 #define TRACK_DLL_BETA			0x0402
350 #define TRACK_DLL_THR_HIGH		0x0403
351 #define TRACK_DLL_THR_LOW		0x0404
352 #define TRACK_DLL_POW_NARROW		0x0405
353 #define TRACK_DLL_POW_WIDE		0x0406
354 #define TRACK_FLL_RESPONSE_TIME		0x0407
355 #define TRACK_POW_CALIBRATION		0x0408
356 #define TRACK_FLL_THR			0x0409
357 #define TRACK_FLL_POW_NARROW		0x040b
358 #define TRACK_FLL_POW_WIDE		0x040c
359 #define TRACK_PLL_CTH			0x040d
360 #define TRACK_PLL_CDTH			0x040e
361 #define TRACK_PLL_CD2TH			0x040f
362 #define TRACK_RESERVED_000		0x0410
363 #define TRACK_RESERVED_001		0x0411
364 #define TRACK_RESERVED_002		0x0412
365 #define TRACK_RESERVED_003		0x0413
366 #define TRACK_RESERVED_004		0x0414
367 #define TRACK_RESERVED_005		0x0415
368 #define TRACK_RESERVED_006		0x0416
369 #define TRACK_RESERVED_007		0x0417
370 #define TRACK_RESERVED_008		0x0418
371 #define TRACK_RESERVED_009		0x0419
372 #define TRACK_RESERVED_010		0x0425
373 #define TRACK_RESERVED_011		0x0426
374 #define TRACK_RESERVED_012		0x0427
375 #define TRACK_RESERVED_013		0x0428
376 #define TRACK_RESERVED_014		0x0429
377 #define TRACK_RESERVED_016		0x042a
378 #define TRACK_RESERVED_017		0x042b
379 #define TRACK_RESERVED_015		0x0483
380 #define SUBF_CHECK_FLAGS		0x0432
381 
382 /* Unav Track task parameters */
383 #define TRACK_GROUP_1			0x041a
384 #define TRACK_GROUP_2			0x041b
385 #define TRACK_GROUP_2_DELAY		0x041c
386 #define TRACK_CC_DELAY			0x041e
387 #define TRACK_CC_THR			0x041f
388 #define TRACK_PLL_ENA			0x0480
389 #define TRACK_NAVAID_ENA		0x0482
390 #define TRACK_SHIFT_REG			0x0421
391 
392 /* Agc config parameters */
393 #define TRACK_AGC_LO			0x0422
394 #define TRACK_AGC_HI			0x0423
395 #define TRACK_AGC_MAX_HI		0x0424
396 #define TRACK_AGC_ENA			0x0481
397 
398 /* PPS parameters */
399 #define PPS_DUTYCYCLE			0x0440
400 #define PPS_FREQ			0x0441
401 #define PPS_DELAY			0x0442
402 #define PPS_SURVEYLEN			0x0443
403 #define PPS_MEAS_MS			0x0444
404 #define PPS_ENA				0x0490
405 #define PPS_SYNC_TRACK			0x0491
406 #define PPS_ENA_PRED			0x0492
407 #define PPS_INVERT			0x0493
408 
409 /* Frequency plan parameters */
410 #define FREQ_XTAL			0x0501
411 #define FREQ_MCLK_NOM			0x0502
412 #define FREQ_MCLK_DENOM			0x0503
413 #define FREQ_RF_NOM			0x0504
414 #define FREQ_RF_DENOM			0x0505
415 #define FREQ_MIXER_OFFSET		0x0506
416 #define FREQ_TME2			0x0507
417 #define FREQ_PARAM_ENA			0x0581
418 
419 /* Search parameters */
420 #define SEARCH_XTAL_UNC			0x0701
421 #define SEARCH_DOPPLER_UNC		0x0702
422 #define SEARCH_WIN_PRED_EVEN		0x0703
423 #define SEARCH_WIN_PRED_ODD		0x0704
424 #define SEARCH_SENS_FULL_R1		0x0705
425 #define SEARCH_SENS_FULL_R2		0x0706
426 #define SEARCH_SENS_FULL_R3		0x0707
427 #define SEARCH_SENS_PRED_EVEN		0x0708
428 #define SEARCH_SENS_PRED_ODD		0x0709
429 #define SEARCH_PRED_ROUNDS		0x070a
430 #define SEARCH_BACK_PRNS		0x070b
431 #define SEARCH_GPS_MASK			0x070c
432 #define SEARCH_WAAS_MASK		0x070d
433 #define SEARCH_AUTO_PD_ROUNDS		0x070e
434 #define SEARCH_FLAGS			0x070f
435 #define SEARCH_PREC_PRED_TIMEOUT	0x0710
436 #define SEARCH_PRED_TIMEOUT		0x0711
437 #define SEARCH_FERRY_COND		0x0712
438 #define SEARCH_IFFERRY_PRED_COND	0x0713
439 #define SEARCH_TUNNEL_IN_SNR		0x0714
440 #define SEARCH_TUNNEL_OUT_SNR		0x0715
441 #define SEARCH_PRED_ENA			0x0781
442 #define SEARCH_BITSYNC_ENA		0x0782
443 #define SEARCH_AUTO_PRED_ENA		0x0783
444 #define SEARCH_AUTO_PD_ENA		0x0784
445 #define SEARCH_SE_PD			0x0785
446 
447 /* Unav Acquisition parameters */
448 #define ACQ_SENS_9_COH			0x0901
449 #define ACQ_SENS_9_NONCOH		0x0902
450 #define ACQ_SENS_9_THR			0x0903
451 #define ACQ_SENS_9_BIN			0x0904
452 #define ACQ_SENS_10_COH			0x0905
453 #define ACQ_SENS_10_NONCOH		0x0906
454 #define ACQ_SENS_10_THR			0x0907
455 #define ACQ_SENS_10_BIN			0x0908
456 #define ACQ_MSG_ENA			0x0981
457 #define ACQ_QUICK_SEARCH_ENA		0x0982
458 #define SE_NONCOH_SHIFT			0x0940
459 #define SE_IR_SHIFT			0x0941
460 #define SE_THR				0x0942
461 #define SE_INT_ENA			0x09a0
462 
463 /* Logging parameters */
464 #define LOG_MODE			0x0d01
465 #define LOG_INTERVAL_MIN		0x0d02
466 #define LOG_INTERVAL_MAX		0x0d03
467 #define LOG_MOVE_MIN			0x0d04
468 #define LOG_MOVE_MAX			0x0d05
469 #define LOG_VELOCITY_MIN		0x0d06
470 #define LOG_VELOCITY_MAX		0x0d07
471 #define LOG_MAXITEMS			0x0d08
472 #define LOG_STORE_LAT_LONG		0x0d80
473 #define LOG_STORE_ALT			0x0d81
474 #define LOG_STORE_ALT_FULL		0x0d82
475 #define LOG_STORE_GPSTIME		0x0d83
476 #define LOG_STORE_GPSTIME_MS		0x0d84
477 #define LOG_STORE_DIRECTION		0x0d85
478 #define LOG_STORE_VEL			0x0d86
479 #define LOG_STORE_VEL_VERT		0x0d87
480 #define LOG_STORE_FIXINFO		0x0d88
481 
482 /* SBAS parameters */
483 #define WAAS_TIMEOUT_MODE		0x0b60
484 #define WAAS_MAX_CHANNELS		0x0b61
485 #define WAAS_ENA			0x0bc0
486 #define WAAS_MSG_0_ENA			0x0bc1
487 #define WAAS_STRICT_ENA			0x0bc2
488 
489 /* Sony Track parameters */
490 #define TRACK_DLL_COEFF_GPS		0x0f01
491 #define TRACK_DLL_COEFF_DISCR		0x0f02
492 #define TRACK_DLL_LIM_GPS		0x0f03
493 #define TRACK_DLL4_COEFF_A		0x0f04
494 #define TRACK_DLL4_COEFF_B		0x0f05
495 #define TRACK_DLL4_COEFF_C		0x0f06
496 #define TRACK_DLL4_COEFF_D		0x0f07
497 #define TRACK_DLL4_FASTADJ_THRES	0x0f08
498 #define TRACK_ELGATE_NARROW		0x0f09
499 #define TRACK_COSTASLF_GPS		0x0f0a
500 #define TRACK_COSTASLF_WAAS		0x0f0b
501 #define TRACK_LPF_GPS_ACQ		0x0f0c
502 #define TRACK_LPF_GPS_LOCK		0x0f0d
503 #define TRACK_LPF_WAAS_LOCK		0x0f0e
504 #define TRACK_LPF_NOISE			0x0f0f
505 #define TRACK_SIGDETECT_TH		0x0f10
506 #define TRACK_SIGDETECT_TH_HS		0x0f11
507 #define TRACK_TIMEOUT_ACQ		0x0f12
508 #define TRACK_TIMEOUT_ACQHS		0x0f13
509 #define TRACK_TIMEOUT_REACQ		0x0f14
510 #define TRACK_HANDOVER_OFFSET		0x0f15
511 #define TRACK_CROSSCORR_THRES		0x0f16
512 #define TRACK_DLLCTRL_INTERVAL		0x0f17
513 #define TRACK_BITEXTRACT		0x0f18
514 #define TRACK_RESERVED001		0x0f19
515 #define TRACK_RESERVED002		0x0f1a
516 #define TRACK_WAAS_PRN_BITSTREAM	0x0f1b
517 #define TRACK_COSTAS_ERROR_TH		0x0f1d
518 #define TRACK_CARRFLT_OUT_TH		0x0f1e
519 #define TRACK_CARRFLT_MIDDLE_TH		0x0f1f
520 #define TRACK_CARRFLT_OUT_DIV		0x0f20
521 #define TRACK_CARRFLT_MIDDLE_DIV	0x0f21
522 #define TRACK_CARRFLT_INBAND_DIV	0x0f22
523 #define TRACK_LATCHTIME_OFFSET		0x0f23
524 #define TRACK_DIRECTHANDOVER_OFFSET	0x0f24
525 #define TRACK_EN_HS			0x0f80
526 #define TRACK_CARR_AID			0x0f81
527 #define WAAS_EN_DECODE			0x0f82
528 #define TRACK_CARRCHKATLOCK		0x0f83
529 #define TRACK_BL_REACQ			0x0f84
530 
531 /* Sony Test parameters */
532 #define SONYTEST_DISABLE_PORTS		0x0f85
533 
534 /* Sony Acq parameters */
535 #define SACQ_SEARCH_CH_NUM		0x0f30
536 #define SACQ_NOISE_COUNT_NUM		0x0f31
537 #define SACQ_NOISE_VALID_TIME		0x0f32
538 #define SACQ_NOISE_K			0x0f33
539 #define SACQ_PEAK_FD			0x0f34
540 #define SACQ_PEAK_NFD			0x0f35
541 #define SACQ_RESERVE			0x0f36
542 #define SACQ_SEARCH_CH_NUM_VALID	0x0f96
543 
544 #endif /* _GPSD_ITALK_H_ */
545