site map · index a-z · search   


· Today's Best Promo Codes.

Linux Applications for GPS Navigation & Geographic Maps

This is a survey of Linux applications (almost all of them are Free Software) for navigation with laptops, notebooks, handhelds, PDAs and mobile phones. They are useful for bikers, car drivers, ship and air plane navigators and others. Additionally there are map conversion tools and links to freely available maps for GPS devices.

Ports and Applications for GPS Devices


The mkgmap program converts map data from OpenStreetMap into the Garmin img map format that can be loaded onto Garmin GPS devices. It also combines maps and produces the auxiliary files required to load into map viewing programs.


Merkaartor is a mapping program that can edit OpenStreetMap data.

GPX Viewer

GPX Viewer is a simple program to visualize a GPX file. It uses libchamplain and cairo for the plot. It can show multiple GPX files, show waypoints and multiple tracks per GPX file, highlight a selected track, show a speed vs. time graph, and show distance, duration, average, moving average, max speed, moving time, and GPS points. It supports zooming, smoothing of the speed graph, and highlighting points in a speed graph on a map.

OBD GPS Logger

OBD GPS Logger logs OBDII and GPS data. It can then take that logged data and write useful output formats. Interesting information logged and exported includes how fast you're going, how fast the engine's going, the air flow into the engine, and the throttle position.

GPS for Google Earth Linux

gps2gel is a Perl program which connects a GPS receiver with Google Earth.

Maemo Mapper

Maemo Mapper is a geographical mapping tool that can be used to:

  • Download map data to your device's main memory or to an external memory card.
  • View that map data on the screen.
  • Navigate that map data by panning around the screen and zooming in and out.
  • Display your position and other GPS information from a GPS receiver.
  • Store and display Point-of-Interest (POI) data.
  • Download directions between arbitrary points on the map.
  • Save or open track data or route data.

Maemo Mapper uses OpenStreetMap data by default, but can use Google and Yahoo maps. The 800x480 screen makes the N8x0 a good device for viewing maps on. Maemo Mapper will also provide you with voice directions if (a) you have preloaded the route and (b) you have the TTS engine installed. Changes enroute would require you to have internet access (e.g., able to tether to a cellphone or be in a Wifi area).


NavIt is a car navigation system with routing engine. It's modular design is capable of using vector maps of various formats for routing and rendering of the displayed map. It's even possible to use multiple maps at a time. The GTK+ or SDL user interfaces are designed to work well with touch screen displays. Points of Interest of various formats are displayed on the map. The current vehicle position is either read from gpsd or directly from NMEA GPS sensors. The routing engine not only calculates an optimal route to your destination, but also generates directions and even speaks to you using speechd. For more information see the NavIT Wiki and this NavIT-HOWTO.

Roadbook On-Board

The Roadbook On-Board is a system that allows the easy creation of roadbooks, through graphical description of routes, using reference points. The system is also able to present those routes automatically, as a navigation aid for the pilot. The presentation is made using video and audio aids. This system is composed by two applications, one for creating and editing, roadbooks and another to display them.


OpenGTS is a full-featured GPS tracking system that includes the OpenDMTP server, yet also can support other remote tracking device types. It also provides a Web interface that provides GPS tracking and location reporting.

BlueGPS for RoyalTek RBT-3000

BlueGPS is a simple command line tool to download datalogs from the Royaltek RBT-3000 bluetooth GPS receiver under Linux.


QGPS is a small GPS status program that is designed to work with a NMEA-compliant GPS device that outputs the GGA, GSA, GSV, and RMC strings. Aside from displaying latitude, longitude, and elevation, it also reports satellite signal strength (signal to noise ratio) and positions in the sky using a custom widget (QSatelliteTrack).

Tux GPS - ucLinux for Magellan GPS

A new project is devoted to porting ucLinux to handheld Magellan GPS receivers and development of a firmware with open source code. While the firmware development will last a long time, the project is already can be used by people interested in the GPS system operation: soon you will be able to see signal reception, decoding of navigation messages from the satellites and coordinate calculation. These features will be added in the next release. So far you can collect the information about the hardware, download necessary tools and start experimenting with GPSR programming. You will not need even to replace your current firmware: the programs are loaded over serial interface and are running in RAM of the unit.

