12.12.23

Adventures in Packet Radio (episode 1)

Kantronics KPC-3+ and Baofeng UV5R on top of an ammo can.

A while ago, I bought a Kantronics KPC-3+ to experiment with packet radio. I never got around to doing anything with, mostly due to not having a useful radio cable for it (always said I’d get around to making one, and never really did). Last month, I picked up a Kenwood TNC cable off eBay, and tonight I figured I’d give it a shot.

What is packet radio?

Packet radio is one mechanism for transmitting data over RF. It works by breaking that data down into chunks (or packets), and sending those chunks out on the radio. The key new piece of this digital mode is a terminal node controller, or TNC. The TNC decodes packets received from the audio coming out of the radio, and encodes packets into the audio going into the radio.

Your radio connects to a TNC, which connects to your computer:

Antenna ←→ Radio ←→ TNC ←→ Computer

With the KPC-3+, and some other TNCs, the computer is optional. There are a couple of packet modem services, such as mail and BBS functionality, as well as keyboard-to-keyboard (K2K) modes. The radio sends and receives packetized data.

You can also operate in connected and unconnected (or UNPROTO) mode; in connected mode, each packet you send expects an acknowledgement packet in reply. In general, it’s better to think of packet radio as sending mail instead of the normal voice transmission (or in K2K mode, like passing notes). The ARRL published a document titled “AX.25 Link Access Protocol for Amateur Packet Radio” describing the AX.25 protocol often used in packet radio. Alternatively, you could use TCP/IP via a KISS modem. To me, using TCP/IP over radio seems like a waste but to each their own.

Some basic configuration

First, I got set up in terminal mode. According to the KPC-3+ manual,

When set to TERMINAL, the full command set of the TNC is available.


cmd:HELP INTFACE
INTFACE  {TERMINAL | NEWUSER | BBS | KISS | XKISS | HOST | GPS | NET | MODEM}
cmd:INTFACE TERMINAL
INTFACE was NEWUSER

I can hear you

I was trying to figure out if my setup was working at all, as transmitting didn’t seem to be triggering the PTT and I decided to take a break to work on this writeup. Suddenly, the backlight on the radio came on. I switched over to the minicom session and saw this:


cmd:W6OAK>BEACON,KLPRC3,KBERR,KJOHN*,KBETH,KBERR,ROSE: <UI>:
This is OAK:W6OAK-5, a packet radio node in Oakland, CA. Mailbox: OBOX.

NE6RD>BEACON,WOODY,KBETH,KJOHN*,KBULN,KBERR,BRKNRG,ROSE: <UI>:
9612+ runs when it runs

KF6ANX-8>ID: <UI>:
KF6ANX-8/R JBOX/B KJOHN/N

W6ABJ-12>ID,KJOHN*,KBETH,KBERR,WOODY: <UI>:
W6ABJ-12/R KBULN/D KBUL/G KBULN/N
cmd:MHEARD
AI6UA      01/11/2003 08:44:26
W6OAK*     01/11/2003 09:05:07
NE6RD*     01/11/2003 09:13:45
W6ABJ-12*  01/11/2003 09:22:36
KF6ANX-8   01/11/2003 09:32:05

At least I know I can hear traffic. I still haven’t figured out how to get it to transmit.

Transmit… just started working

At some point, transmitting just started working and I’m not clear about what changed. Attempts to connect to other nodes didn’t really work, though. I think that’s because I’m on the keyboard-to-keyboard / mail frequency. I thought that you had to connect to another node to send mail. I still need to figure out how to send mail, but it’s getting late.

09.19.20

Experiments in Setting Up Direwolf

Since this is preparedness month and most of my attention has been turned to getting ready for whatever contingency comes up (there’s a couple on my radar), I figured I should start getting back up to speed on radios.

Talking on VHF and UHF is fun and easy, but I’d like to be able to get up and running on some digital modes. The first is APRS, which should be relatively easy to do. I’ve got all the softwares installed on my laptop, and I’ve got an FT-817 and Signalink, so let’s get working. I started out with the Signalink volume knobs set halfway and the delay turned all the way down. I also set up a few menu settings on the radio:

  • Menu 07: set to front
  • Menu 39: PKT Mic set to 75
  • Menu 40: PKT Rate 1200 baud
  • Menu 45: SQL/RF-G Set to RF-GAIN
  • Menu 51: VOX Gain set to 1
  • Menu 52: Extended menu options set to ON

On the FT-817, press and hold F for two seconds to enter config, then hold it down to save settings.

I’ve been reading around a lot and these two blog posts seem to be useful:

The first step is to fill out a configuration for Direwolf. I used arecord -l to figure out that the Signalink is the second sound card (or plughw:1,0). Then, template out this:


