CAT

From DDUtilV3
Jump to: navigation, search

CAT Commands

History

In the beginning the CAT Command set for PowerSDR used the same commands as Kenwood TS-2000 radios. As the Flex radios developed the Kenwood command set no longer was adequate enough to cover the features of the Flex radios.

As you read through the CAT Command Dictionary you will notice that many commands have the same functionality. Such commands are FA/ZZFA, FB/ZZFB, etc. these commands can be used interchangeably, but it is recommended to use the ZZxx commands for continuity and consistency. All of the original Kenwood commands have been re-written with a ZZ equivalent, but there are many more ZZ commands to pick from.

Command Structure

PowerSDR CAT Commands

See this link to browse the PowerSDR CAT Command Reference Guide

CAT commands are a fixed structure of multiple elements. In these examples we are only going to discuss the ZZ commands to keep the confusion down. The Kenwood commands can be used interchangeably if they exist for a given function. This example we will use is ZZMA1; which will Mute the receiver when executed. Below is a dissection of the command structure.

  • Preamble (ZZ)
    ZZ precedes each CAT command. This tells the Command Parser the following string of characters is a PowerSDR CAT Command.
  • Function Identifier (MA)
    Follows the Preamble and is a two alpha character string that represents a specific function to be performed on the radio.
  • Parameter List (1)
    The parameter list can be one or many characters depending on the function identifiers. See the following examples for differences in parameter list characters.
  • Terminator (;)
    The terminator for all commands is a semicolon (;) and tells the Command Parser that this is the end of the command string, go ahead and execute the command.
ZZMA    Sets or reads the Mute (MUT) status
Get	ZZMA	;								
Set	ZZMA 	P1	;							
Answer	ZZMA	P1	;							
Notes	P1 = 0 for off, 1 for on.
ZZGL    Sets or reads the Noise Gate Threshold value
Get	ZZGL	;								
Set	ZZGL	P1	P1	P1	P1	;				
Answer	ZZGL	P1	P1	P1	P1	;				
Notes	P1 = -160 to 0 (- sign required except for 0000).


Note: For more information on setting up, programming and using CAT and DDUtil commands see the How To section.

DDUtil Macro Commands

The DDUtil macro are formed the same as the PowerSDR CAT commands but use a DD prefix in lieu of a ZZ prefix.

In the event an error is made composing the command structure a pop-up error window will appear describing the error. Note: this error catcher will not tell you if you use the wrong command or the wrong command parameters.

DDUtil Command Reference

Notes:
ALL commands require a semicolon (;) terminator.
DD6 prefixed commands apply only to F6K radios.
F6K Macros Command Summary

DD34 - SteppIR antenna to 3/4 mode (vertical only)
 Form: DD34;
DD6AGM Slice AGC Mode
 Form: DD6AGM P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Mode to set (1 char 0-3 {FAST, MED, SLOW, OFF})
 Uses: DD6AGM0:1; set Slice 0 AGC Mode to MED
DD6AGT Slice AGC Threshold Gain
 Form: DD6AGT P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Threshold level to set (3 char 000-100)
 Uses: DD6AGT0:050; sets Slice 0 AGC T level to 50
DD6APF Slice APF On/Off
 Form: DD6APF P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = {0|1} 0 = Off, 1 = On
 Uses: DD6APF0:1; Enables the slice 0 APF
DD6APG APF Gain Level Set 
 Form: DD6APG P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Gain value to set (3 numeric chars 000-100)
 Uses: DD6APG0:050; sets the slice APF Gain to 50
DD6AUG Slice Audio Gain
 Form: DD6AUG P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7, 9)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Threshold level to set (3 char 000-100)
 Uses: DD6AUG0:050; sets Slice 0 Audio Gain to 50
DD6AUM Slice Audio Mute
 Form: DD6AUM P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = {0|1} 0 = Off, 1 = On
 Uses: DD6AUM0:1; Mute Slice 0 Audio
