+ Ecran d'accueil
+ Accueil
+ Téléchargements
     + Graphisme
     + Présentation
     + Internet / Comm.
     + Réseau
     + Paquets Zaurus
     + Applis Android
+ Logiciels
     + qpeGPS NV
     + Simple Comm
     + MenusLAB.com
     + Supra ASCII Art
+ Articles
     + Zaurus GPS
+ Hébergement
     + Subversion
+ Livres électroniques
+ Boutique
+ Fonds d'écran
+ NewsLetter
+ Forum
+ Recherche...
+ Contact et support
     + Formulaire


Projet FrB (alpha)
Rév. : 318 / 480 (estim.)
Auteur : ng
Date : 2009-11-14
66.3%


Accueil > Articles > Zaurus > Navigation GPS avec un Zaurus SL 5500

Navigation GPS avec un Zaurus SL 5500

Partie matérielle

    Le Sharp Zaurus SL-5500 n'est plus a présenter et on peut s'en procurer un modèle d'occasion pour une centaine d'euros. Il s'agit d'un PDA tournant sous Linux et permettant donc de faire moult choses, nous allons nous intéresser ici à la navigation GPS.

    La première chose à faire est donc de se doter d'un récepteur GPS à greffer sur le slot Compact Flash du Zaurus (on peut aussi en trouver à brancher sur le port série du PDA ou encore fonctionnant en Bluetooth).

    Voici une liste non exhaustive de périphériques compatibles (provenant de http://qpegps.sourceforge.net/gps_units.html) :

Unité GPS Type
Ambibom CF GPS CF GPS
Billionton CF GPS-B CF GPS
Delorme Earthmate NMEA via serial interface
Deluo CF GPS CF GPS, NMEA
FAC CF-30LP CF GPS
Fortuna Clip-on Bluetooth GPS Bluetooth GPS
Fortuna Pocket Track CF GPS
Fortuna Pocket XTrack CF GPS
Garmin 45XL NMEA via serial interface
Garmin eMap NMEA via serial interface
Garmin eTrex NMEA via serial interface
Garmin GPS 12 NMEA via serial interface
Globalsat BC-307 CF GPS
GlobalSat CF GPS CF GPS
Haicom HI-302 CF CF GPS
Haicom HI-303 MMF CF GPS
Holux GM-270 CF GPS
IO-Data CFGPS2 CF GPS
iTrek CF GPS CF GPS
Navman
Pretec CF GPS CF GPS, NMEA
Rikaline GPS-6021-X6 CF GPS
Serialo GPS-U2-Z9 NMEA via serial interface
SDG Locatus GPS CF GPS
SocketCom Bluetooth GPS Bluetooth GPS
Taxan iTax-GPSCF CF GPS
Transplant CF GPS CF GPS
Teletype World Navigator CF CF GPS


    Pour ma part je me suis procuré, pour une trentaine d'euros, un Fortuna Pocket Xtrack qui fonctionne parfaitement bien (surtout en mode XT).


Partie logiciel

    Au niveau logiciel je vous conseille qpeGPS NV téléchargeable ici. Il s'agit d'un logiciel libre fonctionnant avec la Sharp ROM v3, la Cacko ROM, OpenZaurus (mais dans ce cas il faut récupérer le paquet depuis le feed d'OpenZaurus), ... tant que Qtopia / Opie est installé.

    qpeGPS fonctionne avec des cartes raster (c'est à dire sous forme d'images plates) et non avec des cartes vectorielles, ce qui le rend incapable de faire le moindre calcul d'itinéraire. En outre il faudra, avant toute chose, récupérer ces cartes plates, qpeGPS sait le faire si le Zaurus est connecté à Internet (vous pouvez le connecter en établissant une liason Ethernet via la cable USB (usbnet) puis en installant un proxy (squid par exemple) sur la machine hôte ou encore en jouant avec iptables et route pour rediriger les paquets mais ce n'est pas l'objet de cet article).

Calcul d'itinéraire

    Comme je viens de l'écrire dans le paragraphe précédent, qpeGPS est, dans sa version actuelle, incapable d'utiliser des cartes vectorielles et donc de calculer des itinéraires. Mais rien ne nous empêche de faire calculer l'itinéraire par quelqu'un d'autre...

    Nous allons donc utiliser Google Maps que vous devez très certainement connaître. (On n'utilisera pas Mappy ou Viamichelin car ceux ci ne permettent pas de récupérer facilement la trajectoire sous forme d'un tracklog ou de route avec les coordonnées de chaque point).

    Nous allons donc créer un fichier QRT (utilisable directement avec qpeGPS NV) à partir d'un itinéraire Google Maps. Pour cela on utilisera GMap2qpeGPSNV (basé sur GMapToGPX). Voici la procédure à suivre pour l'installer sur votre navigateur :
  1. Glisser le lien suivant dans votre barre personnelle ou faites bouton droit > Ajouter à mes favoris : GMap2qpeGPSNV
  2. Rendez-vous sur Google Maps, et créez-y votre itinéraire.
  3. Cliquez maintenant sur le lien GMap2qpeGPSNV que vous venez de mettre en favoris (si vous utilisez IE il faudra auparavant cliquez sur 'Obtenir l'URL de cette page' en haut à gauche).
  4. Ensuite cliquez sur l'onglet 'qpeGPS Route', copier-collez le contenu dans votre éditeur de texte favoris afin de l'enregistrer dans un fichier QRT (exemple : mon_itineraire.qrt).

    Note : si vous utilisez qpeGPS et non qpeGPS NV il vous faudra utiliser l'onglet 'qpeGPS Track' mais vous n'aurez pas les directives de route.
    Il vous reste juste à placer ce fichier dans le dossier track de qpeGPS. Pour l'utiliser allez ensuite dans l'onglet Route de qpeGPS, sélectionnez le fichier mon_itineraire.qrt et cliquez sur OK. L'itinéraire apparaît alors sur la carte dans l'onglet Map, il ne sous reste plus qu'à suivre les indications :) .

Choix de l'itinéraire
Affichage de l'itinéraire sur une carte au 200000ième (récepteur GPS déconnecté)
Affichage de l'itinéraire sur une carte au 4000ième (récepteur GPS déconnecté)
Affichage des directives de conduite


Guidage vocal

    Actuellement le guidage vocal est disponible uniquement en anglais avec flite.

Conclusion

    Vous avez là une solution bon marché de navigation GPS avec comme inconvénient majeur la préparation des itinéraires à l'avance. L'équipe de qpeGPS travaille dors et déjà sur l'utilisation de carte vectorielle mais il faudra attendre quelques temps avant que cela fonctionne et surtout, il faudra acheter les cartes.

    En libre vous pouvez aussi essayer zGPS qui fonctionnera directement sur le Zaurus et gère les cartes vectorielles ou GPSDrive qui requière un serveur X (X/Qt fera très bien l'affaire si vous êtes sous Qtopia / Opie) et GTK+. Pour le guidage vocal il faudra installer festival. Vous pouvez aussi tester qpeGPS classique disponible ici.

Annexe : map_fusion.sh

    Si vous organisez vos cartes de manière arborescente comme ceci :
	maps
	|_monde
	  |_ france
	  |  |_epinal_4000
	  |  |_nancy_4000
	  |  |_saint_joire_4000
	  |  |_france_200000
	  |_allemagne
	  | |_ berlin_50000
	  | |_ allemagne_200000
          |_monde_1000000


    Alors vous pouvez utiliser le script map_fusion.sh téléchargeable ici pour fusionner tout un sous ensemble de cartes. Typiquement, dans un cas comme ci-dessus, vous allez avoir un fichier maps.txt dans chaque dossier du type nom_echelle (là où sont les fichiers images). Donc seuls ces dossiers peuvent êtres sélectionnés dans qpeGPS. Par contre en lançcant map_fusion.sh dans le dossier france par exemple, vous obtenez un fichier maps.txt regroupant les cartes des sous répertoires et donc le dossier france devient utilisable dans qpeGPS comme l'ensemble des cartes d'épinal, de nancy, de saint joire au 4000ième et de france au 200000ième.

    Exemple d'appel :

	   $ pwd
	   /home/zaurus/gps/maps/france
	   $ ./map_fusion.sh epinal_4000 nancy_4000 saint_joire_4000 france_200000 #simplifiable en  ./map_fusion.sh *_*


Nicolas GUILLAUME



Commentaires sur l'article : [+]







Site optimisé pour IE* et Mozilla [Firefox] en 1024x768
Copyright © by Nicolas GUILLAUME 2003-2007
Page générée en 0.096661 ms.

* excepté pour les PNG transparents mal gérés par IE


IDDN Certification