On Wed, May 7, 2008 at 6:50 PM, linux newbie <firsttimelinux@yahoo.com> wrote:
Hi all,
I recently got a Garmin etrex Vista Hcx and was delighted to see that it is perfectly recognised by gpsbabel.  Thanks everyone!  I wanted to ask how you figured out the interface, is there documentation from Garmin somewhere about all the codes?

That's actually two different questions.

In the early days, Garmin was, uuuh, less than forthcoming with accurate developer info.  I had reverse engineered their USB protocol and had it working (admittedly with some excuses) and released for a couple of months before they released their USB specs.  After a couple of iterations of that doc, it eventually matched reallity.  :-)

These days, developer.garmin.com has reasonably complete and accurate specs for the pieces they choose to document.
For my old etrex Vista (grey lcd version) I use a much simpler app called garble to download tracks and waypoints from the unit, as it uses a simple text format including altitudes, something I wasn't able to get

GPSBabel has a number of formats that include alt.  If you want a simple one that includes, it look at gpsutil or pcx, for example. sportsim and garmin301 are others that come to mind, but there are surely others.

And if you don't like any of those, creating new ones is trivial via our style scheme.  http://www.gpsbabel.org/htmldoc-1.3.5/Styles.html

gpsbabel to do.  Another thing I'd like to do is use garble's screenshot feature, to get a snapshot of the receiver's screen.  However garble chokes on the new Hcx as it seems the packet ids etc are all different - so I was wondering if you managed to find some Garmin documentation on the interfaces?  Then maybe I can tweak the

I haven't heard of Garble.  Garmin's screen dump protocol isn't documented and it's not something I (or apparently) anyone else has wanted badly enough to reverse engineer and implement in GPSBabel.

It's a bit out of GPSBabel's charter, but I'd probably let it in as it's probably not *that* complicated to implement. [1] The work would surely be in figuring out the protocol.  I doubt it's even a couple hundred lines of code as the device surely ships it to the host in something that maps to a bmp or a gif pretty easily.

Patches welcome. :-)


[1] I know how much I like being told things are simple by people that aren't doing the work, so I thought I'd see how it feels on the other end of the stick.