Skip to content

Releases

WSJT-X 3.3.0-beta6-inhibit

Choose a tag to compare

@cursor cursor released this 13 Nov 18:58
d336fc7

WSJT-X 3.3.0-beta6-inhibit

Windows and Linux builds of the TX Inhibit fork. The program reports this version in the window title, Help → About, and wsjtx_app_version -v.

GitHub lists this as the Latest release when it is the newest inhibit build. GitHub only gives that badge to a release that is not marked pre-release, and the older 3.0.2 packages on this repo are pre-releases. This build is still a beta of WSJT-X 3.3.0-beta6 plus TX Inhibit, not a general-availability release. Older inhibit builds are kept and marked pre-release so they do not stay current.

Upstream

Based on official WSJT-X v3.3.0-beta6.

Inhibit delta

WSJT-X 3.3.0-beta6 already implements type 17 / type 18 TX Inhibit. This build adds the sole-writer pin path: the UDP dispatch thread is the only Unix writer of RTS/DTR, and type 17 carries t_rx_ns and t_pin_ns.

The UDP Heartbeat Id stays WSJT-X (KEY agents match that). The Heartbeat version field and the PSK Reporter software string include 3.3.0-beta6-inhibit.

Build

Commit: d336fc7b567e1fad4996ae8836cfd3b7b10b6321

Install

File Where
wsjtx-3.3.0-beta6-inhibit-win64.exe Windows 64-bit installer
wsjtx-3.3.0-beta6-inhibit-linux-x86_64.deb Ubuntu 24.04 amd64. sudo apt install ./wsjtx-3.3.0-beta6-inhibit-linux-x86_64.deb then run wsjtx. No extra environment variables.

Independent GPL-3 build. Not an official WSJT-X / ARRL release.

wsjtx-inhibit 3.0.2-rc5

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Sep 05:26

wsjtx-inhibit 3.0.2-rc5

Who this is for: operators who already use WSJT-X and want to try TX Inhibit.

What this is: WSJT-X mainline v3.0.2 plus a low-latency TX Inhibit function.
Same modes and sequencing as mainline; the radio's PTT key line can be held off within
milliseconds when a multi-op interlock requires it, without aborting FT8/FT4
sequencing (that is what Halt Tx does — this is different).

Independent GPL-3 build. Not an official WSJT-X / ARRL release.


What changed since rc4

rc4 added the W2SZ type-17 port-0 field fix. The Windows release build
failed: MinGW did not link ws2_32 for getsockname / ntohs.

rc5:

  • Link ws2_32 on the final wsjtx executable on Windows (static
    wsjt_qt did not always propagate that import library).
  • Keep the port-0 bind/announce guard from rc4.
  • Code comments say “controllers,” not WIMS. WIMS remains the field
    justification for the empty KEY-agent target list at W2SZ.

Wire format is unchanged. Point KEY agents at the ephemeral host:port
from InhibitStatus / the tooltip (never port 0).

Authority doc: docs/TX_INHIBIT.md.


Download

Under Assets on this release:

File Platform What you do
wsjtx-inhibit-3.0.2-rc5-win64.exe Windows 64-bit Double-click, follow the wizard
wsjtx-3.0.2-rc5-linux-x86_64.AppImage Linux x86_64 chmod +x, then run (preferred)
wsjtx-3.0.2-rc5-linux-x86_64.deb Debian / Ubuntu / Mint sudo apt install ./…
wsjtx-3.0.2-rc5-linux-x86_64.rpm Fedora / RHEL / openSUSE sudo dnf install ./…
wsjtx-3.0.2-rc5-linux-aarch64.* Linux ARM64 (Pi 4/5, …) Same pattern as x86_64

Windows may show SmartScreen on an unsigned test build: More info →
Run anyway, if you trust wa1hco/wsjtx-inhibit.

Install overview: INSTALL.md.


Running beside official WSJT-X