GPS and Mobile Phones

GPS Tracker

GPS Tracker allows someone to track a GPS enabled cell phone using Google Maps. The project was tested with a Motorola i355 cell phone on the Sprint/Nextel network. You need to have a data plan with the cell phone provider so that you can make updates to your Web site from the cell phone. There are two projects available. The first project is built with PHP and MySQL. The second project is built with .NET and Microsoft SQL Server. Both projects use Java (J2ME) on the cell phone.


O2PosTrack is a console-based C++ application for retrieving position information from a mobile phone as provided by the (German) O2 mobile phone company. It runs on Linux and Mac OS X, has configurable output streams (CSV file, GNU-Plot data files, etc.) and should work with all GSM-compatible mobile phones connected via serial link (e.g. IR or USB-to-serial converter).

Trip Tracker

Trip Tracker is a position tracking client-server system. It's designed to assist people in setting up a real-time tracking environment with either a private or public tracking server. The Trip Tracker GPS client sends coordinates to the tracking server to update its position. In the event that the GPS client loses its Internet connection, it can send all collected coordinates to the tracking server as soon as it's back online. The tracking server saves all the coordinates and can forward them to listening map clients.

GPS Suitable for PDAs

EPS - The Elgaard Positioning System

EPS - The Elgaard Positioning System , for Java VMs and browsers uses JavaVM 1.1, PersonalJava or Insignia Jeode from Sharp Zaurus.


GpsDrive is a car (bike, ship, plane) navigation system. GpsDrive displays your position provided from your NMEA capable GPS receiver on a zoomable map, the map file is autoselected depending of the position and prefered scale. Speech output is supported if the "festival" software is running. The maps are autoselected for best resolution depending of your position. All Garmin GPS reveiver with a serial output should be usable, also other GPS receiver which supports NMEA protocol. GpsDrive is written in C with use of the GTK+ graphics toolkit. This programm is tested on the Samsung YOPY Linux PDA and should work on other ARM based Linux PDAs (like the SHARP Zaurus or the COMPAQ iPAQ ), too.


Roadnav is an in-car navigation system capable of running on a variety of operating systems, including Linux, Windows, and Mac OS X. It can obtain a car's present location from a GPS unit, plot street maps of the area, and provide verbal turn by turn directions to any location in the USA. It uses the free TIGER/Line files from the US Census Bureau to build the maps, along with the GNIS state and topical gazetteer data from the USGS to identify locations.


zGPS is a program for displaying GPS information from an attached GPS unit on the Zaurus, or iPaq handheld. The software is till in early beta, but can display the satellites in view, along with signal strength, and the map of their position. Future plans are to have features such as tracklog saving, logging of the raw NMEA data, and waypoints.

Happy Camel

Happy Camel is intended to combine your digital camera with your GPS device. You feed it a list of digital photos and a tracklog, and it figures out where these images were taken, embeds this position in the EXIF-data, and creates a Google Earth file with the photos at the right positions along the tracklog.


Karto allows you to calibrate a scanned map with some known geo-points (Lambert, UTM, etc.).


RoadMap is a program for Linux that displays street maps. The maps are provided by the US Census Bureau, and thus only cover the US. Specific areas are displayed by selecting a street address (street number, street name, city, and state). RoadMap has been designed to be usable on both a desktop or laptop computer, or on a PDA.


"zRoadMap is a port of RoadMap for the Zaurus. It uses the 2002 US Census Bureau TIGER/line maps in a compressed format that you can build yourself or download from the homepage (Average 30Megs per state - or smaller if you just want some counties). Supports many GPS input devices, address locator, address book, waypoints, street information, direction up, zoom, festival speech output. Navigation is currently being worked on and any help is appreciated in making this better. It's currently ported to x86 (GTK/GTK2/QT/QTe), Ipaq (GTK/QT/QTe) and Zaurus (QTe)." [GA]

You may download US maps for zroadmap from the Zaurus Maps directory by Guylhem Aznar. He will try to gather additional vectorial and pixmap maps from other countries, too.


