GPS or LORAN Interfaced to APRS

All GPS units (except for aviation and some without serial ports) output data according to the National Marine Electronics Standard, NMEA- 0183. The data is generated about once every 2 seconds and APRS looks for the position, course and speed. There are two distinct arrangements:

STAND-ALONE-TRACKER - This is the combination of a GPS, a TNC and a radio. It tansmits raw NMEA data over the air. There is no laptop or display in the vehicle.

APRS-TRACKER - The GPS is connected to an APRS serial port and APRS uses the data to transmit its own shorter formats. If only a single port is available, the GPS and TNC may share a COMM port if a suitable momentary switch circuit is provided. APRS must be registered for the GPS option for this to work.

OVERVIEW: We began seriously parsing GPS data within APRS for amateur applications when the MAGELAN OEM GPS card dropped from $1000 to $445 in Sept 92. Later the Motorola OEM GPS card came down to the same price range and DRSI made a special APRS ROM for TAPR-2 clone TNC's to permit power-up in the converse mode. In August 93, we added the GPS serial interface to APRS, but it required a second comm port. By Dec 93, APRS could share a single port with GPS cards that could be programmed to a 1 minute or so reporting rate. This is called the SINGLE-PORT-MODE (SPM). Later I developed the HARDWARE-SINGLE-PORT (HSP) mode for use with any GPS regardless of its output rate. In HSP mode, APRS toggles the DTR line on the single serial port so that two transistors can then switch between the GPS and the TNC on the same port.

About this time, PACCOMM added a GPS mode to its TNC's and Howie Goldstein, N2WX, wrote special GPS commands into the standard TAPR-2 TNC code. AEA and Kantronics soon followed. Now that handheld GPS units are under $250 and most TNCs include GPS commands, the only significant advantage of the OEM GPS cards is in totally autonomous stand-alone tracking devices which can power up without human interaction. Handheld consumer GPS units require a Human finger to turn them on and off! Conversly, the OEM cards power up whenever ignition power is applied.

CURRENT RECOMMENDATION SUMMARY

TNC GPS SUPPORT: All of the TNC GPS modes are for STAND-ALONE TRACKING applications only, they report position, and are not available for any other APRS communications (except for the Pico TNC by PacComm). The Pico has two ports, one for the GPS, and one for the APRS computer, so it can transmit GPS posits regardles of how the user is using the TNC... Conversly, if you are using a laptop, you do NOT use any of the GPS modes in the TNC, since APRS handles all of the communication between the GPS and the TNC using any of the following arrrangements:

FOR DUAL-PORT LAPTOPS: ANY NMEA GPS and ANY TNC will work with APRS

SINGLE-PORT LAPTOPS: Choose between the following options:

SPM (SINGLE PORT) MODE: Program an OEM GPS circuit board to a 1 or 2 minute rate and diode-OR the data with the TNC data to the same serial port. There are occasional glitches when both the TNC and GPS data collide.

PUSH BUTTON MODE: Configure APRS for SPM, and connect both the GPS and TNC to your serial port via a SPDT Push Button. Press the button for 2 secs whenever you want a fresh posit. The rest of the time, the TNC is connected normally. Glitches will still occasionally occur. But you have the advantage of an exact posit on demand.

HSP (HARDWARE SINGLE PORT) MODE: Use ANY GPS with APRS in the HSP mode using a simple two transistor interface which permits APRS to switch between the two devices. Since APRS controls the switching, the potential for garbling is reduced. HSP devices are available from PacComm, AEA, and Kantronics.

GPS EQUIPMENT SUMMARY

The following comments are from my personal experience only, but any GPS unit with NMEA output should definately work. Some Aeronautical models DO NOT have a NMEA output! Also, I do NOT use the USER interface and displays on most units since I am only interested in the NMEA output to APRS. For this reason, my sole purchasing criteria has been price! (including the data cable). I have purchased one of each of the following devices. Many other APRS operators have used many other GPS devices, and all with NMEA outputs work! Good places to check for prices are:

  West Marine 1-800-538-0775    Currently (Feb 95) the GARMIN 40 is going
  Boat US     1-800-937-2628    for $259 and the GPS-45 for $299
  E & B       1-800-533-5007    these are LIST prices!
              1-800-262-8464

