Turning a Kantronics TNC into an APRS tracker

So, you've decided to set up a KPC-3 or KPC-3 Plus as a stand-alone APRS tracker. Just one problem... it doesn't work for some reason! Time to do some basic troubleshooting. Most of this will also apply to ANY Kantronics TNC that has version 6.x or later software, but I have only confirmed the software settings with the KPC-3/3 Plus. There are special considerations when dealing with dual-port TNCs, such as the KAM or KPC-9612, which will be dealt with in at the end of this document.

Note that there are special features available in the latest software for the KPC-3 Plus (v8.3), which make it a better tracker TNC... and make it also require some special settings. See the special setup file if you've got v8.3!

Let's check the connections - starting with the serial connection.

The most basic problem is usually the connection between the TNC and the GPS, either in the the data wires being swapped, or the baud rate used. We'll start with the first.

Are you using the same cable to connect your TNC to the GPS as you use to connect it to the computer? If so, it is important that the data in and data out lines of the GPS be "reversed" from "normal".

In this case, "normal" is defined as the connections necessary to read the output of the GPS on your computer. If both your GPS and TNC can talk to the computer, you need to reverse pins 2 and 3 on ONE of the cables to make the GPS and TNC talk together.

In the case of a Nextel "GPS-ready" phone, you need to use the OEM Data Cable and a null-modem adapter to make the signals work out (see below).

Suggestion: If your GPS does not require any initialization strings, or if you are not interested in sending anything to the GPS, try wiring the output of the GPS to both pins 2 and 3. It has its disadvantages, but, for troubleshooting purposes, it can speed the process of verifying that you are getting something out of the GPS.

If just making this change "fixes" the situation (i.e., your packets are now going out), swap lines 2 & 3 on the GPS side, OR purchase a "null modem" adapter (I use a Radio Shack 26-264 plus a 26-1495 F-F Gender Changer), which does the same thing for standard cables. This is probably the most viable way to do things, if you want to be able to use the GPS with your computer, as well as as a stand-alone tracker.

Go to your GPS, and check the setup page; verify that it is set to output NMEA 0183 format sentences; from the factory, the NMEA output is usually turned off, and all of the instructions below become moot!

Plug the TNC into a computer with a terminal program set for the baud rate you've programmed the GPS to use (try 4800 if there isn't a setup option for baud rate in the GPS). Turn the TNC on. Do you see a Kantronics copyright? If yes, you weren't in GPS mode; we'll come back to that.

If no, do you see an '*' and/or some garbage characters? If yes, you probably don't have the ABAUD set correctly. The '*' means it's trying to auto-baud; follow the manual instructions for setting the baud rate.

If there's no garbage characters, hit Ctrl-C three times. Do you now get the copyright? If not, you may not have the ABAUD set correctly; try powering down again and restarting (I had to do this three times to mine the other night, and the baud was set correctly. I suspect a Win95 problem). Hit the three Ctrl-Cs each time; you need to get to the cmd: prompt, and that means seeing the copyright notice.

If you can't get to a cmd: prompt, that's one thing we can deal with separately.... you may need to perform a hard reset (see your manual) to get it working. Follow the manual's instructions to set the ABAUD to 4800, or whatever is necessary to match your GPS.

At this point, I must assume we're at the cmd: prompt.

[in the following, don't type the ' characters, and <enter> means to press the 'Enter' or 'Return' key on your keyboard]

Type 'INT TERM<enter>' to make sure all commands are available to you.

Type 'MYCALL<enter>'. Make sure it has a proper call sign in it, because Kantronics TNCs won't transmit with a blank callsign.

Type 'PACLEN 0<enter>'. This sets the TNC to not break up packets unless the length of the information exceeds 256 characters; if it were to break them at a smaller size, it is possible that your packets would not be interpreted as valid positions by APRS. GPS packets will not exceed about 80 characters, but, sometimes, PACLEN is set as low as 70 or 72!

Have you verified that the transmit audio, receive audio, and PTT lines are properly attached to the radio, by trying to send something in CONVerse mode? To test this, type 'conv<enter>', then hit <enter> again, watching the front of the TNC to see if the you get the [red] transmit LED to light. If not, you have a TNC problem; these are rare, but they do happen!

If you do see the transmit LED light, hit <enter> again, only this time, watch for a transmission on the radio. Does the radio key for about a second? If not, check the cable between the TNC and the radio, especially if it is a "store bought" unit; quite often, these are NOT wired correctly! Verify the wiring, and try this step again.

Assuming you get your transmission, can you see your signal digipeated by another local station?