DD6AUP Slice Audio Pan (v3.1)
 Form: DD6AUP P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Value to shift audio L/R (3 char {000 = L/H, 100 = R/H})
 Uses: DD6AUP0:050; sets Slice 0 Audio Pan to stereo 
DD6CWM CWX Macro Execution
 Form: DD6CWM P1 ;
 Parm: P1 nn = macro to execute.
 Uses: DD6CWM01; Executes CWX macro #1
 Note: P1 requires 2 digits
DD6CWS CWX Speed Up/Down
 Form: DD6CWS P1 P2 ;
 Parm: P1 + = Speed Up, - = Speed Down.
 Parm: P2 Speed (2 digits 01-99).
 Uses: DD6CWS+02; will increase CWX speed 2 WPM.
DD6DEN DAX TX Audio Enable/Disable 
 Form: DD6DEN P1 ;
 Parm: P1 0 = Off, 1 = On
 Uses: DD6DEN1; Enables the DAX TX audio.
DD6DIV Diversity Audio Enable/Disable 
 Form: DD6DIV P1 ;
 Parm: P1 0 = Off, 1 = On
 Uses: DD6DIV1; Enables the Diversity audio.
DD6DOS Set DSP Offset for DIGL/DIGU
 Form: DD6DOS P1 P2 P3 P4 P5 ; 
 Parm: P1 = Slice 0-7 {A-H} & 9 for active slice.
 Parm: P2 = Separator (:)
 Parm: P3 = {L|U} L = DIGL U = DIGU
 Parm: P4 = Separator (:)
 Parm: P5 = Offset 
 Uses: DD6DOS9:U:+1500; Sets the DSP offset for DIGU to +1500 Hz
 Uses: DD6DOS9:L:1500;  Sets the DSP offset for DIGL to -1500 Hz
DD6FIL Set Slice, Mode and Filter parameters (rev'd @ 32300)
 Form: DD6FIL P1 P2 P3 P4 P5 P6 P7 ; 
 Parm: P1 = Slice 0-7 {A-H} & 9 for active slice.
 Parm: P2 = Separator (:)
 Parm: P3 = Mode = 2 numerical digits {00=LSB,  01=USB, 02|03|04=CW,    05=FM,  06=AM,   07=DIGU,  
                                       09=DIGL, 10=SAM, 11=NFM, 12=DFM, 20=FDV, 30=RTTY, 40=DSTR}
 Parm: P4 = Separator (:)
 Parm: P5 = Filter Center = 4 numerical digits prefixed with either a ‘+’ or ‘-‘.
 Parm: P6 = Separator (:)
 Parm: P7 = Filter Width  = 5 numerical digits for the filter width in Hz.
 Uses: DD6FIL0:01:+0000:02500;
 Note: Above example sets slice 0 to USB mode and sets the filter center point to 0 Hz and filter width to 2500 Hz.
             Use slice = 9 (DD6FIL9...) to set parameters for the active slice.
DD6GCW CW Side Tone Gain Level Set 
 Form: DD6GCW P1 ;
 Parm: P1 = Gain value to set (3 numeric chars 000-100)
 Uses: DD6GCW050; sets the CW Side Tone Gain to 50
DD6GSB SSB TX Monitor Gain Level Set 
 Form: DD6GSB P1 ;
 Parm: P1 = Gain value to set (3 numeric chars 000-100)
 Uses: DD6GSB050; sets the SSB TX Monitor Gain to 50
DD6MAG Master Audio Gain Level Set 
 Form: DD6MAG P1 ;
 Parm: P1 = Gain value to set (3 numeric chars 000-100)
 Uses: DD6MAG050; sets the Master Audio Gain to 50
DD6MAM Master Audio Mute Enable/Disable 
 Form: DD6MAM P1 ;
 Parm: P1 0 = Off, 1 = On
 Uses: DD6MAM0; Sets the Master Audio Mute to Off.
DD6NBG Slice Noise Blanker Gain
 Form: DD6NBG P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Threshold level to set (3 char 000-100)
 Uses: DD6NBG0:050; sets Slice 0 NB Gain to 50
DD6NBK Slice Noise Blanker On/Off {0-7} (toggle)
 Form: DD6NBK P1 ;
 Parm: P1 = Slice 0-7 {A-H}.
 Uses: DD6NBK0:1; Slice A Noise Blanker On.
DD6NRD Slice Noise Reduction On/Off {0-7} (toggle)
 Form: DD6NRD P1 ;
 Parm: P1 = Slice 0-7 {A-H}.
 Uses: DD6NRD0:1; Slice A Noise Reduction On.
DD6NRG Slice Noise Reduction Gain
 Form: DD6NRG P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Threshold level to set (3 char 000-100)
 Uses: DD6NRG0:050; sets Slice 0 NR Gain to 50
DD6PBW Slice Panadapter Bandwidth set {0-7}:{MHz}(.014 = Zoom In)
 Form: DD6PBW P1 P2 P3;
 Parm: P1 = Slice 0-7 {A-H}.
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Panadapter bandwidth frequency in MHz.
 Uses: DD6PBW0:.1; Sets slice A panadapter bandwidth to 100 KHz
DD6PCF Centers Slice Frequency in the Panadapter
 Form: DD6PCF P1 ;
 Parm: P1 = Slice 0-7 {A-H}.
 Uses: DD6PCF0; Centers the Slice A frequency in its Panadapter.
DD6PGL Global Profile Set
 Form: DD6PGL P1 P2;
 Parm: P1 = Separator (1 char {':' recommended})
 Parm: P2 = Global profile name.
 Uses: DD6PGL:RTTY; Sets the Global Profile to RTTY.
DD6PMC Mic Profile Set
 Form: DD6PMC P1 P2;
 Parm: P1 = Separator (1 char {':' recommended})
 Parm: P2 = Mic profile name.
 Uses: DD6PMC:CW; Set the CW mic profile.
DD6PRG Panadapter RF Gain Set
 Form: DD6PRG P1 P2 P3 ;
 Parm: P1 = Panadapter to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = RF gain level to set (-10 | 0 | 10 | 20 | 30)
 Uses: DD6PRG9:-10; sets active panadapter RF Gain to -10
DD6PTX TX Profile Set
 Form: DD6PTX P1 P2;
 Parm: P1 = Separator (1 char {':' recommended})
 Parm: P2 = TX profile name.
 Uses: DD6PTX:CW; Set the CW TX profile.
DD6PZM Panadapter Zoom In/Out
 Form: DD6PZM P1 ;
 Parm: P1 + = zoom in, - = zoom out.
 Uses: DD6PZM+; will zoom in the panadapter bandwidth.
DD6QSY CW Skimmer QSY VFO B Enable/Disable 
 Form: DD6QSY P1 ;
 Parm: P1 0 = Off, 1 = On
 Uses: DD6QSY1; Enables the QSY VFO B feature.
DD6RXA Slice Rx antenna
 Form: DD6RXA P1 P2 P3 ;
 Parm: P1 = Slice to set Rx antenna for (0-7)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Rx antenna to set (0-4 {ANT1, ANT2, RX_A, RX_B, XVTR})
 Uses: DD6RXA0:2; Sets Slice A Rx Ant to RX_A 
DD6SAP Slice Audio Play Back On/Off
 Form: DD6SAP P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = {0|1} 0 = Off, 1 = On
 Uses: DD6SAP0:1; Enables the slice 0 audio playback
DD6SAR Slice Audio Record On/Off
 Form: DD6SAR P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = {0|1} 0 = Off, 1 = On
 Uses: DD6SAR0:1; Enables the slice 0 audio record
DD6SDC Slice DAX Channel
 Form: DD6SDC P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = {0-8} 0 = None
 Uses: DD6SDC0:2; Enables the slice 0 audio playback
DD6SFS Slice Frequency Set
 Form: DD6SFS P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Frequency in MHz
 Uses: DD6SFS9:14.08; Sets active slice to 14.080000 mHz
DD6SMS Slice Mode Set
 Form: DD6SMS P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H} & 9 for active slice.)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Mode to set (LSB, USB, CW, RTTY...)
 Uses: DD6SMS0:CW; Enables the slice 0 mode to "CW"
