Elecraft XG3

New Firmware Information

Revision 1.18 September 9, 2016

•	Fixes a problem in which the starting frequency of a repeating sweep was incremented by the sweep step size. 

Revision 1.17 May 13, 2016

•	Fixes a problem with exiting from a repeating Morse memory with a serial character, firmware now exits cleanly after receiving any serial character during playback. 

Revision 1.16 May 28, 2013

•	A break signal is now transmitted over the serial port at the start of frequency sweep and Morse memory playback. This appears as a 1.3 ms low to high to low pulse on the serial TX line and can be used to trigger external equipment. 
•	When sending a Morse string using the ‘W’ command, pressing any key or any received serial character will now stop and exit the Morse sequence. 
•	Fixed a bug in which the first element of the first character in a Morse string was being omitted. 

RTTY Sender 

Starting with version 1.14 the XG3 contains a RTTY sender.  Standard 170 Hz FSK at 45.45 baud is implemented, with the space frequency 170 Hz below the mark frequency.  The mark frequency is the current output frequency of the XG3. 

Several new meta-characters allow a RTTY message to be programmed into the XG3’s Morse memory feature.   

Morse Memory Meta-characters
{	-	turn on RTTY mode, characters following will be transmitted in RTTY
}	- 	turn on CW mode, characters following will be transmitted in CW
~nn	-	send RTTY diddles (LTRS) for nn seconds (00 to 99)  (RTTY only)
\n	-	send LF 	(RTTY only)
\r	-	send CR	(RTTY only)
\b	-	send BELL	(RTTY only)
\	-	sends the character following the ‘\’ without translation. i.e. \$ or \#
[nn	-	changes wpm to nn 	(05 to 50) 	(CW only)
^n	-	set level to n 	(0 = 0 dBm, 1 = -33, 2 = -73, 3 = -107)
:nn	-	turn carrier on for nn seconds	(00 to 99)
$nn	-	pauses for nn seconds		(00 to 99)
|nn	-	recall band/memory nn		(0 to 11)
#	- 	repeat entire sequence 
_	-	space

Automatic power down is disabled during Morse memory transmission. 

Meta-characters only work with the Morse memory. 

All serial commands must be terminated with a semi-colon ( ; ). 

RT,character_string,….
sends the character string using RTTY 
To embed a space, use the ‘_’ (underscore) character, \n for LF, \r for CR etc. 
Send: 	RT,\r\n_rig_is_xg3_de_W1AW_73;
XG3: 	nothing
Send:	RT,HELLO_WORLD;
XG3: 	nothing

Morse/RTTY Memory Examples

Use the XG3 Utility’s Command Tester (far right tab) to enter these commands:

WM,{RYRYRYRYRYRY~05#;
Changes to RTTY output mode, sends RY 6 times, then sends diddles for 5 seconds and repeats indefinitely.

WM,{\n\rRIG_IS_XG3$03}de_w1aw#;
Changes to RTTY and sends LF,CR then “RIG_IS_XG3” , then waits 3 seconds, changes to CW and sends “de w1aw” and then repeats. 

WM,{QTH_IS_APTOS_CA\#95001_#;
Here is an example of using the ‘\’ character to embed a # in the message, while the # on the end signals repeat message. 

WM,[13de_w1aw:03[20de_w1aw:03[30de_w1aw:03[40:03#;
Changes WPM to 13 and sends ‘de w1aw’ followed by 5 seconds of carrier, then changes to 20 wpm and sends the same message, then 5 seconds of carrier, then changes to 30 wpm, …… then 40 wpm. 

	
Set up PF1 for Morse memory sending: 
PF,01,01;			configure PF1 to send Morse memory. 
To play the memory, either hold down the Band+/PF1 key or send S,01; over the serial port. 

Revision 1.14 – May 25, 2011 

•	Added RTTY sender.
•	Morse memory is now 60 characters
•	Minor bug fixes. 

Revision 1.10 – May 11, 2011
•	Changes made to LED illumination provide more consistent blinking and intensity.
•	During Morse sender, only the Band LED blinks (consistent with sweep operation)
•	Added precision millisecond timer for more accurate Morse code wpm and delays.
•	Modified CS2100 divisor computation to provide best possible accuracy, added burst write for faster frequency updates. 

Revision 1.07 – April 25, 2011

Starting with version 1.07, the XG3 contains a Morse code sender with memory function.  The Morse code sender can be adjusted for WPM (words per minute), and the memory can hold up to 50 characters.  Meta-characters permit pauses, carrier on/off, repeat and output level changes.  The XG3 will save the prior output state and restore it after sending the sequence.  A convenient way to enter serial commands is to use the XG3 Utility’s Command Tester (far right tab).   After upgrading to version 1.07, you may need to re-enter any programmed sweeps.
Supported Morse Characters
Letters: A-Z
Numbers: 0-9
Punctuation: . / ? @ 
Special:  * = SK, + = AR, - = BK,  _ = word space

Morse Memory Meta-characters
^n	-	set level to n 	(0 = 0 dBm, 1 = -33, 2 = -73, 3 = -107)
:nn	-	turn carrier on for nn seconds	(00 to 99)
$nn	-	pauses for nn seconds		(00 to 99)
|nn	-	recall band/memory nn		(0 to 11)
#	- 	repeat entire sequence 

When the XG3 is sending a Morse sequence, it can be cancelled by pressing any key other than the Band + key, or by sending any serial character. 

When the XG3 is sending Morse code, the band and level LEDs will toggle (wig-wag) to indicate transmission. 

Automatic power down is disabled during Morse memory transmission. 

Meta-characters only work with the Morse memory. 

All serial commands must be terminated with a semi-colon ( ; ). 

WM[,character string…..]
programs the Morse Memory
Fills the Morse Memory with the string following the command.  Up to 50 characters total may be entered.   Entering WM without any arguments displays the current contents.  
Send 	WM,de_w1aw_*;
XG3: 	nothing
Send: 	WM;
XG3:	WM,de_w1aw_*;
WP[,wpm]
sets/views the word per minute rate (wpm) 
The XG3 can send Morse code at a rate of between roughly 5 and 50 words per minute (wpm). 
Send 	WP,25;
XG3: 	nothing
Send: 	WP;
XG3:	WP,25;

PF,01[,mode]
sets/views the programmable function mode 
PF1 can run either a programmed sweep (mode=00) or send the Morse code memory (mode=01).  
Set PF1 to send the Morse memory 
Send: PF,01,01;				
XG3: nothing

Send PF,01;
XG3: PF,01,01;

W[,character,string,…..]
sends the character string or Morse Memory 
The character string will be sent out.  If no character string is specified, the contents of the Morse memory will be sent.  
Send 	W,rig_is_xg3_de_W1AW_73_*;
XG3: 	nothing
Send the Morse memory:
Send: 	W;
XG3:	nothing 

Morse Memory Example

Use the XG3 Utility’s Command Tester (far right tab) to enter these commands:

WM,^0de_w1aw:10^1:10^2:10*$60#;

Changes the level to 0 dBm, then sends ‘de w1aw’, sends carrier at 0 dBm for 10 seconds, then
changes the level to -33 dBm, sends carrier for 10 seconds, changes level to -73 dBm, sends carrier for 10 seconds, sends SK, pauses silent for 60 seconds and repeats indefinitely.  
	
Set up PF1 for Morse memory sending: 
PF,01,01;			configure PF1 to send Morse memory. 
To play the memory, either hold down the Band+/PF1 key or send S,01; over the serial port. 

Revision 1.07 – April 25, 2011
•	Added Morse code sender, memory, meta-characters. (see serial specification)

Revision 1.04 – March 14, 2011
•	Slight modifications to tech mode commands used in production of unit. 
•	Added ‘D’ command to update saved settings without power off. 

Revision 1.03 – March 7, 2011
•	Tech mode added with commands, led test, key read, CS2100 id & rev, a/d read.
•	Fixes unstable output on power down, output is squelched. 
•	Changed up and down buttons so that Band Up moves toward 160 M, Band Down moves toward 2 M. 
•	Added ‘S’ command to start sweep instead of using ‘0’ or ‘1’.  Sweeps are now numbered 1 or 2. 
•	Added upper frequency limit check, truncates maximum frequency to 1400 MHz.