Background
I like to hang out with a GPS device when I travel. It is a nice way to capture the coordinates of places I wish to visit again, or to share through my web site.
I own two low-end hand held GPS devices made by Garmin - the eTrex, which uses a serial connector, and the eTrex HC, which is a more modern model, with a USB connector, a color screen and some other (very small and faint) bells and whistles. eTrex, with its monochrome screen is still sold, but the more advanced HC has been supplanted.
Both handhelds use high sensitivity chip, which makes them well suited for use in the rain, in forests, or around high rise buildings. The main difference (other than the connector) is that the serial eTrex, with its limited waypoint naming (six uppercase names, no comments) is actually more user friendly. Its limited capacity forces the user to download the data, erase memory and start anew. In contrast, the HC tempts you to keep the data inside, since you are much more invested in it (you can use upper and lower case names, you can add long comments, you can display multiple tracks in different colors and so on). The end result of the convenience is that clutter (old points, tracks and routes) tend to stick around, and soon enough it is tough to process the data, offload it to the computer, etc. So in a way, this is a curse in disguise - like the DVR loaded with shows so old you can't remember what they are.
But I digress.
The Point
So, as you can imagine, I prefer to use the serial GPS for my data collection. This is fine and good while I am home, but on the road, finding a laptop with a serial connection is not that easy. So I have been taking the USB GPS for longer trips. I use a software program called GPSMan to download and process the data, and Linux as my OS.
But recently I decided to try something new. I took the serial eTrex, with its serial cable, and added the Keyspan Serial to USB connector (I also took the USB GPS just in case). I figured that it would be a nice challenge to try and use the serial GPS with a USB laptop, something to do when it is too rainy to go out (which is quite common in Central America and the tropics).
I collected my data, and looked for the cables. I connected the Keyspan to my USB port, and as a simple user (not even root) typed the following at the prompt:
modprobe keyspan (this loads the module needed to run the Keyspan)
lsmod |grep span (this command lists the modules, just to make sure it was loades), with the following response:
keyspan 37020 0
usbserial 37173 1 keyspan
I connected the GPS to the serial cable and then to the Keyspan, typed the command in a terminal:
gpsman& (this runs GPSMan in the background and lets me continue using the terminal)
I turned the GPS on, and used GPSMan to connect to it. I did not load any garmin USB drivers, or anything - it was set to connect to a USB device (/dev/ttyUSB0) and use the Garmin protocol (NOT the Garmin USB protocol).
Without lifting a finger, the device was recognized, and in 30 seconds (probably a lot less), the data was no my computer, ready for processing.
The only difference from using a desktop with a serial port was that I was not able to turn the GPS off from the computer, something that GPSMan allow me to do when I am directly connected. But that's a small price to pay for using a serial device with a USB-only laptop...
Recap
Want to use a Serial GPS with a USB laptop running (Ubuntu) Linux? Here are the steps:
1. Get the Keyspan serial to USB converter.
2. Connect Keyspan to computer and type modprobe keyspan.
3. Connect GPS to serial port on Keyspan.
4. Type gpamsn &
5. Use GPSMan to d/l or upload data (I only tried download at this point, but it should work both ways)
No comments:
Post a Comment