Program files are separate (C:\WSJT\wsjtx-inhibit\ on Windows).
Settings and logs are still shared — both read %LOCALAPPDATA%\WSJT-X\
(WSJT-X.ini, ALL.TXT, wsjtx_log.adi).

To give this build its own configuration, launch it with:

"C:\WSJT\wsjtx-inhibit\bin\wsjtx.exe" --rig-name inhibit

Full steps:
INSTALL-WINDOWS.md.


Settings for TX Inhibit

  1. File → Settings → Radio
  2. PTT method = RTS or DTR (CAT-only PTT is not filtered)
  3. PTT port = a real COMx / /dev/ttyUSBx (not the list value CAT); same COM as CAT is fine when Handshake = None
  4. Enable TX Inhibit = checked (only after method + port are set; default off)
  5. Radio VOX off, Handshake = None

When a hold is active the status bar shows a red INHIBIT badge. The radio
stays unkeyed while WSJT-X may still be in a TX cycle in software.

Confirm the tooltip host:port is not 0 after the rig is open. That is the
port WIMS and inhibit-agent must use.

WARNING — turn radio VOX off. TX Inhibit only gates the RTS/DTR PTT line.
If VOX is on, audio can still key the radio while the badge says INHIBIT.


Testing it

Helpers ship next to the app:

bin\inhibit-agent-gui.exe   KEY agent GUI (CTS → type 18)
bin\inhibit-agent.exe       KEY agent CLI
bin\inhibit-test.exe        console KEY stand-in (grave/backtick)
  1. Enable TX Inhibit as above. Note the ephemeral host:port in the status-bar tooltip (also announced as InhibitStatus type 17). The port must not be 0.
  2. Point inhibit-agent-gui at that host:port and Apply (NEED GATE until then).
  3. Or use inhibit-test: hold grave (`, left of 1 — not Space) → red INHIBIT, radio must not key. Release → badge clears.

Bench without a KEY dongle: Rig None, PTT RTS, PTT port inhibit-sim, Enable TX Inhibit, then use inhibit-test.

KEY agent design: docs/INHIBIT_AGENT.md.


Known issues in rc5

Please read these before reporting — they are known.

  • No strong “armed but silent” alarm. If the agent is not running, is pointed at the wrong host:port, or the firewall blocks UDP, this build transmits normally. Always confirm with a test hold.
  • Badge does not appear with rig types DX Lab Suite Commander, Ham Radio Deluxe, OmniRig, or TCI. Inhibit still works and PTT is still held off — only the on-screen badge and some telemetry are missing.
  • macOS packages are not published. CI compiles macOS; there is no operator .pkg.
  • Changing the system clock (NTP step, time-sync tools) while a hold is active can extend or shorten that lease.

Feedback

Please include: OS version, rig, PTT method and exact COM/tty port, whether normal
FT8 worked, whether the red INHIBIT badge appeared, the gate host:port you used,
and whether the radio keyed when it should not have.

Issues: https://github.com/wa1hco/wsjtx-inhibit/issues

Do not report this fork to the official WSJT-X project as a stock bug.


Safety and license

  • Use a dummy load or controlled power for first TX tests.
  • This is a release candidate for operator testing.
  • GPL-3, same family as WSJT-X. Separate from the official WSJT project.
Link Topic
INSTALL.md Install overview
INSTALL-WINDOWS.md Windows step-by-step
INSTALL-LINUX.md Linux step-by-step
docs/TX_INHIBIT.md Design, protocol, KEY agent
docs/INHIBIT_AGENT.md inhibit-agent

wsjtx-inhibit 3.0.2-rc4

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Sep 04:59

wsjtx-inhibit 3.0.2-rc4

Who this is for: operators who already use WSJT-X and want to try TX Inhibit.

What this is: WSJT-X mainline v3.0.2 plus a low-latency TX Inhibit function.
Same modes and sequencing as mainline; the radio's PTT key line can be held off within
milliseconds when a multi-op interlock requires it, without aborting FT8/FT4
sequencing (that is what Halt Tx does — this is different).

Independent GPL-3 build. Not an official WSJT-X / ARRL release.


What changed since rc3

rc3 is still the type-18 / ephemeral-port protocol. rc4 fixes a field bug
from the W2SZ September VHF contest.

At W2SZ, WIMS built an empty KEY-agent target list. Type 17 InhibitStatus
carried port 0. WIMS rejects port 0, so no holds reached the digi seats.

Two causes:

  1. QUdpSocket::bind(0) can return true while localPort() is still 0.
    The gate then announced port 0.
  2. The gate binds after Hamlib rig_open. While that is in progress,
    Enable is on and the port is still 0, so the 15 s type-17 pulse published
    port 0.

rc4:

  • After bind, if localPort() is 0, read the port with getsockname.
  • If the port is still 0, treat it as bind failure. Do not emit portBound(0).
  • Do not send a live type 17 with port 0. Port 0 is only the disable/clear
    announce.

Wire format is unchanged. rc3 KEY agents still work. Point them at the
ephemeral host:port from InhibitStatus / the tooltip (never port 0).

Authority doc: docs/TX_INHIBIT.md.


Download

Under Assets on this release:

File Platform What you do
wsjtx-inhibit-3.0.2-rc4-win64.exe Windows 64-bit Double-click, follow the wizard
wsjtx-3.0.2-rc4-linux-x86_64.AppImage Linux x86_64 chmod +x, then run (preferred)
wsjtx-3.0.2-rc4-linux-x86_64.deb Debian / Ubuntu / Mint sudo apt install ./…
wsjtx-3.0.2-rc4-linux-x86_64.rpm Fedora / RHEL / openSUSE sudo dnf install ./…
wsjtx-3.0.2-rc4-linux-aarch64.* Linux ARM64 (Pi 4/5, …) Same pattern as x86_64

Windows may show SmartScreen on an unsigned test build: More info →
Run anyway, if you trust wa1hco/wsjtx-inhibit.

Install overview: INSTALL.md.


Running beside official WSJT-X

Program files are separate (C:\WSJT\wsjtx-inhibit\ on Windows).
Settings and logs are still shared — both read %LOCALAPPDATA%\WSJT-X\
(WSJT-X.ini, ALL.TXT, wsjtx_log.adi).

To give this build its own configuration, launch it with:

"C:\WSJT\wsjtx-inhibit\bin\wsjtx.exe" --rig-name inhibit

Full steps:
INSTALL-WINDOWS.md.


Settings for TX Inhibit

  1. File → Settings → Radio
  2. PTT method = RTS or DTR (CAT-only PTT is not filtered)
  3. PTT port = a real COMx / /dev/ttyUSBx (not the list value CAT); same COM as CAT is fine when Handshake = None
  4. Enable TX Inhibit = checked (only after method + port are set; default off)
  5. Radio VOX off, Handshake = None

When a hold is active the status bar shows a red INHIBIT badge. The radio
stays unkeyed while WSJT-X may still be in a TX cycle in software.

Confirm the tooltip host:port is not 0 after the rig is open. That is the
port WIMS and inhibit-agent must use.

WARNING — turn radio VOX off. TX Inhibit only gates the RTS/DTR PTT line.
If VOX is on, audio can still key the radio while the badge says INHIBIT.


Testing it

Helpers ship next to the app:

bin\inhibit-agent-gui.exe   KEY agent GUI (CTS → type 18)
bin\inhibit-agent.exe       KEY agent CLI
bin\inhibit-test.exe        console KEY stand-in (grave/backtick)
  1. Enable TX Inhibit as above. Note the ephemeral host:port in the status-bar tooltip (also announced as InhibitStatus type 17). The port must not be 0.
  2. Point inhibit-agent-gui at that host:port and Apply (NEED GATE until then).
  3. Or use inhibit-test: hold grave (`, left of 1 — not Space) → red INHIBIT, radio must not key. Release → badge clears.

