rig-service¶
One shared rigctld for the station's rig, as a systemd user service
- Version recorded: 1.0
- Categories:
rig-control - Upstream: https://hamlib.github.io/
- Needs first:
libhamlib-utils
What it does¶
Runs one hamlib rigctld for the operator, a systemd user service bound to 127.0.0.1:4532, carrying the station's radio. Every program that speaks hamlib's NET rigctl — WSJT-X, fldigi, JS8Call, Pat, gpredict and the rest — points at that one port instead of each opening the serial port itself. For a radio with no CAT it runs hamlib's dummy model keying an RTS or DTR line, so those programs are configured for it exactly as for a CAT rig.
Why you would want it¶
One program owns the serial port; every other program shares it. Two programs opening the port directly is the classic digital-modes failure, and its symptom is erratic behaviour rather than an error. This settles it once: say which radio is on the station with hammunition station set --rig, and the service is there at every login.
Before it will work¶
The station's rig values (hammunition station set --rig …). Membership of dialout, which the rig hardware class adds — log out completely afterwards, because a group added mid-session does not reach the user manager. With the rig values unset the service is deferred and the rest of an install proceeds (D-035).
How it installs¶
- apt:
libhamlib-utils
Known problems¶
Loopback is not per-user: any local account and any local process can connect to 127.0.0.1:4532 and key the transmitter, and rigctld has no password (its -A option is "not implemented"). On a single-operator laptop that is the operator's own software; on a shared machine it is a transmitter anyone logged in can key. Two operators logged in at once would each try to start a rigctld on 4532 and the second fails to bind — the station is one operator's. Changing a rig value reaches the service only through a reinstall of this unit, which station set prints when it changes one. Not yet run against a real radio: the service at login, the UV-50PRO's keying line and start-up keying, --unattended across a logout, and the loopback filter with real clients are the bench's (D-073); docs/guides/rig-control.md says what was measured.
Keeping it current¶
- probe: apt policy
- strategy: apt_upgrade
Where to get help with the software itself¶
The Hamlib project's mailing list for rigctld and backend questions.