MAGELAN OEM CIRCUIT BOARD: My first GPS. Cost $450 plus $130 antenna. Well documented later in this file. Output fully programmable and includes GGA, GLL and VTG data. Great for any TNC for stand-alone. LNA on board, can use home-made antenna. 5 channel. Obsolete! NMEA output no longer available!

MOTORLOA OEM CIRCUIT BOARD: Very small circuit. Requires active antenna. Output fully programmable and has GGA,GLL,VTG and RMC. The RMC gives posit, CSE/SPD all in one packet. Great for any TNC stand-alone. 5 channel. $380 with active antenna. $335 without. VP-ENCORE is the latest 5 volt version (TTL) for $299. ($344 w/antenna). These prices have been the same for over a year! (its now Jul 95).

GARMIN-50: $300 and includes mounting bracket, NMEA cable and 6-40 volt supply capability built in! Has RMC, but does NOT have GGA (no altitude). Handheld antenna can be remoted about 6 ft. 8 channel. CAUTION: To make pilots spend more for the aeronautical version, all nautical GARMINS have a 90 kt limit and will NOT WORK above that speed!

GARMIN GPS-45: Seems to be the most popular (by 10 to 1 over the last 2 years (thru 96). About the size of a tall cigarette pack, and includes a full graphic display. Zoom in close and far out. The graphics on the screen show your track relative to the Waypoints and your own track history. Price about $249 INCLUDED bracket and detachable NMEA cable. Antenna is BNC and remotable too. Replay track histories stored in the unit into APRS conversion programs and build your own APRS maps. Output is +/- 2.5 volts and is usually RS-232 compatible.

GARMIN GPS-40: Same as the GPS-45, but has internal antenna only and less power supply voltage range. About $50 less.

MAGELAN MERIDIAN: The latest Magelan Neridians no longer have the RMC sentence, which means that you cannot get Course and Speed in the same packet for a stand alone tracker with some TNC's. It works fine with direct connection to APRS though. Call Magelan at 909-394-5073. Otherwise a good GPS. Dropped below $250 recently. Mounting bracket, NMEA and external 12v converter are extra for $75, but are not needed if you give it 6 volts and make your own data cable. 8 channel. Handheld antenna can be remoted about 6 feet. Current drain is 130 ma. Runs on 3 AA cells. Also has SAMPLING mode that extends battery life by factor of 10 or more. Below is the pinout, looking at the back of the GPS with wire colors for their $80 power/data cable. Note that you do NOT need their box for NMEA data, only for 6V power. (This is MY OPINION. I AM NOT LIABLE FOR ANY PROBLEMS IF YOU MAKE YOUR OWN INTERFACE!)

  GPS    POWER/DATA CABLE BOX    WIRES OUT  SIGNALS

*- +6V --[*reg*]-------------- Red 9 to 16 volts input *--------[-----]-------------- Yellow reserved for future *--------[-----]-------------- orange NMEA (+) *--------[?????]-------------- white -20k +100K continuity through box *--------[-----]-------------- brown NMEA (-) *--------[-----]-------------- black Ground

I do not know how they manage power internally, but the GPS will run from internal 3 AA cells with or without the cable attached. If there is external power, it knows it, and switches to external power. When external power goes away, THE GPS POWERS DOWN. Pressing the ON button will power it back up again on internal power!

Final comments, the Meridian does NOT output any data unless it is getting a good GPS fix. THis means you will be doing a lot of troubleshooting out at the picnic table! The Garmin, on the other hand, continues to output NULL NMEA strings with only the comma separators when it looses GPS lock.

TEKK DATA RADIO: Not a GPS, but is a 2 watt UHF 9600 baud data radio about the size of a credit card (and 3/4 inch thick). See page 18 in Feb 94 QST. Cost between $120 to $130. Great for future 9600 baud POSITION REPORTING NET TO DEVELOP on 445.925 MHz. See UHFFREQ.HTM.

MFJ DATA RADIO: Advertised in Nov 94 MFJ catalog. Is a 5 watt single channel XTAL controlled 9600 baud capable data radio on 2 meters! Costs about $119 crystaled on 145.01. Add $14 to get it factory xtaled on 145.79. Call them at 1-800-647-8324.

0.25 CUBIC INCH 500 mw XMTR! Agrello Engineering 518-381-1057 is selling a postage stamp sized xmtr called the VFC400 for $99. Glue it to your GPS with the PACCOM PICO-TNC and you have a hand-held stand-alone tracker!

PACCOMM PICO-TNC: Smaller than a cigarette pack. Has an optional 2nd GPS serial port! Will sell for about $130 plus options..

MOTOROLA HT-220: The venerable HAMFEST single channel HT can be bought for as low as $20. After taking off the front and back covers, hacksawing off the battery compartment, and replacing the PTT switch with a tiny RELAY from Radio Shack (PN# 275-241, you have a nice 3/4 watt packet radio, about the size of a cigarette pack. The PTT leads also carry the antenna RF, so put the relay in place of the PTT switch and keep the leads short. Add $20 worth of crystals for 145.79, and away you go on 2-meters. Be sure to get the models that will tune down to 2m.

THE REMAINDER OF THIS FILE HAS FOUR SECTIONS

The first describes the TNC GPS interfaces.
Second is the direct APRS software interface of GPS to your PC
Third is the direct TNC/GPS interface for building stand alone trackers using the MAGELAN and Motorola OEM cards.
Forth, in March 94, I added a section on Differential correction.

TNC GPS STAND ALONE TRACKERS: All recent TNC's have GPS modes which let the TNC periodically transmit position reports at a rate significantly below the normal 2 second rate. WHILE IN GPS MODE, the TNC is not used for other packet communications (except for the Pico by PacComm). You may also connect some of these TNC's to an Ultimeter weather station for remote reporting of WX conditions by programming the TNC to look for just a * or a # instead of the usual $xxxxx GPS strnigs. (See WX.HTM)

Since each TNC implementation is different, you should refer to the instructions that come with your TNC. I will describe the PACCOMM unit as an example. They define a LOCATION TEXT similar to the BEACON TEXT except that it is updated by the GPS (or manually entered). This maintains the same distinction between BTEXT and POSITS that APRS already handles easily. Similaraly, the LText command allows you to manually enter your LAT/LONG or grid square in your TNC, even without a GPS, so that TNC's in networks will send their locations periodically. The LText permits a free text format so that it is compatible with any future specific formats (currently APRS parses GGA, RMC, VTG, APRS L/L, grid squares and a special compressed format for the APRS MicEncoder.

DIRECT APRS GPS/LORAN INTERFACE OPTION: The optional APRS GPS registration enables APRS to read data from a GPS directly connected to the PC. APRS will not only plot the position of the attached GPS and its movements, but will also transmit those position reports into the APRS net. In this mode, you can also select TRACK on the P-list to keep your mobile always on the map. There are four possible operational configurations:

     TNC only  - 1 Serial - Normal APRS for tracking other stations
     TNC/GPS   - 2 Serial - Normal APRS with automatic GPS position update
     GPS only  - 1 Serial - Tracking yourself (no other stations appear)
     TNC/GPS   - 1 Serial - Single Port Mode will do both! See below
     TNC/GPS   - 0 Serial - Stand-alone-tracker.  Doesnt use APRS except to
                            plot the resulting packets off-the-air

NMEA INTERFACING NOTES: Note that NMEA and RS-232 are not exactly compatible. The NMEA data is actually EIA-422, an isolated differential receive circuit. But in most cases it should also work by simply connecting the NMEA pin A to the PC RXD and pin B to ground. Both standards have the same sense, with NMEA at 0 and +5 volts, and RS-232 at least a -3 and +3 volt signal. The direct connection may not work with some serial ports without a (-) voltage pulldown resistor. In this case a series 1k resistor and a 5 to 10k resistor tied to your unused TXD data line will suffice to provide the (-) voltage:

GPS NMEA OUT                                           LAPTOP SERIAL PORT
                       1 k
   A  >-------------//\//\---*------------------------> RXD
                               |          10K
                               *-------/\//\/--------< TXD

   B  *-------------------------------------------------* GND
NOTE 1: If you use this circuit to your TNC, then remember that the definitions of TXD and RXD are reversed. This is the biggest cause of initial setup problems for new users. Also, if you use this biasing on your GPS when connected to a TNC for a stand-alone-tracker, be sure to set ECHO OFF so that echoed data on the TXD(RXD) line do NOT come back and garble the bias! Usually you do not need the opposite serial data going from the PC to the GPS. APRS recognizes four of the NMEA-0183 formats:
    $GPGGA - for position and height  (no loran equivalent)  ] Use only one
    $GPGLL - for position only        ($LCGLL for LORAN)     ] of these two
    $GPVTG - for velocity and course  ($LCVTG for LORAN)
    $GPRMC - Posn, Course and speed   (Has all but height)   ] Preferred
    $PMGLB - Magelan Altitude
    $PGRMZ - Garmin Altitude
