Skip to content
HAMORA

Radio and WSJT-X

HAMORA can show your radio’s frequency and mode while you log, and log your FT8 and FT4 contacts from WSJT-X for you. Both are optional: you can always type a QSO in by hand.

Before you start

HAMORA can reach your radio in two ways. Pick one:

  • HAMORA Bridge is the easiest: a small HAMORA program for the computer next to your radio. It finds your radio for you, with no commands to type. It’s still being tested, so its installers aren’t published yet. See HAMORA Bridge.
  • rigctld over Wi-Fi works today, with free software. It takes about 15 minutes the first time, and the steps below walk you through it.

What you need

  • A computer near your radio: Windows, a Mac, Linux or a Raspberry Pi. It stays on while you operate.
  • The USB cable between your radio and that computer. Most modern radios have a USB socket for this.
  • Your phone on the same Wi-Fi network as the computer.

Connect your radio with rigctld

Step 1. Install Hamlib on the computer

Hamlib is free. Open the guide for your computer:

On Windows
  1. Open Hamlib’s latest release page (opens in a new tab) on GitHub.
  2. Under Assets, download the 64-bit Windows installer: the file with w64 in its name that ends in .exe.
  3. Run it and follow the steps. It installs Hamlib in a folder such as C:\Program Files\hamlib-w64-4.7.2. Note this folder: the programs are in its bin folder.
  4. Windows may also need your radio’s USB driver. If the radio doesn’t appear in step 3, download the driver from your radio maker’s website (Icom, Yaesu, Kenwood and Elecraft each publish one).
On a Mac
  1. Install Homebrew (opens in a new tab), the free installer most Mac users use for this kind of program. Open Terminal (in Applications → Utilities), paste the command shown on brew.sh, press Return and follow what it says.
  2. Then install Hamlib:
brew install hamlib
On a Raspberry Pi or Linux

Open a terminal (on a Raspberry Pi: the black screen icon at the top) and enter the line below. Type your password when asked.

sudo apt install libhamlib-utils

Then let your user use the radio’s USB port, and log out and back in:

sudo usermod -aG dialout $USER

Step 2. Find your radio’s model number

Hamlib knows each radio by a number. Find yours here, then check the radio’s menu for its USB or CI-V speed (baud rate): the table shows the usual one.

Hamlib model numbers and usual speeds
RadioModel numberUsual speed
Icom IC-73003073115200
Icom IC-7053085115200
Icom IC-76103078115200
Icom IC-97003081115200
Icom IC-7100307019200
Icom IC-9053090115200
Yaesu FT-991A103538400
Yaesu FTDX10104238400
Yaesu FT-710104938400
Yaesu FTDX101D104038400
Yaesu FT-891103638400
Yaesu FT-818104138400
Kenwood TS-590SG2037115200
Kenwood TS-890S2041115200
Elecraft K3 / K3S202938400
Elecraft KX3204538400
Elecraft KX2204438400
Elecraft K4204738400

Another radio? Run rigctl -l on the computer: it lists every radio Hamlib knows, with its number.

Step 3. Find the port your radio uses

Turn the radio on and plug in its USB cable.

On Windows

Right-click the Start button and open Device Manager. Open Ports (COM & LPT). Your radio shows as a COM port, such as COM3. Unplug the cable to see which one disappears if there are several.

On a Mac

In Terminal, enter:

ls /dev/cu.*

Your radio is a line with usbserial or SLAB_USBtoUART in it, such as /dev/cu.usbserial-1420.

On a Raspberry Pi or Linux

In the terminal, enter:

ls /dev/serial/by-id/

Your radio is the line with its maker or a USB chip’s name in it. Put /dev/serial/by-id/ in front of it in step 4.

Step 4. Start rigctld

Put your model number after -m, your port after -r and your speed after -s. The examples are for an IC-7300.

On Windows

Open Command Prompt from the Start menu, go to Hamlib’s bin folder, then start rigctld:

cd "C:\Program Files\hamlib-w64-4.7.2\bin"
rigctld.exe -m 3073 -r COM3 -s 115200

If Windows asks whether to allow rigctld on networks, choose Private networks and allow it.

On a Mac
rigctld -m 3073 -r /dev/cu.usbserial-1420 -s 115200

If your Mac asks whether rigctld may accept incoming connections, choose Allow.

On a Raspberry Pi or Linux
rigctld -m 3073 -r /dev/serial/by-id/usb-Silicon_Labs_CP2102_… -s 115200

rigctld shows nothing while it works: that’s normal. Keep the window open while you operate. Closing it stops rigctld.

Step 5. Find the computer’s IP address

On Windows

In Command Prompt, enter ipconfig. Use the IPv4 Address under your Wi-Fi or Ethernet adapter, such as 192.168.1.20.

On a Mac

Open System Settings → Wi-Fi (or Network for a cable), and choose Details next to your network. The IP address is listed there.

On a Raspberry Pi or Linux

In the terminal, enter hostname -I. The first number, such as 192.168.1.20, is the one to use.

