The following is a short discussion on GPS "fixing" or "locking" and the different states that a GPS device may be in when trying to get its first fix. I wrote it for the UBports documentation but it just didn't seem to fit anywhere in the article I was writing. Maybe I'll use it later.
Most GPS hardware in mobile devices does not directly state its expected TTFF or its progress toward acheiving its first fix. To make matters worse, Ubuntu Touch does not currently use a Wi-Fi positioning system or cell-site multilateration. For this reason, it can seem that Ubuntu Touch takes a very long time to receive location data.
If GPS hardware is not used for a while or the device's battery dies, it may need to aquire a "Cold" fix. This means that the hardware does not know the position or velocity of any positioning satellites (the almanac). The hardware will search for any GPS satellites that it can find and begin receiving data from them. Since the satellites only transmit data at 50 bits per second, it will take about 15 minutes to complete this process.
A cold fix takes anywhere from 15 minutes to an hour to complete. The device must be awake and have an uninterrupted view of one or more satellites during this process, so it is best to set it near a window and turn off auto-lock features.
Most GPS hardware in mobile handsets will download an almanac from the GSM/LTE network if it has a valid SIM card installed and a connection to the network. This is part of the Assisted GPS, or A-GPS, feature. Devices which are able to perform this process will instead aquire a warm fix.
A device will usually only need to aquire a warm fix. This means that the device has most of the data it needs to aquire a fix and must only determine the exact position of the satellites it can detect.
A warm fix takes one to four minutes to complete.
A device will aquire a hot fix when it has recently aquired a fix, for example if location services were used within a few hours without rebooting the device.
A hot fix takes seconds to complete.