pygps is a Python GPS user interface (especially for Linux PDAs like the iPAQ or the Zaurus) . It shows a listing of satellites, their locations in the sky, a list of latitude, longitude, altitude, status, etc., and moving maps.


Mapview is a viewer for Terraserver tiles. It downloads them on-demand and interactively, and lets you overlay a GPS track and edit it.


GPS Street Map Viewer for Linux.


qpeGPS is a program for displaying a moving map centered at the position read from a GPS device. It's designed to run on a PDA with Qt/embedded (qtopia).

Cumulus for Glider Pilots

Cumulus is a program for Qtopia and OPIE, aimed at the soaring community. It provides a moving map display with all the information you need to easily navigate while requiering a minimum of user-interaction. It uses a NMEA compatible serial GPS to provide it with information on the current position, altitude, heading and speed. Of course, Cumulus supports waypoints and can calculate the distance and heading of your waypoint. Cumulus is a fork of the KFLog project, a program aimed at flight planning and flight analysis for gliders.

HOWTO: Zaurus PDAs and the Garmin GPS-16

This HOWTO [archived link] is a detailed description of how to use a Sharp Zaurus PDA with a Garmin GPS-16 12-channel WAAS GPS receiver. It will be applicable to using any laptop/PDA with a serial port with a Garmin GPS-16, and easily adapted to many others. The project requires some basic cutting/measuring/soldering skills.

GPS Track Analysis in Python for Competitions

GPS data has become extremely available in the last time and analyzing it always yields interesting results. The purpose of this article is to show a simple example where GPS track data is compared with a set of waypoints in order to determine whether a specific track was followed, which scenario is custom to various competitions ranging from randonee, cycling (cross country, orientation), 4x4 and more.

Applications for Pilots


FlyWay is a navigational route planner for pilots. It allows the user to find and select waypoints (airports, navigational aids, and fixes), then calculates distances, courses, wind corrections, and times. Information about the waypoints is provided (including frequencies, elevation, fuel availability, and runway descriptions). The route data is also used to fill in an editable FAA Flight Plan form. FlyWay has an X11 GUI based on the PyQt library.