APRS has two commands under the alt-SETUP-GPS-MODES to force APRS to only use GGA or RMC sentences. The default is RMC. The data on the NMEA interface is nearly continuous and refreshed every two seconds. For the much slower APRS network, however, APRS only samples the data at a much slower rate called the REFRESH rate usually set to once every 15 seconds or so. This period determines how often your screen is updated from your own GPS. The other period called PACKET PERIOD is usually set for 1 to 10 minutes. Set these periods with the alt-S-POSRATE command. We have found that 30 seconds updates are OK for special events when there are only a few mobile APRS stations. As more and more stations go mobile with GPS/APRS, 1 minute or 2 minute updates are more appropriate. To further reduce channel loading, APRS will decay the period when the station is not moving.

GPS MOBILE AND TNC WITH ONLY ONE SERIAL PORT (Single Port Mode)

For programmble OEM GPS cards (and some LORANS) simply set the rate to once every 2 minutes and turn only the $GPRMC sentence. This data can then be simply diode-ORed with the TNC output into a single serial port. In single port mode (SPM), APRS distinguishs between the TNC packet data and the unique NMEA data. The only problems with this arrangement are data collisions about 1% of the time and ambiguity on incoming VTG packets. Are they off the air, or from an attached GPS? APRS resolves this by by ONLY matching up a VTG sentence if it has been received within 2 seconds of a GGA or GLL from a known station. Another disadvantage is that the refresh rate is now fixed by the programming of the GPS.
          DIODE OR-ing of GPS and TNC in SINGLE PORT MODE:


    GPS DATA OUT  >----------*------>|--------*----->  TNC RXD
                             |----//\//\----|
                                              |
    TNC DATA OUT  >----------*------>|--------*        both R's abt 10K
                             |----//\//\----|

