GPSBabel

GPSBabel converts waypoints, tracks, and routes between popular GPS receivers such as Garmin or Magellan and mapping programs like Google Earth or Basecamp. It contains extensive data manipulation abilities making it a convenient for server-side processing or as the backend for other tools. GPSBabel does not convert, transfer, send, or manipulate maps, but rather data that may (or may not be) placed on a map, such as waypoints, tracks, and routes.