Les applications Android de fix pour améliorer la réception GPS

 

Suite au décès de mon Samsung Galaxy S Wifi, j'ai dû me rabattre sur son collègue Samsung Galaxy S2 pour continuer à enregistrer mes parcours de randonnée roller. Las, les performances GPS de l'appareil sont calamiteuses ! Il met jusqu'à 30 min pour enfin accrocher une position, alors que l'autre y parvenait en parfois moins d'une minute (je constate qu'en revanche le GPS est bien moins gourmand en batterie que sur mon Galaxy S wifi)…

Ce souci est connu, les utilisateurs s'en plaignent à longueur de forums. Des petits malins bricolent une extension d'antenne avec de l'aluminium afin d'améliorer la réception. D'autres proposent des solutions nécessitant un certain niveau technique (flash, avec ROM non d'origine). Enfin, la majorité vantent les mérites d'applications censées améliorer la vitesse de « fix ».

Si vous avez la flemme de lire l'article jusqu'au bout, sachez que la solution que j'ai trouvée, c'est de

  • poser mon Samsung à l'extérieur sur la terrasse
  • activer le GPS
  • lancer GPS Locker (la seule application qui ait montré un peu d'efficacité) et l'application que je compte utiliser avec le GPS
  • patienter

Ça fixe en moins de 2 minutes. Mais surtout, le faire à l'arrêt complet, pas pendant qu'on se déplace.

 

Un peu de théorie

Une trentaine de satellites GPS envoie périodiquement des données sur Terre sur une fréquence porteuse de 1,5 GHz. Ces données contiennent, entre autre, la date d'émission de la trame. Cette date est générée de manière très précise par une horloge atomique intégrée au satellite. Le récepteur (ici le smartphone), ne possède pas la même précision d'horloge : l'heure entre l'émetteur et le récepteur n'est pas synchronisée.

Pour trouver sa position sur terre, le récepteur interprète la différence de temps entre l'émission de la trame et sa réception. Avec cette information et la vitesse de transmission des ondes il peut calculer simplement la distance qui le sépare du satellite. Cependant pour que cette information lui soit utile il faut qu'il connaisse auparavant la position du satellite, alors que celle-ci évolue sans cesse.

Lorsque quatre satellites sont en vue et que le récepteur connait la position des satellites, celui-ci il peut calculer un système d'équation à quatre inconnues : latitude, longitude, altitude et heure précise. Cela lui donne sa position précise sur Terre.

 

Récupérer les positions via A-GPS

On va utiliser une connexion (wifi ou data) afin de télécharger des données qui permettront de récupérer la position de tous les satellites à un instant donné (on les appelle des éphémérides) à partir d'un serveur NTP (Network Time Protocol). C'est le A-GPS (Assisted GPS). Le système GPS lui-même est capable de transmettre ces éphémérides, mais à une vitesse très lente (et ça consomme plus de batterie que via A-GPS).

La validité dans le temps des données téléchargées est courte, quelques heures au maximum. Il faut donc le faire juste avant le départ en rando…

On peut également les récupérer par FTP et les copier dans /data/misc (mais ce répertoire est introuvable sur le Galaxy S2, donc je n'ai pas pu tester)

 

 

Les applications censées améliorer la sensibilité du GPS en exploitant le A-GPS sont en général peu intuitives et assez moches, totalement dépourvues du moindre tuto. L'interface est, soit spartiate à tel point qu'on ne sait même pas quoi faire avec, soit au contraire elles regorgent tellement d'infos qu'on est noyé dans tous ces chiffres et sigles, et ces points qui bougent sur l'écran.

Par ailleurs, il faut être en extérieur pour capter les satellites ! Or, ma connexion wifi n'est disponible qu'à l'intérieur de mon appartement… Pas simple pour les tests !

Mais surtout, quelle que soit l'application testée, le résultat est toujours aussi décevant, je n'ai constaté aucune amélioration dans le délai de détection de la position GPS.

Nous allons néanmoins passer en revue ces différentes applications…

Mon protocole de test : j'active le GPS et le wifi. Je télécharge les données A-GPS si l'application correspondante le permet. Je coupe le wifi et je sors. Tout en laissant tourner l'application, je lance Sports Trackers, l'application qui me sert à mesurer mon parcours et je regarde au bout de combien de temps celle-ci trouve la position.

 

Applications pour définir un serveur NTP

FasterFix

Télécharger sur Google Play

Le téléphone doit être rooté. BusyBox doit être installé (c'est à dire, après l'avoir téléchargé sur Play Store, entrer dans l'application BusyBox, patienter, cliquer sur install, patienter, croiser les doigts si on n'a pas beaucoup d'espace…), sinon FasterFix se contentera d'afficher un écran noir.

Busybox Android non installe  Busybox Android installation

FasterFix permet de définir un serveur  NTP qui permettra la synchronisation des horloges du satellite et du téléphone. La précision est meilleure lorsque le serveur de temps est situé près du client, donc autant prendre un serveur français.

Faster fix Android nouveau serveur ntp

Ensuite, on est censé lancer une 2e application, par exemple GPS Status ou GPS Test pour tester si la manip a fonctionné.

FasterGPS

Télécharger sur Google Play

FasterGPS se veut l'alternative open source de FasterFix pour synchroniser les horloges du satellite et du téléphone. L'application n'est plus en développement actif. Comme dans le cas de FasterFix, le téléphone doit être rooté.

Aux premiers lancements, je ne suis jamais parvenue à afficher autre chose qu'un écran noir… Après un reboot du téléphone, l'application a affiché une demande d'accès root et j'ai enfin pu l'utiliser.

Je constate au passage que le téléphone a bien conservé le nom du serveur français fr.pool.ntp.org que j'avais précédemment défini sous FasterFix.

Application FasterGPS

 

Applications pour améliorer la détection de la position

La seule qui ait fonctionné : GPS Locker

Télécharger sur Google Play

Cette application travaille en tâche de fond, et continue à forcer le GPS à recherche sa position même lorsque l'écran se met en veille. Je n'ai pas bien compris à quoi servait le bouton « Lock GPS » en bas…

Lorsque l'application est lancée, une icône assez similaire à l'icône « cible » GPS classique, mais avec un petit cadenas, apparaît dans la zone de notifications en haut de l'écran.

gps-locker-ecran-accueil gps-locker-4-satellite-trouves

Comme la plupart des autres applications de ce chapitre, il permet de forcer la mise à jour des données A-GPS (Menu > Force update a-GPS data). Le téléchargement des données A-GPS est très rapide (enfin je suppose… le toast annonçant le téléchargement des données apparaît très rapidement en tout cas).

Je n'ai pas compris à quoi servaient les deux premières options de l'écran Settings, et comme toujours il n'existe aucun tuto ou site web de support pour l'application… Cela restera un mystère.

gps-locker-menu gps-locker-settings

En revanche, l'application améliore considérablement la vitesse de récupération de la position. Je constate en revanche que le délai de récupération varie selon notre vitesse de déplacement (moins on se déplace vite, plus les positions semblent rapidement trouvées) :

  • à l'arrêt (sur le balcon) : 147s
  • en marchant : 3-4 min
  • en me déplaçant à roller : 10 min
  • en me déplaçant en voiture : 15 min

Je n'ai pas l'impression que le fait de rafraîchir les éphémérides en forçant la mise à jour des données A-GPS améliore la rapidité de fix.

L'application a la délicatesse de mesurer le temps au bout duquel la position est trouvée, et on peut même lui demander de jouer un son. Je constate néanmoins un petit décalage entre le moment où il annonce son « first fix », et le moment où Sports Tracker trouve réellement sa position, un décalage qui peut même parfois aller jusqu'à plusieurs minutes en voiture.

Lorsqu'une position est trouvée, les barres de certains satellites se colorent.

gps-locker-position-trouvee2

Lors d'un 2e test un peu plus tard, je constate que le temps au bout duquel la position est trouvée s'est encore raccourci : un peu plus d'une minute. Mon hypothèse : les éphémérides récupérées au cours du 1er fix sont plus précises que celles récupérées via wifi, et permettent donc une récupération de la position plus efficace.

GpsFix

Télécharger sur Google Play

D'après son descriptif, elle force le récepteur GPS/AGPS à rester actif tant que la position n'est pas acquise.

L'interface est brute de pomme : une map, un bouton Start fixing, un bouton Stop fixing. Et des pictos de GPS qui apparaissent progressivement. C'est long, pas du tout efficace (la position GPS n'est pas trouvée plus rapidement que d'habitude), et on n'y comprend rien…

Application Android GPSFix   Plusieurs satellites trouves sur GPSFix

 

GPS Status & Toolbox

Télécharger sur Google Play

L'interface affiche les données du capteur GPS : position et force du signal satellite, précision, vitesse, accélération, altitude, rotation, tangage, roulis et charge batterie. On est un peu noyé et on ne comprend pas bien ce que l'on est censé faire avec tout ça. L'absence de données de référence n'aide pas vraiment à diagnostiquer les problèmes.

Ecran principal de GPS Status  gps-status-android-charger-donnees-gps

Dès qu'on active le GPS, une icône représentant une parabole satellite de profil avec une petite croix apparaît dans la zone de notifications en haut de l'écran du smartphone.

Afin de charger à nouveau les données A-GPS : Menu > Outils> Gérer l'état A-GPS > Télécharger. La procédure est très rapide, mais on ne sait pas sur quel serveur NTP il va chercher. Et au final, le GPS met toujours autant de temps à trouver sa position.

 

GPSTest

Télécharger sur Google Play

L'application affiche toutes les informations récupérées à partir du  GPS du smartphone, la position des satellites dans le ciel, notre position sur une carte (sauf qu'il ne la trouve jamais, donc…). Bref, une interface bien touffue, des chiffres dans tous les coins, on ne comprend pas bien ce qui se passe. Et, en attendant, le GPS ne se cale toujours pas.

Pour info : SNR veut dire signal to noise ratio.

GPStest Android écran initial  GPStest Android récuperation de quelques satellites

GPStest Android écran vue radiale  GPStest Android écran 12 satellites trouvés

Même avec 12 satellites trouvés, la position n'est toujours pas acquise ! Je croyais que 4 satellites suffisaient ?

Afin de charger à nouveau les données A-GPS : Bouton menu (ou icône ellipsis en haut à droite) > Clear A-GPS, puis Update A-GPS. Il serait intéressant de savoir sur quel serveur il se base : le français défini dans FasterFix ? Un autre ? Contrairement à GPS Status, la procédure est vraiment très longue.

 

GPS Data

Télécharger sur Google Play

C'est l'application qui est utilisée dans tous les tests de smartphones sur FrAndroid. Enfin une belle interface, qui se prête bien aux captures d'écran… Hélas, il n'est pas plus efficace que les autres pour améliorer la détection de la position.

L'application affiche les données récupérées à partir du GPS du smartphone, la position des satellites dans le ciel, la force du signal. Là encore, beaucoup de données, mais le néophyte complet se demande vraiment ce qui se passe…

GPS Data Android écran d'accueil GPS Data Android quelques satellites trouves

Sous l'onglet signal, on a la liste des satellites. Le 1er chiffre est le PRN number du satellite (pseudo-random noise) que celui-ci transmet pour se différencier des autres.

GPS Data Android vue alternative

 

Applications pour passer le GPS en statique

GPS Control SiRF StarIV

Télécharger sur Google Play

Cette application permet d'activer la fonctionnalité « navigation statique » sur certains Samsung Galaxy. D'après le descriptif de l'application, lorsque cette fonctionnalité est activée, le GPS ne filtre plus les données GPS et met à jour la position à 1Hz même quand l'appareil ne se déplace pas. Utile pour toutes les applications nécessitant une mise à jour permanente de la position. Le téléphone doit être rooté.

Je lance l'application, celle-ci demande les droits root, je les lui accorde. Un toast « Cannot write to external storage » passe de manière fugace. Les deux boutons « Enable static navigation » et « Disable static navigation » sont tous les deux inactifs.

GPS control sirf star IV

Dans les commentaires sur l'application sur le Play Store, tout le monde se plaint de l'absence de compatibilité avec Jelly Bean. Pas de chance pour moi, mon Galaxy S2 est sous 4.1.2, le test s'arrête donc là…

 

Conclusion

Aucune de ces applications n'a démontré la moindre efficacité pour améliorer la réception GPS sur le Samsung Galaxy S2. Dommage !

 

Sources

Améliorer le fix GPS des smartphones Android Wiko

Améliorer la réception GPS de votre smartphone!

Améliorer la précision de votre GPS

Karine SANCHE

Partager cet article