A simple SPDT PUSH BUTTON switch can do the same thing and doesnt require the special programmable GPS's. The switch has the advantage that it gives the user control of when he wants a FIX. The operator only needs to press and hold the button for 2 seconds, in order to get a posit at any time.

To activate this Single Port Mode (SPM), bring up APRS in one-port TNC mode being sure to set the TNC to the same BAUD RATE as your GPS. Then enter the ALT-S SETUP Menu. Select SPM under the GPS selection and then do SETUP again to SAVE the config file. You will be asked for your regular validation and your GPS number. If you did this correctly, you will see the lower case (spm) on the yellow control panel go to uppercase. ALSO NOTE THAT BOTH THE TNC AND THE GPS MUST BE RUNNING AT THE SAME BAUD RATE. THIS IS USUALLY 4800 BAUD FOR NORMAL NMEA OUTPUTS.

In the Single Port mode, the screen refresh rate is set by the period programmed into your programmable GPS (45 seconds or longer is about right). The position report transmission rate from APRS to the TNC is set by POS-RATE command in the SETUP Menu.

HARDWARE SINGLE PORT MODE (HSP) FOR USE WITH ALL GPS UNITS

APRS can control the switching of the Single Port Mode between the TNC and ANY GPS using the handshaking lines of the COMM port and a simple two transistor switch soldered into the serial port data connector hood. This mode is called the HSP mode. In this HSP mode, APRS periodically toggles the DTR output of the serial port for two seconds whenever it needs data from the GPS. With DTR held high (normal) the GPS data is shunted to GND while the TNC operates normally. When APRS toggles the DTR low, this holds off output from the TNC, but also enables data through the emitter follower from the GPS. As soon as APRS receives the GPS data it needs, it restores DTR so the TNC is connected for normal APRS operations. In some TNC's, (PACCOMM) the RTS is used instead of the DTR for holding off TNC data. Also, this circuit uses your PC RTS line to derive a cource of +V. If the impedance of your PC RTS line is not strong enough, you might need to get it from the TNC's DSR line. REMEMBER THAT YOUR TNC AND GPS MUST BE SETUP AT THE SAME BAUD RATE, usually 4800 baud.

