100% FREE & OPEN SOURCE SOFTWARE • Native macOS 14+ (Sonoma & Sequoia)

Precision engineering & digital control for BG2FX Transceivers on macOS.

An independent, fully open-source workbench written in Swift 6 for FX-4CR, FX-4C, and FX-4L radios. From synchronized FT8/FT4 decoding to safe CAT query controls, offline frequency simulation, and guarded STM32 firmware checks.

No telemetry. No proprietary DRM. No walled gardens. 100% transparent and auditable.
Swift 6 Native Zero Electron / Web Bloat
115,200 Baud Kenwood TS-590S CAT
FT8 / FT4 DSP Synchronized AudioQueue
FOSS & Local 100% Private Sandboxed Data
FX-Utility — Station Profile: EP2AES (LM55)
Band Preset:
SWR Dots:
(CAT Cutoff: <20)
UTC 06:14:00 (Slot: 15s remaining)
Live Audio Waterfall: 200–3000 Hz Span (8192-point Hann FFT)
TX Audio Tone: 1250 Hz (Click canvas to retune)
Received Signals in Current Slot (RX Decodes) FT8 Synchronized
Select a row to direct QSO
Time SNR DT Audio Hz Decoded Message Country
06:12:00 +04 0.1 1040 CQ JA7XYZ QM08 Japan
06:12:00 -14 -0.2 1420 CQ DL1ABC JO31 Germany
06:12:00 +12 0.0 1880 CQ K1JT FN20 USA
06:12:00 -08 0.3 650 CQ VK3FZ QF22 Australia
Automated Exchange Sequence (WSJT-X Standard) Ready for sequence
Click "Call CQ" or "Call Selected DX" to preview automated sequence execution in memory.
Automatic Logbook: Enabled (ADIF) AudioQueue: 48kHz Stereo
FREE & OPEN SOURCE SOFTWARE (FOSS)

Built in the open. Driven by the amateur radio community.

View Source on GitHub
01

100% Auditable Codebase

Every line of Swift and C DSP code is publicly inspectable. Verify exact memory handling, CoreAudio buffers, and serial command frames with complete transparency.

02

Zero Telemetry & Absolute Privacy

FX-Utility makes zero background analytics calls, contains no tracking SDKs, and stores station contact records strictly in sandboxed JSON on your local Mac.

03

Independent Implementation

An original implementation tailored for BG2FX hardware. Workflow inspired by established radio utilities, built clean-room from the ground up without proprietary bloat.

Hardware Target Matrix

Engineered for the BG2FX SDR Family

Profiled and tested with physical equipment against owner manuals and manufacturer specifications.

BG2FX FX-4CR SDR Transceiver Full Physical Validation

FX-4CR

20W PEP HF/50MHz

The flagship CNC aluminum transceiver. Built-in USB sound card, verified CAT PTT sequencing, OLED front-panel recreation, and R/VR firmware branches.

CAT Profile: Kenwood TS-590S (115200)
PTT Control: Native CAT TX;/RX; Commands
Firmware Guard: R & VR Branch Separation
BG2FX FX-4C Transceiver Classic Heritage

FX-4C

10W-15W HF

The pioneering model that established portable BG2FX digital setups. Supported with read-only frequency queries and passive USB port topology discovery.

CAT Profile: Kenwood TS-590S
Audio Routing: USB Audio / Interface
Safety Guard: Strict Read-Only Allowlist
BG2FX FX-4L Ultra-Portable SDR Ultra-Portable Field

FX-4L

5W QRP SOTA/POTA

Ultra-compact transceiver for mountain and field operations. Dedicated device profile ready for evolving firmware support and offline log collection.

USB Discovery: Metadata Polling
Field Logbook: ADIF Portable Export
Simulation: Offline Rig Training
Full-Featured Station Desk

Engineered without compromise for serious radio operators

No third-party virtual audio loopbacks or unstable Python bindings. High-efficiency C and Swift pipelines designed for endurance.