Navigation system for private pilots . In test phase. Test version is QT based and runs on Linux tablets and netbooks (min: 1280x800pix). 3D Navigation and more functionality (RT lists, checklists, terrain). Default map is based in OpenStreetMap (http://www.openstreetmap.org/) data. A separate application (NavMapMaker) is available to create your own maps based on scanned or other digital maps. So, you may stop buying expensive digital maps.

Other GPS


GPSExplorer [archived link] is a program for communicating with Garmin GPS units, and is easily extended with plugins.


TGPSD [archived link] is an alternative gpsd implementation. It talks directly to a NMEA GPS reviever, and supplies local and remote tcp clients with position/time data. It aims to be compatible with all software that currently uses gpsd on the back end. Also, it adds a few extra commands for retrieving satellite information.


Position is a GNUstep GPS navigator. It requires a GPS receiver that knows the NMEA protocol.


GPSMan (GPS Manager) is a graphical manager of GPS data that makes possible the preparation, inspection, and edition of GPS data in a friendly environment. It supports communication with both Garmin, Lowrance, and Magellan receivers, and real-time support for any receiver using NMEA-0183. It can also be used in command-line mode.


gpsfeet is a software gps simulator, providing TCP/IP, UDP, http and serial port connectivity in NMEA 0183, XML or user defined output format. Usable for testing all kinds of GPS applications. Can playback pre-recorded GPS files with NMEA output.


GPS3d is a set of utilities that lets you manipulate your GPS from your Linux box. One nice feature is the ability to view GPS data (track, waypoints, fix, etc.) on an OpenGL, 3D texture-mapped model of Earth. It also includes a generic serial port broadcaster daemon than can be used to multiplex access to any serial device (clock, gps, etc.) over the Internet. Finally, it can dynamically download maps from mapblast and map them onto the 3D model of the Earth. GPS3d is ported to Mac OS X and Linux.


gpsd is a daemon that listens to a GPS or Loran receiver and translates the positional data into a simplified format that can be more easily used by other programs, like chart plotters. The package comes with a sample client that plots the location of the currently visible GPS satellites (if available) and a speedometer. It can also use DGPS/ip.


ngpsdi is a replacement daemon for gpsd, and will feature more functionnality, among those, there will be a dbus interface to send GPS information to various processes in the system.


BBBIKE looks up bicycle paths through Berlin (Germany). It contains app. 2.100 streets (almost any main street and some important other streets).


CycleAtlas is a cycling diary based on a custom road atlas. It can be used to store or to plan new rides. Functions includes generation of planimetry, profiles, and route time tables of rides. A map editor is included, in order to create a custom road map. project page: http://freshmeat.net/projects/cycleatlas/


GPSUTIL is a program to upload and download waypoints from a Magellan GPS unit. It also supports getting the current position, heading, and speed from any NMEA 2.1-compliant GPS.


Xastir is an APRS client program that uses amateur radio and internet services to convey GPS mapping, weather, and positional data in a graphical application. It has been developed by and for amateur radio enthusiasts to provide real-time data in an easy to use package.

dgpsip differential GPS

This tool offers DGPS corrections over the Internet. On a stationary GPS without a differential correction signal, you should see a 20m average radius "random walk" pattern. On the same receiver with DGPS corrections and a good view of the sky, the error should be reduced to approximately 2m average radius. If you've always wanted to see how clean the GPS signal is once the government-induced noise signal is removed but didn't want to spend the money for a DGPS radio, here is your big chance!


Net::Friends allows for the reporting to and querying of GPSDrive-style friendsd servers. The friendsd server use simple UDP messages to update and report the most recent known position, speed, and direction of people and things.


The GPSTk provides both fundamental and advanced GPS processing algorithms. A wide array of functions are provided by the library, notably RINEX I/O, ephemeris calculation, atmospheric refraction models, and positioning algorithms. GPSTk applications provide more concrete benefits to the user, including cycle slip detection and removal, calculation of the Total Electron Content (TEC) of the ionosphere, and RINEX file manipulation.

GRASS GIS on Handhelds

GRASS GIS [archived link] is available as package for Familiar Linux distribution.

Data Conversion


OpieQuest [archived link] is a Perl/Tk script by Jon Nelson, that extracts the driving directions from MapQuest. OpieQuest was specifically written for use with mapquest.com URL's and others may be added later.


mb2route is a Perl script to convert detailed directions from MapBlast to waypoints and a route file suitable for Garmin GPS devices. This allows detailed directions to be followed without having to purchase expensive mapping CDs or routing software.


GPSBabel converts waypoint data between over two dozen file formats, including major Palm, PC, and GPS serial formats. It is endian and word-size safe, includes a GUI, and runs on a variety of operating systems. It also supports Groundspeak GPX extensions for geocaching. Includes Windows and Tcl/Tk GUIs, support for the Magellan 315, Garmin D109 (including the GPS V), and Magellan SporTrak serial units, and support for the Magellan Navigator, Delorme TopoUSA/XMAP conduit, Topo Map Pro, and GPS Drive file formats. The Groundspeak GPX extensions are now also supported.


Python-GPSBabel is a Python wrapper around GPSBabel. It is a complete interface for Python, allowing easy mechanisms for the developer to control GPSBabel from within a Python application.


geo-* is a set of tools for geocaching, including tools for accessing the www.geocaching.com website, tools for geocoding addresses and creating maps, and tools for manipulating Mapopolis place guide data. The focus of these tools is to provide a command line driven environment.


Viking is a GTK2-based GPS data editor and viewer. It can download and show Terraserver maps, import and draw tracks and waypoints over them, add coordinate lines, make new tracks and waypoints, hide different things, and more. It uses a hierarchical layering system to organize GPS data, maps, and other layer types with spatial data (such as coordinate lines).


GMap is a graphical tool for editing GPS maps. It can import data from gpx, kml, and polish format files and will write files suitable for compilation by the cGPSmapper Garmin map compiler.


mag2top and top2mag are Perl scripts that translate between the Magellan GPS data format and the data export format used by the German, Swiss, and Austrian TOP50 topographical map software.


gpx2shp converts GPS or GPX file to ESRI Shape file.


nmeap is an extensible parser for NMEA-0183 (GPS) data, written in portable C. It has a small footprint, is portable, extensible, and I/O agnostic. It is suitable for Linux, Win32, and embedded systems. It has built in support for most useful standard NMEA sentences, and is extensible to add additional standard and proprietary sentences. It builds to a linkable library for embedding in other applications.

Linux Tools for Google Maps

Google Cartography

Google Cartography uses the Google Search API to build a visual representation of the interconnectivity of streets in an area. This application takes a starting street and finds streets which intersect with it. Traversing the streets in a breadth-first manner, further intersections are discovered. Eventually a connected graph is produced showing the interconnectivity of streets flowing from the starting street.

Open Source GPS HOWTO

Using a Garmin Edge to plot cycle routes with Google Maps on Linux.

Map Servers


Localis is a GIS (Geographic Information System). It is a phpmapscript implementation intended to provide an easy end user workspace and frontend. It links a MySQL database and classic arcview-type files (.df, .shp, and geotiff).


GPSMap is a Java application that displays maps and shows your position with the aid of a GPS device. It can track paths, load overlays (such as shape files), and download maps from the MapBlast and Expedia servers.


phpGIS is a set of PHP scripts that uses the MapServer PHP/MapScript libaries to provide a full GIS system with the ability to select layers, display aerial photos, link to databases (currently only MySQL), and show geographic information. It is compatible with ESRI shape files.


GPSdings is a Java 1.5 command line tool for the manipulation and analysis of track and waypoint data recorded with a GPS receiver. It comprises the following applications: exifloc (determines the geolocation of digital camera pictures from a GPS track), trackanalyzer (analyzes and plots GPS tracks), gpxkml (converts GPX to KML), googlemap (converts GPX to Google Maps API Javascript), and gpxovl (converts between GPX and OVL formats).


MapEditor allows users to load tracks generated by NavSys and use these tracks to create street maps of an area. http://www.navsys.org/mapeditor/

Tiger Map Server

The Tiger Map Server dynamically renders road maps of the United States. The server contains a multi-threaded Web server and a custom drawing library. All un-projected shape files are supported, including ESRI's version of the US Census' Tiger/Line Database.


waypointmapper [archived link] is a small Perl script that grab coordinate data created by gpsdrive from MySQL and retrieves relevant maps. It is useful for populating map data for a new gpsdrive installation.


NPGPX is a Netscape plugin that can display routes, tracks, and waypoints from a GPX file. GPX (GPS eXchange) is an interchange format for GPS data. You can publish your GPS data online, and other people can use this plugin to view the data. It supports zooming and panning. The plugin is written primarily for Firefox on GNU/Linux, but it should work with other browsers that support Netscape plugins. It may or may not work on other operating systems.


xgps is a simple test client for gpsd with an X interface. It displays current GPS position/time/velocity information and (for GPSes that support the feature) the locations of accessible satellites.

Free Maps/Waypoints

Community Mapbuilder

The Community Mapbuilder allows users to enter geographic features in a Web browser, save it to a server along with other features, then present the features back as a map layer in a Web browser. It uses open standards as defined by the Open GIS Consortium.

MapGeneration Project

MapGeneration Project is a project featuring a server and helper programs to collect GPS information from various sources and to then automatically generate a continuously improved, time annotated road map.


OpenStreetMap allows you to view, edit and use geographical data in a collaborative way from anywhere on Earth.


WikiMapia is a Web 2.0 project to describe the whole planet Earth, inspired by Google maps and Wikipedia.


OpenAerialMap is an open collection of aerial photographs, collected into a single coherent view of the world.


Clew is a chart plotting program. Connect a GPS to your laptop, load some maps, and watch the dots crawl across the map as you drive, sail, etc. It currently works with maps scanned/photographed into the computer and any GPS with NMEA output.


OpenDMTP (Open Device Monitoring and Tracking Protocol) is a highly configurable and extensible protocol for communicating with mobile devices over high-latency/low-bandwidth networks. The protocol is particularly geared towards the transmission of GPS base location information and includes a full-featured reference implementation showcasing its capabilities.

Whitestone Interactive GPS Software - WIGS

WIGS is both an API to talk to a GPS receiver over the serial port via the NMEA protocol supported by most GPS receivers, as well as an application that uses this API.


The OpenTom Wiki tries to provide information about the TomTom GO, a linux-running all-in-one car navigation system.



GPicSync automatically inserts location in your photos metadata so they can also be used with any 'geocode aware' application like Picasa/Google Earth, Flickr, loc.alize.us, etc. GPicSync stands for G:GPS Pic:Pictures Sync:Synchronization and is a Free and Open Source tool.



addboint is a script that generates and adds waypoints of found caches to a file. This may be useful for some geocachers.


GPX Viewer is a simple application that lets you look through your GPX trace files that you have from your journeys. This application processes these GPX files and then outputs useful information like average and maximum speeds. You are also able to see the route on a map overlay.

Loadstone GPS

Loadstone GPS is a free navigational application designed to be used with a Bluetooth GPS receiver and a mobile phone using the Series60 platform on the Symbian operating system. Loadstone GPS was developed to be a low-cost feature-rich navigational assistant for the blind. Loadstone GPS allows a user to save points of interest and affectively create a map of the environment. Using this map a user is informed about his or her relative position to these points and knows the heading and distance to these points. This way Loadstone GPS omits the use of (expensive) professionally designed maps while providing all of the orientational information that is needed to move around in the environment. The program is therefore able to help the user to learn and memorise a route; enabling the user to locate points such as: a supermarket, a friends' house, a train station/bus stop and even their home's front entrence

MapSlipper ToolKit

MapSlipper Toolkit is a collection of Perl scripts that generate binary-tree map tiles from a BSB raster chart or from large scanned images. The resulting tiles are compatible with Maemo Mapper for Nokia tablets and may be used with a JavaScript-based slippy map website.


CapCode is a navigation system for sailors with a specialization in regatta assistance. It handles acquisition of data coming from NMEA bus and GPS, computation of the VMG, and route tracing on raster charts. It contains a chart editor.

Cache 901

Cache 901 is an advanced paperless geocaching program, allowing easy maintenance of a large number of caches locally. It is especially designed to work well on netbooks, allowing them to be taken on the trail and provide any assistance that can be gotten from the data you store. This can include advanced searching capabilities, logs, photos, and personal notes for any cache.


tangogps is an easy to use, fast and lightweight mapping application for use with or without GPS. It runs on any Linux platform from the desktop over eeePC down to phones like the Openmoko Neo. By default tangoGPS uses map data from the Openstreetmap project. Additionally a variety of other repositories (e.g. openaerial and maps-for-free) can be easily added. The maps are automagically downloaded and cached for offline use while you drag or zoom the map. Furthermore you can conveniently pre-cache areas with tangoGPS. It is kind of a modernized version of gpsdrive designed for easy use and has come to a stable and mature state.

YAMA, Yet Another Map Application

YAMA is a map viewing application intended for use on PC, PDA, OpenMoko. YAMA uses a vector based map model to render the map. YAMA also includes a converter that converts existing maps to YAMA own format.

J2ME Map

J2ME Map is a small interface to GoogleMap that allows you to do the following things: * Browse the entire GoogleMap database * Swith from GoogleMap/Satellite, MSN Virtual Earth Maps, Ask.com and Yahoo!Maps * Switch between satellite or map view * Zoom in/zoom out * Do request to google maps, and show results on screen * Save your favorite locations * Have access to some rss feed to discover some new locations * Can be extended with your own data * Automatic painless saving of your preference... * Use an embeeded GPS if present, to be automatically located * Use an external GPS connected with Bluetooth, if present * Support of GPX/KML/LOC file format * Support for touch screen enabeld handsets * Track management: record, load, save track * Import/Export track from internet, bluetooth, or lical file system * Take and upload geotagged pictures to Flickr * And some fun stuff: browse realtime the Flickr geotagged pictures! * Find Fon hotspot near you with your mobile phone!


locr connect pictures with geographic data. Now pictures can be sorted by locations and can be better administrated. The visualisation of the positions is based on digital maps, as well as arial photos and satellite pictures. Pictures can be uploaded to the locr community and shared with friends.


gpx2map reads a GPS track in GPX format (as produced by e.g. gpsbabel) and writes out a Google or Yahoo! Map Mash-up containing the route. It comes in handy, for example, when you own a GPS handheld and want to know where you wandered around last time.


Gosmore is a viewer of OSM XML data such as the planet.osm.


PyTrackProfiler allows you to create high quality PDF route sheets, which useful for planning various kinds of routes (hiking, biking, etc.). It also computes useful information using the track data (time, altitude, etc.) so you can analyze an unknown track. An elevation profile and a projection representation are created. It includes high quality classes for drawing line graphics (XY axis, multi-Y axis, autolabels, autoscale, etc.), parsers for OziExplorer and CompeGPS file formats, support for UTM to latitude/longitude conversion, distance calculation, and angle calculation, support for the Polar HRM hear rate monitor file format, a PDF generator, and more.


gipfel is a tool to find the names of mountains or points of interest on a picture. It uses a database containing names and GPS data. With the given viewpoint (the point from which the picture was taken) and two known mountains on the picture, it can compute all parameters needed to compute the positions of other mountains on the picture. gipfel can also generate (stitch) panorama images.


Pytrainer is a tool to log all your sport excursions. It is originally programed for cyclists, but it can be used for any other type of sports. It offers routes and excursions statistics log, Googlemaps integration to display GPS tracks, viewer and editor of waypoints integrated, plugin system for multiple GPS devices and more.


MyTourBook is free software to visualize and analyze tours which are recorded by a GPS device, bike- or exercise computer and ergometer, it can: transfer, import, export, edit and visualize tours, compare tours automatically, segment a tour automatically, do statistical analysis and manage tours for different people. It runs on different platforms Linux , Mac , MS-Windows.

Le Petit Poucet GPS Software

Le Petit Poucet is a program to display and edit GPS routes and tracks in a 3D scene. The aim is to build the scene around the GPS data and 2D maps or 3D terrain models.

OpenTom MP3 Player

So what to do with your precious TomTom GO while you're cruising the neighbourhood at home? No need for navigation - you know the streets by heart. Well, this is the perfect time for some serious rock: The OpenTom MP3 Player.


BT747 can download recorded position data from GPS Data Loggers based on the MTK chipset. Convert GPS position data in many formats (HTML, GPX, KML, KMZ, ...). Geotag JPG pictures and position any other filetype on the map (voice, documents, ...). Supports handheld devices (Palm, WinCE, Mobile Phones supporting Java (J2ME)). Supports Desktops (Windows, MacOSX, Linux flavors). Configure MTK Chipset Based Devices and Loggers. Upload AGPS(EPO) data to MTK II Chipset Based Devices and Loggers.


MTKBabel is a Perl program to operate the i-Blue 747 GPS data logger. It should work also with other GPS devices based on the MediaTek MTK chipset.

Cut, Reverse and Combine GPS Tracks

When you plan a cycling trip and search for tracks in the target area and you try to maximize the fun factor. Thus you often end up with a bunch of tracks from which you want to use parts. The difficult task is to cut, sometime reverse and combine the source tracks into a planned track. Most of the time this seems too much waste of time since it involves a number of operations in qlandkarte (cutting and combining) and gpsbabel (reversing). For this purpose here is a python script which takes as input a kml file containing all the tracks and some extra waypoints which define the cutting points and then creates a combined track.


Linux GPS HOWTO for Beginners

A HOWTO for Linux GPS usage including some basic concepts for the beginner as well as some hints about GPS data conversion.

Geotagging and Google Earth

This HOWTO explains geotagging files with libferris and Google Earth.

How to Use GPS Data with Yahoo

This document explains how to use GPS data as route overlay in Yahoo (in German.

Controlling Google Earth with Python

A short guide to show you how to start controlling Google Earth with Python (through its API COM).

Google Earth gpsd (GEgpsd)

GEgpsd is a little python program (together with a kml file) allows real-time GPS tracking in Google Earth from any standard NMEA device. It's been initially written for GNU/Linux, but with tiny modification (namely the serial device name) it should work on other platforms that support python and have python-serial available.


GpsMid is a free, fully offline, vector based map application for your mobile phone. It displays your current position on a zoomable map and can be used to search for and navigate to roads or points of interest of your liking. As all data is stored in a compact binary format on your phone you will incur no charges for extra data downloads. GpsMid uses map data by OpenStreetMap, a wiki based open source map.

Observations of the Garmin-Garmin Protocol

This is a description of the GARMIN-GARMIN protocol as spoken by the Garmin GPS-75 GPS receiver and the Garmin PCX5 MS-DOS software. The information here has been determined by observing the communication between the two units while sending "choosen plaintext".

Garmin Data Formats

Here you will find documentation on the file formats used in Garmin devices as well as sites that integrate Garmin devices in data transfer, such as MotionBased. General introductions, FAQs, and schema documentation are provided for the various formats. Keep in mind that some of these formats are Garmin specific (i.e. AXM, TCX), while other formats were not created by Garmin yet can be used by Garmin devices (i.e. GPX, KML).

Data Transfer from a Garmin GPS to a Linux PC

This HOWTO explains how to achieve a data transfer from a Garmin GPS to a Linux PC.


GarminTools provides Linux users with the ability to communicate with the Garmin Forerunner 305 via the USB interface.


QLandKarte make is possible to use your Garmin GPS with Linux. It's a tool to visualize and manage GPS data in a decent way, using IMG format files for maps and provides a GUI to visualize such files. QLandkarte has been ported to Linux, Win32 and OSX.

OBD GPS Logger

OBD GPS Logger logs OBDII and GPS data. It can then take that logged data and write useful output formats. This can be used to derive interesting information from a car's on-board computer, such as how fast you're going, how fast the engine's going, the air flow into the engine, and the throttle position.


navilink.pl is a Perl script implementing the NAViLINK communication protocol spoken by the Locosys BGT-11 and GT-11 GPS devices (aka. NaviGPS) and its successors BGT-31 and GT-31 . It allows you to download and upload data like waypoints and tracks from and to the device through a USB connection.

Wireless Non-GPS Navigation

Place Lab

"Place Lab is software providing low-cost, easy-to-use device positioning for location-enhanced computing applications. Place Lab tries to provide positioning which works worldwide, both indoors and out (unlike GPS which only works well outside). Place Lab clients can determine their location privately without constant interaction with a central service (unlike badge tracking or mobile phone location services where the service owns your location information). The Place Lab approach is to allow devices like notebooks, PDAs and cell phones to locate themselves by listening for radio beacons such as 802.11 access points, GSM cell phone towers, and fixed Bluetooth devices that already exist in large numbers around us in the environment. ..."

Related Books

Rick Broida: How to Do Everything with Your GPS, 2004

Rick Broida: How to Do Everything with Your GPS Locate this perfect teaching guide to GPS, and master GPS receivers and software. Technology guru Rick Broida, who has written many best-selling books in the How to Do Everything series, maps out the guts of GPS in a friendly, helpful way that shows you how to get the most from this new technology. Master GPS receivers and software, use GPS in cars, PDAs, and laptops, and even go GPS golfing or try geocaching, the new game featuring GPS.

Map your way around an unfamiliar city, improve your golf game, and avoid getting lost while hiking, camping, or boating. Use GPS receivers in your PDA, automobile, or cell phone for help with road navigation, outdoor adventures, games, and more. Youll even learn how to use GPS for business applications. Author Rick Broida provides insight, information, and examples on all the essentials, including real-world GPS case studies in each chapter. How to Do Everything with Your GPS will help you learn more about this remarkable technology with an increasing diversity of applications.

Amazon Order

Schuyler Erle, Rich Gibson, Jo Walsh: Mapping Hacks, 2005

Schuyler Erle, Rich Gibson, Jo Walsh: Mapping Hacks From the editor: "Mapping Hacks is a collection of one hundred simple techniques available to developers and power users who want to draw digital maps. You'll learn where to find the best sources of geographic data and then how to integrate that data into your own creations. With so many industrial-strength tips and tools, Mapping Hacks effectively takes the sting out of digital mapmaking."

Amazon Order

print · i-mode · WAP · PDA
contact · imprint · privacy (P3P) · sponsors · RSS

© Werner Heuser 1997-2015 · http://tuxmobil.org/linux_gps_navigation_applications.html · last change Sun Oct 21 2012