Packet Radio TNC with the Raspberry Pi
** Updated 21-2-18
The Pi plus a USB soundcard is all you need to get started with Packet Radio. Instead of using a dedicated hardware TNC, the Pi can be coaxed to do the hard work of managing the Packet protocol.
Full instructions can be found on the WB2OSZ’z website at: https://github.com/wb2osz/direwolf
Start with the latest version of Raspbian Stretch and update it as follows:
sudo apt -y update && sudo apt -y upgrade
The only additional package required is libasound2-dev so install that as follows:
sudo apt install -y libasound2-dev
Now we can install Dire Wolf as follows:
git clone https://github.com/wb2osz/direwolf
sudo make install
Now we need to make a couple of changes to the configuration file:
sudo nano direwolf.conf
Scroll down to the line: #ADEVICE – plughw:1,0 and delete the # from the start of both lines.
Scroll down to CHANNEL 0 PROPERTIES and replace NOCALL with your callsign-1, i.e. G4WNC-1. NB: This must be caps.
Press Ctl x followed by y to save and close the file.
Reboot the Pi and run Dire Wolf by double-clicking on the desktop icon.
If you want an APRS client for the Pi then YAAC works well.
You can also add a USB GPS or a GPS Hat to make the Pi into an APRS tracker. Details are on the WB2OSZ website.
2 thoughts on “Packet Radio with the Raspberry Pi”
Mike, I followed the instructions in your RPi book and text above for installing Direwolf but got a flashing warning about configuration of the USB sound card, even after updating direwolf.conf. There were some errors during the compiling. After reading the github/wb2osz I tried the ver 1.6 Dev version and all seems to work. Possibly some compatibility problems between Direwolf 1.5 and Raspian Buster.
I understand you use vox on your transceiver to switch between transmit and receive, did this work ok? Direwolf ver 1.6 allows use of RPi GPIO pin for PTT switching. Chris
I’ve just encountered this problem myself whilst working on a simple APRS iGate Rx only node. As you say the solution is to switch to the development branch. The author is aware of the issue so I’m hoping he will integrate the updates with the main release. In the meantime I’ve put together the following script that will automate the installation of an Rx node:
sudo apt install -y rtl-sdr libasound2-dev cmake
Downloading and building Dire Wolf
git clone https://github.com/wb2osz/direwolf.git/
git checkout dev
mkdir build && cd build
sudo make install
#Create custom config file for Dire Wolf
ADEVICE stdin null
MYCALL enter your call
IGLOGIN your call and iGate passcode
PBEACON sendto=IG delay=0:30 every=60:00 symbol="igate" overlay=R Your lat/lon in this format:lat=nn^nn.nnN long=nn^nn.nnW
Start the APRS server with: rtl_fm -f 144.80M - |direwolf -c aprs.conf -r 24000 -D 1 -