# 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.

## Edit Command Tester/K3 Macros

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

- Start the K3 Utility.
- Select the Command Tester/K3 Macros tab.
- Click Edit Macros.
- Enter a short (up to 7 character) label in one of the Macro Label text boxes. This label will appear in the K3's VFO B display area when you invoke the macro.
- Enter the sequence of K3 commands in the corresponding Macro Commands text box. You may use the Windows copy and paste functions to copy Macro Commands from source documents (such as the sample macros below) into the text boxes of the Edit Command Tester/K3 Macros dialog.
- Click "Send to K3" to store the macros in your K3.
- Leave the Edit Macros dialog by clicking Save or Cancel.
- On the K3 front panel, hold CONFIG, then adjust VFO B until the word "MACRO" appears in the VFO B area of the K3 front panel display.
- Tap 1-8 on the K3 numeric keypad to choose one of the first 8 macros you wish to assign to a function switch.
- Assign this macro to a function switch by holding PF1 or PF2, or tap or hold M1-M4.
- Tap CONFIG to exit the menu.
- Try out your macro execution by tapping or holding the assigned function switch.

#### 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