Globalsat DG-100 works on a mac.

Posted by Kevin Jaako
Sun, 01/06/2008 - 02:09

Globalsat DG-100 Data Logger

A few months ago, Cathy & I bought a Globalsat DG-100 Data Logger straight from the local distributor in Taiwan. I was pretty thrilled with it until I tried hooking it up to my powerbook and learned that Globalsat only wrote their lousy, buggy software for PC.

An exhaustive web search turned up a few surprise results from friends Boris Mann and Richard Eriksson (neither of whom had luck with the device either) and unfortunately not much else. There was talk of coming support for the DG-100 in GPSBabel, but the "coming soon" tag had been up for months with no results. Update (09/03/08): GPS babel has recently released a new version with DG-100 support!! (skip this hack, and go download the new version!)

Recently I stumbled across a beautiful C script written by Mirko Parthey that had it pretty much figured out. I hacked together a GPX output function and my DG-100 and my Mac are now very good friends!

GPS track: Takikawa - Tokyo

First, you will need to grab the PL2303 USB to serial driver from sourceforge. Then download (or install from CD) Xcode from Apple.

Once you're done, grab my revised copy of Mirko Parthey's dg100.c which includes several small bug fixes and GPX output mode and you're ready to go. Compile the program with gcc dg100.c -o dg100read and run it from terminal using ./dg100read > myGPSfile.gpx to redirect output to file. To change device functions (read/delete/etc), uncomment the desired lines from the script and recompile.

Its pretty unglamorous, but it's simple, reliable and it works on a mac.



A few things to note:

- Don't fall into the trap of only installing Xcode gcc! you need the header & library files. Install it all!

- The DG-100 mounts on my system as /dev/cu.PL2303-3B1. If this is different for you, cd to /dev/ and find the appropriate device name and stick it in the C script.

- The PL2303 drivers are a little strange. The USB port you have the DG-100 connected to will affect it's device name. "3B1" is the address of my powerbook's right-side USB port. You'll either have to keep using the same USB port, or recompile if you ever need to change ports.

- sometimes port_close() doesn't end the session with the DG-100 properly. If the program stops responding normally, just reboot the DG-100.

Comments

Kevin Jaako - Wed, 04/16/2008 - 23:05

Hi Abyuri,

sorry. At this time, I have no intention of developing a front-end for the DG-100 download script. The script was inteded as a "quick-fix" to tie me over until gpsbabel released a DG-100 patch, which they've now done!

I recommend you head over to their website and download the new version!

Cheers,

Kevin Jaako

abyuri (not verified) - Mon, 03/24/2008 - 19:50

any luck you or someone to make a GUI for non-terminal-people? :-)
for now I like better to use it through parallels (I have it just for the DG-100...)

Kevin Jaako - Sun, 03/09/2008 - 11:17

Cameron:

Looks like GPSBabel now officially supports the DG-100 device.

Wow! About time.
Thanks for the update, looks like Mirko Parthey's script can finally be retired! GPSBabel+ is a great program, I'm glad they finally support the DG-100.

Charlie:

One bug that's still bothering me is occasional absurd elevation readings -- in the neighborhood of 429490 meters.

I noticed that as well, but I didn't address it. I wonder if its a bug in the device, or in downloading the data. I'm interested to see if GPSBabel address it in their new release.

Cameron Watson (not verified) - Fri, 03/07/2008 - 09:40

Looks like GPSBabel now officially supports the DG-100 device. Looks as though you still need the driver, however, could be a more streamlined method.

http://www.gpsbabel.org/news/20080217.html

Charlie Loyd (not verified) - Fri, 03/07/2008 - 09:04

Thanks very much. I was working on some cleanups to that code, but never got as far as you. The one bug that's still bothering me is occasional absurd elevation readings -- in the neighborhood of 429490 meters. Seems reasonable to assume it's some kind of underflow, but that's all I have to go on at the moment.

Kevin Jaako - Tue, 01/29/2008 - 14:36

Re: Chris Fowler

Can I get a real-time signal from this device, or is it only suitable for downloading stored 'tracks'. Reading the product web pages does not answer this question.

Hi Richard, the feature you're looking for is called "GPS mouse mode" and yes, the DG-100 claims to support it, however I've never tested it. Mirko Parthey's original dg100.c script contained a function to enable GPS mouse mode, which I left as-is in my release. If you do test it out, I'd be interested to hear your results. I never played around with it.

Also, using the script you suggest, will this allow me to download the KML tracks for the unit?

Yes, through a conversion program. Download the GPS tracks in GPX format, then stick it in GPS Visualizer to convert to KML. (GPSBabel can convert to KML as well, however it's not as pretty.)

Good luck!

KJ

Chris Fowler (not verified) - Fri, 01/25/2008 - 22:22

I am currently searching for gps tracker/reciever to connect with my MacBook Pro so finding this entry was just what I needed. However, I have one question you might be able to answer. Can I get a real-time signal from this device, or is it only suitable for downloading stored 'tracks'. Reading the product web pages does not answer this question. Also, using the script you suggest, will this allow me to download the KML tracks for the unit?

Sorry to ask you all this, but until I get ahold of a unit I can't test these things out...and I don;t want to buy until I'm sure I can do what I want. Catch22 really.... So any thoughts on your experience would be great.

Thanks

Yann (not verified) - Mon, 01/21/2008 - 18:30

thanks !
i'm not used to terminal and driver queries but it worked for me too.
i tried the original dg100.c, wondering why it did not work.
you did a great job
bye

Morten (not verified) - Mon, 01/14/2008 - 18:01

Great app! Thank you so much, it worked on my MacBook Pro with a intel processor, the name of the device was now "cu.PL2303-0000101D" (had to be changed in the c file before compilation.) This was the right side USB port.

Kevin Jaako - Mon, 01/07/2008 - 11:18

Re: Richard Akerman

"Do you know if this is a different Prolific USB driver from the one the gpsbabel was trying to get to work?"

As far as I understand it, Globalsat uses the PL-2303 microcontroller (manufactured by Prolific) in their DG-100 device. The open source PL-2303 driver is the only thing that has worked for me, in getting my Mac to talk to my DG-100.

I'm not sure that GPSBabel ships with device drivers... I think the driver is simply expected to be present and working on the system. GPSBabel will try to use whatever is installed. (i think)

Richard (not verified) - Mon, 01/07/2008 - 05:22

I had to change the 3B1 to 0000103D at the appropriate point in the C file. It kind of sucks that I have to hard code that, but hey, it works! Thanks Jaako!

Richard Akerman (not verified) - Mon, 01/07/2008 - 01:41

That's great news. Do you know if this is a different Prolific USB driver from the one the gpsbabel was trying to get to work?