DD6SNS Selects Next Active RX Slice
 Form: DD6SNS ;
 Uses: DD6SNS; Advances active slice to next open slice.
DD6SPL Create VFO A/B Split (>= v3.1)
 Form: DD6SPL P1 ;
 Parm: P1 = Split in KHz
 Uses: DD6SPL03; Creates a 3 KHz split from VFO A to VFO B & set VFO B TX
DD6SRV Remove Slice
 Form: DD6SRV P1 ;
 Parm: P1 = Slice to remove (0-7)
 Uses: DD6SRV5; Removes slice 5 (F)
DD6SSF Slice Filter size
 Form: DD6SSF P1 P2 P3 P4 P5 ;
 Parm: P1 = Slice 0-7 {A-H} & 9 for active slice.
 Parm: P2 = Separator (:)
 Parm: P3 = Filter Center = 4 numerical digits prefixed with either a ‘+’ or ‘-‘.
 Parm: P4 = Separator (:)
 Parm: P5 = Filter Width  = 5 numerical digits for the filter width in Hz.
 Uses: DD6SSF0:+0000:00250;
 Note: Above example sets slice 0 to a filter center point to 0 Hz and filter width to 250 Hz.
             Use slice = 9 (DD6SSF9...) to set parameters for the active slice.
DD6SSK Slice Lock
 Form: DD6SSK P1 P2 P3 ;
 Parm: P1 = Slice to set (1 char 0-7 {A-H}) & 9 for active slice.
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = 0 = Unlocked, 1 = Locked
 Uses: DD6SSK0:1; sets Slice 0 to locked against frequency changes
DD6SSR Active RX Slice
 Form: DD6SSR P1 ;
 Parm: P1 = Slice to make active (0-7).
 Uses: DD6SSR1; Makes slice 1 the active RX slice..
DD6SSX Active TX Slice
 Form: DD6SSX P1 ;
 Parm: P1 = Slice to make active (0-7).
 Uses: DD6SSX1; Makes slice 1 the active TX slice..
DD6STX Active TX Slice same as RX Slice
 Form: DD6STX ;
 Uses: DD6STX; Makes active RX slice the active TX slice.
DD6TFL TX Filter width
 Form: DD6TFL P1 P2 P3 ;
 Parm: P1 = Low Filter Cut (5 numeric characters)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = High Filter Cut (5 numeric characters)
 Uses: DD6TFL00000:02700; Sets the TX bandwidth to 2700 Hz 
DD6TME TX Monitor Enable
 Form: DD6TME P1 ;
 Parm: P1 = {0|1} 0 = Off, 1 = On
 Uses: DD6TME1; Enables the TX Monitor audio
DD6TRA TX Request Accessory Interlock Enable (v3.1)
 Form: DD6TRA P1 P2 P3
 Parm: P1 = {0|1} 0 = Off, 1 = On
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = {+|-} + = Active High, - = Active Low
 Uses: DD6TRA1:+; Enables TX REQ ACC and sets level to high 
DD6TTP TX Tune Power Level Set 
 Form: DD6TTP P1 ;
 Parm: P1 = TX Power value to set (3 numeric chars 000-100)
 Uses: DD6TTP050; sets the TX Tune Power to 50 watts
DD6TXA Slice Tx antenna
 Form: DD6TXA P1 P2 P3 ;
 Parm: P1 = Slice to set (0-7)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Tx antenna to set (0-2 {ANT1, ANT2, XVTR})
 Uses: DD6TXA0:0; Sets Slice A Tx Ant to ANT1 
