3 // *********************************************************************************
7 // *********************************************************************************
8 { "name" : "QMI Client PDS",
11 // *********************************************************************************
12 { "name" : "QMI Message PDS",
13 "type" : "Message-ID-Enum" },
15 // *********************************************************************************
16 { "name" : "QMI Indication PDS",
17 "type" : "Indication-ID-Enum" },
19 // *********************************************************************************
25 "output" : [ { "common-ref" : "Operation Result" } ] },
27 // *********************************************************************************
28 { "name" : "Set Event Report",
33 "input" : [ { "name" : "NMEA Position Reporting",
38 "public-format" : "gboolean" },
39 { "name" : "Extended NMEA Position Reporting",
44 "public-format" : "gboolean" },
45 { "name" : "Parsed Position Reporting",
50 "public-format" : "gboolean" },
51 { "name" : "External XTRA Data Request Reporting",
56 "public-format" : "gboolean" },
57 { "name" : "External Time Injection Request Reporting",
62 "public-format" : "gboolean" },
63 { "name" : "External WIFI Position Request Reporting",
68 "public-format" : "gboolean" },
69 { "name" : "Satellite Information Reporting",
74 "public-format" : "gboolean" },
75 { "name" : "VX Network Initiated Request Reporting",
80 "public-format" : "gboolean" },
81 { "name" : "SUPL Network Initiated Prompt Reporting",
86 "public-format" : "gboolean" },
87 { "name" : "UMTS CP Network Initiated Prompt Reporting",
92 "public-format" : "gboolean" },
93 { "name" : "PDS Comm Event Reporting",
98 "public-format" : "gboolean" },
99 { "name" : "Accelerometer Data Streaming Ready Reporting",
104 "public-format" : "gboolean" },
105 { "name" : "Gyro Data Streaming Ready Reporting",
110 "public-format" : "gboolean" },
111 { "name" : "Time Sync Request Reporting",
116 "public-format" : "gboolean" },
117 { "name" : "Position Reliability Indicator Reporting",
122 "public-format" : "gboolean" },
123 { "name" : "Sensor Data Usage Indicator Reporting",
128 "public-format" : "gboolean" },
129 { "name" : "Time Source Information Reporting",
134 "public-format" : "gboolean" },
135 { "name" : "Heading Uncertainty Reporting",
140 "public-format" : "gboolean" },
141 { "name" : "NMEA Debug Strings Reporting",
146 "public-format" : "gboolean" },
147 { "name" : "Extended External XTRA Data Request Reporting",
152 "public-format" : "gboolean" } ],
153 "output" : [ { "common-ref" : "Operation Result" } ] },
155 { "name" : "Event Report",
156 "type" : "Indication",
159 "output" : [ { "name" : "NMEA Position",
164 "max-size" : "200" },
165 { "name" : "Extended NMEA Position",
169 "format" : "sequence",
170 "contents" : [ { "name" : "Operation Mode",
172 "public-format" : "QmiPdsOperationMode" },
175 // This was supposed to be only 1 byte for length, but it seems it's not
176 "size-prefix-format" : "guint16",
177 "max-size" : "200" } ] },
178 { "name" : "Position Session Status",
183 "public-format" : "QmiPdsPositionSessionStatus" } ] },
185 // TODO: parse all TLVs of this indication
186 // Reading gfloat/gdouble is still missing
187 //{ "name" : "Parsed Position",
189 // "mandatory" : "no",
191 // "format" : "sequence",
192 // "contents" : [ { "name" : "Valid Mask",
193 // "format" : "gint8" },
194 // { "name" : "Timestamp Calendar",
195 // "format" : "struct",
196 // "contents" : [ { "name" : "Year",
197 // "format" : "guint16" },
198 // { "name" : "Month",
199 // "format" : "guint8" },
200 // { "name" : "Day Of Week",
201 // "format" : "guint8" },
202 // { "name" : "Day of Month",
203 // "format" : "guint8" },
204 // { "name" : "Hour",
205 // "format" : "guint8" },
206 // { "name" : "Minute",
207 // "format" : "guint8" },
208 // { "name" : "Second",
209 // "format" : "guint8" },
210 // { "name" : "Millisecond",
211 // "format" : "guint16" } ] },
212 // { "name" : "Leap Seconds",
213 // "format" : "guint8" },
214 // { "name" : "Timestamp UTC",
215 // "format" : "guint64" },
216 // { "name" : "Time Uncertainty",
217 // "format" : "guint32" },
218 // { "name" : "Latitude",
219 // "format" : "gdouble" },
220 // { "name" : "Longitude",
221 // "format" : "gdouble" },
222 // { "name" : "Altitude Ellipsoid",
223 // "format" : "gfloat" },
224 // { "name" : "Altitude Sea Level",
225 // "format" : "gfloat" },
226 // { "name" : "Horizontal Speed",
227 // "format" : "gfloat" },
228 // { "name" : "Vertical Speed",
229 // "format" : "gfloat" },
230 // { "name" : "Heading",
231 // "format" : "gfloat" },
232 // { "name" : "Horizontal Uncertainty Circular",
233 // "format" : "gfloat" },
234 // { "name" : "Horizontal Uncertainty Ellipse Semi Major",
235 // "format" : "gfloat" },
236 // { "name" : "Horizontal Uncertainty Ellipse Semi Minor",
237 // "format" : "gfloat" },
238 // { "name" : "Horizontal Uncertainty Ellipse Orient Azimuth",
239 // "format" : "gfloat" },
240 // { "name" : "Vertical Uncertainty",
241 // "format" : "gfloat" },
242 // { "name" : "Horizontal Velocity Uncertainty",
243 // "format" : "gfloat" },
244 // { "name" : "Vertical Velocity Uncertainty",
245 // "format" : "gfloat" },
246 // { "name" : "Horizontal confidence",
247 // "format" : "guint8" },
248 // { "name" : "Position DOP",
249 // "format" : "gfloat" },
250 // { "name" : "Horizontal DOP",
251 // "format" : "gfloat" },
252 // { "name" : "Vertical DOP",
253 // "format" : "gfloat" },
254 // { "name" : "Operation Mode",
255 // "format" : "gint8",
256 // "public-format" : "QmiPdsOperationMode" } ],
257 // "prerequisites": [ { "field" : "Position Session Status",
258 // "operation" : "<=",
259 // "value" : "QMI_PDS_POSITION_SESSION_STATUS_IN_PROGRESS" } ] } ] }
261 // *********************************************************************************
262 { "name" : "Get GPS Service State",
267 "output" : [ { "common-ref" : "Operation Result" },
272 "format" : "sequence",
273 "contents" : [ { "name" : "GPS Service State",
275 "public-format" : "gboolean" },
276 { "name" : "Tracking Session State",
278 "public-format" : "QmiPdsTrackingSessionState" } ],
279 "prerequisites" : [ { "common-ref" : "Success" } ] } ] },
281 // *********************************************************************************
282 { "name" : "Set GPS Service State",
287 "input" : [ { "name" : "State",
291 "format" : "sequence",
292 "contents" : [ { "name" : "GPS Service State",
294 "public-format" : "gboolean" } ] } ],
295 "output" : [ { "common-ref" : "Operation Result" } ] },
297 // *********************************************************************************
298 { "name" : "Get Default Tracking Session",
303 "output" : [ { "common-ref" : "Operation Result" },
308 "format" : "sequence",
309 "contents" : [ { "name" : "Session Operation",
311 "public-format" : "QmiPdsOperatingMode" },
312 { "name" : "Position Data Timeout",
313 "format" : "guint8" },
314 { "name" : "Interval",
315 "format" : "guint32" },
316 { "name" : "Accuracy Threshold",
317 "format" : "guint32" } ],
318 "prerequisites" : [ { "common-ref" : "Success" } ] } ] },
320 // *********************************************************************************
321 { "name" : "Set Default Tracking Session",
326 "input" : [ { "name" : "Info",
330 "format" : "sequence",
331 "contents" : [ { "name" : "Session Operation",
333 "public-format" : "QmiPdsOperatingMode" },
334 { "name" : "Position Data Timeout",
335 "format" : "guint8" },
336 { "name" : "Interval",
337 "format" : "guint32" },
338 { "name" : "Accuracy Threshold",
339 "format" : "guint32" } ] } ],
340 "output" : [ { "common-ref" : "Operation Result" } ] },
342 // *********************************************************************************
343 { "name" : "Get AGPS Config",
348 "input" : [ { "name" : "Network Mode",
353 "public-format" : "QmiPdsNetworkMode" } ],
354 "output" : [ { "common-ref" : "Operation Result" },
355 { "name" : "Location Server Address",
359 "format" : "sequence",
360 "contents" : [ { "name" : "IP",
361 "format" : "guint32",
362 "endian" : "little" },
364 "format" : "guint32" } ],
365 "prerequisites" : [ { "common-ref" : "Success" } ] },
366 { "name" : "Location Server URL",
371 "size-prefix-format" : "guint8",
372 "array-element" : { "format" : "guint8" },
373 "prerequisites" : [ { "common-ref" : "Success" } ] } ] },
375 // *********************************************************************************
376 { "name" : "Set AGPS Config",
381 "input" : [ { "name" : "Location Server Address",
385 "format" : "sequence",
386 "contents" : [ { "name" : "IP",
387 "format" : "guint32",
388 "format" : "guint32" },
390 "format" : "guint32" } ] },
391 { "name" : "Location Server URL",
396 "size-prefix-format" : "guint8",
397 "array-element" : { "format" : "guint8" } },
398 { "name" : "Network Mode",
403 "public-format" : "QmiPdsNetworkMode" } ],
404 "output" : [ { "common-ref" : "Operation Result" } ] },
406 // *********************************************************************************
407 { "name" : "Get Auto Tracking State",
412 "output" : [ { "common-ref" : "Operation Result" },
417 "format" : "sequence",
418 "contents" : [ { "name" : "Auto Tracking State",
420 "public-format" : "gboolean" } ],
421 "prerequisites" : [ { "common-ref" : "Success" } ] } ] },
423 // *********************************************************************************
424 { "name" : "Set Auto Tracking State",
429 "input" : [ { "name" : "State",
433 "format" : "sequence",
434 "contents" : [ { "name" : "Auto Tracking State",
436 "public-format" : "gboolean" } ] } ],
437 "output" : [ { "common-ref" : "Operation Result" } ] }