USB to Virtual Serial Ports for GPS’es
Really enjoying this Garmin eTrex Venture HC, and with nicer weather on its way it’s time to get back into GPS’ing and mapping with it.
Good little unit, of course if you are looking for something for road navigating it can be used for that, sure; but it is more geared toward your outdoor activities.
Yesterday I used the road navigation features, both out in the boonies as well as in the village of Gouverneur. Worked quite nicely.
Right now, I’m still just learning the in’s and out’s of the device, and learning a lot more about mapping and vector maps and converting everything to Garmin format.
I did discover that there are a number of mapping programs that assume the GPS that is connected to the computer uses a serial port, instead of a more ‘modern’ USB.
Throw in Google Earth and other programs that SHOULD have GPS interfaces but don’t (Google Earth Plus does, but not regular free Google Earth)…
Fortunately there are ways around that for both.
For example – Franson GPSgate. This is a shareware program with a 14 day expiration date that creates virtual serial ports from USB connections.
But there must be a freeware or Opensource driver or program that does the same somewhere – something that takes a USB port and makes some virtual serial ports for other programs to use? If anyone knows of one drop me a line so I can post the link, and try it out.
I gave a free program from Garmin called Spanner a try, which is supposed to do the same thing. It’s made for particular models of Garmin GPS’es but the rumor was that it worked with many other Garmin GPS’es also. No luck with mine, stuck with GPSGate for now.
GPSGate seemed to work fine on everything I tried it on – including an older version of MS Streets & Trips as well as the excellent radio mapping program RMWDLX.
A few good helper programs are the free Earth Bridge and the free version of GooPS (there’s also a pay version with more options). Both are good as a sort of go-between between GPSGate and your serial-only GPS application, though the GPSGate seems to work for this fine by itself. These programs just make it easier.
Of course, ideally the GPS mapping and waypoint programs themselves would be upgraded so that the regular Garmin USB driver would work, instead of relying on using serial ports; but that’s not always the case.
So far the free EasyGPS (freeware), Topofusion (shareware), Quakemap (shareware), MS Streets & Maps 2002, ExpertGPS (shareware), Google Earth, & USAPhotoMaps (highly recommended freeware) all work fine. I haven’t found one thing that doesn’t work. I’ve yet to try Netstumbler though, but I assume it will also (if it doesn’t already have a USB option).
With ExpertGPS I did discover there was a trick to using this program with the built-in USB option instead of serial – you have to pick the “C” version of your particular Garmin GPS. So the virtual serial port wasn’t needed for it after all, though it worked fine.
And in USAPhotoMaps it actually works better with the virtual serial port then the native built-in USAPhotoMaps Garmin USB setup, at least for me.
Also, GPSGate has to be shut down before you can use any program that will use the Garmin USB drivers themselves. In other words – you can’t use the Garmin Mapsource program while GPSGate is running. Though I found that you could get around this by making Mapsource use a serial port instead, but why would you want to?
Another program I want to try is the new GPSBabelGUI which now interfaces directly with GPS receivers and can output any kind of file, including KML files that Google Earth uses.
I imagine using the live waypoint files from the GPSBabel program would allow programs like WorldWind to work with a GPS too, in real-time? I could be wrong, but is on my list of things to try.
Google Earth is amazing when using the above programs. Here’s a screenshot:
Garmin GPS Screen Capture
Cool little program from Garmin called ‘ximage‘. This basically lets you do a screen capture from your Garmin GPS. See the examples under the next heading.
You can also upload screens. Supposedly you could change the startup screen, etc.
But the other interesting thing is that you can also download and upload the POI icons, individually. So I assume you could make your own custom icons and put them on the GPS. Another thing for me to try at some point. Some of the GPS programs I listed above also let you do this.
Why isn’t there an icon for water? I’ll have to make my own.
My Own First Map Upload
First success of creating (from downloads) my own maps and uploading them to the GPS. Above in these screen captures (taken with the ximage program mentioned above) you can see my improved Watertown road maps (improved over the basemap that came on the GPS).
On the left is the street map level zoom. I did just Watertown at first, but then added various other parts of Jefferson County and then parts of St. Lawrence County that I needed more detail on. See more about stitching maps below.
The whole process of converting the maps is kinda complicated, and takes about four different programs to complete the whole process but it is well worth it. But now that I have gotten used to doing it, I can grab and convert a map in no time.
And I need to start uploading some of my maps to some of the free Garmin map sites that don’t have improved coverage for my area yet. And at some point I also need to upload these all to my blog here for other’s to use.
Next I want to put on some topographical maps too.
Here’s some great help from Leszek Pawlowicz on how to do the above. Indispensable, as the instructions I had read before were much worse, and there were more steps and calibration (gah) involved.
Using the JAVA application JOSM made it ten times easier then using the assorted other programs that would need to be used, and you can even just pick a section of a map using one of JOSM’s plug-ins, latitudes and longitudes in a square, or use OpenStreepMap.org to find and zoom in on a location and then select OSM maps.
Once it’s in JOSM you just save it as an .OSM file in a new directory (best under the Garmin program’s root), use mkgmap (or the nice GUI interface Mr. Pawlowicz created – I found that you need the .JAR file as well as the GUI in the same dir as the map you are converting), then use MapSetTool to add it to Mapsource for upload.
The only problem is the JOSM program won’t download real large areas due to server limitations. For a larger area I used the free version of GPSMapEdit (as per Mr. Pawlowicz’s instructions) to stitch together maps, instead of overlaying them in Mapsource (of which I didn’t have much luck with).
For example – I downloaded the Watertown street map (MUCH better then the stock basemap of course) from OpenStreetMap.org using JOSM, then a part of Jefferson County with a little overlap. Then I did the whole conversion deal, and stitched the maps together, had the GPSMapEdit check for problems (which there were – overlaps, duplicates, etc), fixed them, and then re-created the a new map and uploaded it to the Garmin. Worked great.