DSP-232+ and KISS operation

While I wait for my DS1243Y-120+ samples to arrive, I thought I would spend a bit of time working with my DSP-232+ and a Raspberry Pi. Although the DSP-232+ is capable of acting as a standalone system, I would like to press it into service as a simple TNC for VHF packet and APRS use. One plan is to have a Raspberry Pi acting as an iGate for APRS.

To begin, I connected a USB-to-RS232 adapter to the Pi and the TNC. This was a simple task and allows the Pi to communicate with the TNC at RS232 levels. The DSP-232+ does not communicate at TTL levels and so the USB to serial adapter bridges that gap nicely.

The distribution I am using on the Pi at the time of writing is Rasbian Jessie and uses kernel 4.1. After installing the distribution, I updated the packages by running the commands:

sudo apt-get update
sudo apt-get upgrade

After the updates are completed (which may take quite some time), I installed a number of AX.25 tools which are central to packet operation and the Raspberry Pi. This is done by issuing the command:

sudo apt-get install screen build-essential python-serial sqlite3 python-dev soundmodem libax25 libax25-dev ax25-tools ax25-apps libax25-dev

With the AX.25 packages installed, we are ready to start modifying the system to match our setup. To start, I edited the axports file to create a virtual radio port which will communicate with the radio via the DSP-232+ TNC.

sudo vi /etc/ax25/axports

One particular note – the axports file must not contain any blank lines! Be sure to keep this in mind when editing the file. My axports file simply contains the line:

0       VE3BUX-1        9600   128     4       TNC1

This creates a radio port (numbered zero) which has a data rate (to the TNC – not over the air) of 9600bps which matches my TNC settings. The next two values are “paclen” and “maxframe”.

“paclen” sets up the length of packets, smaller being used in more challenging (noisy) situations and on HF. As a general guide, it is suggested to use 128 as a default (particularly when using nodes or digipeaters). A value of 255 can be used for very low-noise environments and for direct connections. In my case, the DSP-232+ has a default paclen of 128 for 1200 baud VHF packet (p82 of the manual).

“maxframe” is one of the values which determines how data is sent in general. A good starting point is to use a maxframe of 4 as a default for VHF – perhaps as high as 7 for ideal conditions. For HF or marginal to poor conditions, a setting of 2 or even 1 is suggested.

With the axports file edited to our needs, we can now create the KISS port for the Pi to interface with. To create the interface, we need to know where the serial port exists in our /dev system. In my case, the USB device can be addressed as:


We will attach our KISS port 0 to the system and assign it an IP address of

Something to note is that you can assign a private IP4 address to the port – I selected the network block as AMPRNet is specifically for Amateur Radio. You can request a 44 network IP address by using the AMPRNet portal.

sudo kissattach /dev/ttyUSB0 0

Until I can have an IP address assigned, I will “piggyback” on the network as which should not be an issue as there is essentially zero packet activity in my area (aside from APRS).

If you run the command:


You should see an ax port in your network configuration list:

ifconfig sample output

ifconfig sample output

Next, we can test our configuration by tuning into the APRS frequency 144.390MHz and watching for packets:

sudo axlisten -a -c
axlisten sample output

axlisten sample output

A neat daemon which runs in the background is mheardd which listens for packet stations and stores the data in the file /var/ax25/mheard/mheard.dat which will store  the last 100 callsigns as well as the last heard date & time. To run the daemon, type:

sudo mheardd

At any time  you can use the mheard command to recall the callsigns your system has decoded from packet data.


The output of which will look like:

mheard test output

mheard test output

Once you are able to see packet data, you are in business! This opens up a world of possibilities for you – APRS iGate, Packet BBS, etc …

This entry was posted in General, Project and tagged , , , , , , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *