Command Tester/K3 Macros

This page may be used to try out K3 remote control commands. You can save commands as reusable macros, and execute them from their assigned buttons. You can even send macros to the K3, where they can be assigned to programmable function switches or by pressing buttons on an Elecraft K-Pod Control Panel. See below for sample macros and instructions for using them. Complete details on K3 remote control commands can be found in the K3 and KX3 Programmer's Reference.

If you have an Elecraft P3 Panadapter connected between your personal computer and your K3, commands are sent first to the P3. P3-specific commands are interpreted by the P3. The P3 relays all other commands to the connected K3.

Another function of this page is to capture decoded text from the K3 when text decode is enabled (e.g., via the command "TT1;"). The Terminal page provides a better interface for sending and receiving CW and DATA using the K3.

Commands are shown in green, responses are shown in black.

Some command responses may contain unprintable characters. The command tester converts unprintable characters (those outside the range from \x20 to \x7E) into a hexadecimal representation. For example, the response to the "IC;" command on my K3 is displayed as "IC\x80\x88\x94\x80\x80;". When my K3's VFO A display reads " 7.078.36 ", the response to the "DS;" command is displayed as "DS@7\xB078\xB36@\x90\x80;". See the K3 and KX3 Programmer's Reference for a description of K3 commands and their responses.

Macro Buttons

There are several rows of Macro buttons between the input and output areas. The Macro buttons may be configured by selecting the "Edit Macros" button to display the Edit Command Testers/K3 Macros dialog.

Command tester page image

Edit Command Tester/K3 Macros

Macro editor image

Macros 1-16 may be stored in the K3 and the first eight may be assigned to K3 front panel switches for single-switch execution. Each K3 macro may have up to 7 characters of Macro Label and 120 characters of associated Macro Commands. The 7-character Macro Label length limitation corresponds to the length of the K3 VFO B display area.

Macros stored in the K3 may be recalled and executed by an Elecraft K-Pod Control Panel. Macros 1-8 are executed by holding K-Pod buttons 1-8, and Macros 9-16 are executed by tapping K-Pod buttons 1-8. This correspondence may change as K-Pod firmware evolves. Check the firmware release notes associated with new K-Pod firmware.

K-Pod is supported by K3 MCU revision 5.50 and later.

If Advanced Mode is selected on the View menu, and the K3 Utility is restarted, additional macros 17-32 are available. Macros 17-32 are stored only on your Personal Computer; they may not be stored in your K3.

Prepare and test your K3 macros in the Command Tester. The "Save button" stores Macro Labels and Macro Commands on your Personal Computer. Click "Write to K3" to send macros 1-16 to your K3.

K3 macro capability was introduced in MCU revision 03.51. See the Firmware Release Notes and the K3 Programmer's Reference for information on writing macros and how to assign a macro to a specific K3 front panel button.

Macro assignment procedure overview

Restore M1-M4 to standard Memory functions

If you wish to restore M1-M4 to use them for their standard memory recording functions, tap REC and then tap or hold the desired M1 through M4 switch.

If you tap REC while in one of the voice modes, the associated KDVR3 memory will be erased.

If you tap REC while in CW or DATA modes, the existing CW memory content won't be disturbed unless you touch the paddle.

Sample Macros

Refer to the K3 and KX3 Programmer's Reference "Command Examples" and "Creating and Using Macros" sections for a further introduction.

Note that the K3 and KX3 use different SWT and SWH numbers.

