Navegando con GPS y OSM
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:








abril 21st, 2009 at 12:39
He seguido los pasos y en la pantalla de navit sólo me sale un circulo azul
y en la parte inferior los datos del GPS.
Al ingresar en destino los datos de Madrid, mira lo que sale:
juan@tortuguitap:~$ navit
vehicle_gpsd:vehicle_gpsd_try_open:Connected to gpsd fd=4 evwatch=0x94bd2c0
navit:main:Using ‘/etc/navit/navit.xml’
xkbd: No existe el fichero o el directorio
changed España partial 0
gui_gtk:changed:country
navit:search_list_search:level=0
gui_gtk:row_activated:enter
gui_gtk:row_activated:str=España
changed M partial 0
gui_gtk:changed:town
changed Ma partial 0
gui_gtk:changed:town
changed Mad partial 0
gui_gtk:changed:town
navit:search_list_search:level=1
No se que opciones poner en navit.xml
Tengo Debian Lenny con LXDE en un viejo portatil(128 Mb ram) y un receptor bluetooth Zaapa.
abril 27th, 2009 at 11:41
El problema de navit es que todavía no es muy “amigable” para el usuario. Desde el paquete debian debería crearte automáticamente un archivo ‘/etc/navit/navit.xml’, del cual deberías descomentar las lineas que muestro en el paso 3, cambiando ‘/home/jynus/osm/spain.navit.bin’ por donde hayas guardado el archivo binario de navit. Con eso ya te debería funcionar, las otras opciones son para cosas más sofisticadas como gpx logging, etc.
mayo 9th, 2009 at 12:08
Muy bueno el artículo.
¿Se puede utilizar sin gps?
¿si se utiliza sin gps no carga los mapas?(es lo q me pasa a mi)
Gracias,
mayo 9th, 2009 at 12:30
Sí, no hace falta GPS para usarlo.
El problema es que si no lo usas con GPS, por defecto apareces en las coordenas (0, 0), es decir, cerca de la costa atlántica de Africa, a la altura del ecuador. Es necesario configurarlo para aparecer en otras coordenadas o bien moverte manualmente. Éste probablemente sea tu problema. De todas formas, revisa la “salida estandar” del programa, por si tienes problemas de configuración.
mayo 16th, 2009 at 15:39
Muy buen artículo. Yo también he instalado Navit en un Asus Eee PC 701. En mi caso, utilizo Ubuntu (ahora la 9.04, pero en el momento de escribir el artículo la 8.10) y en lugar de utilizar una antena GPS bluetooth lo hago con una antena USB.
Si os interesa, podeis echar un vistazo a estos artículos de mi blog:
http://ospatia.blogspot.com/2009/01/navit-navegacin-gps-para-linux.html
http://ospatia.blogspot.com/2009/01/gps-para-linux-ii.html
Con respecto a lo de activar y desactivar el bluetooth desde línea de comandos, echa un vistazo a ver si hay una entrada refiriendose al bluetooth en /sys/devices/ En caso de que exista, probablemente colocando un 0 o 1 en el fichero en cuestión puedas desactivar o activar el interface bluetooth.
En el caso del Eee PC, para desactivar y activar la wifi, se hace o bien desde la BIOS, o bien con los siguientes comandos (como superusuario)
echo 0 > /sys/devices/platform/eeepc/wlan
echo 1 > /sys/devices/platform/eeepc/wlan
mayo 17th, 2009 at 01:20
sí, para la wifi así lo hago (bueno, en realidad las hotkeys lo hacen por mi). El problema es que el kernel que tengo actualmente no da esa opción.
julio 20th, 2009 at 05:56
Hola, sería posible instalar el Navit o similar en un Asus Eee PC con Xp de casa? Gracias.
agosto 4th, 2009 at 19:03
Hola Jynus, estoy intentando usar Navit en mi eee 901 con UNR y me estoy volviendo loco. Tengo el programa instalado, tengo descargados los mapas de España y tengo un receptor GPS (USB). No me deja editar el archivo navit.xml ya que dice que al no ser yo el propietario no puedo modificarlo… ¿alguna idea?
Gracias y un saludo
agosto 5th, 2009 at 08:26
@Miguel Necesitas editarlo con permisos de superusuario (cuenta de administrador en Linux). Para ello, pulsa ALT + F4 y escribe “gksu gedit” o bien “kdesu kate”. Necesitarás introducir tu contraseña. De esa manera, podrás editar el archivo sin problemas.
agosto 5th, 2009 at 08:27
@Orelans There seems to be a Windows version: http://wiki.navit-project.org/index.php/NavIt_on_Windows but I haven’t tested it.
agosto 7th, 2009 at 17:54
Gracias por responder tan rapido.
Le plantee la pregunta tambien a Josean (http://ospatia.blogspot.com/2009/01/gps-para-linux-ii.html) y he seguido su respuesta, es decir, usar el comando $ sudo gedit /etc/navit/navit.xml
La cuestion es que ahora el problema es el siguiente:
-Hice una instalacion limpia de Ubuntu Netbook Remix 9.04
-y ahora el problema esta en que al meter
~$ gpg –recv-keys CB229096
gpg: solicitando clave CB229096 de hkp servidor keys.gnupg.net
gpg: clave CB229096: “Vincent Touchard ” sin cambios
gpg: Cantidad total procesada: 1
gpg: sin cambios: 1
~$ gpg –export -a CB229096 | apt-key add -
gpg: anillo de claves no escribible encontrado: eof
gpg: Error leyendo `-’: Error general
gpg: import from `-’ failed: Error general
-Ademas, si intento actualizar mediante el Gestor de actualizaciones me dice lo siguiente (me imagino que derivado de lo anterior):
W: Error de GPG: http://navit.latouche.info jaunty Release Las firmas siguientes no se pudieron verificar porque su llave pública no está disponible: NO_PUBKEY 0CF2E2A8CB229096
¿que he hecho mal?
Por cierto, una pregunta tonta… ¿tengo que tener el receptor GPS conectado aunque tan solo quiera navegar de modo “offline”? es que ahora mismo abro el NavIt y no veo nada; ni mapas ni nada de nada y eso que ya he editado el navit.xml…
Bueno, y gracias de antemano
agosto 9th, 2009 at 00:25
@Miguel: Te falta un sudo:
http://wiki.navit-project.org/index.php/Download_Navit#Ubuntu
Es probable que si no tienes el GPS activo, te sitúe en las coordendas 0,0 y no veas nada.
marzo 6th, 2010 at 21:19
para los usuarios menos geek, podemos usar el moble pc de garmin