Bench without a KEY dongle: Rig None, PTT RTS, PTT port inhibit-sim, Enable TX Inhibit, then use inhibit-test.

KEY agent design: docs/INHIBIT_AGENT.md.


Known issues in rc4

Please read these before reporting — they are known.

  • No strong “armed but silent” alarm. If the agent is not running, is pointed at the wrong host:port, or the firewall blocks UDP, this build transmits normally. Always confirm with a test hold.
  • Badge does not appear with rig types DX Lab Suite Commander, Ham Radio Deluxe, OmniRig, or TCI. Inhibit still works and PTT is still held off — only the on-screen badge and some telemetry are missing.
  • macOS packages are not published. CI compiles macOS; there is no operator .pkg.
  • Changing the system clock (NTP step, time-sync tools) while a hold is active can extend or shorten that lease.

Feedback

Please include: OS version, rig, PTT method and exact COM/tty port, whether normal
FT8 worked, whether the red INHIBIT badge appeared, the gate host:port you used,
and whether the radio keyed when it should not have.

Issues: https://github.com/wa1hco/wsjtx-inhibit/issues

Do not report this fork to the official WSJT-X project as a stock bug.


Safety and license

  • Use a dummy load or controlled power for first TX tests.
  • This is a release candidate for operator testing.
  • GPL-3, same family as WSJT-X. Separate from the official WSJT project.
Link Topic
INSTALL.md Install overview
INSTALL-WINDOWS.md Windows step-by-step
INSTALL-LINUX.md Linux step-by-step
docs/TX_INHIBIT.md Design, protocol, KEY agent
docs/INHIBIT_AGENT.md inhibit-agent

wsjtx-inhibit 3.0.2-rc3

Pre-release

Choose a tag to compare

@github-actions github-actions released this 07 Sep 20:39

wsjtx-inhibit 3.0.2-rc3

Who this is for: operators who already use WSJT-X and want to try TX Inhibit.

What this is: WSJT-X mainline v3.0.2 plus a low-latency TX Inhibit function.
Same modes and sequencing as mainline; the radio's PTT key line can be held off within
milliseconds when a multi-op interlock requires it, without aborting FT8/FT4
sequencing (that is what Halt Tx does — this is different).

Independent GPL-3 build. Not an official WSJT-X / ARRL release.


What changed since rc2

rc2 fixed packaging so this build can sit beside official WSJT-X.
rc3 changes the TX Inhibit protocol and the KEY agent tools.

Area rc2 rc3
Hold wire format Fixed UDP port 22372, JSON datagrams NetworkMessage::TxInhibit type 18 binary; port is always ephemeral
How agents find the gate Hard-coded host:22372 InhibitStatus type 17 on the UDP Server stream + status-bar tooltip (host:port)
Multi-controller holds One global hold (any release cleared everyone) Per-controller leases, OR’d; a sender refreshes/releases only its own row
Instance targeting N/A Non-empty type-18 Id must match this instance; empty Id = any at that endpoint
Status badge TX INHIBITED Red INHIBIT
Arming rules Enable alone Enable only when PTT is RTS/DTR and PTT port is set
Idle PTT line Could leave RTS asserted at idle Forces RTS+DTR idle so the radio is not keyed on open
KEY agent in this tree Bench helpers only inhibit-agent / inhibit-agent-gui (CTS KEY → type 18)
Removed — Obsolete inhibit-spacebar / inhibit-test-gui
macOS packages Not shipped Still not published (CI compiles only)

Authority doc: docs/TX_INHIBIT.md.

rc2 agents that send JSON to port 22372 will not work with rc3. Point a current
KEY agent at the ephemeral host:port from InhibitStatus / the tooltip.


Download

Under Assets on this release:

