Far Start

Parameters

  • Enabled="true" - Enable the far start feature (default is enabled).
  • TrustPositionForSec="10800" - Trust the position for 10800 seconds or three hours (default).
  • ClearPositionAfterSec="180" - Invalidate the position after 180 seconds (default). If we do not get a fix in this time then do a cold start acquisition.

Example configuration

    <far_start
        Enabled="true"
        TrustPosForSec="10800"
        ClearPosAfterSec="180"
    />

1. Behavior for position age > trust time

If the age of the initial position (whether position from NVRAM or position assistance provided by the application) is larger than the time requirements of trust_position_for_sec (default 3 hrs) then the following search is done:

ParallelFarStartDiagram.png

If the initial position is older than trust_position_for_sec when starting the GLL:

  1. Some search resources are used to do assisted satellite search.
  2. In parallel some search resources are used to search for underground satellites and above ground satellites using a wider frequency search.
  3. If we detect 5 or more satellites that are above ground then we continue the assisted search and cancel the Far Start logic
  4. If we detect an underground satellite or determine the initial position aiding is incorrect then we delete the initial position and start a Positionless Start acquistion. We still use the time and whatever orbit information we have, so with LTO we don't need to wait for ephemeris decoding to occur before producing a position (decoded ephemeris would typicaly have expired by the time the underground search detects any Sat)
  5. If we obtain a fix during the assisted search, the Far Start logic is cancelled and we carry on as with a regular Assisted Start.
  6. If we don't find any underground satellite, and don't detect that the initial aiding is bad, and don't compute any position, the Parallel Far Start search continues for 3 min (ClearPosAfterSec) as described in step 3.
  7. If we don't get a fix in 3 mins (ClearPosAfterSec), then we do a Positionless Start acquisition, as described in step 4

2. Behavior for position age <= trust time

If the age of the initial position (whether position from NVRAM or position assistance provided by the application) is less than the time requirements of trust_position_for_sec (default 3 hrs) then the following search is done

Example configuration

    <asst>
        <pos Lat="x" Lon="y" Alt="z" AgeSec="420" />
    </asst>
    <far_start
        Enabled="true"
        TrustPosForSec="500"
        ClearPosAfterSec="180"
    />

Here we do an 80 sec assisted satellite search before engaging the Far Start logic because the age of the assistance position is 420 secs and we trust the assistance position for 500 secs (difference 80).

  • If we get a fix during that time, then Far Start logic never gets engaged since the age of the position never goes beyond "TrustPosForSec".
  • Else we engage the Far start logic which behaves exactly as described in 1.steps 3-7.

3. Receiving assistance postion

Whenever a new assistance position is received, far start underground search will be terminated and we continue the assisted search.

On more details of far start and other inner atributes refer Optional Task Inner Attributes

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines