Poor GPS reception. Android GPS calibration, acceleration of satellite acquisition after a cold start, increasing GPS accuracy essentially to the possible limit of hardware

Don't you like that the GPS on your Android takes too long to "search for and acquire satellites"? The location accuracy is worse than 10 meters? Did you think that “this is how GPS actually works”? Nothing of the kind. Your GPS can provide an accuracy of +-5 meters, or even more accurately. And I will tell you how to achieve this. And no more “patches” or third-party and “gemorrhagic” in the use of “GPS utilities that speed up the search for satellites and increase accuracy.” Everything you need is in your device. The manufacturer simply enters “medium-light” “calibrations” there - naturally, he won’t calibrate each phone individually. And where is the manufacturer? In China, but you need to calibrate it where you actually use it. The instructions below were collected by me from different sources in parts and tested, except for the “ensuring maximum accuracy” part, which I will check later and make an addition, but even without it, the GPS “cold start” time, after rebooting the phone, was brought to less than 20 seconds, instead of 1-2 minutes before calibration . At the same time, the capture of the first satellites occurs in less than 3-4 seconds, and “GPS capture” (localization by satellites, when the “GPS search” stops blinking and the body switches to working on satellites) - less than 10 seconds (sometimes up to 40 seconds, but less often - depending on the accuracy of your smart watch and satellite visibility).
To decide which one you prefer, you can read impressions of both methods here:. I personally recommend the “native GPS calibration method” (described below) - it gives the same results, and in my opinion is much preferable and easier to use.
It should be noted that with the help of the program described here: the speed of activation from the “cold” state is still a little faster. but it’s more serious, and due to its “deep penetration into the Android GPS system”, it can “throw down” the calibrations of its “native system”, which are discussed below. Plus, everything that needs to be done with its help, before each turn on, the GPS makes the startup using it really slower than in the option outlined in this note.


Added 08/30/2013. Before starting calibration, look at this note and follow the procedures described in it: . This is especially true if you have serious problems with GPS, like “it holds satellites very poorly” and “lock” “falls” at the slightest weakening of the signal, plus after that, GPS will “hold” more satellites at the same time, which will improve both stability and accuracy. Without these procedures, I could not “bring the GPS back to normal” under JB 4.1.1 Cink King. Then perform calibration according to the method. outlined below in this note.

