BPQ Home   BPQ32 Home



QtTermTCP is a multi-platform version of BPQTermTCP. There are versions for Windows, Linux and Android.
It supports TCP access to a bpq32 node either over a local LAN or the Internet. It connects to the BPQ32 TelnetServer in FBB mode, so you must define an FBBPORT in the BPQ32 Telnet Configuration.

It can also be used as a terminal for programs like UZ7HO's Soundmodem that support the AGW API, with KISS TNCs and with the VARA Modem. KISS TNCs can be connected via a serial port or a TCP connection. It can be used with the AGWPE emulator in BPQ32/LinBPQ though that has no significant advantages over the normal TCP interface.

It supports the YAPP protocol to allow you to send and receive files.


The program can be download from:

http://www.cantab.net/users/john.wiseman/Downloads/QtTermTCP   Binary for x86 Linux systems
http://www.cantab.net/users/john.wiseman/Downloads/piQtTermTCP   Binary for Raspberry Pi
http://www.cantab.net/users/john.wiseman/Downloads/QtTermTCP.zip   Program and Qt runtime for 32 bit Windows.
http://www.cantab.net/users/john.wiseman/Downloads/QtTermTCP64.zip   Program and Qt runtime for 64 bit Windows. You can also run the 32 bit version on 64 bit systems.
http://www.cantab.net/users/john.wiseman/Downloads/QtTermTCP.apk   Android Version. Should run on Android 7 and above

If you need to run on other Linux or similar systems you may be able to compile from source. Download http://www.cantab.net/users/john.wiseman/Downloads/QtTermSource.zip, unzip and run qmake then make

The program uses the Qt Framework, so needs some runtime files.

The Windows .zip file contains all the needed Qt Files, so you just need to unzip to an appropriate place. It is possible on some older versions of Windows that you may need some compiler runtime files, eg MSVCP140.dll. If you get a message about these being missing when you run the program download and run either
https://aka.ms/vs/16/release/vc_redist.x86.exe or

On Linux you may need to install the Qt5 package if you don't already have any other Qt5 programs on your machine:

sudo apt-get install qt5-default
sudo apt-get install libqt5serialport5

On Android you just need to download and install the .apk file.

On Windows and Linux QtTermTCP keeps it's configuration information in a .ini file, which is saved in the directory QtTermTCP is started from.


QTTermTCP can be set to accept incoming connections. This allows uses on the BPQ node, to connect to you. It can also accept incoming calls when using a KISS TNC or the VARA Modem.

The program can connect to IPv6 addresses if running on a machine with an IPv6 stack.

The program can run in three display modes - Single Window, MDI or Tabbed. In Single mode the screen can have both Monitor and Interactive windows which is similar to BPQTermTCP and is the default, or Interactive Only. In Tabbed or MDI mode each window can be Terminal Only, Monitor Only or combined Monitor and Terminal. When running is dual Terminal/Monitor mode the split between the two can be changed by right clicking at the point where you want the split and selecting "Set Monitor/Output Split".

Single Mode

Tabbed Mode

MDI Mode

Character Sets

QtTermTCP operates internally in UTF-8 so naturally handles different languages. There are a number of options to convert non UTF-8 input into UTF-8. The default is AUTO, where it will examine the input an try to guess what encoding it is using. This works reasonably well with characters using CP1252 (Western Europe), CP1251 (Cyrillic) or CP437 (the original IBM PC font, often used for displaying simple graphics), but sometimes it will guess the wrong set and you can then force the program to use the appropriate set. You can also set to not convert input which may be necessary if the program mis-interprets valid UTF-8.

Menu Options


In MDI mode the Window Menu allows you to create, rearrange, close and select subwindows.

In Tabbed mode it allows you to change the type of the current Tab.


Connect to a host. You can define up to 16 hosts to connect to.
If you are using the AGW, KISS or VARA interface there will be an entry for it.
If using Tabbed or MDI you can have TCP session(s) at the same time as AGW/KISS/VARA Sessions.


Disconnect from the current host.


Setup Hosts

Configure HostName/IP Address, Port, Username and Password.

Display Mode

The next four lines allow you to set the terminal mode (Single, Tabbed, MDI)

Setup Terminal Font

Setup Menu Font

These allow you to choose the fonts to be used for output and menu entries

AGW Setup

This brings up the AGW Interface configuration dialog

VARA Setup

This brings up the VARA Interface configuration dialog

Most settings should be self explanatory.

VARA FM includes CAT control, but VARA and VARASAT only support VOX or CM108/RA Board PTT, so QtTermTCP provides a few more options:

RTS on a Serial port

CAT Commands on a Serial port. The CAT commands to be sent can be specified in Hex (normally for ICOM and some Yaesu radios) or Text (for Kenwood and some Yaesu radios).

HAMLIB (rigctld)


CM108 devices

The avaliable configuration paramters will change depending on the PTT mode selected.

KISS Setup

This brings up the KISS TNC Interface configuration dialog

KISS TNC config

Again most settings should be self explanatory.

The "Select Device" dropdown allows you to select a serial port or "TCP" to use a "KISS over TCP" connection.

Chat Terminal Mode

Causes a "Keep alive" message to be sent every 11 minutes to stop Chat sessions closing.

Enable Bells

Causes the program to sound a tone when a "Bell" character is received.

Auto switch to Teletext

Enables auto switch to Teletext mode, See Teletext section below.

Strip Linefeeds

Removes Line Feeds. Most packet programs just use Carriage Return (Ascii 0x0d) to mark the end of a line, but some use Carriage Return plus Line Feed.

Beep after inactivity

Beep on inbound connect

By default the program will beep when something is received after being idle for 5 minutes or when an inbound connect is accepted. These options allow these to be disabled.

Interpret non-UTF8 input as:

The next few lines control how the program handles non UTF-8 input. See above paragraph on Character Sets for details.


These setting apply when using a TCP connection to a BPQ Node.

Monitor TX

Enables monitoring of transmitted frames.

Monitor Supervisory

Selects whether to monitor supervisory frames, or just I frames.

Only Monitor UI Frames

If set only UI frames will be displayed.

Monitor NODES

Controls whether "NODES" broadcasts are displayed.

Enable Colour

Causes sent and received messages to be displayed in different colours.

The terminal is sent the list of ports from the Node you have connected to so you can choose which to monitor.


Allows BPQTermTCP to accept incoming connections. You can set a port to listen on (default is 8515). You can also specify a CTEXT to be sent to a user when they connect to you.

If you are using the VARA or KISS interface you can also accept connections using those protocols.


Here you can set the directory for received YAPP files and start a YAPP transfer

Teletext Mode

For those interested in retro computing QtTermTCP now supports a 40x25 mode variously know as Viewdata/Teletext/Prestel/CEEFAX. If the "Auto switch to teletext" Setup item is checked the screen will switch to Teletext mode when it receives certain control codes (0x1e or 0x0c) as the first character of a message. You can also switch between normal and Teletext modes with a right click of the mouse.

John Wiseman G8BPQ
Updated Novembber 2022