File Platform What you do
wsjtx-inhibit-3.0.2-rc3-win64.exe Windows 64-bit Double-click, follow the wizard
wsjtx-3.0.2-rc3-linux-x86_64.AppImage Linux x86_64 chmod +x, then run (preferred)
wsjtx-3.0.2-rc3-linux-x86_64.deb Debian / Ubuntu / Mint sudo apt install ./…
wsjtx-3.0.2-rc3-linux-x86_64.rpm Fedora / RHEL / openSUSE sudo dnf install ./…
wsjtx-3.0.2-rc3-linux-aarch64.* Linux ARM64 (Pi 4/5, …) Same pattern as x86_64

Windows may show SmartScreen on an unsigned test build: More info →
Run anyway, if you trust wa1hco/wsjtx-inhibit.

Install overview: INSTALL.md.


Running beside official WSJT-X

Program files are separate (C:\WSJT\wsjtx-inhibit\ on Windows).
Settings and logs are still shared — both read %LOCALAPPDATA%\WSJT-X\
(WSJT-X.ini, ALL.TXT, wsjtx_log.adi).

To give this build its own configuration, launch it with:

"C:\WSJT\wsjtx-inhibit\bin\wsjtx.exe" --rig-name inhibit

Full steps:
INSTALL-WINDOWS.md.


Settings for TX Inhibit

  1. File → Settings → Radio
  2. PTT method = RTS or DTR (CAT-only PTT is not filtered)
  3. PTT port = a real COMx / /dev/ttyUSBx (not the list value CAT); same COM as CAT is fine when Handshake = None
  4. Enable TX Inhibit = checked (only after method + port are set; default off)
  5. Radio VOX off, Handshake = None

When a hold is active the status bar shows a red INHIBIT badge. The radio
stays unkeyed while WSJT-X may still be in a TX cycle in software.

WARNING — turn radio VOX off. TX Inhibit only gates the RTS/DTR PTT line.
If VOX is on, audio can still key the radio while the badge says INHIBIT.


Testing it

Helpers ship next to the app:

