GPSControl for the Visual Studio .NET 2005 and Visual Studio 2008

The GPSControl (VS 2005, download here, about 900 KB) (VS 2008, download here about 80 KB - this fixes a problem under Vista x64, this is the control only, download the VS 2005 version for an example of its use)  is comprehensive serial GPS decoder solution provided free of charge * (see the footnote).  Simply copy the GPSControl.dll file to your .NET solution, add it to your toolbox, and then drop the GPSControl on your form.  The control allows you to incorporate GPS features in you application as simply and easily as possible.  I have included a simple VB 2005 example in the download.  Here is a screen shot:

GPSControl automatically detects a GPS receiver that is connected to your desktop PC (if multiple receivers are connected, only the first one found will be used).  As soon as the GPS receiver has been detected, the NMEA-0183 data stream that it outputs will be decoded and the results may be used by your application without any additional "fuss."

Simply enable it by calling the GPSEnable function as shown here. 

If GpsControl1.GPSEnable(True) = True  Then

'you are ready to go

You may use the GPSDecoded event to display data.  When operating normally, the GPS receiver will output a full set of NMEA-0183 sentences each second, and the GPSControl will generate a GPSDecode event one time per second.  The GPSControl properties provide the decoded data in the most commonly needed form.  You can add your own simple code to covert speed from knots to Km per hour (for example) by multiplying the Speed property by 1.8532.  See the included example -- it includes all but a couple of specialized features.

Special Note: Altitude may not be correct, even though a valid navigation solution is provided!  Four satellites, or more, are required to correctly calculate altitude, but only three satellites are needed for a valid navigation solution.  Thus, use the altitude information with caution.  Check to make sure that at least four satellites were in use for the current navigation solution (not three) -- and use all navigation data with care; GPS receivers have been known to err.

* Standard caveats: This DLL is provided free, without warranty of any kind. You are free to use it for any purpose that you deem reasonable, but the author is not responsible for any such use (or misuse), or for any damage that might result from its use. Treat this software like you would any beta software. It may work as described, but if it does not, you received what you paid for.

Source code for this control is available to readers of my book, Visual Basic Programmer's Guide to Serial Communications 5 published September 2014 (click here for information).  Send me email about this ( 

Return to Hard & Software