A la suite de mon article from 8 November 2009 the accuracy of couple iNavX / iPhone, I tried to explore the subject, and I deliver to you the fruit of my investigations. Be careful it might be long !
The built-in GPS chipset in the iPhone is an A-GPS specially designed for mobile phones. Cela nécessite quelques explications et un peu de technique.
Le système A-GPS :
Un exemple de système A-GPS intégré est celui de l’iPhone 3G, qui utilise un chipset Infineon « Hammerhead II » for navigation.
Les chipset A-GPS destinés aux « smartphones » :
On September PMB2525 « Hammerhead II », développé par Infineon et Global Locate, a été lancé en Janvier 2007 and fit out the iPhone 3G. Il occupe une place < 50mm² et possède une sensibilité de 160 Dbm
In June 2007 Broadcom bought Global Locate, et développe le chipset BCM4750, d’une surface de 35mm² et une sensibilité de 162 Dbm, présenté en juillet 2008, fit out recently TomTom.
On his side, Infineon and Epson associated deliver a new chipset PMB2540 « XPOSYS » en février 2009, six mois avant le lancement de l’iPhone 3GS. Il a surpassé son prédécesseur avec une place occupée < 26mm² et une sensibilité de 165dBm.
It remains unclear if this last one has replaced the Hammerhead II on iPhone 3G, Apple keeps silence about it, mais c’est très probable quand on compare les tailles respectives des modules GPS sur les cartes-mères des deux appareils et la nette amélioration de la position GPS par rapport au modèle précédent. Ce qui est en revanche certain, c’est la présence du module combo WiFi/Bluetooth BCM4325 de Broadcom sur le 3GS.
Il faut savoir que dans un échange de mail avec un blogueur en juillet 2008, Bob Borchers, directeur senior du marketing mondial pour les produits iPhone, indicated that the chipset of the 3G iPhone was low and that the antenna was small. Il avait d’ailleurs précisé que le cercle de métal apparent autour de l’objectif de l’appareil photo était une partie de l’antenne GPS. That time, Apple does not consider the iPhone as GPS to provide a step by step navigation solution (turn to turn).
Le traitement logiciel de l’iPhone :
The iPhone uses a mix of two mechanisms of location : l’un basé sur la géolocalisation fournie par les antennes cellulaires, and the other based on the built-in A-GPS chipset.
Ainsi quand les services de localisation sont activés la première fois, l’iPhone donne la préférence à la localisation fournie par la plus proche antenne cellulaire mais avec une précision pouvant atteindre un kilomètre ou plus car on peut se trouver n’importe où dans le rayon de cette antenne. Cette localisation est représentée par un bouton bleu (blue-dot) cerclé d’une zone bleutée d’étendue variable selon la précision calculée.
Once the iPhone fixes the position given by GPS, celui-ci prend le pas sur le réseau cellulaire, l’icône de position se transforme alors en un bouton bleu cerclé d’un anneau bleu animé d’un mouvement d’expansion cadencée.
Parfois, même dans un espace dégagé de tout obstacle, l’iPhone refuse de basculer en mode GPS et on peut attendre un bon moment avant d’obtenir la précision souhaitée. La chose à faire dans ce cas semble de redémarrer les services de localisation dans les réglages de l’iPhone puis de relancer l’application. However, Apple seems to use some magic code not documented in Maps application (Google Maps) qui permet de toujours y obtenir rapidement une position précise (GPS). Une méthode consiste à rechercher d’abord la position dans Plans (icône en bas à gauche) et ensuite lancer l’application qu’on souhaite utiliser (iNavX, in example). Cela fonctionne de façon surprenante !
Provisional conclusion :
Il y a donc fort à parier qu’avec des chipsets présentant de telles performances théoriques sur les documentations des fabricants, les problèmes d’imprécisions et/ou de décrochages temporaires que j’ai constatés soient liés, non pas à l’intégration matérielle, mais au traitement logiciel conçu par Apple. Principalement le traitement de la sélection du mode de positionnement cellulaire/GPS.
Avec l’iPhone 3GS, la précision de la position issue du GPS est excellente, less than 5 meters high, found out with Maps on a long motorway journey. Mais dès qu’on se trouve en ville, ou les signaux cellulaires sont prépondérants, la précision se dégrade parfois en basculant sur le mode de géolocalisation cellulaire. En navigation maritime côtière, le même phénomène doit probablement se produire lorsque l’iPhone passe à portée d’un réseau cellulaire puissant.
Unfortunately, aucun élément irréfutable ne me permet à ce jour d’étayer cette déduction. Peut-être constaterons-nous une amélioration lors d’une future mise à jour du firmware de l’iPhone, qui sait ?
[Update September 24 August 2010]
J’ai pu constater en mer que la réception du GPS était nettement améliorée depuis la mise à jour iOS 4. No more unexpected fix loss, even near the coast where the cellular locaion can be activated. Mon hypothèse était donc fondée, Apple a apporté une amélioration certaine du traitement logiciel des services de localisation.
[Update September 20 August 2011]
Voir le récent billet : iPhone built-in GPS : a formidable accuracy !
–––