I vividly remember the struggle with rig control errors and PTT that seemingly developed the mind of its own sticking well into the middle of next FT8 time slot. This was especially annoying when happened during a rare QSO. The problem would not go away until the whole setup was rebooted and by then the elusive DX would be long gone. Reading through the ham forums and groups it is clear that these issues are quite common.
In many cases the reason for unstable behavior of otherwise correctly configured serial CAT interface is RFI (Radio Frequency Interference). Not the type our radio picks up from the neighbor’s grow lights, but the type that our transmission induces on the serial cable flipping zeroes to ones and ones to zeroes. Some of the ways to address this are:
- Making sure your antenna is in tune – low SWR means that less energy is reflected back into the shack
- Using choke baluns (RF Isolators) to block any stay RF early on
- Shortening the length of the serial cable making it less of the antenna for RFI (shameless plug: consider Digirig – improving CAT control stability was one of the design objectives).
- Use ferrite beads on serial line to suppress RF.
- Use rig control middleware.
I may be coining a new term here. I’m talking about likes of Omnirig (free), Flrig (free), Hamlib (free), Ham Radio Deluxe (paid), etc. Why do we want another piece of software when our digital modes apps already offer a direct CAT control?
The original value proposition for rig control software was to provide digital modes apps with a uniform interface for controlling different makes and models of the transceivers. This saves the app developers from maintaining a huge list of rig profiles and allow them to focus on the app’s core functionality. Think of familiar consistent controls you expect when you get into a new car’s driver seat. This is brought to you by the established convention and all the intermediary machinery that hides the differences in the internal workings.
Serial ports are not easy to share. Typically, once an app takes control over the COM port, other apps have no chance of getting to it. Remember receiving the error message when you tried to run SSTV while WSJT-X was still open? With the middleware software acting as a broker between the CAT interface and the digital modes apps, you can keep multiple apps open and switch around them as you wish.
I haven’t seen it in Omnirig, but Flrig and others provide an option to act as an internet server so the apps accessing the rig controls don’t have to be on the same computer. This offers opportunities for implementing a remotely controlled station.
More Resilient CAT
And finally we are back to CAT stability. It is so happens that middleware rig control software has a more resilient CAT implementation with quick retries when errors do happen. In cases where all other defenses against RFI failed, Omnirig will quickly recover and you will not even notice while naked WSJT-X will barrage you with dreaded rig control error messages.
The improvement doesn’t come without a price. The biggest issue is that not all digital mode apps support all of the rig control packages, so you’ll need to pick up your priorities and sometimes switch around. Here is a representative sample:
- WSJT-X and JS8Call pretty much support all of them
- Fldigi supports Flrig (no surprise there) and Hamlib, but not Omnirig
- MMSSTV, YONIQ supports Omnirig and nothing else
Please comment with your favorite app/CAT control combos and reasons you choose them. Personally, I use Omnirig 1.x and switch to Flrig when occasionally using Fldigi.
If you decided to give rig control middleware a try then go ahead and download the software from the author’s website (most would put craigslist to shame with their “contemporary” designs 😝), close any running digital modes apps, install/run and start configuring.
The rig type selection and port configuration migrates from the individual digital mode apps into the rig control software of your choosing. Below are the Omnirig and Flrig settings I use for my Xiegu G90 on COM6 using Digirig as the interface. Expect similar options in other packages.
Omnirig runs in background and releases the COM port automatically when last app using it is closed.
Flrig has to be launched manually and stays open until closed while offering rig controls and display:
Once middleware is configured just select corresponding name from the rig list in your digital mode apps, test the controls and you are all set:
This post doesn’t pretend to be an exhaustive source on this topic, but hopefully gives some ideas and helps troubleshoot and resolve common CAT control stability issues. If you have any comments, questions or corrections please post them below.