Macro Label Macro Commands Description
SPLIT+2 SWT13;SWT13;FT1;UPB5;RT0;XT0; CW Split starting point (UP 2)
SWT13; is a switch emulation command that has the same effect as tapping A>B to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings to VFO B
FT1; enters Split mode
UPB5; moves VFO B up 2 kHz. The number 5 in UPB5 an index into a table of sizes. See the K3 Programmer's Reference description of DN for full details.
RT0; turns RIT off
XT0; turns XIT off
SPLIT+5 SWT13;SWT13;FT1;UPB7;RT0;XT0; CW Split starting point (UP 5)
SWT13; taps A>B once to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings to VFO B
FT1; enters Split mode
UPB7; moves VFO B up 5 kHz
RT0; turns RIT off
XT0; turns XIT off
CLEANUP FT0;RT0;XT0;LN0;SQ000; Turns split, RIT, XIT and squelch off, and unlinks VFOs
FT0; turns Split mode off
RT0; turns RIT off
XT0; turns XIT off
LN0; unlinks the VFOs
SQ000; turns squelch off
SPLIT+2 SB0;SWT13;SWT13;FT1;LK1;UPB5;RT0;XT0; SB1;BW0035;BW$0080;MN111;MP001;MN255; CW Split starting point (UP 2)
This is a CW Split variation contributed by Bill, W4ZV. Bill normally operates with Diversity on, but wanted a quick way to enter "Massive Pileup Mode" with Diversity off
SB0; turns the sub receiver off, which also turns Diversity off
SWT13; taps A>B to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings to VFO B
FT1; enters Split mode
LK1; locks VFO A
UPB5; moves VFO B up 2 kHz
RT0; turns RIT off
XT0; turns XIT off
SB1; turns the sub receiver on
BW0035; sets the main receiver bandwidth to 350 Hz
BW$0080; sets the sub receiver bandwidth to 800 Hz
MN111; selects the CONFIG:L-MIX-R menu entry
MP001; selects the "A AB" audio mix; which puts VFO A (the DX station) in the left audio channel, and the right audio channnel receives a mix of the DX station and the transmitting stations on VFO B
MN255; closes the CONFIG menu
SPLIT+1 SWT13;SWT13;FT1;DV0;MN111;MP001;MN255; RT0;XT0;BW0060;BW$0270;UPB4; CW split starting point
This is a CW Split variation contributed by Gary, ZL2iFB
SWT13; taps A>B to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings to VFO B
FT1; enters split mode
DV0; turns diversity off
MN111; selects the CONFIG:L-MIX-R menu entry
MP001; selects the "A AB" audio mix, which puts VFO A (the receive frequency) in the left audio channel and the right audio channel receives a mix of both frequencies
MN255; closes the CONFIG menu
RT0; turns RIT off
XT0; turns XIT off
BW0060 sets the main receiver bandwidth to 600 Hz
BW$0270 sets the sub receiver bandwidth to 2.7 kHz
UPB4; moves VFO B up 1 kHz
UNSPLIT FT0;LK0;LK$0;SWT13;BW0270;DV1;RC;XT0; Return from split
This macro was contributed by Gary, ZL2iFB
FT0; turns Split mode off
LK0; unlocks VFO A
LK$0; unlocks VFO B
SWT13; taps A>B to copy VFO A frequency to VFO B
BW0270; sets the main receiver bandwidth to 2.7 kHz
DV1; turns diversity ON
RC; clears the RIT offset
XT0; turns XIT off
DIVON SB0;FT0;LK0;SB1;MN111;MP000;MN255;DV1; Diversity On
A cleanup macro contributed by Bill, W4ZV. This returns to Bill's "normal" Diversity mode setting.
SB0; turns the sub receiver off
FT0; turns split off
LK0; unlocks VFO A
SB1; turns the sub receiver on
MN111; selects the CONFIG:L-MIX-R menu entry
MP000; selects the A B mix option
MN255; closes the menu
DV1; turns diversity on
SPLIT+2 SWT13;SWT13;FT1;UPB5;RT0:XT0; SPLIT+2
A split variation contributed by Matt, W6NIA
SWT13; taps A>B once to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings to VFO B
FT1; turns split on
UPB5; moves VFO B up 2 kHz
RT0; turns RIT off
XT0; turns XIT off
CLEANUP FT0;RT0;XT0;LN0;SQ000;SWT13;SWT13; SWH58;NB0;NB$0;SB0; Cleanup
A cleanup macro contributed by Matt, W6NIA
FT0; turns split off
RT0; turns RIT off
XT0; turns XIT off
LN0; unlinks the two VFOs
SQ000; turns squelch off
SWT13; taps A>B to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings from VFO A to B
SWH58; holds the NORM button to NORMalize the bandwidth
NB0; turns the main receiver noise blanker off
NB$0; turns the sub receiver noise blanker off
SB0; turns the sub receiver off
Splt+3 SB1;SWT13;SWT13;FT1;UPB6;RT0;XT0;LK1; CW Split starting point (UP 3)
This is a split variation contributed by Dave, N1LQ. Dave chose a compromise between the +2 and +5 versions. A quick twist of VFO B puts Dave up or down depending on CW or SSB.
SB1; turns the sub receiver on
SWT13; taps A>B once to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings to VFO B
FT1; enters Split mode.
UPB6; moves VFO B up 3 kHz
RT0; turns RIT off
XT0; turns XIT off
LK1; locks VFO A to prevent changes to the receiver listening to the DX station in the heat of the pileup
ClrSplt SB0;FT0;RT0;XT0;LN0;SQ000;SWT13;SWT13;LK0; Clear Split
This is a "cleanup" macro contributed by Dave, N1LQ
SB0; turns the sub receiver off
FT0; turns split mode off
RT0; turns RIT off
XT0; turns XIT off
LN0; unlinks the VFOs
SQ000; turns squelch off
SWT13; taps A>B to copy VFO A frequency to VFO B
SWT13; taps A>B again to copy all other settings from VFO A to B
LK0; unlocks VFO A
WEAKSIG DV1;PA1;PA$1;BW0020;IS 9999; Weak signal (with diversity, requires the KRX3 sub receiver)
DV1; turns Diversity mode on
PA1; turns the main receiver preamp on
PA$1; turns the sub receiver preamp on
BW0020; sets the filter bandwidth to 200 Hz. BW is expressed in units of 10 Hz.
IS 9999; removes IF shift and centers the passband in the current mode
WWV 10 FA00010000000;MD5;FA00010000000;BW0300; Tune to WWV
FA00010000000; tunes VFO A to 10 MHz. The FA command expresses the frequency in Hertz and uses 11 digits.
MD5; enters AM mode
FA00010000000; is required if auto-offset-on-mode-change is in effect (in CONFIG:CW WGHT, tapping 5 alternates between VFO NOR and VFO OFS). In the latter case, the VFO frequency is adjusted when switching between CW and any other mode.
BW0300; sets the filter bandwith to 3 kHz
OLDIES FA00001550000;MD5;FA00001550000; BW0400;IS 9999;RA01;PA0; Tune to N6KR's favorite late-night music station
FA00001550000; tunes VFO A to 1550 kHz
MD5; enters AM mode
FA00001550000; repeats the VFO A tune command in case "auto offset" was in effect
BW0400; sets the filter bandwith to 4 kHz
IS 9999; removes any IF shift
RA01; turns the receive attenuator on
PA0; turns the preamp off
LCD BRT MN003;MP005;MN255; Set the LCD brightness to the brighest setting
MN003; opens the MENU and selects the LCD menu item
MP005; selects brightness level 6. Use the command tester to evaluate what happens with MP000; through MP005;
MN255; closes the menu
LCD DIM MN003;MP001;MN255; Set the LCD brightness one of the dimmest settings
MN003; opens the MENU and selects the LCD menu item
MP001; selects brightness level 2
MN255; closes the menu
LOCKA&B LK1;LK$1; Lock VFOs
LK1; locks VFO A
LK$1; locks VFO B
PWRTEST PC100;KYW=;PC010;KYW=;PC001;KYW=;PC100; Sends the BT prosign at 100 W, 10 W, 1 W, and restores power to 100 watts
PC100; sets power to 100 watts
KYW=; sends the BT prosign
PC010; sets power to 10 watts
KYW=; sends the BT prosign
PC001; sets power to 1 watt
KYW=; sends the BT prosign
PC100; sets power to 100 watts
TUN 10W PC010;SWH16; Sets power to 10 watts and enters TUNE mode
PC010; sets power to 10 watts
SWH16; emulates holding TUNE
599FAST KS040;KYW5NN;KS025;KYWTEST; Sends "5NN" at 40 WPM, then "TEST" at 25 WPM
KS040; sets the keyer speed to 40 WPM
KYW5NN; sends "5NN" and waits for the characters to all be transmitted
KS025; sets the keyer speed to 25 WPM
KYWTEST sends "TEST"
MUTE AF AG000;AG$000; Sets AF gain to zero
(Move the AF gain knob slightly to use its potentiometer value).
AG000; sets the main receiver AF gain to zero
AG$000; sets the sub receiver AF gain to zero
SCANNOW SWT15;SWT39;SWT23;SWT39;SWH41; Stores VFO A and B in per-band quick memory M4 and starts scan
(VFO B frequency must be greater than VFO A)
SWT15; simulates tapping V>M
SWT39; simulates tapping M4
SWT23; simulates tapping M>V
SWT39; simulates tapping M4
SWH41; simulates holding M4-RPT (> 2 second hold starts "live" scan)
MON OFF ML000; Silence Monitor
ML000; sets the monitor level to zero in the present mode
STEPPIR IF; Sends frequency information to a device attached to the K3 serial port, such as an antenna controller or ATU
IF; requests general transceiver information, including VFO A's frequency and the mode. When the K3 encounters a GET command in a macro, it sends the response to any device attached to the serial port, just as if the computer had requested it. Multiple GET commands could be placed in a macro if necessary; examples include FA; and FB; which return VFO A and VFO B frequencies.
TIGHTSB IS 1100;BW0180; Tight sideband
This macro was contributed by Matt, W6NIA
IS 1100; shifts the IF to a center AF frequency of 1100 Hz
BW0180; changes the filter width to 1800 Hz
WEAKCW MD3;SB1;DV1;RA00;RA$00; PA1;PA$1;BW0025;IS 9999; Weak CW receive
This macro was contributed by Matt, W6NIA
MD3; selects CW mode
SB1; turns the sub receiver on
DV1; turns diversity receive on
RA00; turns the main receiver attenuator off
RA$00; turns the sub receiver attenuator off
PA1; turns the main receiver preamplifier on
PA$1; turns the sub receiver preamplifier on
BW0025; sets the filter width to 250
IS 9999; centers the filter passband
SYNC-AM MD5;SWH17;SWT49;BW0500; Synchronous AM receive
This macro was contributed by Matt, W6NIA
MD5; selects AM mode
SWH17; HOLDs the ALT switch to select the alternate AM mode, Synchronous AM
SWT49; selects FINE VFO tuning
BW0500; sets the filter width to 5 kHz
DATPSK MD6;IS 0600;BW0025; PSK DATA receive
This macro was contributed by Matt, W6NIA
MD6; selects DATA mode
IS 0600; shifts the filter to a center audio frequency of 600 Hz
BW0025; sets the filter width to 250 Hz
DATJT65 MD6;IS 1350;BW0040; JT65 DATA receive
This macro was contributed by Matt, W6NIA
MD6; selects DATA mode
IS 1350; shifts the filter to a center audio frequency of 1350 Hz
BW0040; sets the filter width to 400 Hz
DATWSPR MD6;IS 1500;BW0030; WSPR DATA receive
This macro was contributed by Matt, W6NIA
MD6; selects DATA mode
IS 1500; shifts the filter to a center audio frequency of 1500 Hz
BW0030; sets the filter width to 300 Hz
CUT LO TE-16-16+00+00+00+00+00+00; Set Tx EQ to cut low frequencies
Note that this macro changes Tx EQ only when the selected Mode permits EQ adjustment
TE-16-16+00+00+00+00+00+00; is a set Transmit EQ command introduced in MCU revision 3.89. TE is followed by 8 sets of three characters corresponding to 8 audio frequency "bands", 50, 100, 200, 400, 800, 1600, 2400, and 3200 Hz. This example reduces the first two bands, 50 and 100 Hz to -16 dB, attenuating low frequencies which contain relatively little useful speech energy. Reducing low audio frequencies helps to reduce breath noises, microphone pops and microphone handling noises. (TU K9YC)
ELSB MD1;ES1; Selects LSB and turns ESSB on
MD1; sets the K3's mode to LSB
ES1; turns ESSB on
The ES command requires that the K3 already be in USB or LSB mode
The ES command was introduced in MCU revision 3.96
UP 100K UP7;UP7;UP7;UP7;UP7; UP7;UP7;UP7;UP7;UP7; UP7;UP7;UP7;UP7;UP7; UP7;UP7;UP7;UP7;UP7; QSY up 100 kHz
This macro was contributed by Pete, N4ZR
Each UP7; moves VFO A up 5 kHz
Repeating UP7; 20 times moves VFO A up 100 kHz
UP1; moves VFO A up 10 Hz
UP2; moves VFO A up 20 Hz
UP3; moves VFO A up 50 Hz
UP4; moves VFO A up 1 kHz
UP5; moves VFO A up 2 kHz
UP6; moves VFO A up 3 kHz
UP7; moves VFO A up 5 kHz
UP8; moves VFO A up 100 Hz
UP9; moves VFO A up 200 Hz
DN1; thru DN9; move VFO A down by the same amounts

Memories may contain commands that assign macros to buttons

A command memory may include commands to assign macros to buttons. This results in one button executing different command macros on successive button presses.

KU4AF described a clever technique in this Elecraft mailing list posting: http://www.mail-archive.com/elecraft@mailman.qth.net/msg138797.html

K1HTV published a "triple power" article that uses three command memories to switch power between 10, 50, and 100 watts with successive presses of a single button. See http://www.mail-archive.com/elecraft@mailman.qth.net/msg139262.html