A Console FT8 Display

Matt Roberts - matt-at-kk5jy-dot-net

Published: 2024-09-04

Updated: 2024-09-10


This is a companion project to the FT8 softmodem software.

One of the first things I wanted to do when doing command-line FT8 operation is to view the spots and transmissions from my station.  The solution I wanted would also be low-bandwidth, so that I could view the progress of the station while operating remotely, such as on a low-budget cell-phone plan.  This is the solution I put together.

The program is a Python 3 script that emulates the monitor windows from WSJT-X, but in a console window, using only text.  It does basic color-coding and filtering.  Messages that include my call are placed in the right-hand panel, while other received spots are placed in the left-hand panel.  Messages are not duplicated between the panels as in WSJT-X, so as to declutter the display a bit.

The display includes a two-line waterfall at the bottom of the screen, as well.  This divides the available columns into frequency bins, and then displays each received and transmitted message in the closest bin.  The waterfall shows the last few timeslots, and decays away older spots as the receiver runs.


ft8con running on Linux
There is a one-line status at the top, showing the RF, AF, mode, and current Zulu time.

When started with command-line option -1, the application runs in a single-column view, that only shows messages that include my own call.  This can be handy when viewing on a portrait orientation, such as a cell phone.

By default, the time, SNR, AF, and message text are shown for each new spot.  The Δt column is not shown, but spots with excessive Δt are marked with an asterisk (*).  When started with the -t option, the Δt column is also shown for all spots, provided enough space is available.

The SNR column can be disabled with the -s option, for use when a very narrow terminal is used.

When started with -q, or when the A command is typed while running, only CQ frames will be shown in the left-hand panel.

To set the station callsign, use -m mycall.  This only needs to be done once, since the call is saved to disk when the program exits.

The data source for ft8con is the ALL.TXT file that is generated by WSJT-X.  This file contains all the received and transmitted messages, along with frequencies and other information.  ft8con watches this file, and reads new spots from it as they are written. This file can also be generated by the ft8modem package's ft8cat program by using the -a option.  This option can also be used in ft8con to specify the path to ALL.TXT.

The software can be downloaded below.  It is reasonably complete in its current form, but please email me with bug reports if you find any.

ft8con Downloads  (Click Here)

Click the link above to download software packages.  The source is being released under the GPL version 3, which is also available on the download page.


Release History

2024-09-10 - Fix subtle bug in blocked-call list handling.
2024-09-04 - Initial release.

Copyright (C) 2024 by Matt Roberts, KK5JY.
All Rights Reserved.