bin\inhibit-agent-gui.exe   KEY agent GUI (CTS → type 18)
bin\inhibit-agent.exe       KEY agent CLI
bin\inhibit-test.exe        console KEY stand-in (grave/backtick)
  1. Enable TX Inhibit as above. Note the ephemeral host:port in the status-bar tooltip (also announced as InhibitStatus type 17).
  2. Point inhibit-agent-gui at that host:port and Apply (NEED GATE until then).
  3. Or use inhibit-test: hold grave (`, left of 1 — not Space) → red INHIBIT, radio must not key. Release → badge clears.

Bench without a KEY dongle: Rig None, PTT RTS, PTT port inhibit-sim, Enable TX Inhibit, then use inhibit-test.

KEY agent design: docs/INHIBIT_AGENT.md.


Known issues in rc3

Please read these before reporting — they are known.

  • No strong “armed but silent” alarm. If the agent is not running, is pointed at the wrong host:port, or the firewall blocks UDP, this build transmits normally. Always confirm with a test hold.
  • Badge does not appear with rig types DX Lab Suite Commander, Ham Radio Deluxe, OmniRig, or TCI. Inhibit still works and PTT is still held off — only the on-screen badge and some telemetry are missing.
  • macOS packages are not published. CI compiles macOS; there is no operator .pkg.
  • Changing the system clock (NTP step, time-sync tools) while a hold is active can extend or shorten that lease.

Feedback

Please include: OS version, rig, PTT method and exact COM/tty port, whether normal
FT8 worked, whether the red INHIBIT badge appeared, the gate host:port you used,
and whether the radio keyed when it should not have.

Issues: https://github.com/wa1hco/wsjtx-inhibit/issues

Do not report this fork to the official WSJT-X project as a stock bug.


Safety and license

  • Use a dummy load or controlled power for first TX tests.
  • This is a release candidate for operator testing.
  • GPL-3, same family as WSJT-X. Separate from the official WSJT project.
Link Topic
INSTALL.md Install overview
INSTALL-WINDOWS.md Windows step-by-step
INSTALL-LINUX.md Linux step-by-step
docs/TX_INHIBIT.md Design, protocol, KEY agent
docs/INHIBIT_AGENT.md inhibit-agent

wsjtx-inhibit 3.0.2-rc2

Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Aug 18:09

wsjtx-inhibit 3.0.2-rc2

Who this is for: operators who already use WSJT-X and want to try TX Inhibit.

What this is: WSJT-X mainline v3.0.2 plus a low-latency TX Inhibit function.
Same modes and sequencing as mainline; the radio's PTT key line can be held off within
milliseconds when a multi-op interlock requires it, without aborting FT8/FT4
sequencing (that is what Halt Tx does — this is different).

Independent GPL-3 build. Not an official WSJT-X / ARRL release.


What changed since rc1

rc1 shipped with several packaging problems that made it awkward to test safely
alongside a working WSJT-X install. Those are the focus of rc2.

Area rc1 rc2
Install directory C:\WSJT\wsjtx — the same folder official WSJT-X uses C:\WSJT\wsjtx-inhibit — separate
Add/Remove Programs Same display name as official WSJT-X, indistinguishable in the list wsjtx-inhibit (WSJT-X with TX Inhibit)
Upgrading between RCs Each RC could leave its own uninstall entry One entry, upgraded in place
Package/file names wsjtx-<version>-win64.exe wsjtx-inhibit-<version>-win64.exe
Version shown in Help → About Could read -devel on a file named -rc… Matches the file name
Linux .deb Named wsjtx; could collide with the distro package Named wsjtx-inhibit, declaring Provides/Replaces/Conflicts on wsjtx
KEY test helper Documentation still said "press Spacebar" and named a binary that no longer exists Grave/backtick, correct binary names

Documentation also gained the three things testers kept hitting: the Windows Firewall
prompt, what "nothing happens" means, and the shared-settings caveat when running
beside official WSJT-X.

No change to the TX Inhibit behaviour itself in rc2. The protocol, timing, and the
assert PTT ⇔ want_tx and not hold rule are unchanged from rc1.


Download (Windows 64-bit)

Under Assets on this release:

File Type What you do
wsjtx-inhibit-3.0.2-rc2-win64.exe Installer Double-click, follow the wizard

rc2 is installer-only on Windows (rc1's portable ZIP returns in a later build).

Linux packages are under Assets too: .deb (Debian/Ubuntu/Mint), .rpm
(Fedora/openSUSE), and .AppImage (any distro — chmod +x, then run), each for
x86_64 and aarch64 (Raspberry Pi 4/5 and other 64-bit ARM).

Windows may show SmartScreen on an unsigned test build: More info →
Run anyway, if you trust wa1hco/wsjtx-inhibit.


Running beside official WSJT-X

Program files are separate as of rc2. Settings and logs are still shared —
both read %LOCALAPPDATA%\WSJT-X\ (WSJT-X.ini, ALL.TXT, wsjtx_log.adi).

To give this build its own configuration, launch it with:

"C:\WSJT\wsjtx-inhibit\bin\wsjtx.exe" --rig-name inhibit

You will re-enter callsign, rig, and audio once. Full steps:
INSTALL-WINDOWS.md.


Settings for TX Inhibit

  1. File → Settings → Radio
  2. PTT method = RTS or DTR (CAT-only PTT is not filtered)
  3. Enable TX Inhibit = checked (default off — stock PTT until you opt in)
  4. PTT port = a real COMx (not the list value "CAT"); same COM as CAT is fine
  5. Radio VOX off, Handshake = None

When a hold is active the status bar shows a red TX INHIBITED badge and the radio
stays unkeyed while WSJT-X may still be in a TX cycle in software.

Default UDP port: 22372.


Testing it

Helpers ship next to the app:

bin\inhibit-test-gui.exe    Windows GUI — grave/backtick ` or the big button
bin\inhibit-test.exe        console

Hold grave (`, left of the 1 key — not Space) → red badge, radio must
not key. Release → badge clears.

Or send a hold by hand:

$u=[System.Net.Sockets.UdpClient]::new()
$b=[Text.Encoding]::UTF8.GetBytes('{"tx_inhibit":1,"ttl_ms":3000,"station":"TEST"}')
$u.Send($b,$b.Length,"127.0.0.1",22372)

Known issues in rc2

Please read these before reporting — they are known and being worked on.

  • No indication that TX Inhibit is armed but not receiving. If the agent is not
    running, is pointed at the wrong address, or the firewall is blocking it, this build
    transmits normally with no warning. Always confirm with a test hold.
  • If port 22372 is already in use, an ephemeral port is used instead and the agent's
    packets will not arrive. There is currently no visible warning.
  • Badge does not appear with rig types DX Lab Suite Commander, Ham Radio Deluxe,
    OmniRig, or TCI.
    Inhibit still works and PTT is still held off — only the on-screen
    badge and telemetry are missing.
  • Not tested on macOS.
  • Changing the system clock (NTP step, time-sync tools) while a hold is active can
    extend or shorten that hold.

Feedback

Please include: Windows version, rig, PTT method and exact COM port, whether normal
FT8 worked, whether the red badge appeared, and whether the radio keyed when it should
not have.

Issues: https://github.com/wa1hco/wsjtx-inhibit/issues

Do not report this fork to the official WSJT-X project as a stock bug.


Safety and license

  • Use a dummy load or controlled power for first TX tests.
  • This is a release candidate for operator testing.
  • GPL-3, same family as WSJT-X. Separate from the official WSJT project.
Link Topic
INSTALL.md Install overview
INSTALL-WINDOWS.md Windows step-by-step
docs/TX_INHIBIT.md Design, protocol, KEY agent

wsjtx-inhibit-rc1 — Windows (mainline v3.0.2 + TX Inhibit)

Choose a tag to compare

@wa1hco wa1hco released this 04 Aug 04:36

Important

Superseded by wsjtx-inhibit 3.0.2-rc2 (2026-08-11), which fixes the rc1 packaging problems and adds Linux .deb / .rpm / .AppImage packages for x86_64 and aarch64. New testers should start with rc2.

wsjtx-inhibit-rc1 — Windows

Who this is for: operators who already use WSJT-X and want to try TX Inhibit.

What this is: a branch of WSJT-X mainline v3.0.2 with a low-latency TX Inhibit function. Same digital modes and sequencing as mainline; the radio PTT key line can be held off when the multi-op interlock requires it.

Multi-op and same-band stations must keep only one station transmitting at a time. Inhibit lets you interleave WSJT-X contacts with SSB/CW efficiently: when interlock software (or a test tool) says the band is busy, this build holds PTT to the WSJT-X radio within milliseconds while FT8/FT4 sequencing and audio continue as usual. That is separate from Halt Tx, which ends the QSO sequence.

This is an independent GPL-3 build (same license family as WSJT-X). It is a community/test release candidate, separate from official ARRL / WSJT Development Group packages.


Download (Windows 64-bit) — pick one

Link Type What you get
wsjtx-inhibit-rc1-win64.exe Installer (recommended) Normal Windows setup
wsjtx-inhibit-rc1-windows-x86_64.zip Portable ZIP Unzip and run; no installer

These are the only packages for this release. Expand Assets on this page if you prefer the GitHub file list — same two files, short names ending in .exe (installer) or .zip (portable).


Install — installer (recommended)

  1. Close any running WSJT-X windows.
  2. Download wsjtx-inhibit-rc1-win64.exe (table above).
  3. Run the installer.
    • Windows may show SmartScreen (“Windows protected your PC”) on an unsigned test build.
    • More info → Run anyway if you trust this GitHub project (wa1hco/wsjtx-inhibit).
  4. Complete the wizard. Default install root is typically under C:\WSJT\ (for example C:\WSJT\wsjtx\).
  5. Start the program from the Start menu, desktop shortcut (if created), or bin\wsjtx.exe in the install folder.

What the installer sets up

Item Typical result
Program files Under C:\WSJT\… (you can change the path in the wizard)
Start menu Shortcut to launch the app, plus links such as documentation / project site, and Uninstall
Desktop Optional desktop shortcut for the app (when that option is enabled)
Finish page Option to launch the app when setup completes
Add/Remove Programs Uninstaller entry for this install

You can keep official WSJT-X installed beside this build. For inhibit testing, launch this install’s Start-menu entry or bin\wsjtx.exe. Use one program at a time on a given radio and COM ports.


Install — portable ZIP

  1. Download wsjtx-inhibit-rc1-windows-x86_64.zip.
  2. Extract to a folder you choose, for example C:\WSJT\wsjtx-inhibit\.
  3. Open that folder → bin → double-click wsjtx.exe.

Optional: right-click wsjtx.exe → Send to → Desktop (create shortcut).


First launch (same settings as mainline WSJT-X)

  1. File → Settings → General — callsign, grid, etc.
  2. Settings → Radio — rig, CAT port, baud rate.
  3. Settings → Audio — sound input/output.
  4. Settings → Reporting — optional (PSK Reporter, etc.).

Settings for TX Inhibit

Inhibit gates the serial PTT key line. Set:

  1. File → Settings → Radio
  2. PTT method = RTS or DTR
  3. PTT port = a real COMx for your USB-serial keying adapter (prefer a dedicated adapter for PTT; put CAT on its own port when you can)
  4. Wire that adapter’s RTS or DTR to the radio’s PTT/SEND
  5. Leave radio VOX off so the key line alone controls PTT

When a hold is active, the status bar shows a red badge such as TX INHIBITED (or held by … / local KEY line). The radio stays unkeyed while WSJT-X may still be in a TX cycle in software.

Default inhibit UDP port: 22372.

More detail: docs/WIMS_TX_INHIBIT.md


How inhibit is triggered

Inhibit engages when this program receives an inhibit datagram (UDP packet) on its inhibit port, or when the optional local KEY/CTS sense on the PTT adapter shows another key line active.

Sources include:

Source Role
WIMS interlock manager Multi-seat interlock (install and configure separately)
Inhibit test helper Sends hold/release datagrams for bench testing (for example tools/send_inhibit_hold.py in a source checkout of this repo)
Local KEY → CTS Optional hardware sense on the same USB-serial PTT dongle

Quick check with a test hold

  1. Run this build with PTT = RTS or DTR as above.
  2. Have WIMS (or the test helper) send a hold datagram to port 22372.
  3. Attempt TX (dummy load recommended) — the radio stays unkeyed; the red badge appears.
  4. On release (or when the hold TTL expires), PTT works again.

Confirm you have this build

  1. Launch the copy you just installed (Start menu / desktop / portable bin\wsjtx.exe).
  2. Help → About shows base version 3.0.2 (About still uses mainline “WSJT-X” wording).
  3. Receive and TX behave like mainline when open (no hold).
  4. During a hold, the red TX INHIBITED badge appears and the radio stays unkeyed.

Feedback

Please tell us:

  • Installer or ZIP experience (including SmartScreen / antivirus)
  • Windows version
  • Rig and PTT setup (RTS/DTR COMx)
  • Whether FT8 behaved like mainline
  • Whether inhibit held and released cleanly
  • Anything on this page that was unclear

Issues: https://github.com/wa1hco/wsjtx-inhibit/issues


Safety and license

  • Prefer a dummy load or carefully controlled power for first TX tests.
  • This is rc1 — a release candidate for operator testing.
  • Prefer installing beside official WSJT-X until you are happy with it.
  • GPL-3, same family as WSJT-X. Separate from the official WSJT project.

More documentation

Link Topic
INSTALL.md Install overview
INSTALL-WINDOWS.md Windows step-by-step
README.INHIBIT.md Project overview
docs/WIMS_TX_INHIBIT.md Inhibit behaviour and wiring