*italic font The points necessary to achieve generally theoretically possible accuracy are highlighted. Italics may be omitted, this will slightly reduce the accuracy (actually 2 times), and will not affect the “cold start” speed.
**Before the procedure, find out the code for the engineering menu of your device - you will need it.

  1. GPS accuracy, and especially the speed of “capture after a cold start,” greatly depend on the accuracy of the time setting on your device. Usually, in the “Date and Time” settings, “synchronize time over the network” is set. I had it too. But as it turned out, the device uses the operator’s cellular signal to set the time, which in some cases can give time setting accuracy worse than + - several minutes, and in my case (Kyiv, Life operator) it gave a difference from real time of as much as 3 seconds. IN total feces, not "time signals". There is also the option to “determine the time using GPS,” but if you don’t live in a village, then this will consume a lot of battery, and will be of little use - neither in an apartment, nor on the subway, nor in a minibus, nor in the office... Well, you get the idea.
    Therefore, let us first take care of setting the most accurate possible time. For this I set free program ClockSync, from here: https://play.google.com/store/apps/details?id=ru.org.amip.ClockSync&hl=ru, you can also get it from here: http://4pda.ru/forum/index. php?showtopic=171610 . You can also use the technique that I described here: - it does not require installing additional programs, but it does require manual editing of several system configuration files.
    Next, we decide on the reference exact time server that we will use. It is important that it be as close to you as possible and that the ping time to it be minimal. To begin with, the addresses of the “pools” - for Ukraine this is ua.pool.ntp.org, for Russia ru.pool.ntp.org. If you are in another country, look here: http://www.pool.ntp.org/ru/.
    Now we launch the terminal, and in it the command “ping ua.pool.ntp.org”, and look at the response time. We do this 10 times - each time it will contact a random “pool” server, and usually a different one. Even for Ukraine, the “response” time for different servers ranges from 5 to 60ms (on land), let alone Russia with its size. Accordingly, we write down the IP address of the server whose response time is minimal. We will use it.
    Let's launch installed program ClockSync, Menu > settings. The first item is "NTP server". Enter the selected IP address there. Next, check the “automatic synchronization” box, then select “Interval”. The smaller the interval, the more often the synchronization will take place, and this means “a little traffic and a lot of battery”, on the other hand, my device “goes away” by as much as 160-180 milliseconds in 3 hours... I settled on 3 hours for now. Next You don’t have to check the “exact interval” checkbox - it will save the battery a little, I personally checked the “High precision mode” - check it, especially since synchronization will sometimes take place through cellular data transmission at a very unstable speed (you don’t have to check it - the accuracy will drop, but the accuracy will drop). Battery consumption will be significantly reduced during synchronization). We also set “detect time zone”
    Exit the settings menu, click “menu”, and select “synchronize” - how much your device is “past time” can be seen on the screen. Yes, in the settings menu after a day you can see how fast/late your device’s clock is per day (my Fly IQ 450 is 9.21 seconds per day).
    PS automatic time synchronization is only possible on a “rooted” device. If you are not rooted, there is a “manual mode” in the program, but the accuracy will not be the same.
    Note - added later. There is also a second way to accurately synchronize time, without installing an additional program, I described it here:. After comparing the results, I chose this method, but it requires some editing of the configuration files.
    It is also advisable, if you have a rooted device, to edit the /system/etc/gps.conf file. Namely, in the first line, after “NTP_SERVER=", replace the “default” one indicated there with a more suitable one for your country - for example, for Ukraine at ua.pool.ntp.org, or even with a previously defined IP address, but this will less universal and sometimes fraught with failures if a specific server does not work, so ua.pool.ntp.org is more universal, but the IP address in this field can further speed up the initial cold start. Editing can be done using "Root Explorer".
    Over time we figured it out. Next.
  2. Let's go to the phone settings. Location. We mark the items: “By network coordinates”, “GPS satellites”, “Auxiliary data”, “AGPS”, the rest is “to taste”. Now go to the "EPO Settings" item. Turn off "EPO" during calibration. Everything is here.
  3. Launching Google Earth , In the settings, we switch it to show coordinates in the format of degrees and fractions. We are looking for a place nearby where we will carry out calibration. That should be enough open place, for example area. We select the point where we will stand during calibration (select signs to stand exactly at it later), point the cursor at it, and write down the shown coordinates to the last digit. The preparation is over - let's go "to the field" :) with the phone.
  4. If you used p3- we stand EXACTLY at the point we previously selected. Launch "root explorer", go to the /data/misc folder, delete the mtkgps.dat file. We download the latest AGPS data - for example, through the GPS Status program (menu>tools>AGPS Data>Download). We check the time, for example with the ClockSync program (we check it several times, look at the typical deviation, and then click synchronize - how to use the program and where to get it - see earlier in the article on time calibration). Go to the engineering menu, LocationBasedServices, select “GPS” in the menu, and press the “GPS” button (the inscription on it will change from OFF to ON). Go to "View". We wait until the “fix” appears (the GPS indicator stops blinking), and then for at least another 2 minutes. Then click RefPosition, and in the windows that appear, enter the coordinates previously written out from Google Earth for the point where you are calibrating (there will be zeros there). Click "OK". Go to the View screen again, and wait after the "fix" for at least 2x minutes, preferably 5 minutes. We go back to the engineering menu. If step 3 was not performed, simply choose any fairly open place. Taking out- don’t even try to do the calibration on the balcony or “from the window” - you’ll only make it worse.
  5. ****You can also check the correctness of your choice before calibration SIM cards for AGPS - if your cellular operator is glitchy, and there are two cards and two operators, then you can choose a less glitchy one, this is if you selected “glitchy”, it can significantly speed up the work of GPS, and even “revive” “GPS that is completely not working” the procedure is described at the very end of the note.
  6. Go to the "Engineering Menu"(for my FLY IQ 450 and many Chinese clones, this is the code *#*#3646633#*#*, which we dial where you usually dial the phone number when calling, you may have a different one). Find "YGPS location" and launch it. Hold your phone vertically.
  7. Go to the Information tab. Click the "Full" button.
  8. Go to the "Satellites" tab, wait for at least 5 satellites to appear (preferably more - I had 11 of them when setting up), and after they “appear and turn green”, wait at least another 2 minutes, holding the device motionless (it can be longer - it won’t be worse - only better ). This is the initial calibration. It took me about 3 minutes, but for some devices, according to reviews, it can take up to half an hour.
  9. Go to Information", click "Cold". Continue as in point 8. Repeat point 9 3 times. More is possible.
  10. Back to Information. Click "Warm". further as in paragraph 8. There is no need to repeat it anymore.
  11. Back to Information". Click "Hot". Continue as in step 8.
  12. If you followed step 3, go to the engineering menu, select the "LocationBasedService" item, go to the "View" tab (remember to activate GPS as described in step 4), and wait until the maximum satellites are determined. Minimum 7, better more (the more, the more accurate the calibration), and after the maximum is determined, wait another 2 minutes. Then go to the tab GPS, and click "RefPosition". You will have two numbers, from the one you previously recorded using Google Earth, they will most likely differ in thousandths. Correct both to those that you wrote down earlier in step 3. Click "OK". Now go to the GPS tab and wait for 5 minutes holding the phone motionless. Here in this place - the longer the better. The GPS program, having received real coordinates, compares them with those that it “obtains” and makes corrections. clarifying them. Below in the window you will see a “process” counter and data that changes from time to time.
  13. Exit the engineering menu and reboot the phone.
  14. All. We rejoice in the fast and accurate GPS.
After completely following the instructions, the real accuracy of determining the position (calculated from google earth and not the one shown by the GPS itself) was ~2.3-2.5 meters (GPS showed an accuracy of 5-6 meters in the status), with 9 satellites “visible”, and 8 meters (GPS showed an accuracy of 10.5 meters in the status) with 7 satellites visible - the satellites move and do not happen from time to time in the sense of day to day.

PS If you are also going to use the program described here: then please note that you need to calibrate after installing it. And if it is uninstalled, calibrate it again - it resets the calibration data during uninstallation, and the GPS again starts “searching for satellites for several minutes.” Loading its “acceleration” data does not SEEM to affect the calibration, but it also makes no sense - the difference in speed is “within the limits of statistical error.” But it seems that the real accuracy is a little better, with freshly downloaded data (by 20 percent, but also within the statistical error in essence). Also keep in mind that the downloaded data from the above program quickly becomes outdated, and after a day or two, on the contrary, it will slow down the GPS and reduce accuracy (compared to a simply normally calibrated native one using the method described above in this article). Plus, I took it down nafik :) Bo, firstly, is not needed, and secondly, with it you can get “GPS which does not determine anything” if you forgot to download new data. Even if you clicked the “reset downloaded data” button and do not launch the program itself. At least this happened to me once - I didn’t check the rake again.

PPS There are rumors on the net that “turning on EPO data” (specific GPS data for MTK chips), which gives some acceleration of the “cold start”, reduces the number of “captured satellites”. This is unlikely. The number of satellites captured is determined by their "number overhead in at the moment"and height above the horizon (in the city, those that are above the horizon are usually not visible). But even so, when calibrating, it is better to turn it off. And use it only if you are going to a place where the Internet may not be available. Then it will give you a real startup acceleration (it downloads data a month in advance) In a normal situation, it is better to use only AGPS - its data is fresher, and therefore more accurate, so the “start” speed is typically higher with it.

PPPS Below is “reference information” for those who received a device with a completely non-working GPS. It’s worth checking it - the reason may be that you have something different from the following listed in your settings:

In the engineering menu, in the LocationbasedService item, in the AGP tab S:

Enable A-GPS, MSB, User Profile, SLP Template - GOOGLE, supl.google.com, 7275, TLS Enable, RRLP, IMSI, K-Value must be enabled.
Horizontal Accuracy - 22, Vertical Accuracy - 0, Location Age - 0, Delay - 0. Location Estimate is selected.
*********Selecting a SIM card for AGPS
Go to the NET tab - select - click look at the map (Map tab), the address where you are located, or close to it, should appear there. We do the same with . We compare what is more accurate to your real position, and on the AGPS tab select your preferred SIM card.
On the AGPS tab, click
Yes, if any of the things listed in this PS differed from the settings of your device, or if you changed the SIM card to which you have AGPS attached, you need to perform a new calibration.

PS About the influence of clock accuracy on the GPS cold start time.

From the “inconvenient place” - a balcony, everything on top is covered with concrete, a courtyard-well - houses on 4 sides, the sky is a “piece from above”, 4 satellites are barely visible (then you can barely see 3, and the 4th one appears and disappears). The phone was calibrated according to the method outlined above (before calibration, there was no capture at all under these conditions). The clock “lags” by ~160ms (2 hours have passed since the clock was calibrated by the ClockSync program). Cold start time ~250-300 sec. After forced time calibration by the ClockSync program, the “cold start” time is ~100 seconds. However, these are the conditions. in which GPS usually does not work at all, but clearly illustrates the effect of clock accuracy on the “cold start” time.

PPS To force the loading of AGPS data, for example, if you are far from the place where they were downloaded - for example, you went 200 kilometers for fishing/vacation, etc., and the AGPS data downloaded at home has become irrelevant, which can negatively affect the “cold start” time.

You can use the GPS Status program from here: https://play.google.com/store/apps/details?id=com.eclipsim.gpsstatus2&hl=ru. Launch this program. At the bottom left under the “coordinate circle” is the age of the AGPS data in hours. Click Menu > Tools > A-GPS Data. Then "download".


An integral part when purchasing any Android smartphone is the GPS built into the phone. This sensor allows you to use navigation applications such as Google Maps, location services in order to correctly mark geographical location using apps, etc. However, not all GPS sensors are the same; they have different accuracy and capabilities. In some cases, the reason that GPS does not work properly is due to the phone's hardware, especially in those older devices where this feature first began to appear. However, these days, poor GPS reception or performance may be due to system settings, installed firmware, or other easily resolved issues. We will tell you how you can improve the GPS signal on your Android device.

First of all, make sure GPS is enabled on your device. Go to Settings - My location, turn on the Access to my geodata and By GPS satellites checkboxes.

Compass calibration

One reason GPS is inaccurate is an incorrectly calibrated compass. If this is the case, the device receives incorrect orientation information, which leads to problems using navigation applications. In order to fix this, you need to calibrate the compass of your Android device.

The most the easy way This is done by installing the application. After installation, go to the Compass section. If it is not working properly, go to Menu and select Calibrate. Perform the manipulations shown in the video.

  1. Stay as far away from magnetic fields as possible.
  2. Place your phone on a flat surface with the display facing up.
  3. Rotate the phone slowly, 5 seconds for full rotation.

Diagnosis of problems

Using the same GPS Essentials application, you will be able to understand whether the problem lies in the hardware or in the software. With this app you can see how many satellites are currently in range of your device. If you cannot receive a GPS signal, the application will indicate the reason (hardware or software) in graphical form (provided there is a GPS signal in the area). sufficient quantity satellites, say 8 or 10) or it will report that you are out of range of satellites.

Reset dataGPS

Sometimes your device may become stuck on a particular satellite even if it is currently out of range, resulting in either a weak or no signal. This can be corrected by clearing the GPS data and starting data collection from scratch. What do you need for this? The GPS Status & ToolBox app will allow you to reload your GPS data and join satellites in your range. In the app menu, find A-GPS Status Management, go into it and click on the Reset Data button and then on Load. After this, you can launch any application that uses GPS and get a good signal. One of the disadvantages of this method is that all fixes are not permanent. You may have to delete your data again and again and reload it if the GPS acts up.

Firmware update

The next method is more complex, but it has a large share likely to save you from problems with GPS. Some firmware is not very friendly with GPS sensors and updating the firmware may help you. You will need an unlocked and rooted phone. Another option is to replace the GPS sensor. Of course, this can only be entrusted to a professional. Important tip: Before replacing the firmware or sensor, be sure to back up your data.

The GPS module in your phone allows you to use navigation applications such as Google Maps, and location services. And a good signal is crucial not only for navigation, but also for augmented reality games like Pokemon Go. If you are experiencing problems with this on your Android phone, then check out our tips to help improve the GPS signal on your Android device.

What is GPS?

To know how to optimize the performance of the GPS module, you need to understand how it works. GPS stands for Global Positioning System, that is, a global positioning system. It was developed by the military, but later began to be used for civilian purposes. GPS originally used 24 satellites orbiting planet Earth, but the number has now increased to 31.

Your smartphone communicates with these satellites through a special antenna that is part of the hardware in most modern mobile devices. Naturally, the hardware is controlled by software through the driver. Thus, there are three sources of error for the GPS signal in a smartphone:

  • Number of available satellites at current location
  • The quality of the antenna that is inside the smartphone
  • Driver implementation in operating system Android

Switch to High Precision mode

To get the best signal, you should be prepared for the battery life of your device to be lower than usual. It's a necessary sacrifice, but you'll still be able to change the settings back when you don't need them. precise definition your location. For example, when you play Pokemon Go. It's very simple, follow our instructions in the instructions below.

Open Settings, go to Location and make sure location services are turned on. If they are turned off, then click on the switch in the upper right corner.

At the very top, under this switch, there is a menu with mode selection. Tap on it and make sure the “High accuracy” option is selected. This means that the built-in GPS, Wi-Fi and mobile network will be used to determine your location. This may increase power consumption, but the detection accuracy will improve significantly.

Make GPS always active

To save battery power, the GPS module can be turned off when not in use. If, for example, you are playing Pokemon GO and at that moment you want to read a new message, then the GPS will turn off for this time.

One way or another, you can force it to always be active, but this is not difficult to do. You just need to install one application from the Google Play Store, and it will do everything for you. We recommend Connected GPS because it's the easiest to use. Keep in mind that this can be a real blow to the autonomy of your device.

Why might GPS not work?

With GPS Essentials, you can diagnose the cause of a weak GPS signal. Problems may arise from hardware or software. On the main screen of GPS Essentials, find the “Satellites” item and go to it. The smartphone must connect to satellites available in Earth orbit.

If your phone hasn't found any satellites or can't connect to them due to a bad signal, then the reason for this may be interference from metal objects around you: the smartphone case or the module built into it simply isn't working as it should. If the satellites appear, but the GPS is still not working properly, then the problem is in the software and we recommend using the next tip on the list.

Clear GPS data

Sometimes your device gets stuck on some GPS satellites, even if they are not within range, which causes problems in the module's operation. This can be corrected using another application - GPS Status & Toolbox, which clears GPS data and the phone can reconnect to satellites from scratch.

Install this tool and then run it. Press the “Menu” button, where you need to select “Manage A-GPS state”. Next, you need to click the “Clear” button, and after completing this process, return to “Manage A-GPS state” and click on the “Download” button. That's it, after this the GPS module should work like new.

Buy an external GPS receiver

If the GPS on your smartphone still does not want to work or its accuracy is not enough for you, then you can try an external GPS receiver. It can be synchronized with your phone via Bluetooth and charged with the same charger, which comes with the smartphone. The only problem in this case is the cost of an external GPS receiver, since good model you will have to pay about 6,000 rubles.

Determining coordinates with a pocket device is far from a new thing, but a common occurrence. Every modern smartphone on Android or iOS is equipped with a built-in GPS receiver. But often the quality of work of this module is not enough for domestic use.

Users are interested in whether it is possible to significantly increase the reception level on mobile devices, in order to more accurately determine the current position or spend time more comfortably in games that need to determine the location of the device in as much detail as possible. Let's study the issue and figure out what solutions are available.

GPS is a special system that allows ground-based devices to receive signals from space from pre-launched satellites in order to use them to calculate their current position. Applicable in various means navigation to find the best path to your destination.

Why is it needed?

The main application is terrain orientation and route planning through navigation applications. This combination of satellites and programs allows you to get or walk to your destination without pestering passersby and painful attempts to navigate using paper maps.

For Android OS, the most popular are Google Maps and Yandex Maps or applications.

How to improve reception on your device

There are various methods To improve reception by devices based on iOS and Android, we will limit ourselves to the two most well-known ones. A simpler option is to use the capabilities of the smartphone itself to enhance the GPS signal through the system menu:

  1. First you need to activate GPS, then open settings.
  2. Go to the “Geodata” item.
  3. Open "Mode".
  4. Enable high accuracy in the Detection Method section.

Due to this, the smartphone will more actively process GPS data.

The downside of the method is accelerated battery drain, since in navigation mode the device will consume many times more energy.

Improving reception in Yandex Navigator

The alternative approach is more complex, but comparable in effectiveness to the previous method. Instead of increasing reception, you need programmatic method clear GPS information.

Updating the data will improve the performance of the navigation service. However, this method is not available to everyone, since the application may be incompatible with the device model, it may not have enough storage space, etc.

Application to improve navigation

For more experienced users

Other causes of problems withGPSin Navigator

Other reasons may also lead to difficulties. Sometimes GPS malfunctions (cannot find satellites or geolocation mode does not even start) in the Android OS as a whole - then you can try to roll back the system to factory settings through the system menu.

You can also update the firmware or return the phone to service so that specialists can fix problems with the electronic components of the device.

Conclusion

To restore navigation and the ability to “catch” satellites on Android even in the open, you need to find out whether the reason lies in the settings or in a hardware failure.

If the device components fail, you need to contact an official service center.

Which method of improving GPS for Yandex Navigator suited you?