PACCOMM now sells this little circuit assembled inside of DB-9 connector with two pigtail connectors for your TNC and GPS for about $30.

                                      *------------------< +V (PC RTS)
 GPS NMEA                           |/ c                   or TNC DSR)
   >--------------//\//---*----*--|
 OUTPUT              1k     |   NPN | e     * see important notes below
                            |         *--->|-->|---*-----> RXD
 TNC RXD                    |              diode   |               
   >--*-------------------------------*----->|-----*
      |       15k           |         |    10k     |       SINGLE
      *-|<-*-/\/\/--*-------*         *---/\/\/\/--*       LAPTOP
           | note 1 |      c \|                            RS-232
          ===       |         |--*--------/\/\/\/--*       PORT
           | 1uF    |      e /| NPN        10k     |
 TNC DTR  ---       |       |                      |
 (or RTS) ///       |     ////                     |
   <-----------------------------------------------*-----< DTR
                    |                  1uF
                    |-----/\/\/\----*--||--------*
                    |      15k      |            |
                    |     note 2    *-->|--*    ---
 TNC TXD            *                      |    ///
   <--------*-----> *----------------------*-------------< TXD
                SW-1
   *-----------------------------------------------------* GND
 GND
Note1: This resistor-diode-cap provides a little -V bias to the GPS output 
       line going to SW-1 when the GPS is used with the TNC only in
       stand alone tracker mode (no PC).  
Note2: This 10K resistor-diode provides a little -V bias to the GPS output
       when the PC and GPS are operated alone (WITHOUT the TNC).
Install these components in a back-to-back DB-9 connector on the cable comming from my GPS so that it is always handy. Almost any NPN transistor and switching diodes will work. A 2N2222 is fine. The SWITCH SW-1 allows you to easily re-configure for STAND-ALONE-TRACKER without re-cabling. You still need to use the laptop to tell the TNC to got to GPS mode, however. In the implementation below you will notice that a dotted line shows how to add just one wire to take the output of the TNC to the DGPS input of the GPS if your GPS is DGPS capable and if someone in your area is transmitting DGPS data on your packet channel.
PHYSICAL LAYOUT OF BACK-TO-BACK DB-9's WITH HSP CIRCUIT INSTALLED


                1     2     3     4     5   DB-9 FEMALE TO COMM PORT
                O     O     O     O     O
                      |  7  |     |     |
                   O  |  O  |  O  |  O  |
                      |  |  |     |     |
                      |  |  |     |     |
  NMEA      N C------ | -*  |     |     *--------E N
  FROM      P E--->|--*     |     *---- | -//\/-B P  (2N2222 or equiv)
  GPS       N B---*-- | --- | --- | --- | -------C N
                  |   |     |     |     |
                  |   *--*  |     |     |
    A >-----//\/--*   |  |  |     |     |
                         -  |     |     |
   DGPS < - - - - *   /  ^  |     |     |
                  |   \  |  |     |     |
                  |   |  |  |     |     |
                  * - *--*  |     |     |
   B ---------------- | --- | --- | ----*
                      |     |     |     |
                      |     |     |     |
                O 1   O 2   O 3   O 4   O 5   DB-9 MALE TO TNC CABLE

                   O     O     O     O
In this adapter, the voltage to provide the -V bias to convert the NMEA output to RS-232 levels comes from the RXD output of the TNC. For this reason, if the GPS is used alone with the PC, without the TNC, you must include the components of note2. OR you may connect a jumper between pins 2 and 3 of the empty TNC connector. This takes the -v from the unused TXD output of the PC. I recommend carrying a stubby DB-9 female connector with this jumper permanently installed.
                O 1   O 2   O 3   O 4   O 5   FEMALE STUB USED TO PROVIDE
                      |     |                 -V BIAS WHEN TNC IS NOT USED
                   O  |  O  |  O     O
                      |     |
                      *-----*
HSP OPERATIONS: Setup HSP just like SPM from the alt-SETUP-GPS menu. Be sure your GPS and TNC are at the same baud RATE as your GPS, usually 4800. Select HSP under the SETUP menu and then SAVE a new CONFIG file. You will be asked for your GPS validation number. If everything is done correctly, you will see the lower case (hsp) on the TAB control panel shift to upper case. In HSP mode both the screen refresh rate and position transmission rate are set with the POS-RATE command. You may force an HSP update at any time by pressing the F8 key. CAUTION: This interface is operating with slim voltage margins at the RS-232 level and may need to be tailored to your particular PC, GPS and TNC. Some experimenting may be required to make it work for you and once working, it may not work if you change TNC, GPS or PC. You may have to try one or two or NO series diodes in the emiter lead of the GPS switching transistor as well as different R values for the 1k series resistor. IF YOU ARE USING A GARMIN 45 YOU MIGHT NEED TO TAKE BOTH diodes out, since the GARMIN ouputs +/- voltages...

