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
Installation
Start with the latest version of Raspbian Stretch and update it as follows:
sudo apt -y update && sudo apt -y upgrade
sudo reboot
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:
cd~
git clone https://github.com/wb2osz/direwolf
cd direwolf
make
sudo make install
make install-conf
make install-rpi
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.
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
Hi 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:
#!/bin/bash
echo "
Installing rtl-sdr
"
cd ~
sudo apt install -y rtl-sdr libasound2-dev cmake
echo "
Downloading and building Dire Wolf
"
git clone https://github.com/wb2osz/direwolf.git/
cd direwolf
git checkout dev
mkdir build && cd build
cmake ..
make -j4
sudo make install
#Create custom config file for Dire Wolf
cd ~
echo "
ADEVICE stdin null
CHANNEL 0
MYCALL enter your call
MODEM 1200
IGSERVER euro.aprs2.net
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
">aprs.conf
echo "
Installation complete...
Start the APRS server with: rtl_fm -f 144.80M - |direwolf -c aprs.conf -r 24000 -D 1 -
"