G7ToWin & G7ToCE

Garmin, Magellan, & Lowrance/Eagle GPS Interface Software for the PC
by Ron Henderson

(Use of G7ToWin with Windows 8 is not tested!)

Using G7ToWin withWindows 8, Windows 7, Vista, XP, Win9X/Me, Linux

IGC Track File Support

Why the name 'G7ToXXX'?

Interface Cable questions?

General GPS Information

Obsolete: G7To(W)


Changes File

The Changes File contains the 200 most recent lines of the changes.txt file. The full changes.txt file is available in each of the .zip files.

G7ToWin Standard

As September 14, 2016 I have abandoned this software in totality. I no longer have any access to a Windows PC and therefore no way to make any changes to this software.

This web page will likely remain here until Joe and or Jack decide to retire the server. I will NOT be checking this site in the future and I will no longer answer email about this software and the email link and donation links are now removed.

As to requests to release the source code, I have decided not to do that as some of it is code I was generously given by third parties and they retain the copyright on the code snippets they shared with me.

Thanks to all who helped with the G7To Family over the years (has it really been 21 years!?)--your numbers are legion, and you know who you are.

Latest build:
G7ToWin (with helpfile)
G7ToWin (without helpfile)
G7ToWinHelp Version A.00.110i   -  last updated Sept 26, 2009

G7ToWin 64 bit

Latest build:

As of October 1, 2009, I will no longer routinely compile a version without USB.

G7ToWin Without USB. See missing module.

Latest build September 8, 2010:
G7ToWin without USB



  • is compatible with Windows 95, 98, Me and XP, Vista
  • is designed to transfer data between some Garmin GPS devices and a PC.
  • has code for Lowrance/Eagle GPS devices.
  • has code for Magellan GPS devices.
  • supports download (transfer from the GPS to the PC) of waypoints, track logs, and routes.
  • supports upload (transfer from the PC to the GPS)  all of the above.
  • can be operated in 'command line mode' from a command prompt or in Windows GUI mode.
  • can edit waypoints, tracks, and tracks.
  • can convert between several file types.

IGC Track File Support

G7ToWin and G7ToCE can create IGC track files with and without a 'G' validation record. See the G7ToWin help file for more information.

The ability to validate the data in an IGC track file requires a properly formed 'G' security record be inserted into the file.  The format and contents of this record is largely left up to the creator.  The creator must also provide a means to validate the accuracy of the file based upon the contents of the 'G' security record.  Two methods are mandated, one for use in a standard DOS environment and one in a Windows environment.  Both versions are provided.

The following two programs are for use with IGC track files created using G7ToWin version A.00.186 November 15, 2004 and later or for those created by G7ToCE version 1.10 and later.

MSDOS Version
Windows Console Version

Pre MD5 Version -- if your G record is less than 9 characters long, including the G, it was written with a version of G7ToWin prior to A.00.186 or a version of G7ToCE prior to 1.10 and must be validated with an older version of the validation program. The older version is not as secure as the later version and use of the older version should be discouraged.

G7ToWin DLL for IGCShell program

The freeware program IGCShell, available elsewhere--a Google search will find it--will perform validation on several igc files at one time if a DLL is provided by the manufacturer.  I have made available such a DLL for G7ToWin.  This DLL has not been tested thoroughly by me but others have said it works 'OK' whatever that may mean.  Use it with IGCShell at your own risk. The only item in the .zip file is the DLL.  See the IGCShell documentation for directions on how to use the DLL.



For the Pocket PC, H/PC 2000, H/PC 2.11 and greater.
 Code last updated April 4, 2009
Version 1.21f


NOTE: The version compiled April 4, 2009 will be the last version of G7ToCE that will be released.

As I no longer use a Windows CE device as my PDA I have no desire to update, compile, maintain, or test new versions of G7ToCE.

Changes File

The Changes File contains the 200 most recent lines of the changes.txt file. The full changes.txt file is available in each of the .zip files.

G7ToCE is a port of G7ToWin with the Pocket PC, HP/C 2000 or H/PC Pro 2.11 as the target platform.  Currently G7ToCE supports most of the same items as G7ToWin with a few exceptions.  For instance, USB** only GPS units (e.g. the Garmin SP2610) and Street Atlas files are not supported; most other functions are supported

**USB support requires host mode and appropriate drivers for the WinCE device.  Neither is readily available for the WinCE units currently on the market.  If both items become available it may be possible to add support for Garmin USB-Only GPS units.

