This is the most capable and expressive of all the file formats supplied. It is described at http://www.topografix.com/gpx.asp and is supported by EasyGPS, ExpertGPS, and man other programs described at http://www.topografix.com/gpx_resources.asp
geocaching.com spits up geocaching.loc files that are XML-ish but not quite GPX. Becuase it's so close to GPX, this format is very well supported.
Waypoint serial upload and download works reliably to the 315, 330, Meridian, and SportTrak family. I expect it to work on any modern Magellan unit.
As of 08/30/02, GPSBabel can also read and write the files that can be stuck on the SD memory cards with the Meridian models. Simply specify a file instead of a serial port.
Communication errors are handled robustly and verification of data is enabled.
Additional sub options: baud: may be 1200, 2400, 4800, 9600, 19200, but must match receiver.
The SD card format used by the Magellan Explorist 400, 500, and 600. It's identical to the Magellan SD format used by Meridian, but allows longer waypoint names.
You should name any file created with this format with a ".upt" extension so the firmware can read it.
The SD card format used by the Magellan Explorist 400, 500, and 600 to describe geocaches. Notice what while the format can hold an infinite number of geocaches, the unit will read and silently discard all but 200 geocache POIs at a time.
You should name any file created with this format with a ".gs" extension so the firmware can read it.
Waypoint serial upload and download works reliably under both POSIX and Windows. I originally tested it with a Vista, a V, and a base eTrex, all graciously provided on loan by Joe Armstrong, but it's now regularly exercised on a 60CS (USB and serial) and many other models. The communications library used, jeeps, claims to support most models of Garmin hardware. Be sure the GPS is set for "Garmin mode" in setup and that nothing else (PDA hotsync programs, gpsd, getty, pppd, etc.) is using the serial port.
GPSBabel supports the USB Garmins under Windows and on Linux and OS/X via libusb. It's reported successful with VistaC, SummitC, 60C, 60CS, 76C, 76CS, 96C, and Quest. Some users report success with StreetPilot 2610 and some do not, but nobody's followed up with details on that.
Currently, only a single USB unit at a time can be supported. The device name to use on the command line is "usb:" Thus, to read the waypoints from a Garmin USB unit and write them to a GPX file:
gpsbabel -i garmin -f usb: -o gpx -F blah.gpx
When reporting problems with Garmin, be sure to include the full unit model, firmware version, and be prepared to offer debugging dumps by adding "-D9" to the command line, like:
gpsbabel -D9 -i garmin -f usb: -o gpx -F blah.gpx
Custom icons are supported on units that support that. Neither GPSBabel nor your firmware know what is associated with any given slot number. They don't know that the picture you placed in the first slot is a happy face, they only know they're in the lowest numbered slot. GPSBabel names the them consistently with Mapsource, so they are named 'Custom 0' through 'Custom 23'.
GPS Manager can read and write formats that this converter doesn't understand. The default formats (WGS84, DDD) work reliably.
GPSUtil has a simple file format of this program that runs on POSIX- compliant OSes like UNIX and Linux. Reads and writes of this format are reliable. (I've also contributed to this program.) It's available at http://www.cs.uakron.edu/~hennings/gpsutil/.
The U.S. Census Bureau proives online mapping facilities. This format is described at: http://tiger.census.gov/instruct.html. Do notice that this format is not the actual Tiger line mapping records, but rather the interface to their online mapping program.
There are a billion variants of Comma Separated Value data. This is the one that makes Delorme S&A Deluxe 9 happy. It's also a very simple program and useful for many other programs like spreadsheets.
CSV is also the correct format for Lowrance MapCreate, their commercial mapping program, or GDM6 (their free waypoint manager) for iFinder which is available at http://www.lowrance.com/Software/GDM6/Default.asp
The Lowrance iFinder GPS series has the unique capability to output its data to an MMC card. The data is saved to the card as a .USR file and can be read by your computer using a card reader. Waypoints, routes, tracks are supported. By default, Event marker icons are converted to waypoints. Symbols tend to get lost in the translation.
ignoreicons - don't convert icons to waypoints
merge - (USR output) merge all tracks into a single
track with segments
break - (USR input) break track segments into separate
Delorme TopoUSA/XMap Conduit is one of the billion CSV variants mentioned above. It's just like S&A with the addition of a completely pointless line at the beginning and end of the file. This is the format used to hot-sync to XMap from withing TopoUSA. Done with help of Dan Edwards.
Delorme XMapHandHeld Street Atlas USA is another of the billion CSV variants. This is the format used by XmapHH SA USA on (at least) PocketPC O/S. Please see README.xmapwpt for more information on it's intricacies. This XMap is not to be confused with the XMap mentioned above. Contributed to GPSBabel by Alex Mottram.
XCSV is an open-ended "Whatever Separated Values" parser / writer designed to work with user-supplied "style" files. It should handle at least a few thousand of the billion CSV variants available. By itself, it doesn't comply to any format, however *most* CSV variants can be described as a "style" and fine-tuned by the end user. For more information on it's use, please see README.style in the style/ sub-directory of GPSBabel. For an example of using the XCSV module within your C program, look at the ozi.c, mxf.c, and xmapwpt.c sources in the GPSBabel directory. This module was contributed to GPSBabel by Alex Mottram.
style - **REQUIRED** Path to XCSV style file.
snlen - Maximum length of synthesized shortnames.
snwhite - Switch defining whether or not to allow whitespace
in synthesized shortnames.
(0 = NO WHITESPACE, 1 = WHITESPACE OK).
snupper - Switch defining whether or not to force uppercase
in shortnames. (0 = LEAVE AS IS, 1 = UPPERCASE ALL).
NOTE: sn* options require use of the '-s' command line option.
gpsbabel -i xcsv,style=foo.style -f foo -o xcsv,style=bar.style -F bar
gpsbabel -s -i gpx -f foo.gpx -o xcsv,style=my.style,snlen=8 -F bar
Magellan was smart enough to document their file format to make creating software like this possible.
Garmin Mapsource format appears compatible with the various members of that product family. Icon mapping is attempted between different MapSource versions. Altitude is supported, but proximity and depth are not. Naming files *.mps will allow file->open in Mapsource to find the files more easily. Versions 3, 4 and 5 of the Mapsource data format are handled automatically on input and by default the output is version 5. (Until 3/2004, it was version 3, but since Mapsource updates are free, the convenience of having modern icon sets outweighs the backward compatibility concern. Users of other versions can either upgrade or specify the switches to get get output in a compatible format.) Waypoints, routes and tracklogs are all handled, but maps sets are ignored.
Information on the Garmin Mapsource format was provided by Ian Cowley and Mark Bradley. The code was implemented by Robert Lipe and Mark Bradley.
snlen - set the length of generated shortnames
mpsverout - set the data format version of the output file
(3,4 or 5)
mpsmergeout - if the output file already exists, then the output
is merged with it. This allows MapSource sections
not being handled to remain intact (e.g. map sets)
This is a text format created by KuDaTa's PsiTrex program for the Psion PDAs. The format can't be readily handled by XCSV, so this format is handled explicitly. Waypoints, routes and tracks are all handled, with icon names used corresponding to verison 1.13 of PsiTrex. This module was contributed to GPSBabel by Mark Bradley.
Garmin documents only PCX5, an older format limited to the lame NMEA six-character waypoint names that's treated as a second-class citizien in current versions of MapSource. In Mapsource, use file->import to read these files. If you name the files *.wpt, Mapsource will find them easier.
In general, you should prefer the "mapsource" file format to this one.
Cetus GPS (http://www.cetusgps.dk/) is a program for Palm/OS. Working with Ron Parker and Kjeld Jensen, we can now read and write files for that program.
QuoVadis for Palm OS (http://www.marcosoft.com/) is a program for Palm/OS. Working with record definitions provided by MarcoSoft and further experimentation by Bruce Thompson and "Fuzzy" from the Geocaching Forums to nail down the format precisely.
Should work fine for import and export.
One thing of note, QuoVadis stores all waypoints in a single Palm Database without using categories. This means that it may be difficult to keep personal waypoints separate from generated waypoints. What Bruce recommends is taking the QuoVadisMarkerDB.PDB file synced down from your Palm Powered device and extract the waypoints you personally set to a GPX file. Then using GPSBabel's joining capabilities generate a new PDB file from the personal file and the other waypoint files of interest.
Currently the selection of icons to display and the scale at which to display them is hardcoded. Also there is no support for notes associated with waypoints. This will be addressed in a future revision.
The file format for GPSPILOT (http://www.gpspilot.com) was provided by Ron Parker. The output from this module has been tested with GPSPilot Tracker v5.05sx, but it is based on reverse-engineering so it may not work with all versions of all GPSPilot products. It had read-only support for Airport, Navaid, City and Landmark files but will read and write Point files.
Magellan NAV Companion for Palm/OS is not really designed for this sort of use, but its file format is supported and with a little bit of patience you can both read and write NAV Companion waypoints. Please read README.magnav for further tips on getting waypoints in and out of NAV Companion. This conversion is based on partially incomplete reverse-engineering of the record format, so it may not work with all versions of NAV Companion. It has been tested with version 2.10 and 3.20.
Microsoft's PocketStreets 2002 Pushpin (.PSP) format is not yet completely documented. THE .PSP MODULE DOES NOT WORK WITH MS STREETS & TRIPS 2002 .EST FILES. To create .PSP files from Streets & Trips 2002, you will need to have PocketStreets support installed. Please note that MS Streets & Trips only *EXPORTS* .PSP files. It does not import them. MS Streets & Trips 2002 only imports CSV files. To use .PSP files, simply copy them over to the same folder on the mobile device as the map (.MPS), and open PocketStreets. It should also be noted that in the case a pushpin is outside of the exported map area, the pin will be "grayed-out" and unused in PocketStreets. This is a good thing as it allows us to create one big .PSP file that covers multiple .MPS files. Unfortunately, you need one .PSP file for every .MPS file. :(
Maptech Exchange Format - Another CSV format file. This format complies with (at least) Maptech Terrain Navigator, Terrain Professional, Take a Hike, and ExpertGPS import/export MFX. Contributed by Alex Mottram.
Navitrak DNA marker format - Another CSV format file. This is the format that is compatible with the DNA Desktop import/export command. Reading the binary Markers.jwp format directly off the data card is not supported yet. Contributed by Tim Zickus.
OziExplorer Waypoint Format - Another CSV format file. Tested against OziExplorer v 3.90.3a / Shareware. Contributed by Alex Mottram.
National Geographic Topo! Waypoint Format. This filter reads and writes .TPG files created by various editions of NG Topo! This filter will *not* work with the newer combined .TPO files. Contributed by Alex Mottram.
The Holuxgm-100 (e-fox) gps receiver uses standard compact flash cards. File formats were provided by Holux-Taiwan http://www.holux.com.tw to the author. The code was tested against version 2.27E1; other versions and receivers may work but have not been explictly tested. Anyone with information on other Holux receivers is encouraged to contact email@example.com.
When copying the .wpo file to a flash card, the file must be named "tempwprt.wpo" as the receiver will ignore all other files.
Comparing the waypoints of a .wpo files against other formats like .gpx you may notice a small difference in the latitude and longitude values. The reason is the low resolution of the coordinates in the wpo file format. In a .wpo file the reolution is 1/10"; in gpx for example it is 1/100". A a practical matter, this loss is only about 1.7meters (5 feet).
The generated waypoint failes can also be used by MapShow version 1.14. This program is free of charge from the Holux web site.
This format was contributed by Jochen Becker.
TopoMapPro Places File. Reads and writes places files for use in TopoMapPro (http://www.topomappro.com). As this file type can store links other than web links, anything that is not a http url will be discarded. Note that this does not do datum conversions, so if your input file does not have WGS84/NZGD2000 data, your output file won't either. Colour of waypoint icons defaults to red.
GpsDrive way.txt file format. A space seperated format file. Tested against GpsDrive v 1.30 found @ http://www.kraftvoll.at/software. Contributed by Alan Curry.
Format used by GpsDrive to save tracks. Like GPSDRIVE a space seperated format file. See above for a link to GpsDrive. Contributed by Tobias Minich.
This is a PDA file format. It was tested against version 2 of GeocachingDB and a development snapshot of version 3. Information on the file format came from Dougs Brat and Ron Parker. A particularly handy way to use GPSBabel on these files is to use GPSBabel to read a GPX file with Groundspeak (geocaching.com) extensions and let it write you a GeocachingDB file that contains the cache names, difficulty, terrain, and such.
This code is mostly intended to convert CoPilot Flight Planner for Palmd/OS atabases into other formats. You probably should not use this to write CoPilot databases, although the code is there, because GPSBabel doesn't convert magnetic declination values.
Questions, bug reports, etc, to ptomblin at xcski.com
This is the binary file format used by EasyGPS. This format is seemingly being phased out in favor of GPX in newer versions of EasyGPS, but this allows conversions to and from the old binary .loc format.
Information about and sketchy code to implement this file format were provided by Eric Cloninger.
This is a Palm/OS file format ofr GPilotS. It was tested against version 6.2.
Neither tracks nor routes are supported at this time.
This is a format for importing into Microsoft Streets and Trips. It's been exercised on versions 2003, 2004, and 2005. Detailed instructions on how to use it, including preserving hyperlinks, are at
This is the GeocachingDB by DougsBrat. It works with v2 and v3 of this program.
This is a CSV format from the National Imagery and Mapping Agency.
This was a requested CSV format, *not* the proprietary binary format used by Fugawi. Like any other CSV format, GPSBabel cannot read tracks in this format, but converting a track into it and then importing as track in Fugawi works.
It is known to work with Fugawi V22.214.171.1245. When importing/exporting waypoints, one has to specify the order of fields as follows (names of fields may depend on the language used by Fugawi):
- Altitude (metres)
- Date (yyyymmdd/yymmdd)
- Time of day (hhmmss)
When importing tracks, use "[ignore]" instead of "Name", "Comment" and "Description".
This is a "kitchen sink" CSV format. No known program will read it, but it's handy for simply converting an arbitrary file to text so it can be pulled into a spreadsheet or manipulated with text processing tools.
Dumps all fields in a traditional Unix tab separated style.
Mapconverter is a format this is read by Mapopolis.com's mapconverter application. Full details of it's usage are available in the file README.mapconverter.
This is the XML format that's used by Navicache.com for their geocaching data. There are a number of fields in it that are marked "required" but are Navicache-specific, so GPSBabel can not write these files, but we can still read them.
This is the format used by CoastalExplorer (tm). The format is XML with items uniquely identified by Windows-style UUIDs.
This is a text format created by KuDaTa's PsiTrex program for the Psion PDAs. The format can't be readily handled by XCSV, so this format is handled explicitly. Waypoints, routes and tracks are all handled, with icon names used corresponding to verison 1.13 of PsiTrex.
Geoniche is a Palm/OS application oriented for the off-road user. This module was contributed by Rick Richardson.
This is the 'gpl' format as used in Delorme mapping products. It is a track format and contains little more than the tracklog of a GPS that was attached while driving.
This is a catch-all used by many Delorme mapping products and reads the anr, rte, and rtd formats as either tracks or routes.
The 'turns_only' option causes GPSBabel to read only the waypoints associated with named turns. This should create a list of waypoints that correspond to the itinerary from Street Atlas.
The 'turns_important' option only makes sense in conjunction with the 'simplify' filter. It ensures that the route simplification process will remove the points corresponding to turns only after it has removed all other route points.
Both options only apply to route files from newer versions of DeLorme software; older versions didn't store the turn information with the route.
This format is for Street Atlas USA 2004 Plus.
For geocachers importing data from a tool like GSAK or Spinner, import the file twice in XData. One will create a file with the Cache description as a hyperlink on the flag. This can clutter up the screen and when you try to zoom in, it causes problems. So the second one will only have a flag. Thus you can turn off and on which one you want to view. The first time you import the file, in the assign field types, check the circle above Full Name and then next. The second time you import the file do not check any circle and in the second to last column, change URL to none and then click next. Use the same name you used the first time but add -Flag to it.
This format is the file representation of the NMEA0183 log and waypoint format. Representative programs include:
This is a simple human readable version of the data file, handy for listings of any type of waypoint files. Use the 'nosep' option to suppress the lines of dashes between entries. Use the 'encrypt' option to encrypt hints from Groundspeak GPX files. Use the 'logs' option to include Groundspeak cache logs.
The following command line reads a GPX file with Groundspeak extensions and writes a text file with encrypted hints:
gpsbabel -i gpx -f 12345.gpx -o text,encrypt -F 12345.txt
HTML output generates a single HTML file of all of the waypoints in the input file. It supports a number of Geocaching GPX extensions, as well as filters out potentially harmful HTML from the input file while maintaining almost all of the source HTML formatting. Use the 'stylesheet' option to specify a CSS stylesheet to be used with the resulting HTML file. Use the 'encrypt' option to encrypt hints from Groundspeak GPX files. Use the 'logs' option to include Groundspeak cache logs.
The following command line reads a GPX file with Groundspeak extensions and writes an HTML file with encrypted hints that is rendered using a custom stylesheet:
gpsbabel -i gpx -f 12345.gpx \ -o html,stylesheet=green.css,encrypt -F 12345.html
PalmDoc output is similar to Text output, except that it generates a Palm Database (PDB) file suitable for use with programs like CSpotRun, TealDoc, AportisDoc, Palm Reader, and others. The resulting file also contains bookmarks to make it easy to jump to a particular waypoint. To suppress the dashed lines between waypoints, use the 'nosep' option. To specify a name for the document, use the 'dbname' option. Use the 'encrypt' option to encrypt hints from Groundspeak GPX files. Use the 'logs' option to include Groundspeak cache logs. If you would like the generated bookmarks to start with the short name for the waypoint, specify the 'bookmarks_short' option. This is particularly useful when used in combination with the 'sort' filter.
The following command line reads a GPX file with Groundspeak extensions and writes a Palm document with encrypted hints and logs:
gpsbabel -i gpx -f 12345.gpx \
-o "palmdoc,dbname=Unfound Geocaches,encrypt,logs" \
NetStumbler 0.4 Summary File -- Another CSV format file. The default behavior when creating waypoints is to use the SSID for the short name, and information about the access point for the description. When the SSID is not unique, is not available, or consists of whitespace, a shortname is synthesized. The snmac option uses the MAC address for the shortname, and includes the unmodified SSID in the description. Different icons are assigned to encrypted, non-encrypted, stealth, and non-stealth access points; these may be changed with options. Import only.
nseicon - Name of icon used for non-stealth encrypted access points
nsneicon - Name of icon used for non-stealth non-encrypted access points
seicon - Name of icon used for stealth encrypted access points
sneicon - Name of icon used for stealth non-encrypted access points
snmac - Always use the MAC address as the shortname.
FAI/IGC Data File -- Used by the international gliding community to record gliding flights. IGC files can be converted to and from tracks representing recorded flights, and routes representing task declarations in other formats.
Serial download protocol for the Brauniger IQ series of barograph recording flight instruments. Creates a track of altitude vs time which can be merged with a GPS track of the same flight to create a three dimensional IGC file.
HSA Systems Endeavour Navigator format - will import both the old version 4.x binary files, and the newer XML based ones. Only writes the new XML (5.0 and above) format. (use the .exp extension)
The vCard output is intended to be in a format that enables waypoints to be viewed with an Apple iPod. This is achieved by mapping waypoint fields into vCard fields that can be displayed as 'Contacts' on the iPod. With the iPod mounted as a hard disk (see your iPod manual for instructions), the resulting VCF file should be moved into the iPod 'Contacts' folder. As an alternative, Mac OS X users may prefer to drag the VCF file into their address book and synchronize with the iPod using iSync. By default hints are unencrypted; use the 'encrypt' option to encrypt the hints.
This is the .gps format used by the Mac OS X applications written by HikeTech. These include TopoDraw, Link2GPS, and GPSWrite. More information about these products can be found at http://www.hiketech.com
This is the XML format used by the Garmin Logbook product that ships with Forerunner and Foretrex.
We have sketchy support for KML, the Keyhole Markup Language. There are many features in this file format that we don't yet support, but simple waypoint lists convert fine.
This format is designed to read the XML emitted when you tack "&output=js" onto the end of a Google Maps route URL (use the "link to this page" option to get a usable URL.) This allows you to plan a route using Google Maps, then download it and use it in your own mapping program or GPS receiver. If you use a Unix-compatible operating system, this shell script might be useful:
FROM="233 S. Upper Wacker Dr, Chicago, IL"
TO="1060 W. Addison St, Chicago, IL"
wget -O - "http://maps.google.com/maps?q=$FROM to $TO&output=js" \
gpsbabel -i google -f google_map.js -o gpx -F google_map.gpx
Note that Internet Explorer has been observed to damage the XHTML beyond recognition so use a better browser to save the pages such as Firefox or Mozilla.
TEF, internal called "TourExchangeFormat", is a XML based export format, used by Map&Guide "Motorrad-Routenplaner 2005/06". Another posibility to exchange data with this are the .bcr files, which are sopprted by GPSbabel in both directions (see BCR). Via XML this software can only export routing data. So we don't support writing.
With the option "routevia" you can eliminate calculated route points from tef source file.
gpsbabel -r -i tef,routevia -f in.xml -o gpx -F out.gpx
PathAway is a Palm software designed for handling "most" GPS devices (including BlueTooth). In this time (i mean 2005) a free tool to convert this database is located on the homepage of PathAway (www.pathaway.com). But i've read there ... for windows and the output formats are also very limited.
This format supports the DeLorme ".an1" drawing file format. It can currently be used to either read or write drawing files. If you use this format to create drawing files with routes or waypoints from another source, it will currently create "Red Flag" symbols for waypoints, and thick red lines for routes or tracks. It is possible to merge two drawing layers by doing something like this:
gpsbabel -i an1 -f one.an1 -f two.an1 -o an1 -F merged.an1
In this case, the merged data will contain all of the properties of the original data.
Currently, GPSBabel only writes drawing layers, as opposed to road, track, and other specialized layers. If your input file is a road, track, trail, or waypoint layer, you should not attempt to write to an .an1 file as the results may be unpredictable. Note that this also applies to merging files, so you can't currently merge two road layers with GPSBabel (officially; there is an unsupported "type" option that works in limited cases.)
This format can read and write TomTom .ov2 (POI) files, as used by the TomTom GO and TomTom Navigator. It has been tested with an original TomTom GO running version 5.00 of the TomTom software. There may be some records that confuse the input module - if you have an example of such a record "in the wild", and you aren't restricted from sharing it, we encourage you to post to the gpsbabel-misc mailing list to contact a developer.
Note that in addition to the .ov2 file, you will need a .bmp file for the icon. It should be 22x22 and 16 colors, and have the same name (not including the extension) as the .ov2 file.
Vito Navigator II is a Pocket PC GPS application. This format reads a Vito Navigator II .SMT track file and can work in either waypoint or track mode. The speed, heading and Dilution of Position data is written in the notes field.
Support for writing .SMT tracks is very experimental and may crash VitoNavigator II on the Pocket PC.
Support for the "Garmin GPS Database" format used by default in MapSource versions since release 6.0. By default we create gdb's of version 2. Version 2 is used in Mapsource 6.3 and 6.5.
Garmin GPS database is an undocumented file format. The basic info for this module comes from the existing MapSource conversion code.
ver - set the data format version of the output file (currently 1 or
2); 2 is our default.
via - Drop hidden route points (means calculated stuff)
cat - default category on output (1..16)
This file format (extension .bcr) is used in "Motorrad Routenplaner 2002-..." by Map&Guide. It is a route-onle format. If you own a newer release (2005...) you can also use the XML export and convert via "gpsbabel ... -i tef ..." to your preferred format.
May be there are other products from Map&Guide using the format.
Coordinates are stored in Mercator format. The calculation between this and our internal format can result in visible differences. Experience reports are welcome.
index - If more then one route are present in source data, with this option you can determine, which of this should used for the output. The range is 1 to number routes in input. If you don't use this, only the first route will be converted. name - Not every input format has a real name for routes in their data. So you can give the route a nice name. radius - Overwrites the default value of 6371000.0 meters for the earth radius. My be this can help to reduce differences.
An example with all options:
gpsbabel -r \
-i gpx -f in.gpx
-o bcr,index=1,name="From A to B",radius=6371012 \
Tab seperated export-all (except geocaching data) file format. Intended to serve as source for number-processing applications like OpenOffice, Ploticus and others. Tab was chosen as delimiter because it is a) supported by both OpenOffice and Ploticus and b) is not ',', so you can use 'sed -i "s/./,/g" <x>.csv' to adapt it to locales where ',' is used as decimal seperator. Contributed by Tobias Minich.