-
Notifications
You must be signed in to change notification settings - Fork 0
Command Line
rigprog is the command-line half of Open Rig Programmer — the same read/write/verify engine as the desktop app, for scripts and backups. rigprog help prints the full top-level usage; rigprog <command> -h prints a command's own flags.
Every command that opens a radio session accepts --fake instead of --port: "use the in-process simulated radio instead of a real port" — the same demo mode the desktop app's Demo option uses, no real hardware needed.
Lists candidate serial ports so you can find the radio's CAT interface before connecting.
Usage:
rigprog ports
Discovers every serial port the OS currently exposes and prints a table
ranked by how likely each is to be the target radio's CAT interface: path,
score, description, VID:PID, and the signals behind the score. Ranking is
a heuristic; "rigprog probe --port <path>" performs the definitive active
ID check. --fake is not accepted — ports enumerates real devices only.
Confirms what's on the other end of a port before you trust it with a read or write.
Usage:
rigprog probe --port <path> [--model NAME]
rigprog probe --fake [--model NAME]
Flags:
--port PATH real serial port device path (e.g. /dev/cu.usbserial-XXXX)
--fake use the in-process simulated radio instead of a real port
--model NAME radio model to target (default: FT-710)
Reads every memory slot from a radio and saves it as a codeplug file — the starting point for editing in the grid or on the command line. See Reading and writing for the full read/write/verify flow.
Usage:
rigprog read --port <path> --out <file> [--settings] [--model NAME] [--force] [--snapshot-dir <dir>]
rigprog read --fake --out <file> [--settings] [--model NAME] [--force] [--snapshot-dir <dir>]
Flags:
--port PATH real serial port device path (e.g. /dev/cu.usbserial-XXXX)
--fake use the in-process simulated radio instead of a real port
--out FILE output codeplug file path (required)
--settings also read the radio's menu/EX settings surface (opt-in; adds significant wire time)
--model NAME radio model to target (default: FT-710)
--force overwrite --out if it already exists
--snapshot-dir DIR snapshot/journal directory (default: <UserConfigDir>/rigprog/snapshots)
Sends a codeplug file's changes to a radio, previewing and verifying every step. See Reading and writing for what the preview and verify steps mean, and Unverified writes for radios that need consent first.
Usage:
rigprog write --port <path> [--model NAME] [--yes] [--snapshot-dir DIR] FILE
rigprog write --fake [--model NAME] [--yes] [--snapshot-dir DIR] FILE
Flags:
--port PATH real serial port device path (e.g. /dev/cu.usbserial-XXXX)
--fake use the in-process simulated radio instead of a real port
--model NAME radio model to target (default: FT-710)
--yes skip the interactive confirmation prompt (required for non-interactive runs)
--snapshot-dir DIR snapshot/journal directory (default: <UserConfigDir>/rigprog/snapshots)
Exit codes: 0 success, including "nothing to send" when the working copy
genuinely matches the radio; 2 usage (also: a non-interactive run without
--yes); 3 the candidate file failed validation, OR every pending change
is blocked (nothing was sendable, named with reasons — see above); 4
refused before any write reached the radio (stale baseline, session
changed, confirmation declined or mismatched); 5
aborted after at least one write reached the radio — the printed journal
records exactly what happened, and the printed snapshot can be re-sent
with a later "rigprog write" run.
Compares a codeplug file against a fresh read of the radio, read-only, no writing.
Usage:
rigprog diff --port <path> [--model NAME] <file>
rigprog diff --fake [--model NAME] <file>
Flags:
--port PATH real serial port device path (e.g. /dev/cu.usbserial-XXXX)
--fake use the in-process simulated radio instead of a real port
--model NAME radio model to target (default: FT-710)
Exports a codeplug file to CSV, offline. See CSV and CHIRP for the CSV schema.
Usage:
rigprog export --csv OUT [--force] FILE
Flags:
--csv OUT output CSV file path (required)
--force overwrite --csv if it already exists
OFFLINE: does not open a radio session — --port/--fake are not accepted.
Imports a CSV — rigprog's own format or CHIRP's — into an existing codeplug file, offline. See CSV and CHIRP for how the two formats merge.
Usage:
rigprog import --csv IN --into BASE --out FILE [--model NAME] [--force]
rigprog import --chirp IN --into BASE --out FILE [--model NAME] [--force]
Flags:
--csv IN rigprog's own CSV format to import (mutually exclusive with --chirp)
--chirp IN CHIRP-next CSV format to import (mutually exclusive with --csv)
--into BASE existing codeplug JSON to merge onto (required; typically from "rigprog read")
--out FILE output codeplug file path (required)
--model NAME radio model to validate against (default: FT-710)
--force overwrite --out if it already exists (required if --out equals --into)
OFFLINE: does not open a radio session — --port/--fake are not accepted.
Shows or exports a codeplug file's menu/settings snapshot, offline. This is also where per-model consent for unverified writes lives — see Unverified writes.
Usage:
rigprog settings [--csv OUT] [--model NAME] [--force] FILE
rigprog settings unverified-writes
rigprog settings unverified-writes <model> on|off
Flags:
--csv OUT also write the snapshot to this CSV file path (optional)
--model NAME radio model whose settings descriptor to group by (default: FT-710)
--force overwrite --csv if it already exists
With no further arguments it lists every model this build supports — slug and current state; with <model> on|off it records a decision and reports it. Consent applies only to models with unverified write support — a model whose writes are hardware-verified has nothing to consent to and is listed as "n/a (hardware-verified)".
rigprog settings unverified-writes IC-7610 on # allow writes to the IC-7610Reports this build's version — quote it verbatim in a bug report.
Usage:
rigprog version
Prints the release version on the first line and the build's Go
toolchain and platform on the second, then exits 0. "rigprog -v" and
"rigprog --version" are the same command.
Prints the top-level usage: every command listed above, one line each, plus a pointer to rigprog <command> -h for a command's own flags. Also shown for a bare rigprog invocation or an unrecognised subcommand.
As of v1.9.0 (commit bec7df97).