Tripmate GPS

From Sfvlug

Debugging the Tripmate GPS

A few quick notes on the serial GPS DeLorme Tripmate. Notes compiled by G4rlic & DualDFlipFlop

Contents

Working with Linux

Inside the Tripmate

Connecting

Serial port parameters for NMEA: 4800 n81, NO hardware OR software flow control. While most of the testing here was done using cat, echo and gpsd, it's possible that minicom correctly initialized the port before we did any of this.

Now, to use this bastard in Linux

The traditional tools of cat and echo are useful here, as is GPSD, sort of. Almost all of this has to be done as root, excepting telnetting to gpsd.

As it turns out, echo will raise the DTR line high to send the data, then lower it again. This trips the power reset for this particular unit. As such, the next time you cat from the serial port, you get the PWRID sentence, and then ASTRAL repeated a bunch of time. This was verified using an RS232 LED monitor.

To solve this problem, you need to use your serial port in a certain sequence:

Open the port using cat.  e.g.: cat /dev/ttyUSB0 (in my case, using a USB->Serial port adapter)
Send the "ASTRAL\\r" command sequence to the serial port.  e.g.: echo -e "ASTRAL\\r" > /dev/ttyUSB0 

That should correctly initialize the unit. Note the -e to interpret escape sequences, I'm reasonably sure this is necessary.

Now for getting it to work with gpsd.... This is tricky, I don't think we've been terribly successful. But in short, what we've done is cat the serial port and pipe it into gpsd, telling it to use /dev/stdin and not to daemonize. e.g.: `cat /dev/ttyUSB0 | gpsd -N -f /dev/stdin' & `echo -e "ASTRAL\\r" > /dev/ttyUSB0'

When telnetting manually to the gpsd port, I was able to issue 'r\ ' and 'd\ ' once or twice, and occasionally get a response!

What's important when testing this stuff though is using that serial port line monitor. The pulsewidth of the RD line's LED will tell you whether or not the unit is sending NMEA data at you, or just ASTRAL. (e.g.: long width = NMEA, short width = ASTRAL) Also, if you see the DTR line blink, you need to echo the ASTRAL\\r command to the serial port.

An example string of data spit out by the Tripmate

$PRWIRID,12,01.05,07/29/96,0003,*46
$GPRMC,235947,V,3347.8484,N,11801.1729,W,0.000,0.0,120895,13.8,E*47
$PRWIZCH,00,0,00,0,00,0,00,0,00,0,00,0,00,0,00,0,00,0,00,0,00,0,00,0*4D
ASTRAL
ASTRAL
ASTRAL
ASTRAL
ASTRAL
ASTRAL				//Entered ASTRAL and hit the carriage return
ASTRAL      
$GPRMC,000003,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*46
$PRWIZCH,15,0,15,0,16,0,15,0,15,0,15,0,16,0,15,0,15,0,15,0,15,0,15,0*4D
$GPRMC,000004,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*41
$PRWIZCH,15,0,15,0,16,0,15,0,15,0,15,0,16,0,15,0,15,0,15,0,15,0,15,0*4D
$GPRMC,000005,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*40
$PRWIZCH,15,0,15,0,16,0,15,0,15,0,15,0,16,0,15,0,15,0,15,0,15,0,15,0*4D
$GPRMC,000006,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*43
$PRWIZCH,15,0,15,0,16,0,15,0,15,0,15,0,16,0,15,0,15,0,15,0,15,0,15,0*4D
$GPRMC,000007,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*42
$PRWIZCH,15,0,15,0,16,0,15,0,15,0,15,0,16,0,15,0,15,0,15,0,15,0,15,0*4D
$PRWIZCH,15,0,15,0,16,0,15,0,15,0,15,0,16,0,15,0,15,0,15,0,15,0,15,0*4D
$PRWIZCH,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0*4D
$GPRMC,000009,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*4C
$PRWIZCH,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0*4D
$GPRMC,000010,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*44
$PRWIZCH,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0*4D
$GPRMC,000011,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*45
$PRWIZCH,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0*4D
$GPRMC,000012,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*46
$PRWIZCH,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0*4D
$GPRMC,000013,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*47
$PRWIZCH,16,0,17,0,17,0,17,0,16,0,17,0,17,0,17,0,17,0,17,0,16,0,17,0*4C
$GPRMC,000014,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*40
$PRWIZCH,16,0,17,0,17,0,17,0,16,0,17,0,17,0,17,0,17,0,17,0,16,0,17,0*4C
$GPRMC,000015,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*41
$PRWIZCH,16,0,17,0,17,0,17,0,16,0,17,0,17,0,17,0,17,0,17,0,16,0,17,0*4C
$GPRMC,000016,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*42
$PRWIZCH,16,0,17,0,17,0,17,0,16,0,17,0,17,0,17,0,17,0,17,0,16,0,17,0*4C
$GPRMC,000017,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*43
$PRWIZCH,16,0,17,0,17,0,17,0,16,0,17,0,17,0,17,0,17,0,17,0,16,0,17,0*4C
$GPRMC,000018,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*4C
$PRWIZCH,17,0,18,0,18,0,18,0,17,0,17,0,17,0,18,0,17,0,17,0,17,0,17,0*4D
$GPRMC,000019,V,3403.8843,N,11840.7148,W,0.000,0.0,130895,14.0,E*4D
$PRWIZCH,17,0,18,0,18,0,18,0,17,0,17,0,17,0,18,0,17,0,17,0,17,0,17,0*4D

Working with Windows

Screenshot

Windows and the DeLorme software

So here is the deal... The Tripmate comes with some software, "Street Atlas". This particular device came with version 4.0, but there is a problem... All versions up to 6.0 had a Y2K bug, and only Street Atlas 5 and 6 where patched. According to some, the firmware on the actual Tripmate isn't Y2K fixed. That is why the unit reports 1995/8/12 23:59:00 (UTC). However there was a shareware software "GEM", which I could use the GPS tracking feature which reported at first the same 1995 date, but updated to system local time. The software has a monitor mode which is much more verbose than the Street Atlas one. Here is an example of what the device reported:

------------------------------------
Date / Time
1995/8/12 23:59:00 (UTC)	      //This updates to local time in under 5 minutes
------------------------------------
Lat / Lon /Alt
No Fix				      //I got this to show data once 
------------------------------------
Satellites
PRN	AZM	ELV	SS	USED
[06]	342	72	42	No
[30]	204	44	00	No
[21]	277	42	41	No
[10]	046	36	39	No
[18]	205	26	00	No
[29]	113	22	00	No
[26]	124	18	00	No
[05]	174	15	00	No
[07]	309	10	00	No
[16]	325	05	00	No
[02]	069	04	00	No
[25]	281	00	00	No

IN THE END

Since the only version I have for Windows happens to be version 4, I wasn't able to really get far with tracking. I would like to test this device with "GPSy" however I don't want to spend any money, so oh well. Perhaps in the future we can turn the NMEA data into something useful. For now, I would rather stick to the USB GPS units. Another thing that would be nice to toy around with this unit is the external power source project that others have hacked up. Perhaps when we get some free time.

Your Ad Here
Personal tools