Don't you like that the GPS on your Android takes too long to "search for and acquire satellites"? The location accuracy is worse than 10 meters? Did you think that “this is how GPS actually works”? Nothing of the kind. Your GPS can provide an accuracy of +-5 meters, or even more accurately. And I will tell you how to achieve this. And no more “patches” or third-party and “gemorrhagic” in the use of “GPS utilities that speed up the search for satellites and increase accuracy.” Everything you need is in your device. The manufacturer simply enters “medium-light” “calibrations” there - naturally, he won’t calibrate each phone individually. And where is the manufacturer? In China, but you need to calibrate where you actually use it. The instructions below were collected by me from different sources in parts and checked, except for the part “ensuring maximum accuracy,” which I will check later and make an addition, but even without it, time “ Cold start" GPS, after rebooting the phone, it was possible to bring it to less than 20 seconds, instead of 1-2 minutes before calibration. At the same time, the capture of the first satellites occurs in less than 3-4 seconds, and “GPS capture” (localization by satellites, when the “GPS search” stops blinking and the body switches to working on satellites) - less than 10 seconds (sometimes up to 40 seconds, but less often - depending on the accuracy of your smart watch and satellite visibility).
To decide which one you prefer, you can read impressions of both methods here: http://vyacheslav.blogspot.com/2013/07/android-gps.html. I personally recommend the “native GPS calibration method” (described below) - it gives the same results, and in my opinion is much preferable and easier to use.
It should be noted that with the help of the program described here: http://vyacheslav.blogspot.com/2013/07/android-gps-6.html, the activation speed from the “cold” state is still a little faster. but it’s more serious, and due to its “deep penetration into the Android GPS system”, it can “throw down” the calibrations of its “native system”, which are discussed below. Plus, everything that needs to be done with its help, before each turn on, the GPS makes the startup using it really slower than in the option outlined in this note.


Added 08/30/2013. Before starting calibration, look at this note and follow the procedures described in it: http://vyacheslav.blogspot.com/2013/08/gps-android-jb-411-cink-king-gps.html. This is especially true if you have serious problems with GPS, such as “it holds the satellites very poorly” and the “lock” “falls” at the slightest weakening of the signal, plus after that, the GPS will “hold” more satellites at the same time, which will improve both stability and accuracy . Without these procedures, I could not “bring the GPS back to normal” under JB 4.1.1 Cink King. Then perform calibration according to the method. outlined below in this note.

