Rig Bridge
Rig Bridge is a separate application that sits between your radio and OpenHamClock. Click any spot and your radio tunes automatically โ over USB, network, or the cloud.
What Rig Bridge Is
Rig Bridge is a small, plugin-based bridge application that runs on the computer physically connected to your radio. It translates between OpenHamClock and your transceiver, handling the low-level CAT, CI-V, or network protocol of each radio make and model.
Once running, Rig Bridge exposes a simple HTTP API on port 5555. OpenHamClock's browser interface connects to that API and, from that moment, every frequency link in the dashboard โ a DX spot, a POTA activator, a WSJT-X decode โ becomes a one-click tune command sent directly to your radio.
How OpenHamClock Connects to Rig Bridge
OpenHamClock talks to Rig Bridge over a standard HTTP connection โ the same way your browser loads any web page. The connection has two parts:
http://<host>:5555/stream.
Rig Bridge pushes real-time state updates down this stream whenever the frequency, mode,
or PTT state changes โ typically every 500 ms. This is how the Rig Control panel
stays live without polling.
POST to /freq (frequency in Hz) or /mode.
These are authenticated with the API Token in the
X-RigBridge-Token header. Unauthenticated requests to write endpoints
are rejected.
The token is generated automatically by Rig Bridge on first run and shown prominently in its setup UI. You copy it once into OpenHamClock's Settings โ after that the connection is fully automatic.
Rig Bridge is called directly by the browser tab running OpenHamClock, not by OpenHamClock's Node.js server. This means Rig Bridge must be reachable from the machine where the browser is open โ not necessarily from the Pi or server that hosts OpenHamClock.
Installing Rig Bridge
Option A โ Installer (recommended)
The easiest way. OpenHamClock provides a platform-specific installer script that downloads Rig Bridge, installs dependencies, and starts it automatically.
-
Open OpenHamClock Settings โ Rig Bridge
Click the โ๏ธ icon, navigate to the Rig Bridge tab, and enable it. Download links for your OS will appear.
-
Run the installer
Windows: double-click
install-rig-bridge.bat
macOS / Linux:bash$ chmod +x ~/Downloads/install-rig-bridge.sh $ ~/Downloads/install-rig-bridge.sh
The installer downloads the code, runs
npm install, and starts Rig Bridge. -
Open the Rig Bridge setup UI
Navigate to http://localhost:5555. You will see the Rig Bridge dashboard with your API Token displayed at the top. Keep this tab open โ you will need the token in the next section.
Option B โ From source
If you prefer to run directly from the OpenHamClock repository:
$ cd openhamclock/rig-bridge $ npm install $ node rig-bridge.js
Option C โ Standalone executable
Pre-built binaries require no Node.js installation. Download the correct file for your platform from the releases page:
ohc-rig-bridge-win.exeohc-rig-bridge-macosohc-rig-bridge-macos-armohc-rig-bridge-linuxohc-rig-bridge-linux-arm64Supported Radios
Rig Bridge uses a plugin architecture โ each radio type or connection method is a separate module. Select the plugin that matches your radio in the setup UI.
USB direct connection
| Plugin | Protocol | Radios (examples) |
|---|---|---|
| Yaesu | CAT over USB serial | FT-991A, FT-891, FT-710, FT-DX10, FT-DX101, FT-DX3000, FT-5000 |
| Kenwood / Elecraft | Kenwood ASCII over USB serial | TS-890S, TS-590SG, TS-2000, TS-480, K4, K3, K3S, KX3, KX2 |
| Icom | CI-V over USB serial | IC-7300, IC-7610, IC-9700, IC-705, IC-7851 |
Network connection
| Plugin | Protocol | Radios / software |
|---|---|---|
| TCI / SDR | TCI WebSocket (TCP) | Thetis, ExpertSDR2 (Expert Electronics), Afedri SDR โ default port 40001 |
| SmartSDR | FlexRadio REST API (TCP) | FLEX-6300, FLEX-6400, FLEX-6500, FLEX-6600, FLEX-6700 โ default port 4992 |
| rigctld (Hamlib) | Hamlib TCP | Any radio supported by Hamlib, via the rigctld daemon โ default port 4532 |
| flrig | XML-RPC | Any radio controlled by the flrig front-end โ default port 12345 |
| RTL-SDR | rtl_tcp protocol | RTL-SDR dongles via rtl_tcp โ receive only, default port 1234 |
Configuring Your Radio
All radio configuration is done in the Rig Bridge setup UI
at http://localhost:5555. The configuration is saved to a JSON file on your machine:
~/.config/openhamclock/rig-bridge-config.json%APPDATA%\openhamclock\rig-bridge-config.jsonYaesu (USB CAT)
-
Set CAT baud rate on the radio
On your Yaesu, go to Menu โ Operation Setting โ CAT Rate and set it to 38400.
-
Configure in the setup UI
Radio Type โ Yaesu, select your serial port, baud rate 38400, Stop Bits 2, enable Hardware Flow (RTS/CTS) for FT-991A and FT-710. Click Save & Connect.
Icom (CI-V)
-
Note your radio's CI-V address
Check your radio's menu under Connectors or CI-V. Common addresses:
IC-73000x94IC-76100x98IC-97000xA2IC-7050xA4IC-78510x8E -
Configure in the setup UI
Radio Type โ Icom, select your serial port, enter the CI-V address, baud rate 115200. Click Save & Connect.
TCI / SDR (Thetis, ExpertSDR)
-
Enable TCI in your SDR software
In Thetis: Setup โ CAT Control โ Enable TCI Server (port 40001).
-
Configure in the setup UI
Radio Type โ TCI / SDR, Host
localhost, Port 40001. Click Save & Connect.
Your user account needs access to /dev/ttyUSB0 (or equivalent).
Add yourself to the dialout group and log out/in:
sudo usermod -aG dialout $USER
Connecting OpenHamClock to Rig Bridge
Once Rig Bridge is running and your radio is connected, tell OpenHamClock where to find it and give it the API token.
-
Copy your API Token from Rig Bridge
Open
http://localhost:5555. The token is shown at the top of the page. Click to copy it. -
Open OpenHamClock Settings โ Rig Bridge
Click the โ๏ธ icon in OpenHamClock and go to the Rig Bridge tab.
-
Enter the connection detailsEnable Rig BridgeToggle onHost
http://localhost(same machine) orhttp://192.168.1.50(LAN)Port5555API TokenPaste the token copied from Rig Bridge -
Click Save
OpenHamClock immediately opens the SSE stream to
/stream. The Rig Control panel will show your radio's current frequency within a second if the connection is successful.
Rig Bridge on a Different Machine
If your radio is connected to one computer (e.g. a shack PC) and you open OpenHamClock on another (e.g. a tablet or a Raspberry Pi running the server), Rig Bridge needs to listen on the network, not just localhost.
Start Rig Bridge with the --bind flag, or change bindAddress in the setup UI:
$ node rig-bridge.js --bind 0.0.0.0
Then in OpenHamClock Settings โ Rig Bridge, set Host to the shack PC's
LAN IP address (e.g. http://192.168.1.50) instead of localhost.
Cloud Relay
When OpenHamClock is hosted in the cloud (openhamclock.com or your own Railway instance),
the browser tab is served from a remote server โ it cannot reach localhost:5555
on your home network directly.
The Cloud Relay plugin inside Rig Bridge solves this. Rig Bridge opens a persistent outbound HTTPS connection to your cloud OpenHamClock instance and maintains it as a long-poll channel. Commands from the browser travel:
Browser click โ Cloud OHC server โ HTTPS long-poll โ Rig Bridge โ Radio (USB)
To enable Cloud Relay:
- In the Rig Bridge setup UI, go to Security and enable HTTPS. Restart Rig Bridge and install the self-signed certificate when prompted.
- In Plugins โ Cloud Relay, enter your cloud OpenHamClock URL and the relay API key from OpenHamClock's Settings โ Rig Bridge page.
- In OpenHamClock Settings โ Rig Bridge, set the host to
https://localhost(note thes) and click Connect Cloud Relay.
The Rig Control Panel
Once connected, the Rig Control panel in OpenHamClock shows a live readout of your radio's state, updated from the SSE stream:
Additional Plugins
Rig Bridge does more than just radio control. The following plugins are enabled from the Plugins tab in the setup UI:
| Plugin | What it does | Default port |
|---|---|---|
| WSJT-X Relay | Receives FT8/FT4/JT65 UDP packets from WSJT-X and forwards decoded spots to OpenHamClock | UDP 2237 |
| JTDX | Same as WSJT-X Relay but for JTDX | UDP 2238 |
| MSHV | MSK144, Q65, and other MSHV modes | UDP 2239 |
| JS8Call | JS8 keyboard messaging | UDP 2242 |
| APRS TNC | Receives APRS packets from a local Direwolf TNC (KISS TCP or serial) and pushes them to OpenHamClock | TCP 8001 |
| Rotator | Controls an antenna rotator via Hamlib's rotctld daemon |
TCP 4533 |
| Cloud Relay | Bridges local rig control to a cloud-hosted OpenHamClock instance | HTTPS outbound |
| Winlink | Winlink RMS gateway discovery and Pat client integration | HTTP |
| MeshCom | LoRa mesh network messages via MeshCom UDP broadcast | UDP 1799 |
If WSJT-X and Rig Bridge run on the same PC, enable the WSJT-X Relay plugin
in Rig Bridge. In WSJT-X: File โ Settings โ Reporting, tick
UDP Server, set hostname 127.0.0.1, port 2237.
Rig Bridge passes the decoded spots through to OpenHamClock automatically โ
no separate configuration in OpenHamClock's .env is needed.