It can be easy to link an ax25 interface to Direwolf. This makes it possible to use RMSGateway, Uronode etc with Direwolf.
In this script Direwolf is started with the -p option. With the -p option a virtual tnc is created. /tmp/kisstnc.
With mkiss a kiss connection is made on the /tmp/kisstnc. With kissattach the PTY is connected to the ax25 interface.
Fist edit the file axports in /etc/ax25
pd9q@pd9q:/etc/ax25 $ cat axports # /etc/ax25/axports # name callsign speed paclen window description # ax0 PI1LAP-9 19200 255 7 RMSGateway pi1lap-10
Config the direwolf.conf file to set the right audio device and ptt port. Save file to /etc/ax25/direwolf.conf
ADEVICE plughw:1,0 ACHANNELS 1 CHANNEL 0 MODEM 300 2130:2230 D PTT GPIO 21 DWAIT 0 SLOTTIME 12 PERSIST 63 TXDELAY 40 TXTAIL 10 FIX_BITS 1 AX25 LOGDIR /var/log/direwolf
Run the script
#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/etc/ax25:/usr/local/ax25 echo "Starting direwolf" direwolf -t 0 -c /etc/ax25/direwolf.conf -p & #Check if Direwolf is running sleep 5 if [ -z "`ps ax | grep -v grep | grep direwolf`" ]; then echo -e "\nERROR: Direwolf did not start properly and is not running, please review direwolf.conf" exit 1 fi echo "Installing one KISS connection on PTY port /tmp/kisstnc" mkiss -s 19200 -x 1 /tmp/kisstnc > /tmp/unix98 #This creates a PTS interface like "/dev/pts/3" export PTS0=`more /tmp/unix98 | grep -w /dev | cut -b -11` echo "PTS0 device: $PTS0" kissattach $PTS0 ax0 > /tmp/ax25-config.tmp awk '/device/ { print $7 }' /tmp/ax25-config.tmp > /tmp/ax25-config1-tmp read Device < /tmp/ax25-config1-tmp
Let’s check if everything went well.
pd9q@pd9q:~ $ ps ax 1015 ? Ss 0:00 mkiss -s 19200 -x 1 /tmp/kisstnc 1025 ? Ss 0:00 kissattach /dev/pts/2 ax0
Try it out…
pd9q@pd9q:~ $ call ax0 pd9q-2 GW4PTS AX.25 Connect 2.0.0 Trying... *** Connected to pd9q-2 *** Cleared
Now it’s possible to setup RMSGateway or Uronode of whatever you want.