[Fairphone 1] simsalonaut:
How improve GPS signal reception

Note: This how-to is quite large, so I tried my best to keep it short and use

wherever possible. And for you devs who already have optimized your GPS - well, least there are some colorful pics for you at the end :D

What we are going to do here is reduce the time to first fix (TTFF) - this the time your device needs to lock on to the first satellite. After that, every subsequent GPS signal should be found much quicker, and it should be more accurate. However, some of the improvements come at the cost of mobile data usage (more info at end of post), but it's usually in the kilobyte area, so no biggie.

There are three different measures to increase your GPS functionality:

Activate A-GPS & EPO

You probably already know this, but just in case: In Settings → Location access, activate GPS satellites (on/off switch), then click on GPS satellites.

Here, activate EPO assistance & A-GPS.

Enter A-GPS, click Network Request.

Enter EPO settings, click Auto download, then Download at the bottom.

Download & installEPO files

As you might have noticed, the download function doesn't really work; this is because Mediatek's FTP server seems to be down almost constantly. This has annoyed so many people that there's a thread dedicated to getting the EPO files. So you got two choices:

Download the latest version from my Dropbox (took me about 15 tries), or

Take the hard route and try the FTP server yourself:

Name: epo.mediatek.com

Port: 21

Login: epo_alps

Password: epo_alps

The files you need: EPO.DAT and EPO.MD5

Put the files EPO.DAT and EPO.MD5 into /data/misc. If you don't have permission and don't know to to change this, click here:

Open Terminal, and type:

su
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
chmod 777 /system/app

Then it should be possible to insert the files. Properties:

Now check whether the system has accepted the files by entering EngineerMode: Dial *#*#3646633#*#*. Swipe to Location → Location Based Service → EPO. Under EPO file info, you should see the correct date (2014-01-19). The files are valid for a month. Below, you can set the update period; I've set mine to 2x a day, but I still have to download the files manually.

Set NTP server

In order to sync quickly to the satellites, you should always connect to your nearest NTP server. You can do this yourself by editing gps.conf in system/etc, but I recommend:

Download FasterGPS, grant super user access, and set your region and country. Correct files will be written.

Done! Now turn on your GPS, step outside, start EngineerMode (Dial*#*#3646633#*#*) again, and go to Location → YGPS. Then watch the magic happen (hopefully :angel:) Under information, you can find stats like time to first fix, accuracy etc - Remember, after the first TTFF, reconnections should go a lot faster.

Hope this helped! If there are any more tips to enhance GPS let me know - I am still a beginner when it comes to Android, but here at XDA the learning curve is damn steep :D And it looks like even as a junior member, I can already post links... thanks to whoever enabled that!

Info on A-GPS and EPO:

What is A-GPS? Assisted GPS, where your data connection is used to download information about GPS, satellites etc. Shortens the TTFF.

What is EPO? Extended Prediction Orbit, MTK’s proprietary off-line server based technology, which downloads data about the satellite movement for the next weeks. That way, your GPS knows where to look. More info here.

As a bonus, here are some field tests concerning not only GPS precision, but also navigation and RAM use when constantly connected:

Before I had correctly set up EPO and NTP, GPS signal was already quite good, but it took a long time to lock, and would often get interrupted. Here is an example of a train ride at about 140km/h - it doesn't show on the map, but if you download and open the KML file, you can see the constant interrupts as the GPS loses signal.

After I fixed all the settings, I recorded a bus ride on the German freeway, and I was impressed with the precision! We went into Mainz (semi-big city) and even between the tall buildings the position never went off too far to interrupt navigation. [MENTION=811151]paphko[/MENTION], if you haven't already, then give these steps up there a chance and try again - maybe it'll work better! My navigation window mostly looked like this:

The battery held up very well, too: I kept the screen on for the entire 4 hrs, and with navigation and tracking had only used up about 40%. Not bad at all.

By the way, since we were discussing the limitations of Fairphone only having 1GB RAM a couple weeks ago, this is what it looks like under the hood when using both MyTracks and Maps Navigation (and Facebooking, and Dropboxing, ... ;)):