Step 6. Connect HAMORA

  1. If you haven’t yet, add your radio in MoreEquipment, so each QSO records which radio you used.
  2. Open MoreRadio and choose Wi-Fi / LAN.
  3. Pick your radio.
  4. Enter the computer’s IP address as rigctld host, and leave Port at 4532.
  5. Tap Test connection. When it shows your frequency, tap Save and connect.

That’s it. While you log a new QSO, the frequency, band and mode now follow your radio. Change a field yourself and it stops following; Use current radio values brings it back. Saved QSOs are never changed, and saving never depends on the connection.

What HAMORA reads

  • Frequency, mode and VFO (which of the radio’s two tuning memories is in use), every second.
  • Meters such as signal strength, power and SWR, but only the ones your radio reports. SWR shows “—” when you aren’t transmitting.
  • Data modes such as USB-D are shown as the radio reports them and never set a QSO’s mode, because the radio can’t tell FT8 from RTTY.

Connecting by USB or Bluetooth straight from the phone is planned for later.

WSJT-X

When WSJT-X logs an FT8 or FT4 contact, HAMORA can save it in your logbook too. HAMORA only listens: it never sends anything to WSJT-X.

Install WSJT-X

WSJT-X is free. Download it from the official WSJT-X download page (opens in a new tab):

  • Windows: the file ending in win64.exe. Windows may warn about an “unknown publisher”; the WSJT-X page says this is expected.
  • Mac: the .pkg for Apple Silicon (M1 and later) or for Intel.
  • Raspberry Pi or Linux: the .deb file, ARM64 for a 64-bit Raspberry Pi, Intel/AMD for a PC.

Set up WSJT-X with your radio first, following its own guide. Then connect it to HAMORA:

Send WSJT-X to your phone

  1. In HAMORA, open MoreDigital modes and choose Direct UDP. It shows two values: the UDP Server (your phone’s address) and the UDP Server port number (2237).
  2. In WSJT-X, open File → Settings (on a Mac: WSJT-X → Preferences) and the Reporting tab.
  3. Type those two values into UDP Server and UDP Server port number, and press OK. “Accept UDP requests” can stay off.
  4. Keep your phone and the WSJT-X computer on the same Wi-Fi network.

Your phone’s address can change after it reconnects to Wi-Fi. If WSJT-X stops reaching HAMORA, check the address again. HAMORA Bridge avoids this: WSJT-X then sends to the Bridge, whose address stays the same, and every paired phone follows along.

Through HAMORA Bridge

In WSJT-X, set UDP Server to 127.0.0.1 (meaning “this computer”) when WSJT-X runs on the Bridge computer, or to the Bridge computer’s IP address, port 2237. Then choose MoreDigital modes → HAMORA Bridge in HAMORA.

What you see

  • The Digital tab lists the stations WSJT-X decodes, newest first, with badges from your own log: worked before, and a new DXCC entity (country), band or mode.
  • Decodes are kept in memory only, and are never turned into QSOs.
  • Your radio’s frequency and WSJT-X’s are shown side by side. If they differ by more than 1 kHz, HAMORA says so.

How QSOs are logged

  • A QSO is logged only after you confirm WSJT-X’s own Log QSO window.
  • Auto-log completed QSOs is on at first. Turn it off to check each one and tap Save to Logbook yourself.
  • If WSJT-X’s callsign differs from your HAMORA station’s, the QSO waits for you to save it anyway.
  • A QSO already in your logbook is never saved twice.

HAMORA wasn’t open when you logged in WSJT-X? Import WSJT-X’s log file, wsjtx_log.adi, in MoreImport ADIF. In WSJT-X, File → Open log directory shows where it is. QSOs already in your logbook are skipped.

If something isn’t working

The Radio and Digital screens show one line in plain words, Ready, Needs setup, Needs attention or Checking…, with the next step to take. On Home, the radio card mentions a problem only when a radio you set up needs attention.

Common radio and WSJT-X problems
What you seeWhat to try
Test connection failsCheck that rigctld’s window is still open, the IP address is right, and your phone is on the same Wi-Fi (not a guest network). Allow rigctld through the computer’s firewall.
rigctld closes straight away, or shows an errorCheck the model number and the port name. Close other programs that use the radio, such as the radio maker’s software: only one program can use the port at a time.
Connected, but no frequencyThe speed after -s doesn’t match the radio’s menu, or the radio is off. Fix it, then close rigctld and start it again.
WSJT-X and rigctld both need the radioOnly one program can use the radio’s port. In WSJT-X, choose Hamlib NET rigctl as the radio, so WSJT-X shares rigctld with HAMORA.
WSJT-X QSOs don’t appearCompare WSJT-X’s UDP Server settings with MoreDigital modes. Another program, such as JTAlert or GridTracker, may already be using port 2237.

Still stuck? See Support.

Read-only by design

  • HAMORA only asks rigctld to read: what the radio can do, the frequency, mode, VFO and meters. It never changes the frequency or mode, never transmits and never changes the power.
  • HAMORA never sends anything to WSJT-X.