Type 'GPSHEAD<enter>'. What is displayed? Somewhere, you should have one of the strings set to '$GPGGA' and/or '$GPRMC', all upper case. If it's in lower case, it won't work. Correct as needed.

Type 'LTP<enter>'. Make sure that the path with the same number as the $GPGGA and/or $GPRMC string above says 'APRS v WIDE1-1,WIDE'; if not, type 'LTP 1 aprs v WIDE1-1,wide<enter>' (substitute for the '1' as needed to match the path number for the string you want to send).

Type 'BLT<enter>'. Make sure that the time interval with the same number as the $GPGGA and/or $GPRMC string above says something other than 'EVERY 00:00:00 (disabled)'; a good starting value is 'EVERY 00:01:30', depending on how busy the local network is. If not, type 'BLT 1 E 00:01:30<enter>' (again, substitute for the '1' as needed to match the string you want to send).

Finally, type 'INT GPS<enter>'. Power down the TNC. Attach the GPS and turn it on. Power the TNC up. Within 90 seconds of the GPS getting a signal lock (displaying position information), you should see a transmission.

If, after following these procedures, you still aren't being tracked, I don't know where to start looking. The above covers just about all the possibilities, short of the RECEIVING radio and TNC being screwed up, and this guide doesn't go into that possibility!

What follows are the settings that MUST be configured for a Kantronics TNC to act as a tracker. Of course, substitute your call in place of mine, and you can change which GPS string you wish to send, as well as the timing between packets, the call sign attached to the remote SYSOP command (you did realize that you can control this beast remotely, didn't you?), the password string, etc, from these samples, but these should always be set to something:

MYCALL ka9vnv-1
INT TERM
GPSHEAD 1 $GPRMC
GPSHEAD 2 $GPGGA
BLT 1 EVERY 00:03:00 START 00:00:10
BLT 2 EVERY 00:03:00 START 00:01:40
LTP GPSLJ V WIDE1-1,WIDE2-2
LTP GPSLJ V WIDE1-1,WIDE3-3
CONOK OFF
MYREMOTE jeep-1
RTEXT this IS The sTring That yOUr PasSwORd Is GeNERaTed FroM.
INT GPS
RESET

[Why is CONOK OFF? Because of a bug in v8.2 - if you let someone connect to your TNC, and you have LTRACK set to anything other than zero (disabled), the frequency will be useless for the length of time it takes the TNC to send the entire contents of its tracking buffer at 1200 bps.... Definitely a bad thing in a busy network!]

[Why 'GPSLJ' instead of 'APRS' in the path? See SYMBOLS.TXT for information on how to get ANY APRS icon for a tracker, rather than just those that can be had with the SSID method.]

These settings will send out a position beacon every 90 seconds, alternating between the $GPRMC and $GPGGA strings.

Dual-port TNC differences: The dual-port Kantronics TNCs will allow you to select different paths and intervals for each port. These are handled in the standard "multiport command" format, i.e., the values for the first and second port separated by a '/'. What follows is recommended settings for a KAM/KAM Plus, but the KPC-9612/KPC-9612 Plus are similar in format.

LTP 1 GPSLJ V GATE,WIDE2-2/GPSLJ V WIDE1-1,WIDE2-2
LTP 2 GPSLJ V ECHO,GATE,WIDE2-2/GPSLJ V WIDE1-1,WIDE3-3
BLT 1 E 00:15:00 START 00:00:35/E 00:01:30
BLT 2 E 00:20:00/E 00:05:00

These lines, when used in place of the coresponding lines from above, will send out the $GPRMC data out on HF every 15 minutes, and every 90 seconds on VHF, and the $GPGGA string will go out every 20 minutes on HF, and every 5 minutes on VHF. The START parameter allows you to "slot" the beacons, if desired. Remember: ALWAYS limit your HF beacons as much as possible, since the bandwidth is EXTREMELY limited down there!

Final note: If you're like me, and don't want to have to turn the tracker on and off when you stop the car, but you also don't want to QRM the net unnecessarily with stationary GPS packets, KD4RDB has designed a small 'Hold Off' circuit for the KPC-3 (will work with most other TNCs, too), which will cut the report rate by 90% when you turn off the car. You'll find the diagram on his 'Hold Off Circuit' page. Or, get a TNC with version 8.3 software, and use the technique listed in the KPC-3 Plus v8.3 tracker file.

de KA9VNV

[Eighth draft, anti-spambot code, May 2002]
Copyright 1998-2003 by Jeff Brenton KA9VNV
Last updated on: October 25 2013 19:14:01.