US NAVY MAGNAVOX 1105 SATNAV SYSTEM

I did write a version of APRS that is plug compatible with the MAGNAVOX 1105 SATNAV system. This is a 1970's vintage TRANSIT SATNAV system found on many US NAVY ships. If you have use for this module, please contact me. NOTES ON MOBILE GPS OPERATION: See the MOBILE.HTM file. Here are some tips:
* write down your V#'s IN THE CAR! You may need to re-configure! * Recommend making a trimmed down disk with only the maps you will need. * When you QUIT APRS, your TRACK HISTORY is NOT saved UNLESS you sepcify a file name OTHER than BACKUP.BK (or do a FILE-SAVE). * Use the TRACK mode to keep yourself on the map. * Set your refresh rate long enough (20 sesc or more) so that APRS is not always processing GPS and has time to service the keyboard. * Make notes of any map errors or disagreements with GPS, so at home you can use MAPFIX.bas, to replay your track history and fix the map easily. * Use the TIME-SYNC command to sync your PC time to GPS time on the next receipt of a GGA or RMC sentence to eliminate dead-reckoning errors.
For most highway maps and 1 minute reporting at 60 MPH, zooming in below eight miles is usually a waste of time. For this reason don't waste your time making maps with every little twist and turn in the road; it just takes time and memory and makes no difference. A straight line between A and B is not as pretty, but shows the road as well as 20 points showing all the curves. If you do save any RAW GPS data outside of the APRS environment, the following two programs may be useful in reconstructing GPS data. They were written hastilly for a one time need and are provided as-is. Still, they might be useful to others as a basis for writing your own routines. FILTRHST.bas: APRS automatically builds a track history for all moving stations. APRS avoids saving redundant position reports automatically with its POS-FILTER. The default value of the filter is wide enough to include the variations in position due to GPS selective avaiability. (+/- 0.03 mins) With the filter off, this is reduced to 0.01. FILTRHST.bas can be used to re-filter a track history file to remove additional points. Use the source code to write your own filters for your own needs. In addition to filtering, this program can be used to combine a number of separate track history files into one file. GPStoHST.bas: Takes any DOS text file and generate an APRS track history file. It only looks for the GGA and VTG NMEA-0183 sentences and combines them into the one line APRS format.

STAND-ALONE OEM GPS TRACKERS

This section only applies to TNC's that have programmable reporting rates and selectible NMEA sentences. It does not apply to most handheld GPS units; but it does apply for such applications as Balloons, and small stand-alone tracking boxes. Also, this method has the advantage of trans- mitting any of the NMEA-0183 sentences without dependence on the particular TNC GPS modes. The GPS or LORAN must have a reporting rate that can be configured by the user to output a report once every N minutes or hours. 1. The original MAGELAN OEM 5000 board is no longer available. It has been replaced by a $295 5 volt/TTL card that DOES NOT HAVE A NMEA OUTPUT. This makes the remainder of this section referring to the MAGELAN OEM card, valuable for historical purposes only. Call MAGELAN, 960 Overland Ct, San Dimas, CA 91733, phone 909 394-5000. 2. The Motorola OEM prototype card has a programmable period and includes the RMC message which contains both position and course/speed in one NMEA sentence. Call MOTOROLA, 800 421-2477 for the latest. Many of their models require an external 20 dB active antenna. They can output altitudes to 56,000 feet in the GGA message. Unfortunately, they do not include all the DOCS and the user setup software in the quantity-one shipment. That costs an additional $1200 for their full development package. I wrote a program called MOTOROLA.BAS which will allow you to send the needed initialization and NMEA timing commands. This program will also generate the command to take the OEM card out of its default BINARY format, and place into NMEA format. An automatic vehicle tracking system can be assembled by simply connecting the RS-232 output from one of these programmable GPS's directly into the TNC, setting the periodicity to 1 minute or so and selecting only the RMC or GGA/VTG sentences to be output. The TNC must be placed in UNPROTO CONVERSE, and from then on, every minute a GPS position report will be transmitted. The APRS software decodes raw NMEA data off-the-air in addition to the defined APRS formats. GPS ENGINE SET UP: Follow all manufacturer instructions for initializing your GPS engine using your PC and their setup program. After the system is running and producing fixes, send commands to enable GGA/VTG or RMC data between 30 to 120 seconds using the following commands:
MAGELAN COMMANDS:
$PMGLI,00,B00,7,A  (for GGA GPS position only)       Where 6 = 30 Secs
$PMGLI,00,B01,7,A  (for GLL LORAN position only)           7 = 1 Minute
$PMGLI,00,EOO,7,A  (for course and speed with either)      8 = 2 Minutes
                                                           9 = 5 minutes
