LinBPQ can be configured to allow a KISS TNC to operate in a similar way to a TNC2 connected to a dumb terminal. This document details setting up such a system on a Raspberry PI with a TNC-PI but the same ideas could be applied to other configurations.
I've written a simple script to download, install and configure LinBPQ. The script
can be seen here, and the configuration file bpq32.cfg it installs here
First download the installation script. I suggest you download to the home directory of user pi.
wget http://www.cantab.net/users/john.wiseman/Documents/Files/simplekissinstall
Then run it:
pi@pi1 ~ $ sh simplekissinstall
This should create a directory linbpq and install the needed files. When it has finished, cd to linbpq and check the contents. It should be similar to
pi@pi1 ~/linbpq $ ls -ltotal 2840 -rw-r--r-- 1 pi pi 751 Feb 14 22:06 bpq32.cfg -rwxr-xr-x 1 pi pi 2438141 Feb 14 22:05 linbpq -rw-r--r-- 1 pi pi 89 Feb 14 22:06 minicombpq -rw-r--r-- 1 pi pi 1861 Feb  9 13:38 minicom.diff -rwxr-xr-x 1 pi pi 377837 Feb  9 12:02 piminicom -rw-r--r-- 1 pi pi 63760 Feb 20  2012 Ring.wav -rw-r--r-- 1 pi pi 330 Feb  9 13:30 window.diff
Only the first two are needed, the purpose of the others will b described later. Start linbpq. You should see something like
pi@pi1 ~/linbpq $ ./linbpq G8BPQ AX25 Packet Switch System Version 6.0.17.5 November 2018 Copyright © 2001-2018 John Wiseman G8BPQ Current Directory is /home/pi/kissterm/linbpq Configuration file Preprocessor. Using Configuration file /home/pi/kissterm/linbpq/bpq32.cfg Conversion (probably) successful PORTS 1e7870 LINKS 1e860c DESTS 1eb50c ROUTES 1f1a9c L4 1f349c BUFFERS 1f989c Route/Node recovery file BPQNODES.dat not found - Continuing without it Initialising Port 01 ASYNC /dev/ttyAMA0 Chan A slave device: /dev/pts/1. symlink to /home/pi/linbpq/com10 created slave device: /dev/pts/2. symlink to /home/pi/linbpq/com11 created TNC Emulator Init Complete
Two virtual COM ports have been created, and attached to the TNC2 emulator within linbpq. You only really need one, but with two you can be using one terminal, and still be able to accept calls from others on the second. I've used minicom as a terminal, but other similar terminals should work. You need to leave linbpq running (there are ways of running it as a background process, but for now keep it simple), so you need to open another window to run the terminal in. If using the GUI open another lxterminal. If you are using the PI console, use ALT+F2 to switch to another console. Log in and cd to the linbpq directory. Run minicom. It needs two parameters, the virtual com port to use, and an initialisation script.
pi@pi6 ~/linbpq $ ./piminicom -D /home/pi/linbpq/com10 -S minicombpq Welcome to minicom 2.7 Modified Jan 2014 by John Wiseman G8BPQ to play a sound file for the BELL code OPTIONS: I18n Compiled on Feb 9 2014, 11:54:24. Port /home/pi/linbpq/com10, 22:02:01 Press CTRL-A Z for help on special keys cbell on CBELL was OFF cmd:
You can now enter TNC2 commands. You can turn monitoring on with MON ON, and you should then see any packet activity on the channel. You can connect to other stations, using C Callsign. One difference from a real TNC2 is that you are connecting through a node, and if a connect fails, you remain connected to the node. You need to enter CTRL/C D to get back to the tnc prompt.
So long as you have CONOK set to ON, people can connect to you, but only if the session is idle. If you want to be able to receive calls while connected, you can open another window and run another copy of minicom. Just replace com10 in the command line with com11. If someone connects to you, LinBPQ will send a bell character to the terminal, but there seems to be a problem with the console driver on the PI, and no sound is heard. I have patched minicom to play a sound file called Ring.wav when a bell is received. The patched version is called piminicom. I've included a sample Ring.wav, but if you don't like it you can use another.