KC8JCSoftware

Three terminal programs for amateur radio, all written in Python with Textual, all free, all very much Hobby Projects rather than products. Each one has its own page with a story; this is the short version and the download links.

Everything installs the same way, with pipx, straight from a file on this site. No account, no package index, no cloning. Each download has a SHA256SUMS beside it if you want to check to see if you got the file I built, and an INSTALL.txt with the exact commands for everything. I hope.

KC8JCLogger

A terminal logging program for POTA, aimed at Hunters. It pulls the current spot list from POTA, lets you pick an activation out of a table, and sets your radio's frequency and mode to match it. Log the contact, and it goes into a local database you can export as ADIF for QRZ, LoTW, or POTA itself. It talks to the radio through rigctld over a plain socket, so there is no Hamlib Python binding to build and nothing to compile.

KC8JCRigctl

A front end for rigctld itself. Pick your radio from the list of every model Hamlib knows about, pick the USB serial device it is plugged into, set a port and baud rate if the defaults are wrong, and press Connect. It is the program that gets the daemon running so everything else — the logger included — has something to talk to. It also tells you the truth about whether the connection worked, which rigctld on its own does not.

KC8JCMesh

A monitor and messenger for a Meshtastic node. Connect over USB, WiFi or Bluetooth and it shows you the mesh your radio can hear, with live telemetry and the ability to send and read messages without picking up a phone. There is a plain-text mode as well, for a pipe or a cron job or a machine where a full-screen UI is in the way.

A Note On Support

None of these are products. I wrote them because I wanted them, they do what I need, and I generally only touch them when I want one to do something new. The code is messy in places and I am not going to pretend otherwise. If one of them is useful to you that is genuinely great, and I would like to hear about it — but my support availability is limited, even for myself.