Each line must end with a carriage return-linefeed. The GPS engine gives no responses to commands, other than doing what it is commanded. You might try a value of 5 which is once every 10 seconds as a test to be sure the GPS card is recognizing your commands. The commands for the MOTOROLA card are similar, but MUST have the proper checksum. Use my MOTOROLA.BAS program to send these commands with proper checksum calculated...

MOTOROLA COMMANDS

$PMOTG,GGA,0030*csCRLF (sets up GGA once every 30 secs)
$PMOTG,RMC,0060*csCRLF (sets up RMC once every 60 secs etc..)
BATTERY BACKUP: Be sure to add the battery back up supply so that the card can be turned off without having to re-initialize every time. Each of the cards has a connection for a 3.6 volt battery. I use 3 AA cells soldered together. TNC SETUP DETAILS: If your OEM card does NOT output the RMC sentence, you must use the GGA and also the VTG sentence to get course and speed. Problem is that these two sentences are separated by enough time that the TNC usually generates two packets, one right after the other. This is a problem when a digipeater path is used, because the digipeat of the 1st packet will collide with the second VTG packet. To solve this, (not needed for balloons which dont need digipeaters), the sending TNC needs to be instructed to send packets not on receipt of every carriage return, but on a timing function. Set CPACTIME ON and change the SENDPACK character from $0D to anything else (say $01). This way, both the position fix and velocity lines will be sent together in the same packet one second after the last character is received from the GPS. This packet, containing two frames, will then be digipeated all together by the digipeater with no break in between. If you use the Motorola card, with the RMC sentence, this double packet problem does not exist. LINEFEEDS and FLOW CONTROL: Since the GPS is sending each line with a CR/LF on the end, your TNC will always end up placing the superfluous linefeed at the beginnning of the next packet. To defeat linefeeds, set LFIGNORE on. (for AEA, try Linefeed Supress, LFS ON). Similarly, your terminal program must send CR-LF on each command to the GPS card. When you try to talk to your TNC with CR-LF, you will experience a lockup condition since the extra LF will look to the TNC like the beginning of a new command line and will hold off all TNC output. To overcome this problem, set FLOW OFF. Here are the commands which must be changed from factory defaults for most TNC's:
  ECHO OFF,  FLOW OFF,  LFIGNORE ON,  CPACTIME ON, SENDPAC $01
(Remember that you have SENDPAC set to $01, and change it back to $0D for normal packet operations! I was pulling my hair out while driving through Knoxville and trying to connect to the local BBS node. It ignored all of my node commands as if I was personna-non-grata! I finally realized it didn't like the $01's being imbedded in my packets!) UNPROTO-CONVERSE-MODE: And now for the last problem; keeping the TNC in converse mode. Since TNC's always default to command mode when turned on, they cannot be expected to operate autonomously with GPS data supplied to their inputs from power up. As of 1995, most new TNC's now include some kind of UI mode that will force the TNC to power up in CONVERSE. To get out of this mode, you just hit ctrl-c as usual. DUMB TERMINAL SETUP: While programming a GPS, you may want to configure your terminal for half duplex so you can see what you are sending to the GPS. The GPS may also need the CR/LF sequence at the end of each command, so set the terminal to translate CR to the CR/LF sequence. SYMBOLS: To specify the APRS symbol character for a STAND-ALONE-TRACKER, there are 2 methods. First, when APRS receives a raw NMEA posit over the air, it will use one of 15 default symbols based on the callsign SSID. See SYMBOLS.HTM. Secondly, any APRS symbol characters can be placed at the beginning of the TNC BText surrounded by {} braces. Once the BText with that symbol is received, the station will then appear with the proper display symbol. We have assembled a number of these GPS/PACKET tracking devices, some by simply placing the GPS within some of the larger TNC enclosures. Then add two switches to the front panel for switching the GPS serial data to the TNC or PC, or the PC to the GPS or TNC. MOST OF THIS TEXT AND THE HOOK-UP SCHEMATICS WERE PUBLISHED IN THE FEB 94 ISSUE OF QEX.