DD6TXL TX Lines On/Off
 Form: DD6TXL P1 P2 P3 ;
 Parm: P1 = TX line to set (0-3) 0=TX1, 1=TX2, 2=TX3, 3=TX Accessory
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = Enabled/Disabled {0|1} 0 = Off, 1 = On
 Uses: DD6TXL0:1; Sets TX Line "1" to Enabled 
DD6TXT Tx Tune Enable
 Form: DD6TXT P1 ;
 Parm: P1 = {0|1} 0 = Off, 1 = On
 Uses: DD6TXT1; Turns Tune On
DD6VXE Set VOX Enable
 Form: DD6VXE P1 ;
 Parm: P1 = {0|1} 0 = Off, 1 = On
 Uses: DD6VXE1; Enables the VOX function
DD6WWC CW Skimmer WinWarbler Enable/Disable 
 Form: DD6WWC P1 ;
 Parm: P1 0 = Off, 1 = On
 Uses: DD6WWC1; Enables the CW Skimmer|DDUtil|WinWarbler function.
DDAD - Auto Drive Enable/Disable
 Form: DDAD P1 ;
 Parm: P1 = 1 for Enabled, P1 = 0 for Disabled
 Uses: DDAD1; Enables the Auto Drive feature
DDAM - Sets the Palstar AT-Auto tuner to Auto Mode
 Form: DDAM ;
DDAO - Set selected supported amplifier to Operate
 Form: DDAO;
DDAP - Selects Auto Drive settings for Amp1 or Amp2.
 Form: DDAP P1;
 Parm: P1 = 1 for amp1, 2 for amp2
 Uses: DDAP2; loads drive settings for amplifier #2
DDAS - Set selected supported amplifier to Standby
 Form: DDAS;
DDBC - Sets the Aux BCD data bytes
 Form: DDBC P1 P1 P1 P1 P1 P1 P1 P1 ;							
 Parm: P1 = 0 for off, 1 for on.
 Uses: DDBC01010101; Sends decimal 85 (0x55) to the BCD port.
DDBE - Enables/Disables BCD port output
 Form: DDBE P1 ;
 Parm: P1 = 1 Enabled, 0 = Disabled (DDBE1;)
DDBI - Sets the SteppIR antenna to the Bi-Direction mode (Yagi only)
 Form: DDBI ;
DDBL - Sets the Palstar AT-Auto tuner to Balanced Mode
 Form: DDBL ;
DDBM - Sets the Palstar AT-Auto tuner to Bypass Mode
 Form: DDBM ;
DDCX - Sets the Palstar AT-Auto tuner to Coax Mode
 Form: DDCX ;
DDDT - Toggles the DTR line of the SerMacPort on/off
 Form: DDRT P1 ;
 Parm: P1 = 0 for off, P1 = 1 for on
 Uses: DDDT1; sets the SerMacPort DTR line to on
DDEA - KAT500 Set Active Antenna (1|2|3)
 Form: DDEA P1 ;
 Parm: P1 = 1, 2 or 3 digits only.
 Uses: DDEA1; sets the active KAT500 antenna to #1