Digital Operations Desk Module: AudioQueue + ft8_lib

Synchronized FT8 & FT4 Digital Workstation

The integrated C ft8_lib DSP decoder processes mono 12 kHz CoreAudio streams natively without external software bridges. Generates a fine-grain audio waterfall (1.46 Hz per bin), syncs with 15-second FT8 and 7.5-second FT4 UTC cycles, and runs standard WSJT-X QSO auto-sequencing.

WSJT-X Parity Strict signal report, grid locator, and RR73 sequence exchange
Direct Audio Routing Automatic persistent device UID binding via native CoreAudio
SWR Guard & Cutoff Continuous CAT relative SWR meter monitoring with automatic TX cutoff
Targeted Call DX & Configurable Hunt Modes Zero Audio Buffer Overrun
Non-Intrusive Polling 2s Interval

Passive USB Discovery

Inspects macOS IOKit USB metadata every two seconds without opening serial ports or toggling handshake control lines, eliminating spurious TX keying during connection discovery.

VID/PID Auto-Discovery: Active
Remember Adapter: Serial & Topology
Supports CH340, CP2102, FTDI & native USB bridges
Training & Testing Offline Engine

Offline Frequency & QSO Simulator

Explore digital operations, waterfall tuning, and automated message sequences anywhere without transmitting RF or connecting physical hardware.

Simulated demo traffic stays entirely in memory and is automatically discarded on exit.
Contact Management ADIF 3.1.4

Atomic Local QSO Logbook

Completed FT8 and FT4 contacts are automatically timestamped in UTC and recorded atomically into local JSON and industry-standard ADIF export format.

Atomic JSON Transactions Zero File Corruption
Propagation Tracking Telnet DX

Live DX Cluster & Grayline Map

Aggregate real-time DX spots with band filtering, plot distant stations across the Maidenhead grid, and track the solar terminator grayline.

Automatic distance calculations from 6-char locator grid
Apple Silicon & Intel Architecture

Built with modern Swift 6 and SwiftUI for macOS

Architected specifically for memory safety, low power consumption during field and battery portable operations, and native acceleration across Apple Silicon (M1/M2/M3/M4) and Intel x86_64 architectures.

Language & Toolchain: Swift 6 & Clang C Core
Compatible OS: macOS 14.0+ (Sonoma & Sequoia)
DSP Audio Engine: CoreAudio / AudioQueue
License: 100% Free & Open Source
Swift Package Manager Build Passed (142 Unit Tests)
$ git clone https://github.com/fact0real/FX-Utility.git
$ cd FX-Utility
$ swift test
Test Suite 'All tests' passed at 2026-10-31.
Executed 142 tests, with 0 failures (0 unexpected).
$ swift run FX-Utility
Binary Size: ~18MB • Idle Memory Footprint: <65MB RAM
Operator Quickstart

Four steps to get on the air with your BG2FX radio

Configure station parameters, verify serial interfaces, and begin digital and voice communications in minutes.

1

Station Identity

In Station, save your licensed callsign and 4- or 6-character Maidenhead locator grid. These identity fields populate digital messages and log entries.

2

USB & Model Binding

Plug in your Type-C cable. In Connection, select the USB serial device, pick your model, and click Remember as FX-4CR.

3

Audio Routing & RX

Open Audio & FT8, select the radio's USB audio endpoint, pick your working band preset (e.g. 20M 14.074 MHz), and press Start RX.

4

Automate & Log

Click Call CQ or select any decoded station row and hit CALL DX. Completed contacts are recorded and synced directly to ADIF.

FX-Utility Logo
Free & Open Source Forever

Elevate your BG2FX operating experience on Mac

Free, independent, and open source. Download the signed app bundle for macOS or clone and compile with the Swift Package Manager.

Host: fxutility.asis.sh • SHA-256 Verified Releases • Universal Binary