Early versions of the Pocket PC code was tested by the author with the HP Jornada 568 which uses the StrongARM processor. Both the internal serial port (COM1) and a Sockets CF+ Serial I/O card as COM2 have been tested. Early versions of the H/PC 2.11 code was tested on the HP Jornada 680 which uses the SH3 processor using only the internal serial port. G7ToCE has been tested by users on other Pocket PC's utilizing the SH3 and MIPS processors and according to reports it is functional with these units.

Pocket PC
G7ToCE (SH3)
Early versions of the ARM code has been tested on the HP Jornada 568 which utilizes the StrongARM processor.  I do not have access to a Pocket PC utilizing the SH3 or MIPS processors therefore I have not personally tested the SH3 and MIPS versions of the code beyond the development kit's emulator.  Use at your own risk.
H/PC 2.11
G7ToCE (SH3)
G7ToCE (SH4)
Early versions of the SH3 code has been tested on the HP Jornada 680. I do not have access to any other Handheld PC therefore I have not personally tested other H/PC versions of the code beyond the development kit's emulator.  Use at your own risk.
H/PC 2000
I do not have access to a WinCE 2000 H/PC unit and an emulator has not been provided, therefore I have not personally tested either of these two executables. Use at your own risk.
Pocket PC 2002
Early versions of the ARM code has been tested on the Hewlett Packard Jornada 568 which utilizes the StrongARM processor and executes Pocket PC 2002. I do not have a PPC 2002 device for testing. Use at your own risk.
Pocket PC 2003

Tested on the Hewlett Packard iPAQ 2215 which utilizes the ARMV4 processor and executes Pocket PC 2003. Compiled with eMbedded Tools 4.0 SP3. This version is also for the Intel XScale processor.

This is the code to use for Windows Mobile 5 and Windows Mobile 6.

Palm PC 2.11 not supported This operating system is a precursor of the Pocket PC OS and does not contain all of the C runtime library and therefore it is not supported by G7ToCE.
Asyncinit 1 Error 55
COM Port error

This error is often the result of a keyboard driver or modem driver conflict.    Try removing the offending driver.  This problem has been reported by users of both iPAQ and Toshiba units.  For the iPAQ units an offending keyboard driver can be disabled by accessing

Start->Settings->System tab->iPAQ Keyboard

and unchecking the option. There may be a similar option for the Toshiba.

See the G7ToWin helpfile for more information on COM Port errors.


G7To & G7ToW

NOTE: Version A.04.32, released August 22, 2000, represents the final update for G7To or G7ToW. I am releasing the source code to g7to/g7tow.  Feel free to modify it as you see fit.

G7To is a DOS program written in a combination of Borland C++ 3.1 and Borland Turbo Assembler Version 3.1.  The assembler is used for the Serial Port interrupt routines.  G7To is designed to execute on a MS-DOS PC, however, the program will execute properly in a Windows Command Prompt under Windows 9X or Windows NT 4.0 or greater.  If operation under MSDOS is not intended then G7ToW is recommended for use under Win 9X and Win NT/2k. G7To is a 16-bit program and therefore will NOT run under 64 bit operating systems.

G7ToW is a Windows Console version of G7To written entirely in C and compiled using Microsoft Visual C++ version 6.0.  G7ToW is functionally identical to G7To with one minor exception: data comm statistics are not supported. G7ToW is not usable on a MSDOS only platform, Windows 9x or Windows NT/2k is required to operate. G7ToW should be executed from a MSDOS command Window.

NOTE:  G7TO and G7TOW do not support Garmin units which appeared after the GPS III+.  This includes, but is not limited to, the eSeries and the GPS 162.

G7To, G7ToW

Last Updated August 22, 2000
G7To (g7to.exe, datum file)
G7ToW (g7tow.exe, datum file)
G7ToW Documentation (g7tow.pdf, change history)
G7To Sources -- Includes all files necessary to build the .exe files.

Jack Yeazel's tutorial for G7To when used with Garmin receivers and Lowrance/Eagle receivers


Why the name 'g7to'

Just where did the name G7To (G7ToW, G7ToWin, G7ToCE) come from?  When I first started using a Garmin GPS, the GPS-45, several years ago, the only free software that I could find for communicating with the unit was Gardown version 7. 

The output format of Gardown7 was fixed and I wanted to be able to transfer data from programs other than Gardown7, so I wrote a filter program that would take data from a Gardown 7 file and translate it to several other program formats.  At the time, the ones I supported were Garmin64, PROJ and NAD.  

The first G7TO program translated from Gardown7 (G7) 'to' other programs so...G7To.   I later added the ability to upload/download data from the Garmin units and the 'filter' aspect was less useful, but so many people were using the software that I was stuck with the name.

When I later ported the software to a Windows Console program I simply added the 'W' for G7ToW.   After adding a Graphical User Interface G7ToWin was born. Later on I added support for some Windows CE devices--thus G7ToCE.

The moral of this story is simple:  Be careful what name you give to software--the uglier it is, the more likely you are to be stuck with it!


Missing Module Error

If running on a Win95 or Win98 PC which does not support  USB you may receive the following error message at startup:

The G7TOWIN.EXE file is linked to missing export SETUPAPI.DLL:SetupDiGetDeviceInterfaceDetailA

SetupDiGetDeviceInterfaceDetail is a procedure used by G7ToWin when setting up the USB driver to access Garmin devices. If your PC does not have a USB port then this error can occur. If you do not set the COM port to USB in the File-Configuration-General tab then you may be able to 'click OK' and safely use this version of G7ToWin but it is preferrable that the no-USB version of G7ToWin be used to avoid this error and any possible complications.

If your OS will not allow a program with a missing export to continue (i.e. Windows 95) you must use the version of G7ToWin created without USB support.


G7ToWin on Windows XP, Vista, Windows 8, Windows 7


G7ToWin is fully compatible with Windows XP SP1 and later.

Windows 8

I have no plans to become involved with Windows 8 in any manner. Therefore, G7ToWin has not and will not be tested by me using Windows 8.

Windows 7

Preliminary testing indicates that G7ToWin operates as designed under Windows 7.


I have now tested G7ToWin with Vista Ultimate 64 SP1 so Vista, at least the Ultimate version with SP1, is supported. The only major issue I have discovered is that one should run G7ToWin as Administrator (using an administrator account is not sufficient, one must 'Run As Administrator') or there may be some difficulty saving a file to some locations.  This is due to the way User Account Control (UAC) is implemented on Vista.  If one turns off UAC (not recommended for most users) or selects 'run as administrator' then G7ToWin executes exactly the same way on Vista Ultimate 64 SP1 as it does on prior Windows versions with the following exceptions:

  • Windows Vista does not come with WinHelp so the helpfile used by G7ToWin cannot be accessed.  The solution to this problem is to install the WinHelp subsystem from Microsoft's web site: WinHlp32.  If Microsoft should happen to move the link a simple Google search for 'winhelp vista' will take you there.
  • There is a bug in Vista that can cause a system Beep each time the selected item in a ListView is changed if a program uses a classic ListView which is the case for G7ToWin. 

There are a few solutions to the 'Beep' problem. The first solution would require G7ToWin to switch to a 'Windows Themed' version of the ListView which would in turn require dropping support for those versions of Windows prior to XP.  I chose not to implement this solution.   If this Beep happens and is annoying (as it was to me) then there are two other solutions for this problem.  They can be found in a Microsoft Knowledge Base article.

The 2nd method in the article, deleting the .Current registry subkey, in addition to being performed using the Registry Editor, can also be implemented with a small registry (.reg) file. You can easily create this file using Notepad. Type or copy all of the text between the horizontal lines below (beginning with REGEDIT4 and ending with the closing bracket ']') into a blank notepad page and save it into an appropriately named file with a .reg suffix. I used "ListView_Vista_Beeps_OFF.reg" and saved it on my Desktop. Windows Vista will sometimes re-create this registry entry and the beeps will return. To execute the file double-click on that file from Windows Explorer.

Please note that modifying the registry incorrectly can be harmful to your system up to and including requiring a reinstall of the system. If you chose to modify the registry you do so at your own risk.





Actively Supported Devices

G7ToWin actively supports the following GPS devices:


RS-232: Virtually all of the Garmin units that have the ability to communicate via a RS-232 port are supported.

USB: For those Garmin units that communicate solely via the USB port the support is not as complete:

  • USB, Supported: In 'normal' operation G7ToWin requires that communications with the Garmin units be via the Garmin Interface Protocol. This includes virtually all of the Garmin units bearing the 'GPSMAP', 'eTrex', and 'StreetPilot' designations.
  • USB, Partially Supported: Several of the more recent Garmin units provide a 'disk drive' when connected to the PC and many if not most of those units do not support the Garmin Interface Protocol.   Communications with these units is often accomplished by the PC reading/writing a file on the 'disk drive' provided by the unit.  G7ToWin may support those units. For example, the following nüvi units have been tested: nüvi 760 and nüvi 885T and G7ToWin will work with those units.