BUILDING A STAND-ALONE TRACKER WITH ONLY A 5 VOLT TTL OEM GPS UNIT

Building a tracker out of a 5 volt TTL GPS and any of the TAPR-2 CLONE TNC's is trivial. In the PACCOMM TINY-2, MFJ-1274, and DRSI-DPK2 there is a diode in the TXD circuit to provide isolation between the RS-232 converter chip and the TTL modem disconnect header. This diode is labeled D7, CR22, and D12 respectively. By providing the GPS TTL data output to the RXDB line (pin 5) of the modem disconnect header (via a reverse biased diode) the GPS NMEA data will be transmitted by the TNC. Similarly, by tapping off of the cathode of this diode, the TTL data from an attached terminal can be sent to the GPS input. With the TNC in converse mode, setup commands from the terminal are not only transmitted on the air (without confusing the TNC) but also sent to the GPS unit. Conversly, GPS data is always transmitted on the air, but if ECHO is on in the TNC, then the GPS output is also echoed back out to the attached terminal! In this manner, no external switches are required to switch between talking to the GPS unit and the TNC. Of course, the GPS sees everything sent from the terminal, but will IGNORE everything that does not match a GPS setup command.

DIFFERENTIAL CORRECTION

Tom Clark (W3IWI) experimented with a Differential GPS xmtr in the Wash DC area transmitting 30 second DGPS data on the APRS freq. APRS GPS mobiles can then obtain accuracies to 5 meters or so. We are pleased to report that the RTCM-104 format works perfectly well with APRS and with TNC's: * The GPS rcvrs seem to ignore the packet headers and act on the RTCM data
* The RTCM gybrish is all printable ASCII and does not garble APRS screens
Although this is an excellent demonstration and there are surely HAM applications that can take advantage of the DGPS accuracy, APRS is usually not one of them. First, APRS is not concerned with NAVIGATION accuracy, because a) no maps are that accurate (with DGPS you can make 'em so!), and b) the purpose of APRS is to inform others of mobile locations over a wide VHF area, NOT to the nearest 15 feet. (APRS formats do maintain positions to 60 foot precision) Secondly, A mature APRS net involved in a special event or activity, can probably NOT handle the QRM from 30 second RTCM transmissions. In the long term, the DGPS data should probably be transmitted MORE OFTEN and on another frequency, OR be remotely controlled such that it can be requested by a mobile user on demand, but silenced most of the time. Transmitting less often is meaningless due to latency of the data. DGPS TRANSMITTER SET UP: Set your TNC to transmit TO DGPS instead of the usual TO APRS and set up whatever UNPROTO path is desired to cover the area. Then enter the location of the DGPS transmitter into the TNC BText in the usual format making sure to use the special (.) symbol in the symbol field:
  BT !3859.11N/07629.11W.RTCM data provided by TOM W3IWI...
Everything after the (.) symbol character is free text. APRS will flash a DGPS flag on the screen each time it hears a DGPS transmission, but will not add the station to the L or P-Lists unless it also sees the (.) symbol in the position report. Set your beacon to every half hour or so. Finally, set your TNC into CONVERSE and tell your RTCM-104 DGPS receiver to output once every 30 seconds. See the new HSP mode schematic above where I added the interface wire between your TNC and GPS for automatic DGPS operations. CONFIGURING FOR DGPS: There are two options for routing the DGPS data from your TNC to your GPS unit: 1) For ANY arrangement: run an external wire from your TNC RXD data output over to your GPS DGPS data input. 2) For dual port operations only: connect your GPS DGPS input to the PC serial port TXD line and select DGPS from the SETUP menu in order to enable DGPS data output from APRS. CAUTION: This will not work if you are operating in the SPM or HSP modes or if you are using the same serial port TXD output as a source of -V bias for the NMEA conversion as suggested in the above paragraphs.

Return to Table Of Contents

Mail comments/corrections on content to Bob Bruninga and on HTML formatting to Steve Dimse