I found the basic idea at http://www.jens-seiler.de/etrex/datacable.html but I found that simple construction would sometimes make bad contact so I decided to improve on it by using gold plated, spring loaded, contacts.
You can make one too. Here's what you will need:
To start cut a long strip of 18 mm wide. I measured mine as 17.8 mm wide. You can always file it or shave it down a bit but you want it to fit tightly in place with no appreciable jiggle.. Round slightly the two corners just to make insertion easier. The length is not important so leave it extra long and you can always cut it down at the end. That way, if you screw up, you can just cut off the bad end and start over again. Once you have a strip of the correct width you can insert it in the slot and you can see it needs a slot cut so it clears the "key". (I suppose you could just get rid of the key with a utility knife and I have thought of doing this because you cannot insert this connector the wrong way even if the key was not there.)
Here is a template you can use. Printed at 300 DPI it should be 17.9 mm wide.
The rectangular holes are for the contacts. The rectangular notch on the right is for the card to clear the key on the GPS unit and the semicircular notch, while not essential is there so it clears the hole that is there. This notch is easy to make with a utility knife or circular file and may come in useful later, as we shall see. You can probably cut the rectangular notch out with a utility knife even without the template.
The circular holes are easy to drill. The oval holes can be made bry drilling to holes and then using a utility knife to join them. The position of these is not critical and you may place them closer if you wish to make the connector shorter or you can even get rid of the ovals and only use a nylon tie to hold the cable.
The trickier holes to make are the rectangular ones. They need to be precisely positioned and the fact that two of them are so close to the key notch makes them tricky to make without damaging the card. Here is where the template comes in handy. You can print it on label (adhesive) paper or you can print it on a Post-it note. To do this just print the template on a regular sheet of paper. Now Place the sticky part of the Post-it over the printed connector end part. You do not need to have the entire template on the Post-it, only the end where the rectangular holes are. Now print the same template on the same sheet and the Post-it will have the part you want. Cut it around and place it on the card so it is exactly in place. This gives you the location of the rectangular holes with respect to the edges.
Making the rectangular holes can be tricky. There are several possible ways.
With a utility knife: You can use the tip of your nail to guide the blade and to hold the template in place. If you do not hold the template then it will move as you cut. This way will require time and patience but it is possible. Go slowly and carefully or you will mess up and have to start over again.
You can use a small screwdriver and sharpen the end into a chisel. Make it 1.5 mm wide (the width of the holes) and as sharp as you can and slowly punch around the holes. Again, work slowly and carefully. This system is much easier.
You can also drill two holes and then enlarge them into the rectangle using a utility knife. In all cases you will need to use the ustility knife to get rid of any burrs and generally give the holes a good finish.
At this point you have the card with all the necessary holes and we now need the contacts. I have used gold plated contacts taken from an old Centronics parallel connector from a printer. I wanted the gold plating on the contacts because other materials may soon give problems. I shaped the contacts to the shape I wanted, being very careful not to damage the gold plating. There are plenty of old connectors where you can find gold plated contacts you can use. Use your imagination.
Now cut a narrow strip from the other end of the card (so it will be the same width) and place it across the top of the metal pins where you want to hold them in place. Then apply heat with the soldering iron and weld the upper strip to the lower card. In the next picture you can see the pins alread secured in place and we already have a functional connector.
Some people prefer to use epoxy (2 component glue) but over the years I have learnt that you can use plastic in most situations which is much faster and cheaper. Polycarbonate plastic melts very well with the soldering gun and is quite workable while soft. It sets as a hard plastic. It is the kind used for transparent bodies of cheap ballpoint pens. These make great melting sticks. PVC tends to char easily but is more flexible. You can easily solder two PVC parts together but you cannot work it like Policarbonate to make globs of melted plastic you can work with. The good thing is you can use polycarbonate to patch PVC. Once you have done this a few times you will mostly forget about epoxy. And the plastic is free too. I am not sure about the fumes though. The thing to do is to work in a well ventilated area.
Getting back to the connector, we now have a working connector. The next step is to position the cable through the strain relief holes and solder the four conductors to the four pins. Phone cable with four conductors works well because it has the right number of cunductors and is quite flexible. I suppose if the cables were twisted in pairs it would be better but phone cable has worked fine for me.
While not essential, I like to cover the connector with a piece of card which covers and protects the back of pins and solders. Here you can see a finished connector, The second piece of PVC card is held in place by polycarbonate which I melted and worked with the soldering iron. The polycarbonate also holds the end of the cable and gives the whole thing greater rigidity.
OK, now we need to go to the other end of the cable and connect the DB9 connector.
If you want to power the Etrex externally you need to supply 3 V with a current capacity of about 200 mA. Although average current consumption is about 150 mA there are short surges up to almost 200 mA and at startup there is a surge of almost 400 mA. I have designed and built an adapter which takes current from a USB connector (5V) and lowers it to 3 V. Instead of using a zener diode as a reference I use a couple of LEDs which also serve as a visual indication that the USB port is supplying voltage. I mounted this circuit in a tiny box (indicated by the blue line in the diagram). The four-conductor cable from the GPS comes in one side and the USB and serial cables go out the other.
If the connector at the GPS is not quite tight and can slide out with relative ease this can be prevented by providing a pin that will slide into the hole.