Olivier Mengué – Code & rando

Aller au contenu | Aller au menu | Aller à la recherche

lundi 3 septembre 2007

Paris Bluetooth MobiGuide : première réaction sur la forme

Je viens de découvrir ce soir que la Mairie de Paris a commencé une expérimentation de diffusion de contenu par Bluetooth à partir des stations Vélib’ : le Paris Bluetooth MobiGuide. Voici mes premières réactions, plutôt d'un point de vue technique (comme souvent ici), c'est à dire sur la forme plutôt que sur le fond et notamment du point de vue d'un utilisateur de Nokia N800.

Il y a quelques mois j'avais déjà reçu par Bluetooth une image JPEG de l'affiche du film Spiderman 3 en passant à coté d'un panneau d'affichage sur le boulevard Haussmann. J'ai repéré un panneau semblable du côté de la rue de la Gaîté. Dans le cas du MobiGuide, c'est potentiellement, pour le récepteur, une utilisation plus intéressante de la technologie Bluetooth.

Le MobiGuide est disponible de plusieurs façons :

  • pour consultation hors-ligne sur un téléphone mobile, sous la forme d'une application Java à installer après téléchargement :
    • par diffusion vers le téléphone mobile depuis des fontaines Bluetooth placées à des stations Vélib' ;
    • par téléchargement depuis en allant naviguer sur http://mobile.paris.fr/ ;
    • par téléchargement avec un ordinateur sur paris.fr ;
  • par consultation en ligne sur http://mobile.paris.fr/.

Ma première réaction : malgré la multiplicité des moyens d'accès, aucun ne me permet d'accéder facilement au MobiGuide avec les appareils dont je dispose :

  • L'application Java ne fonctionne que sur appareils mobiles, pas sur PC.
  • Le Nokia N800 est un appareil mobile qui dispose d'un chip Bluetooth, mais il n'a pas de machine virtuelle Java.
  • Mon téléphone mobile (Nokia 3100) n'a pas la capacité mémoire suffisante pour stocker l'application. 300 Ko, c'est trop pour lui !
  • Le site en ligne est inaccessible aux navigateurs web standards à cause d'un bête problème de configuration du serveur :
    C:\>curl -I http://www.v2asp.paris.fr/v2/mobile/bluetooth/site_PB1er/index.xhtml
    HTTP/1.1 200 OK
    Server: Microsoft-IIS/5.0
    Date: Sun, 02 Sep 2007 22:04:48 GMT
    Content-Type: application/octet-stream
    Accept-Ranges: bytes
    Last-Modified: Mon, 30 Jul 2007 14:25:45 GMT
    ETag: "20399984b5d2c71:86e"
    Content-Length: 1383
    Le Content-Type devrait être « application/xhtml+xml; charset=iso-8859-1 ». Ce simple paramètre bloque la consultation sur le N800 ou sur un PC (MSIE, Firefox) : au lieu de simplement montrer le fichier, le navigateur propose de le télécharger. Quant aux téléphones mobiles, le navigateur intégré de mon Nokia 3100 indique « Réponse inconnue », et Opera Mini signale « Opera Mini Basic ne supporte pas les téléchargements. Ignore "index.xhtml" avec le type "application/octet-stream". »