ADEVICE plughw:1,0
ACHANNELS 1(
CHANNEL 0
MYCALL YOUR-CALL
MODEM 1200
AGWPORT 8000
KISSPORT 8001
DWAIT 50
PBEACON delay=00:15 every=30 overlay=S symbol="digi" lat=XX.XXXN long=YYY.YYYW power=5 height=200 gain=3 comment="CITY ST" via=WIDE1-1,WIDE2-1
ADEVICE plughw:1,0
ACHANNELS 1(
CHANNEL 0
MYCALL YOUR-CALL
MODEM 1200
AGWPORT 8000
KISSPORT 8001
DWAIT 50
PBEACON delay=00:15 every=30 overlay=S symbol="digi" lat=XX.XXXN long=YYY.YYYW power=5 height=200 gain=3 comment="CITY ST" via=WIDE1-1,WIDE2-1

You can figure out the lat/lon stuff with GridMapper.

The Signalink uses VOX for PTT, so no need to configure that. You can run Direwolf now, and should see something like this:


~
(0) <heidrun:kyle> $ direwolf
Dire Wolf version 1.5
Includes optional support for:  gpsd hamlib

Reading config file direwolf.conf
Audio device for both receive and transmit: plughw:1,0  (channel 0)
Channel 0: 1200 baud, AFSK 1200 & 2200 Hz, E+, 44100 sample rate.
Note: PTT not configured for channel 0. (Ignore this if using VOX.)
Ready to accept AGW client application 0 on port 8000 ...
Ready to accept KISS TCP client application 0 on port 8001 ...

Digipeater WIDE2 (probably BKELEY) audio level = 2(1/1)   [SINGLE]   ____:____
[0.4] KJ6DZB-3>APAVT5,WA6TOW-2,WIDE1,BKELEY,WIDE2*:=3752.66N/12217.83W>029/
000/A=000019144.390MHz 3.59V  75.2F
"144.390" in comment looks like a frequency in non-standard format.
For most systems to recognize it, use exactly this form "144.390MHz" at beginning of comment.
Position, normal car (side view), SainSonic AP510 which is a 1watt tracker
N 37 52.6600, W 122 17.8300, 0 MPH, course 29, alt 19 ft, 144.390 MHz
144.390MHz 3.59V  75.2F

So it’s working, and it’s time to fire up Xastir.

Xastir, in the tradition of ham radio software, has a rather unfortunate interface. You’ll want to make sure to configure your callsign and locator and all that.

Next, go to Interface -> Interface Control -> Add. Direwolf works as a Networked AGWPE, so select that; the defaults should be right. You can check the port against what Direwolf reported:

Ready to accept AGW client application 0 on port 8000 ...

I set up my Yaesu VX-6R to listen in; I could hear digital transmissions come through and I knew to check the console to verify that I was decoding stuff. I also set up a Baofeng BF-F8HP with a BTECH APRS K-1 cable on a second laptop with Direwolf in another room running to check transmissions.

Set up your radio to the correct frequency (e.g. 144.390MHz). Here’s where I started to run into problems. The FT-817 defaulted to FM mode, and that worked fine for receiving APRS packets. It wouldn’t trigger the PTT when I tried to transmit, though. If I set it to PKT mode (you’re supposed to use PKT for non-HF, I’ve heard), it would often not receive. I fiddled around with the levels on the Signalink and the RF gain settings, eventually they started coming through.

The second problem was my transmit levels:

AI6UA audio level = 0(0/0)   [NONE]   :|_______
AI6UA-7 audio level = 3(1/1)   [NONE]   |||||||__

My radio isn’t transmitting loudly enough, it looks like. The numbers above refer to roughly how loud the signal is; you want the first number to be as close to 50 as possible. The numbers in slashes are a ration of tones, you want them to be as close as possible. The more vertical bars, the better.

A bunch of digging around and I finally sorted it out:

AI6UA-7 audio level = 45(8/13)   [NONE]   :|||_____

The issue? Somehow menu setting 40 PKT Rate had been set to 9600, not 1200. Fixing that and all was well.

Not sure if anyone is receiving, but there’s that.

Next up: RTTY over VHF/UHF.

Update

Uh, that was easier than I thought. I ran into problems earlier trying to follow along with that digital mode part 1 blog, and it wasn’t working. I already know that my BTECH APRS cable doesn’t work with my laptop’s soundcard (e.g. it won’t trigger PTT), so in order to transmit with the Baofeng, I have to hold down the PTT and hit transmit.

The long story short: set up fldigi with your radio; I have a CAT cable and I use the Signalink with my FT-817. Set the operating mode to PSK->BPSK31 and send away.

I need to explore some other digital modes and figure out how to compact the setup.

The real next step I guess is playing with js8call.