Con ganas de sacarle partido al EeePC que me compré hace unas semanas, y previendo que voy a tener que viajar bastante durante este año, me he dedicado a buscar una manera de tener un navegador GPS gratuito y legal para este cacharro.
Google Maps no está mal, pero tiene los siguientes inconvenientes:
- Sus términos de uso prohíben explícitamente estas prácticas
- Los datos de Teleatlas (usados por el callejero de Google) dan mucha penita a veces (mirad dónde han puesto la Alameda Cervantes, en Soria, o la pinta que tiene la Plaza del Pilar de Zaragoza). Además, se centran mucho en información útil para automóviles y poco o nada en peatones y bicicletas
- Sólo ofrecen públicamente imágenes (“tiles”) de los mapas, no los datos originales vectoriales. Eso hace imposible el crear rutas sin estar conectado a internet.
Así que decidí probar Navit, un programa de navegación GPS libre que permite utilizar los datos de OpenStreetMap para mostar mapas y calcular rutas. Aunque está todavía en desarrollo y hay cosas que no funcionan muy bien, tiene todo lo que yo quería: mostrar mapas vectoriales, buscar direcciones y calcular rutas.
Primer paso: descargar e instalar el programa. En Debian es muy fácil, ya que existe un repositorio:
# navit repository
deb http://navit.latouche.info/debian lenny main
Que simplemente tenmos que añadir a nuestro /etc/apt/sources.list, seguido del clásico:
$ sudo aptitude update
$ sudo aptitude install navit
Paso 2: conectar el GPS Buetooth al EeePC. Es necesario activar el Bluetooth desde la BIOS (todavía no he encontrado la manera de desactivarlo/activarlo desde el sistema operativo). También necesitaremos tener instaladas las utilidades para gestionar el GPS y la conexión inalámbrica, principalmente bluez-utils y gpsd. Después, emparejaremos la antena bluetooth a nuestro dispositivo y finalmente configuraremos el demonio de GPS para que utilice esta señal:
$ sudo aptitude install gpsd bluez-utils # instalacion de paquetes
$ sudo hcitool dev # permite ver los dispositivos BT
Devices:
hci0 00:11:22:33:44:55
$ sudo hciconfig hci0 up # levanta el interfaz bluetooth
$ sudo hcitool scan # permite ver los dispositivos al alcance
Scanning ...
00:99:88:77:66:55 BT GPS # <- este es el GPS
Editamos el archivo /etc/bluetooth/rfcomm.conf y lo rellenamos con la dirección hardware que hemos obtenido en el paso anterior:
#
# RFCOMM configuration file.
#
rfcomm0 {
# Automatically bind the device at startup
bind no;
# Bluetooth address of the device
device 00:99:88:77:66:55;
# RFCOMM channel for the connection
channel 1;
# Description of the connection
comment "Antena GPS Bluetooth";
}
Lo vinculamos:
$ sudo rfcomm bind rfcomm0
Y ahora lo configuramos para que lo reconozca gpsd, ejecutando:
$ sudo dpkg-reconfigure gpsd
Y escribiendo /dev/rfcomm0 cuando pregunte por el dispositivo.
Podemos comprobar que funciona así:
$ telnet localhost 2947
r # escribir r + intro
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,132515.936,V,XXXXX,N,XXXXXX,W,0.00,0.00,060309,,,N*6C
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPRMC,132515.936,V,XXXXX,N,XXXXXX,W,0.00,0.00,060309,,,N*6C
$GPGSV,1,1,01,23,,,19*71
[...]
Paso 3: descargar los mapas y programa
Por alguna razón, ejecutar navit sin configurar antes GPS y mapas hace que este falle. Los mapas que utiliza navit (.bin) pueden obtenerse a partir de archivos de datos de OpenStreetMap (.osm) -existe una utilidad online que lo hace automáticamente- o bien descargarse directamente ya convertidos al formato binario de Navit desde sitios como Cloudmade. Yo he optado por esto último y he bajado el archivo spain.navit.bin.zip (que tiene todos los datos de España), lo he descomprimido y lo he guardado en la memoria flash del EEE.
Por último, he editado el archivo /etc/navit/navit.xml para que lo use:
<!-- Mapset template for openstreetmaps -->
<mapset enabled="yes">
<map type="binfile" enabled="yes" data="/home/jynus/osm/spain.navit.bin"/>
</mapset>
¡Y ya está! Ejecutamos navit y estas son algunas de las capturas de pantalla que he obtenido navegando por Zaragoza:

De Tenor Fleta a Sagasta

Navegando por la Plaza Paraíso
marzo 6th, 2009 | Tags: bluetooth, cloudmade, eeepc, googlemaps, gps, gpsd, navit, openstreetmap, OSM | Category: OSM, Recetas | Comments (13)