Je suis finalement arrivé (mais c'est laborieux) à accéder au contenu hors-ligne entièrement depuis mon N800 en bidouillant ainsi :

  1. téléchargement par wifi de Paris1.jar (j'aurais aussi pu aller me rendre à une fontaine Bluetooth pour récupérer le fichier, mais bon, j'habite pas à côté) ;
  2. renommage de Paris1.jar en Paris1.zip ;
  3. décompression de Paris1.zip dans le répertoire Paris1 ;
  4. lancement du navigateur web (l'extension .xhtml n'est pas reconnue directement depuis le Gestionnaire de fichiers) ;
  5. menu Page Web, Ouvrir fichier... pour ouvrir Paris1/microsite/index.xhtml ;
  6. ça y est ! J'accède au contenu XHTML.

Le résultat : j'obtiens un site qui ne prend même pas un quart de l'écran parce que la largeur est fixée en dur sur chaque page à 176 pixels (alors que l'écran du N800 fait 800 pixels). Et j'aboutis à des impasses telles que http://www.v2asp.paris.fr/v2/mobile/bluetooth/site_PB1er/622_ballades.xhtml où les liens pointent vers des fichiers texte qui sont probablement utilisés par l'application Java pour afficher des cartes, mais qui ne sont visibles ni dans le N800 ni sur le PC.

En résumé, c'est plutôt un fiasco. Faut que ça mûrisse encore pour être disponible sur un plus grand nombre de plateformes.

dimanche 12 août 2007

Stations Vélib’ : v2.0

Voici une nouvelle version de mon script de conversion des stations Vélib’ en base POI pour Maemo Mapper sur Nokia N800 (voir mon post précédent).

Parmi les améliorations :

  • un script pour automatiser le processus de transformation 
  • le renseignement du champ poi_id, ce qui corrige le problème d'édition des POI 
  • un index sur la table POI sur les champs latitude, longitude en espérant que cela améliore les temps d'accès. En pratique, je n'ai constaté aucune amélioration ;
  • 4 catégories de POI au lieu d'une seule, pour créer votre propre base des stations : Station Vélib’, Station Vélib’ corrigée, Station Vélib’ validée, Station Vélib’ erronée ;
  • des modifications d'implémentaiton XSLT : l'utilisation de xsl:foreach et un traitement exhaustif des caractères de l'adresse de la station.

Lisez la suite pour le nouveau code...

Lire la suite...

lundi 6 août 2007

Bilan d'une semaine de Vélib’

Il y a une semaine, j'ai souscrit un abonnement Vélib’ 7 jours attaché à mon passe Navigo.

Le bilan est simple : je suis accro ! Vélib’ est le complément idéal au métro, et même un substitut pour certains trajets. Et puis c'est aussi LE vélo du geek : les clés d'antivol, c'est has-been ! C'est la magie du passe sans contact qui libère le vélo. Enfin, cela me donne l'occasion d'utiliser mon N800 comme jamais !

J'avais emprunté 5 vélos dès le premier jour, mardi dernier. Je me suis calmé ensuite en m'en tenant à 2 par jour. Pour le dernier jour, j'en ai emprunté 8 !!! Un ce matin pour mon trajet habituel de la Gare d'Austerlitz aux Gobelins, malgré la petite pluie (j'ai pu constater comment cela effraye les utilisateurs : les stations étaient quasiment pleines). Deux ce midi pour aller faire une course du côté de la rue Montgallet. Et cinq ce soir pour une rando Vélib’ à travers Paris, en alternant vélo et marche à pied, de façon à rester dans la limite des 30 minutes gratuites et à laisser passer 10 minutes entre deux emprunts. Le point culminant fut l'ascension de la Bute Montmarte, avec un passage devant le Sacré Cœur. Un peu plus tard j'ai pu frimer avec mon plan électronique des stations lorsqu'un autre cycliste m'a demandé si je savais où étais la station la plus proche. Mais j'ai merdé sur l'un des trajets : je n'ai pas vu le temps passer le long du canal Saint-Martin et j'ai rendu le vélo à 30 minutes et 42 secondes (j'ai le reçu), donc 1 € facturé, d'après la consultation de mon compte sur la borne. On verra si c'est effectivement débité.

J'ai pu mettre en action le GPS Bluetooth Globalsat BT-359W acheté ce midi. Très petit, il tient dans la poche de chemise. Il a été directement détecté par le Nokia N800 et a presque immédiatement alimenté Maemo Mapper (le temps de « fix » initial m'a un peu fait peur). Heureusement parce que le seul logiciel de diagnostic fourni est un logiciel pour Pocket PC, donc d'aucune utilité pour moi.

Le GPS est l'outil indispensable pour optimiser ma balade dans des quartiers que je ne connais pas. Je peux profiter au maximum des 30 minutes de vélos (le GPS permet d'éviter de chercher les noms des rues sur le terrain puis sur le plan) en localisant à la dernière minute la station la plus proche. Ensuite, marche ou flânerie (selon le quartier) de 10/15 minutes vers une autre station pour reprendre un vélo. Le tout sauvegardé en trace GPX. Enfin presque tout, car Maemo Mapper a planté et m'a donc perdu la première heure de trace. Il a aussi tendance à planter lorsque j'éteins le GPS.

Le GPS m'a servi également à collecter les « vraies » coordonnées de quelques stations. En effet certaines coordonnées de stations sont incorrectes sur le site web. Celle de la rue du Chevaleret (13054) par exemple.

J'ai eu plus de mal à configurer l'accès au GPS depuis Ubuntu. Alors que tout était graphique sur le N800, la configuration sur Ubuntu est manuelle : il faut récupérer l'adresse MAC du périphérique (sudo hcitool scan) et le numéro de canal (sudo sdptool records), éditer /etc/bluetooth/rfcomm.conf pour ajouter la définition de rfcomm0 et enfin lancer la création du périphérique (sudo rfcomm bind /dev/rfcomm0). On peut vérifier que ça fonctionne avec « cat /dev/rfcomm0 ».

samedi 4 août 2007

Using OpenStreetMap with Maemo Mapper

I found in the svn source code of Maemo Mapper that the new default map provider for Maemo Mapper is now OpenStreetMap, a free map database that you can contribute to. You can already manually add the OpenStreetMap repository with the following URI: http://tile.openstreetmap.org/%0d/%d/%d.png

jeudi 2 août 2007

Une carte des stations Vélib’ sur Nokia N800

Vélib’, c'est génial ! Abonné depuis deux jours et déjà accro ! Vive le vélo Plug'n Play ! Vive le vélo jetable !

Néanmoins, un outils devient vite indispensable : la carte des stations.

Je suis l'heureux propriétaire d'un Nokia N800 : c'est une « tablette Internet », avec connexions wifi, Bluetooth et un écran 800x480. Le tout fonctionne avec un système ouvert : Linux. Et ça tient dans la poche.

Le logiciel Maemo Mapper pour le N800 permet de télécharger des fonds de carte (Google Maps notamment) et de les afficher. Ces cartes peuvent aussi être récupérées dans un cache pour consultation hors-ligne. Ainsi on peut avoir tous les plans de Paris de Google Maps dans la poche, sans connexion Internet. Maemo Mapper peut aussi afficher les informations d'un GPS Bluetooth.

J'ai donc créé une base de points d'intérêt (POI) pour afficher les stations Vélib’ dans Maemo Mapper.

Mais ma source des données pour les emplacements des stations n'est pas libre : il s'agit du fichier XML publié sur le site officiel (http://www.velib.paris.fr/service/carto, voir ce forum). Je préfère donc éviter de distribuer le fichier terminé. Je vais par contre vous expliquer comment recréer vous-même ce fichier.

Photo de mon N800 avec Maemo Mapper affichant un plan de Paris avec les stations Vélib'

Lisez la suite de ce post pour voir le code...

Lire la suite...