K3/K3S Programming Guide
This guide walks through the Elecraft K3/K3S CAT (Computer Aided Transceiver) serial protocol from a programmer’s perspective. It is organized by task rather than by command name, so you can find the commands you need for each aspect of radio control without reading the entire protocol specification.
For a complete alphabetical listing of every command, see the K3/K3S/KX3/KX2 CAT Command Reference.
Serial Connection Setup
Section titled “Serial Connection Setup”The K3/K3S accepts commands over a standard serial connection. Two physical interfaces are available:
- USB via the KIO3 or KUSB board, which provides a virtual COM port on the host computer
- RS-232 via the DB-9 connector on the rear panel
Default serial parameters:
| Parameter | Value |
|---|---|
| Baud rate | 38400 |
| Data bits | 8 |
| Parity | None |
| Stop bits | 1 |
| Flow control | None |
All commands are plain ASCII text terminated with a semicolon (;). Responses from the radio also end with ;. There is no line-feed or carriage-return delimiter — the semicolon is the only framing character.
FA; → query VFO A frequencyFA00014200000; ← radio responds with the current frequencyGET / SET / RSP Model
Section titled “GET / SET / RSP Model”Every interaction with the K3/K3S follows a simple three-part model:
SET — Send a command with data to change a radio parameter.
FA00014200000; Set VFO A to 14.200 MHzMD1; Set mode to LSBKS020; Set keyer speed to 20 WPMGET — Send the command letters with no data (just the terminating ;) to read the current value.
FA; Query VFO A frequencyMD; Query current modeKS; Query keyer speedRSP — The radio responds with the command letters followed by the current data, in the same format as a SET.
FA00014200000; VFO A is at 14.200 MHzMD1; Mode is LSBKS020; Keyer speed is 20 WPMVFO B / Sub Receiver Commands
Section titled “VFO B / Sub Receiver Commands”Many commands accept a $ suffix to target VFO B or the sub receiver instead of VFO A / main receiver. For example:
AG; GET main receiver AF gainAG$; GET sub receiver AF gainAG120; SET main receiver AF gain to 120AG$120; SET sub receiver AF gain to 120Commands that support the $ suffix are marked with $ in the command reference.
Extended Command Mode
Section titled “Extended Command Mode”Before issuing most commands, enable K3 extended mode with the K3 command. This unlocks the full command set and extended response formats.
K31; Enable extended K3 command modeK30; Return to basic (K2-compatible) modeAuto-Information Modes
Section titled “Auto-Information Modes”By default, the K3 only sends data in response to a GET command. The AI command enables automatic notifications when the radio state changes — either from front-panel controls or from other software.
| Mode | Behavior |
|---|---|
AI0; | Polling only (default). The radio never sends unsolicited data. |
AI1; | The radio sends an IF response whenever any front-panel change occurs. |
AI2; | The radio sends the specific command response matching the changed parameter. |
See the Event Handling page for details on processing auto-information responses.
Guide Organization
Section titled “Guide Organization”Each page in this guide focuses on a specific area of radio control. They are meant to be read in order the first time, then used as a reference afterward.
| Page | Covers |
|---|---|
| Connection & Discovery | Finding the serial port, verifying the radio identity, and establishing a session |
| Frequency & Modes | Setting and reading VFO frequencies, operating modes, and band selection |
| Receiver Control | AF/RF gain, filters, bandwidth, AGC, noise blanker, and DSP settings |
| Transmitter Control | TX/RX switching, power output, SWR metering, and mic gain |
| Voice, CW & Data | CW keying, stored messages, data sub-modes, and voice operations |
| Advanced Features | Split operation, sub receiver, diversity reception, and memory channels |
| Event Handling | Auto-information modes, unsolicited responses, and state synchronization |
| Error Handling | Timeout handling, error recovery, and retry patterns |
| KPA500 Integration | Amplifier power, band tracking, fault monitoring, and standby control |
| KAT500 Integration | Antenna tuner control, tune initiation, and antenna selection |
| Station Integration | Coordinating K3 + KPA500 + KAT500 as a unified station |