*italic font The points necessary to achieve generally theoretically possible accuracy are highlighted. Italics may be omitted, this will slightly reduce the accuracy (actually 2 times), and will not affect the “cold start” speed.
**Before the procedure, find out the code for the engineering menu of your device - you will need it.

  1. GPS accuracy, and especially the speed of “capture after a cold start,” greatly depend on the accuracy of the time setting on your device. Usually, in the “Date and Time” settings, “synchronize time over the network” is set. I had it too. But as it turned out, the device uses the operator’s cellular signal to set the time, which in some cases can give time setting accuracy worse than + - several minutes, and in my case (Kyiv, Life operator) it gave a difference from real time of as much as 3 seconds. In general, feces, and not “exact time signals”. There is also the option to “determine the time using GPS,” but if you don’t live in a village, then this will consume a lot of battery, and will be of little use - neither in an apartment, nor on the subway, nor in a minibus, nor in the office... Well, you get the idea.
    Therefore, let us first take care of setting the most accurate possible time. To do this, I installed the free ClockSync program, from here: https://play.google.com/store/apps/details?id=ru.org.amip.ClockSync&hl=ru, you can also get it from here: http://4pda. ru/forum/index.php?showtopic=171610 . You can also use the technique that I described here: http://vyacheslav.blogspot.com/2013/07/android-gps_12.html - it does not require installing additional programs, but does require manual editing of several system configuration files.
    Next, we decide on the reference exact time server that we will use. It is important that it be as close to you as possible and that the ping time to it be minimal. To begin with, the addresses of the “pools” - for Ukraine this is ua.pool.ntp.org, for Russia ru.pool.ntp.org. If you are in another country, look here: http://www.pool.ntp.org/ru/.
    Now we launch the terminal, and in it the command “ping ua.pool.ntp.org”, and look at the response time. We do this 10 times - each time it will contact a random “pool” server, and usually a different one. Even for Ukraine, the “response” time for different servers ranges from 5 to 60ms (on land), let alone Russia with its size. Accordingly, we write down the IP address of the server whose response time is minimal. We will use it.
    Launch the installed ClockSync program, Menu > settings. The first item is "NTP server". Enter the selected IP address there. Next, check the “automatic synchronization” box, then select “Interval”. The smaller the interval, the more often the synchronization will take place, and this means “a little traffic and a lot of battery”, on the other hand, my device “goes away” by as much as 160-180 milliseconds in 3 hours... I settled on 3 hours for now. Next You don’t have to check the “exact interval” checkbox - it will save the battery a little, I personally checked the “High precision mode” - check it, especially since synchronization will sometimes take place through cellular data transmission at a very unstable speed (you don’t have to check it - the accuracy will drop, but the accuracy will drop). Battery consumption will be significantly reduced during synchronization). We also set “detect time zone”
    Exit the settings menu, click “menu”, and select “synchronize” - how much your device is “past time” can be seen on the screen. Yes, in the settings menu after a day you can see how fast/late your device’s clock is per day (my Fly IQ 450 is 9.21 seconds per day).
    PS automatic time synchronization is only possible on a “rooted” device. If you are not rooted, there is a “manual mode” in the program, but the accuracy will not be the same.
    Note - added later. There is also a second way to accurately synchronize time, without installing an additional program, I described it here: http://vyacheslav.blogspot.com/2013/07/android-gps_12.html. After comparing the results, I chose this method, but it requires some editing of the configuration files.
    It is also advisable, if you have a rooted device, to edit the /system/etc/gps.conf file. Namely, in the first line, after “NTP_SERVER=", replace the “default” one indicated there with a more suitable one for your country - for example, for Ukraine at ua.pool.ntp.org, or even with a previously defined IP address, but this will less universal and sometimes fraught with failures if a specific server does not work, so ua.pool.ntp.org is more universal, but the IP address in this field can further speed up the initial cold start. Editing can be done using "Root Explorer".
    Over time we figured it out. Next.
  2. Let's go to the phone settings. Location. We mark the items: “By network coordinates”, “GPS satellites”, “Auxiliary data”, “AGPS”, the rest is “to taste”. Now go to the "EPO Settings" item. Turn off "EPO" during calibration. Everything is here.
  3. Launching Google Earth , In the settings, we switch it to show coordinates in the format of degrees and fractions. We are looking for a place nearby where we will carry out calibration. It should be a fairly open place, such as a square. We select the point where we will stand during calibration (select signs to stand exactly at it later), point the cursor at it, and write down the shown coordinates to the last digit. The preparation is over - let's go "to the field" :) with the phone.
  4. If you used p3- we stand EXACTLY at the point we previously selected. Launch "root explorer", go to the /data/misc folder, delete the mtkgps.dat file. We download the latest AGPS data - for example, through the GPS Status program (menu>tools>AGPS Data>Download). We check the time, for example with the ClockSync program (we check it several times, look at the typical deviation, and then click synchronize - how to use the program and where to get it - see earlier in the article on time calibration). Go to the engineering menu, LocationBasedServices, select “GPS” in the menu, and press the “GPS” button (the inscription on it will change from OFF to ON). Go to "View". We wait until the “fix” appears (the GPS indicator stops blinking), and then for at least another 2 minutes. Then click RefPosition, and in the windows that appear, enter the coordinates previously written out from Google Earth for the point where you are calibrating (there will be zeros there). Click "OK". Go to the View screen again, and wait after the "fix" for at least 2x minutes, preferably 5 minutes. We go back to the engineering menu. If step 3 was not performed, simply choose any fairly open place. Taking out- don’t even try to do the calibration on the balcony or “from the window” - you’ll only make it worse.
  5. ****Before calibration, you can also check the correct choice of SIM card for AGPS - if your cellular operator is “glitchy”, and there are two cards and two operators, then you can choose a less buggy one, this, if “buggy” was selected, can significantly speed up the operation of GPS, ATO and “revive” “GPS that is completely not working”, the procedure is described at the very end of the note.
  6. Go to the "Engineering Menu"(for my FLY IQ 450 and many Chinese clones, this is the code *#*#3646633#*#*, which we dial where you usually dial the phone number when calling, you may have a different one). Find "YGPS location" and launch it. Hold your phone vertically.
  7. Go to the Information tab. Click the "Full" button.
  8. Go to the "Satellites" tab, wait for at least 5 satellites to appear (preferably more - I had 11 of them when setting up), and after they “appear and turn green”, wait at least another 2 minutes, holding the device motionless (it can be longer - it won’t be worse - only better ). This is the initial calibration. It took me about 3 minutes, but for some devices, according to reviews, it can take up to half an hour.
  9. Go to Information", click "Cold". Continue as in point 8. Repeat point 9 3 times. More is possible.
  10. Back to Information. Click "Warm". further as in paragraph 8. There is no need to repeat it anymore.
  11. Back to Information". Click "Hot". Continue as in step 8.
  12. If you followed step 3, go to the engineering menu, select the "LocationBasedService" item, go to the "View" tab (remember to activate GPS as described in step 4), and wait until the maximum satellites are determined. Minimum 7, better more (the more, the more accurate the calibration), and after the maximum is determined, wait another 2 minutes. Then go to the tab GPS, and click "RefPosition". You will have two numbers, from the one you previously recorded using Google Earth, they will most likely differ in thousandths. Correct both to those that you wrote down earlier in step 3. Click "OK". Now go to the GPS tab and wait for 5 minutes holding the phone motionless. Here in this place - the longer the better. The GPS program, having received real coordinates, compares them with those that it “obtains” and makes corrections. clarifying them. Below in the window you will see a “process” counter and data that changes from time to time.
  13. Exit the engineering menu and reboot the phone.
  14. All. We rejoice in the fast and accurate GPS.
After completely following the instructions, the real accuracy of determining the position (calculated from google earth and not the one shown by the GPS itself) was ~2.3-2.5 meters (GPS showed an accuracy of 5-6 meters in the status), with 9 satellites “visible”, and 8 meters (GPS showed an accuracy of 10.5 meters in the status) with 7 satellites visible - the satellites move and do not happen from time to time in the sense of day to day.

PS If you are also going to use the program described here: http://vyacheslav.blogspot.com/2013/07/android-gps-6.html, then keep in mind that you need to calibrate it after installing it. And if it is uninstalled, calibrate it again - it resets the calibration data during uninstallation, and the GPS again starts “searching for satellites for several minutes.” Loading its “acceleration” data does not SEEM to affect the calibration, but it also makes no sense - the difference in speed is “within the limits of statistical error.” But it seems that the real accuracy is a little better, with freshly downloaded data (by 20 percent, but also within the statistical error in essence). Also keep in mind that the downloaded data from the above program quickly becomes outdated, and after a day or two, on the contrary, it will slow down the GPS and reduce accuracy (compared to a simply normally calibrated native one using the method described above in this article). Plus, I took it down nafik :) Bo, firstly, is not needed, and secondly, with it you can get “GPS which does not determine anything” if you forgot to download new data. Even if you clicked the “reset downloaded data” button and do not launch the program itself. At least this happened to me once - I didn’t check the rake again.

PPS There are rumors on the net that “turning on EPO data” (specific GPS data for MTK chips), which gives some acceleration of the “cold start”, reduces the number of “captured satellites”. This is unlikely. The number of captured satellites is determined by their “number overhead at the moment” and their height above the horizon (in the city, those above the horizon are usually not visible). But still, when calibrating it is better to turn it off. And use only if you are traveling to a place where the Internet may not be available. Then it will give you a real launch acceleration (it downloads data a month in advance). In a normal situation, it is better to use only AGPS - its data is fresher, and therefore more accurate, so the “start” speed with it is typically higher.

PPPS Below is “reference information” for those who received a device with a completely non-working GPS. It’s worth checking it - the reason may be that you have something different from the following listed in your settings:

In the engineering menu, in the LocationbasedService item, in the AGP tab S:

Enable A-GPS, MSB, User Profile, SLP Template - GOOGLE, supl.google.com, 7275, TLS Enable, RRLP, IMSI, K-Value must be enabled.
Horizontal Accuracy - 22, Vertical Accuracy - 0, Location Age - 0, Delay - 0. Location Estimate is selected.
*********Selecting a SIM card for AGPS
Go to the NET tab - select - click look at the map (Map tab), the address where you are located, or close to it, should appear there. We do the same with . We compare what is more accurate to your real position, and on the AGPS tab select your preferred SIM card.
On the AGPS tab, click
Yes, if any of the things listed in this PS differed from the settings of your device, or if you changed the SIM card to which you have AGPS attached, you need to perform a new calibration.

PS About the influence of clock accuracy on the GPS cold start time.

From the “inconvenient place” - a balcony, everything on top is covered with concrete, a courtyard-well - houses on 4 sides, the sky is a “piece from above”, 4 satellites are barely visible (then you can barely see 3, and the 4th one appears and disappears). The phone was calibrated according to the method outlined above (before calibration, there was no capture at all under these conditions). The clock “lags” by ~160ms (2 hours have passed since the clock was calibrated by the ClockSync program). Cold start time ~250-300 sec. After forced time calibration by the ClockSync program, the “cold start” time is ~100 seconds. However, these are the conditions. in which GPS usually does not work at all, but clearly illustrates the effect of clock accuracy on the “cold start” time.

PPS To force the loading of AGPS data, for example, if you are far from the place where they were downloaded - for example, you went 200 kilometers for fishing/vacation, etc., and the AGPS data downloaded at home has become irrelevant, which can negatively affect the “cold start” time.

You can use the GPS Status program from here: https://play.google.com/store/apps/details?id=com.eclipsim.gpsstatus2&hl=ru. Launch this program. At the bottom left under the “coordinate circle” is the age of the AGPS data in hours. Click Menu > Tools > A-GPS Data. Then "download".