DDEM - KAT500 Set Mode (A|M|B)
 Form: DDEM P1 ;
 Parm: P1 = A(utomatic, M(anual or B(ypass) characters only
 Uses: DDEMB; sets the active KAT500 Tune Mode to Bypass
DDET - KAT500 Start Tune Cycle
 Form: DDET ;
 Uses: DDET; same as pushing the KAT500 or DDUtil Tune button
DDFA - Write to FlexWire port 1
 Form: DDFA P1 ;
 Parm: P1 is in hexadecimal (0-255)
 Uses: DDFA12; sends b00010010 to the FlexWire port1 (d18)
 Uses: DDFAFF; sends b11111111 to the FlexWire port1 (d255)
DDFT - Sets the Palstar AT-Auto tuner to Fine Tune Mode
 Form: DDFT ;
DDFW - Sets the SteppIR antenna to the forward direction mode (Beam only)
 Form: DDFW ;
DDHA - Heros Set Antenna (1/2)
 Form: DDHA P1 ;
 Parm: P1 = 1 (Antenna #1), 2 (Antenna #2)
 Uses: DDHA1; Selects antenna port 1
DDHB - Heros Set Band (1-6)
 Form: DDHB P1 ;
 Parm: P1 = 1 - 6 (Bands A-F)
 Uses: DDHB5; Selects band "E" (5)
 Note: P1 = 0 results in Bypass On
DDHL - Heros Set LNA On/Off
 Form: DDHL P1 ;
 Parm: P1 = 0 (Off), 1 (On)
 Uses: DDHL0; Turns LNA off
DDHU - Heros Set Anttenuator
 Form: DDHU P1 ;
 Parm: P1 = 00, 06, 12, 18 dB of attenuation
 Uses: DDHU00; Sets anttenuator to 0dB (Off)
DDHY - Heros Set Bypass On/Off
 Form: DDHY P1 ;
 Parm: P1 = 0 (On), 1 (restores band)
 Uses: DDHY0; Turns Bypass on
DDKA - Sets CX-Auto switch to select multiple ports
 Form: DDKA P1 P2 ;
 Uses: DDKA0101; selects ports 4 and 0.
 Note: See CX-Auto users manual for more information.
DDKM - Sets CX-Auto switch to select single port using switch address
 Form: DDKM P1 P2 ;
 Parm: P1 = B1-B3, P2 = 01-07
 Uses: DDKMB101; selects port 1 on switch with address B1
DDKS - Sets CX-Auto switch to select single port using GUI address
 Form: DDKS P1 ;
 Uses: DDKS01; selects port 1
DDKW - Display the Tuning Knob sub window
 Form: DDKW ;
 Note: DDUtil v1 & 2 only
DDLP - Write to a parallel port
 Form: DDLP P1 P1 P1 P1 P1 P2 P2 ;
 Parm: P1 = port address in decimal, P2 = hex value (DDLP00888FF;)
DDLY - Inserts a delay between commands
 Form: DDLY P1 ;
 Parm: P1 = milliseconds to delay (1000 = 1 second)
 Uses: DDLY3000; adds a delay of 3 seconds
DDMB - Sets SSB to correct side band (based on band)
 Form: DDMB ;
 Uses: DDMB; selects LSB for 160, 80, 60 and 40 meters and USB for all others.
DDME - Executes another macro
 Form: DDME P1 ;
 Parm: P1 = other macro to execute
 Uses: DDME21; will execute DDUtil macro 21
DDMM - Sets Palstar AT-Auto tuner to Manual mode.
 Form: DDMM ;
DDMS - Sets a Macro Memory (0-9) to either 0 or 1
 Form: DDMS P1 P2 P3 ;
 Parm: P1 = memory (0-9)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = 0 = off, 1 = on
 Uses: DDMS3:1; Sets Macro Memory #3 to 1
 Note: Memory values DO NOT persist between sessions
DDMT - Tests a Macro Memory (0-9) for 0 or 1 & executes a macro based on condition
 Form: DDMT P1 P2 P3 P4 P5 ;
 Parm: P1 = memory (0-9)
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = nnn macro to execute if memory = 1
 Parm: P4 = Separator (1 char {':' recommended})
 Parm: P5 = nnn macro to execute if memory = 0
 Uses: DDMT3:005:006; if Macro Memory #3 = 1 execute macro #5 else execute macro #6
 Note: nnn macro numbers must be 3 digits each
 Note: Memory values DO NOT persist between sessions
DDPA - Set KPA500 Fan Speed
 Form: DDPA P1 ;
 Parm: P1 = fan speed to set (0-6)
 Uses: DDPA4; set fan speed to the 4th speed setting.
DDPD - Loads/Closes PSDR (toggle)
 Form: DDPD ;
 Note: Uses PSDR file location on the Setup tab
DDPL - Sets Auto Drive to Low Power
 Form: DDPL ;
 Note: PTT must be in Operate prior to execution
DDPP - Enables/Disables DDUtil PTT
 Form: DDPP P1 ;
 Parm: P1 = 1 for Enabled, 0 for Disabled
 Uses: DDPP1; Enables the Auto Drive PTT in DDUtil
DDPQ - Sends serial string with embedded ";" to the Serial Macro Port
 Form: DDPQ P1 ;
 Parm: P1 = string to send (DDPQS01;)
 Note: Use for K9DUR Voice Keyer remote Trigger
 Note: Voice Keyer macro to activate (S01-S10).
DDPS - Sends serial string to the Serial Macro Port
 Form: DDPS P1 ;
 Parm: P1 = string to send
 Uses: DDPSHELLO WORLD; sends the string Hello World to the SerMacPort
DDPT - Toggles the PTT function in DDUtil
 Form: DDPT :
DDRB - Sends Denkovi Relay Board a values between 0-255
 Form: DDRB P1 P2 P3;
 Parm: P1 = decimal digit(s) 0 - 255
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = decimal digit(s) 0 or 1
 Uses: DDRB7:0; Turns on relays 1, 2 and 3 only
 Uses: DDRB7:1; Turns on relays 1, 2 and 3 and also band data
 Note: Uses binary notation (128 = 10000000 = relay #8)
DDRE - Enables the Rotor
 Form: DDRE P1 ;
 Parm: P1 = 1 for Enabled, 0 for Disabled (DDRE1;)
DDRR; - Sets rotor interrogation interval
 Form: DDRR P1 ;
 Parm: P1 Index of rotor interval drop-down combo box (0=none)
 Uses: DDRR1; sets interval to 1 second
 Note: Values are from 0 to 6 which equates from 0 = None to 6 = 10 seconds
DDRT - Toggles the RTS line of the SerMacPort on/off
 Form: DDRT P1 ;
 Parm: P1 = 0 for off, P1 = 1 for on
 Uses: DDRT1; sets the SerMacPort RTS line to on
DDRV - Sets the SteppIR antenna to the Reverse direction mode (Beam only)
 Form: DDRV ;
DDRW - Display the Rotor sub window
 Form: DDRW ;
 Note: DDU v1 & 2 only
DDSC - Activates the SteppIR Calibrate function
 Form: DDSC ;
DDSD - SteppIR Antenna Disable Frequency Update Flag 
 Form: DDSD P1 ;
 Parm: P1 = 0 Enable tuning, 1 Disable tuning
 Uses: DDSD1; Disable antenna tuning
 Note: Use this macro to temporarily disable the antenna tuning function. 
 Note: V3 only
DDSE - SteppIR Antenna Enable/Disable 
 Form: DDSE P1 ;
 Parm: P1 = 1 for Enabled, 0 for Disabled
 Uses: DDSE1; enables the SteppIR antenna functionality
 Note: This macro checks the Enable check box on the Other tab. 
DDSF - Announces PSDR Frequency using Speech Synthesis
 Form: DDSF ;
DDSH - SteppIR Antenna Home Elements function
 Form: DDSH ;
DDSI   System Information (populates 3 text boxes under s-meter)
 Form: DDSI P1 P2 P3 P4 ;
 Parm: P1 = Separator (: suggested)
 Parm: P2 = Text Box to write to
 Parm: P3 = Separator (: suggested)
 Parm: P4 = Text to write
 Uses: DDSI:1:Hello; Writes Hello in the 1st text box.
DDSM - Announces PSDR Mode using Speech Synthesis
 Form: DDSM ;
DDSO - Sets Offset: for the active rotor
 Form: DDS0 P1 ;
 Parm: P1 = -180 to 180 degrees
 Note: DDSO5; for +5 degrees offset, DDSO-5; for -5 degrees offset
DDSP - Turns the Rotor to a specific heading
 Form: DDSP P1 P1 P1 ;
 Parm: P1 = 000 to 359 (DDSP180;)
DDSR - SteppIR Antenna Restart Tuning function
 Form: DDSR ;
 Note: Use to restart antenna after a element retraction (home) function
 Note: V3 only
DDSS - Announces PSDR S-Meter reading using Speech Synthesis
 Form: DDSS ;
 Note: Reading is peak for a 2 second period.
DDSX - Selects the active rotor (1, 2, 3)
 Form: DDSX P1 ;
 Parm: P1 = 1, 2, or 3
 Uses: DDSX2; selects rotor #2
DDTA - Appends text to Status Bar
 Form: DDTA P1 ;
 Parm: P1 = Plain text
 Uses: DDTA 1234;
 Note: Can be used with DDTM to add text to existing
 Note: DDU v1 & 2 only
DDTF - Set Power Master watt meter Forward Trim
 Form: DDTF P1 ;
 Uses: DDTF8; Sets forward trim to 8.
DDTG - Toggles 2 macros (mod eff v3.1)
 Form: DDTG P1 P2 P3 P4 ;
 Parm: P1 = Toggle index number (1 numeric digit {0-9})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = xx = 2 digits for On macro
 Parm: P4 = xx = 2 digits for Off macro
 Uses: DDTG1:2021; toggles macro pair #1 for macros 20 and 21
DDTG - Toggles 2 macros (mod eff v3.2.1)
 Form: DDTG P1 P2 P3 P4 P5 ;
 Parm: P1 = Toggle index number (2 numeric digits {00-19})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = xxx = 3 digits for On macro
 Parm: P4 = Separator (1 char {':' recommended})
 Parm: P5 = xxx = 3 digits for Off macro
 Uses: DDTG01:020:021; toggles macro pair #01 for macros 20 and 21
DDTG - Toggles 2 macros (mod eff v3.2.5)
 Form: DDTG P1 P2 P3 P4 P5 P6 P7 ;
 Parm: P1 = Toggle index number (2 numeric digits {00-19})
 Parm: P2 = Separator (1 char {':' recommended})
 Parm: P3 = xxx = 3 digits for On macro
 Parm: P4 = Separator (1 char {':' recommended})
 Parm: P5 = xxx = 3 digits for Off macro
 Parm: P6 = Separator (1 char {':' recommended})
 Parm: P7 = xx 2 digits for macro button color 
            00=no color, 01=black, 02=silver, 03=gray, 04=white, 05=maroon, 06=red, 07=purple, 08=fuchsia
            09=green, 10=lime, 11=olive, 12=yellow, 13=navy, 14=blue, 15=teal, 16=aqua
 Uses: DDTG01:020:021:08; toggles macro pair #01 for macros 20 and 21 and sets button color to fuchsia.
DDTM - Add user text to Status Bar
 Form: DDTM P1 ;
 Parm: P1 = Plain text
 Uses: DDTAHello Radio;
 Note: DDU v1 & 2 only
DDTR - Set Power Master watt meter Reverse Trim
 Form: DDTR P1 ;
 Uses: DDTR4; Sets forward trim to 4
DDTS - Sets the VFO A/B Tune Step
 Form: DDTS P1 P2 ;
 Parm: P1 = VFO A/B, P2 = Tune Step index (zero based)
 Uses: DDTSA01; sets VFO A to 10 Hz tune step.
DDVA - Sets TX VFO = VFO A
 Form: DDVA ;
DDVB - Sets TX VFO = VFO B
 Form: DDVB ;
DDVR - Sets Tuning Knob Variable Tuning rate on/off (toggle)
 Form: DDVR ;
DDWW - Sends commands to DXLab WinWarbler to execute any of it's 32 message macros.
 Form: DDWW P1 ;
 Parm: P1 = 0 - 31
 Uses: DDWW30; will execute DXLab WinWarbler macro #30