For Garmin units not falling into one of the above categories support is unknown. To my knowledge they have not been tested with G7ToWin.

Working with the Garmin nüvi series
The nüvi line of Garmin car units do not use the Garmin data transfer protocol.  These units utilize .gpx files on the 'disk drive' mentioned above. These files can contain waypoints, tracks, and routes.  G7ToWin can read the .gpx files found in  X:\Garmin\GPX where X: is the drive created by the nüvi when a USB connection to a PC is established.  The files which are of interest are Temp.GPX and Current.gpx.

The nüvi's current Waypoints, Tracks, and Routes are stored in the file Current.gpx which is created by the unit. G7ToWin should not be used to write to the file Current.gpx.  After arranging your data in G7ToWin, save it as X:\Garmin\GPX\Temp.GPX and then disconnect the nüvi from the PC. Upon restarting the GPS the data in Temp.GPX will be read and merged into the file Current.gpx.

Please note that the nüvi will not automatically read the routes from the Temp.GPX file, you must go into the 'My Data' menu on the GPS and tell it to read the routes from the file.  You also have to do this when MapSource writes routes to the unit.

GPS Display download: G7ToWin will download the display bitmap for a very small and restricted set of Garmin GPS units and LEI units. This is no longer actively supported. My reasons for dropping support are in the G7ToWin helpfile. For those who desire the ability to download the Garmin display bitmap I suggest you download Garmin's own xImage. A search of the Garmin web site will not find this program. Apparently xImage is no longer linked from the main Garmin web pages (or if it is I can't find it) but xImage can currently be found by a Google search for 'xImage Garmin'. It is unknown if Garmin will continue to provide a link to download xImage, but as it is no longer listed on the main Garmin web site it is doubtful.

G7ToCE supports the same units that are supported by G7ToWin with one exception: Garmin USB units are not supported.  All communications must be performed via the RS-232 port.

If a GPS device is not in one of the above it is not actively supported and support for it is not anticipated.

Partial support is provided for: Lowrance/Eagle, Magellan


Partial Support

March 6, 2009

The following items are partially supported. I no longer have the ability to test my code changes on these units. Therefore, while I will not remove the code for these units from G7ToWin I will no longer be improving upon it--except for rare and minimal changes.

Magellan:  Those units which communicate via the Thales Interface Specification 2.6 using the RS-232 port are supported.  The Magellan units which use USB are not supported.

Lowrance/Eagle: The units supported are those that communicate via Lowrance Protocol 1 or Protocol 2. This includes primarily the 'Map' units, i.e. Global Map Sport and earlier units. Later units, including the iFinder series, are not supported. For those LEI units supporting P1 or P2 G7ToWin will upload and download 'events' in addition to the normal waypoints, tracks, and routes.

Win9X/ME: I no longer have the ability to test G7ToWin on the Operating systems Windows 95, Windows 98 and I never had the ability to test on Windows ME. If the standard version of G7ToWin is executed under some versions of Windows 9X/Me a missing module error can occur. This error can be eliminated by using the no-USB version of G7ToWin.

I will continue to update and provide a link to the no-USB version of G7ToWin which should continue to run on all versions of Windows 9X and Windows ME. Due to the mechanics of the operation (compiler on a different system) the no-USB version may or may not be updated at the same time as the main code.

If anyone is using Windows 9X/Me and/or a LEI GPS and has problems with the no-USB version of G7ToWin I will attempt to answer questions but any answers to questions involving Win9X or WinME will be general in nature.

NOTE: G7ToWin requires version 5.8 or later of comctl32.dll, the common controls dll. If your system does not have this version or a newer version installed then some of the controls will not work correctly.  If you have Internet Explorer 5 or later installed you already have a proper dll.

To use the context sensitive help functions available starting with version A.00.163 you must have version 5.8 or later of comctl32.dll. A suitable version of this dll is provided with all versions of Internet Explorer 5.0 and above. For Windows 95/98/Me you must have the Microsoft Layer for Unicode installed on your machine. This can be obtained from Microsoft.


Page last updated: February 3, 2013 2:30 PM PDT