My Antenna Controller

Submitted by Thomas Nilsson on

The rig I use has two different RF connectors. One is for frequencies above 70 MHz and one is for frequencies below 70 MHz. As I use different antenna for short-wave I need an antenna switch. I found one which is a one to four port switch,  SSB-electronic AS-304N.

SSB-electronic AS-304N

So to get a neat solution I decide to build an Semi Automagic Antenna Controller (SAAC). The idea is to check which frequency the rig is operating at an then select the correct antenna based on that. Of course also the switching will be done only if the rig isn't transmitting!

Why didn't I chose a fully automatic solution? Well, there are two ways of doing this, either you go for polling or a interrupt-driven solution. Polling needs to be done at a specific rate. It is easy to implement a polling rate of one / minute without overload or making things too complicated. But I think that 1 polling / minute is too slow. So in that case it is better with a semi-automagic solution. Of course what I want is an interrupt-driven solution but unfortunately I have not found nor figured out a neat solution yet. :(

Antenna controller, homepage

As this design doesn't need that much CPU power I went for a Raspberry Pi Zero W (RP-Z-W). Using this one I can get a great Web Interface using an simple application written in e.g. Python.

HW view

The HW is rather simple. It consists of a RP-Z-W with an external relay board. The relay board is controlling the Antenna switch. Using the relays also give a good isolation between the antenna side and the more sensitive control side of the design. There is also a +5V to +12V up-converter for the voltage to the antenna switch. The AH-4 interface is under development. It is the HW interface to activate the tune functionality in the Icom-rig. In my case it is a IC-7100. But all Icom-rigs should be equivalent.

The software used is a Linux running on the RP Z-W with the web-interface written in Python / Flask. I chose this because I have used this setup before and then found it suitable for these kind of small applications with a web-interface. Nothing fancy but it works great! :)

Antenna configuration page

 

There are many things you can do with SW. The latest additions are I18n (translation) support, better interface for uploading the antenna pictures and checking of input data consistency as well as many small improvements code-wise.

Front view of the Antenna Controller

There has been many improvements to the functionality. The main update is probably the display with a dynamic configurable push-button. Currently it is setup to do an "Automagic" configuration of the antenna based on which band that is currently selected.

It should probably be pointed out that the controller is dependent on a rigctld server, a part of Hamlib, running on a Linux computer. It is via this that the frequencies are checked so that the right antenna can be selected. By using this server, all my programs can get access to the rig settings.