N900 GPS Proxy

As of 2019, supl.nokia.com is not working, thus the N900 cannot get GPS assistance information. So getting a GPS fix can take a very long time as there is no network assistance.

Some are able to use Google's supl server directly, while for others it does not work. Even if it works for you out of the box, you might care about privacy concerns.

The use of an A-GPS proxy, such as https://www.tajuma.com/supl/index.html can get around the problem. It is already packaged, and available from Extras-Devel (you can temporarily enable -devel, then disable it afterwards)

[edit] Configuration

After installation of supl on the N900, you can perform the following steps:

  • Choose a subdomain for the certificates you will create. The subdomain needs to conform to the general rules for domain names, and have a valid TLD. It does not necessarily need to exist however, but it is a good idea to use a domain that you have control of or which does not exist somewhere else or belongs to somebody else. For our example, we will use supl.maemo-fremantle.com which is not used at the time of writing.
  • Create the certificates on the device. Since the proxy needs to find the certificates in the current working directory, it is also a good idea to create a specific directory for this purpose:
~$ mkdir supl && cd supl/
~/supl$ supl-cert supl.maemo-fremantle.com
  • Install the CA certificate via cmcli:
~/supl$ sudo cmcli -c common-ca -a ca-cert.pem
  • Edit the "Location server" field in Settings > Connectivity > Location > Network Positioning to point to the subdomain you chose earlier (supl.maemo-fremantle.com)
  • If you used a non-existent domain name, edit /etc/hosts to resolve its IP, e.g. add the following:  supl.maemo-fremantle.com
  • Reboot the device (otherwise the proxy will fail the certificates check)
  • Verify the "Location server" field in Settings > Connectivity > Location > Network Positioning after reboot as it seems to come back to nokia sometimes.

[edit] Use

~$ cd supl/
~/supl$ supl-proxy supl.google.com
  • Run your GPS consumer application

If all went well, you should see a lot of output from the proxy, after which it will exit. Hopefully you will get a fix in a few seconds.

[edit] Notes

  • As is, the supl proxy will exit after one successful transaction
  • If you did not get a fix, and there were no errors from the proxy, you will likely find that the device will not make another supl request even if the proxy is running. You can try the following:
~$ sudo stop location-proxy
~$ sudo start location-proxy
  • Also, it seems that a new supl request can be issued after a change in CellID, so moving to a different location may help.
  • You can use this tool to clear the GPS cache which may induce wrong conclusions about last changes/test.
  • You can use location-test-gui to test your gps/a-gps.
  • It may not always work with a wifi connection. In this case, try a gprs internet connection.

For further information, search the forum for threads like this one

Please update this wiki with your observations.