<!--
  Rig definition file for use with fldigi
  
  See separate rigxml.odt (Open Office Writer document) for instructions on creating or maintaining
  this file
-->

<RIGDEF>

<RIG>Yaesu FT-950</RIG>

<PROGRAMMER>
  Dave Freese   W1HKJ
</PROGRAMMER>

<STATUS>
  Tested
  Version:  3.23.08
  Date:     27 February 2016
</STATUS>

<TITLE>RigCAT - FT-950</TITLE>

<!--
default settings for initial setup
-->

<ECHO>false</ECHO>
<TIMEOUT>500</TIMEOUT>
<RETRIES>2</RETRIES>
<WRITE_DELAY>5</WRITE_DELAY>
<POST_WRITE_DELAY>50</POST_WRITE_DELAY>
<BAUDRATE>38400</BAUDRATE>
<RTSCTS>true</RTSCTS>
<ECHO>false</ECHO>
<CMDPTT>true</CMDPTT>
<LOGSTR>true</LOGSTR>
<POLLINT>100</POLLINT>

<!--
Initialize transceiver to
packet upper sideband mode
filter width of 2400 Hz

FT950 filter center frequency in data mode is 1500 Hz

Be sure to set the fldigi PSK sweet spot to 1500 Hz
-->

<COMMAND>
  <SYMBOL>INIT</SYMBOL>
  <SIZE></SIZE>
  <STRING>MD0C;SH013;</STRING>
</COMMAND>

<!-- original mode list
<MODES>
  <ELEMENT>
    <SYMBOL>LSB</SYMBOL>
    <STRING>01</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>USB</SYMBOL>
    <STRING>02</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>CW</SYMBOL>
    <STRING>03</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>FM</SYMBOL>
    <STRING>04</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>AM</SYMBOL>
    <STRING>05</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>FSK-L</SYMBOL>
    <STRING>06</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>CW-R</SYMBOL>
    <STRING>07</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>PKT-L</SYMBOL>
    <STRING>08</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>FSK-R</SYMBOL>
    <STRING>09</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>PKT-FM</SYMBOL>
    <STRING>0A</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>FM-N</SYMBOL>
    <STRING>0B</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>PKT-U</SYMBOL>
    <STRING>0C</STRING>
  </ELEMENT><ELEMENT>
    <SYMBOL>AM-N</SYMBOL>
    <STRING>0D</STRING>
  </ELEMENT>
</MODES>

original LSBMODES

<LSBMODES>
  <STRING>LSB</STRING>
  <STRING>CW-R</STRING>
  <STRING>PKT-L</STRING>
  <STRING>FSK</STRING>
</LSBMODES>
-->

<!-- mode -->

<MODES>
  <ELEMENT>
    <SYMBOL>PKT-L</SYMBOL>
    <STRING>MD08;</STRING>
  </ELEMENT>
  <ELEMENT>
    <SYMBOL>PKT-U</SYMBOL>
    <STRING>MD0C;</STRING>
  </ELEMENT>
</MODES>

<LSBMODES>
  <STRING>PKT-L</STRING>
</LSBMODES>

<REPLY>
  <SYMBOL>MODE</SYMBOL>
  <SIZE>5</SIZE>
  <DATA>
    <DTYPE>STRING</DTYPE>
    <SIZE>5</SIZE>
  </DATA>
</REPLY>

<COMMAND>
  <SYMBOL>SETMODE</SYMBOL>
  <SIZE>5</SIZE>
  <DATA>
    <DTYPE>STRING</DTYPE>
    <SIZE>5</SIZE>
  </DATA>
  <INFO>MODE</INFO>
</COMMAND>
  
<COMMAND>
  <SYMBOL>GETMODE</SYMBOL>
  <SIZE>4</SIZE>
  <STRING>MD0;</STRING>
  <INFO>MODE</INFO>
</COMMAND>

<!-- bandwidth -->

<BANDWIDTHS>
  <ELEMENT><SYMBOL>100</SYMBOL><STRING>NA01;SH003;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>200</SYMBOL><STRING>NA01;SH004;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>300</SYMBOL><STRING>NA01;SH005;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>400</SYMBOL><STRING>NA01;SH006;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>500</SYMBOL><STRING>NA01;SH007;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>800</SYMBOL><STRING>NA00;SH008;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>1200</SYMBOL><STRING>NA00;SH009;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>1400</SYMBOL><STRING>NA00;SH010;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>1700</SYMBOL><STRING>NA00;SH011;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>2000</SYMBOL><STRING>NA00;SH012;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>2400</SYMBOL><STRING>NA00;SH013;</STRING></ELEMENT>
</BANDWIDTHS>

<BW-REPLY>
  <ELEMENT><SYMBOL>100</SYMBOL><STRING>SH003;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>200</SYMBOL><STRING>SH004;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>300</SYMBOL><STRING>SH005;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>400</SYMBOL><STRING>SH006;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>500</SYMBOL><STRING>SH007;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>800</SYMBOL><STRING>SH008;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>1200</SYMBOL><STRING>SH009;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>1400</SYMBOL><STRING>SH010;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>1700</SYMBOL><STRING>SH011;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>2000</SYMBOL><STRING>SH012;</STRING></ELEMENT>
  <ELEMENT><SYMBOL>2400</SYMBOL><STRING>SH013;</STRING></ELEMENT>
</BW-REPLY>

<REPLY>
  <SYMBOL>BW</SYMBOL>
  <SIZE>6</SIZE>
  <DATA>
    <DTYPE>STRING</DTYPE>
    <SIZE>6</SIZE>
  </DATA>
</REPLY>

<COMMAND>
  <SYMBOL>SETBW</SYMBOL>
  <SIZE>11</SIZE>
  <DATA>
    <DTYPE>STRING</DTYPE>
    <SIZE>11</SIZE>
  </DATA>
</COMMAND>

<COMMAND>
  <SYMBOL>GETBW</SYMBOL>
  <SIZE>4</SIZE>
  <STRING>SH0;</STRING>
  <INFO>BW</INFO>
</COMMAND>

<!-- GET/SET frequency -->

<REPLY>
  <SYMBOL>FREQ</SYMBOL>
  <SIZE>11</SIZE>
  <STRING>FA</STRING>
  <DATA>
    <DTYPE>DECIMAL</DTYPE>
    <SIZE>8</SIZE>
    <MAX>56000000</MAX>
    <MIN>0030000</MIN>
    <RESOL>1</RESOL>
    <REV>false</REV>
  </DATA>
  <STRING>;</STRING>
</REPLY>  

<COMMAND>
  <SYMBOL>SETFREQ</SYMBOL>
  <SIZE>11</SIZE>
    <STRING>FA</STRING>
  <DATA>
    <DTYPE>DECIMAL</DTYPE>
    <SIZE> 8 </SIZE>
    <MAX>56000000</MAX>
    <MIN>0030000</MIN>
    <RESOL>1</RESOL>
    <REV>false</REV>
   </DATA>
  <STRING>;</STRING>
  <BAD>?;</BAD>
</COMMAND>

<COMMAND>
  <SYMBOL>GETFREQ</SYMBOL>
  <SIZE>3</SIZE>
  <STRING>FA;</STRING>
  <INFO>FREQ</INFO>
</COMMAND>

<!-- set PTT on/off -->

<COMMAND>
  <SYMBOL>PTTON</SYMBOL>
  <SIZE>4</SIZE>
  <STRING>TX1;</STRING>
</COMMAND>

<COMMAND>
  <SYMBOL>PTTOFF</SYMBOL>
  <SIZE>4</SIZE>
  <STRING>TX0;</STRING>
</COMMAND>

<!--  smeter / power meter -->

<!-- smeter scale mapping -->
<SMETER> 0,0; 256,100 </SMETER>

<!-- power meter scale mapping -->
<PMETER>
  0,0; 16,1; 32,4; 48,7;
  64,12; 80,18; 96,24; 112,32;
  128,40; 144,50; 160,61; 176,73; 
  192,85; 208,99
</PMETER>


<REPLY>
  <SYMBOL>SMETER</SYMBOL>
  <SIZE>7</SIZE>
  <STRING>RM1</STRING>
  <DATA>
    <DTYPE>DECIMAL</DTYPE>
    <SIZE>3</SIZE>
  </DATA>
  <STRING>;</STRING>
</REPLY>

<COMMAND>
  <SYMBOL>GET_SMETER</SYMBOL>
  <SIZE>4</SIZE>
  <STRING>RM1;</STRING>
  <INFO>SMETER</INFO>
</COMMAND>

<REPLY>
  <SYMBOL>PWRMETER</SYMBOL>
  <SIZE>7</SIZE>
  <STRING>RM5</STRING>
  <DATA>
    <DTYPE>DECIMAL</DTYPE>
    <SIZE>3</SIZE>
  </DATA>
  <STRING>;</STRING>
</REPLY>

<COMMAND>
  <SYMBOL>GET_PWRMETER</SYMBOL>
  <SIZE>4</SIZE>
  <STRING>RM5;</STRING>
  <INFO>PWRMETER</INFO>
</COMMAND>

<!-- NOTCH ON/OFF VALUE -->

<NOTCH>
  1,10; 300,3000;
</NOTCH>

<COMMAND>
	<SYMBOL>SET_NOTCH_ON</SYMBOL>
	<SIZE>8</SIZE>
	<STRING>BP00001;</STRING>
</COMMAND>

<COMMAND>
	<SYMBOL>SET_NOTCH_OFF</SYMBOL>
	<SIZE>8</SIZE>
	<STRING>BP00000;</STRING>
</COMMAND>

<COMMAND>
	<SYMBOL>SET_NOTCH_VAL</SYMBOL>
	<SIZE>8</SIZE>
	<STRING>BP01</STRING>
	<DATA>
		<DTYPE>DECIMAL</DTYPE>
		<SIZE>3</SIZE>
	</DATA>
	<STRING>;</STRING>
</COMMAND>

<REPLY>
  <SYMBOL>NOTCH_ON</SYMBOL>
  <SIZE>8</SIZE>
  <STRING>BP00001;</STRING>
</REPLY>

<COMMAND>
  <SYMBOL>GET_NOTCH_ON</SYMBOL>
  <SIZE>5</SIZE>
  <STRING>BP00;</STRING>
  <INFO>NOTCH_ON</INFO>
</COMMAND>

<REPLY>
  <SYMBOL>NOTCH</SYMBOL>
  <SIZE>8</SIZE>
  <STRING>BP01</STRING>
  <DATA>
    <DTYPE>DECIMAL</DTYPE>
    <SIZE>3</SIZE>
  </DATA>
  <STRING>;</STRING>
</REPLY>

<COMMAND>
  <SYMBOL>GET_NOTCH</SYMBOL>
  <SIZE>5</SIZE>
  <STRING>BP01;</STRING>
  <INFO>NOTCH</INFO>
</COMMAND>

// power level set
<PWRLEVEL>
  0,0; 100,100;
</PWRLEVEL>

<REPLY>
  <SYMBOL>PWRLEVEL</SYMBOL>
  <SIZE>6</SIZE>
  <STRING>PC</STRING>
  <DATA>
    <DTYPE>DECIMAL</DTYPE>
    <SIZE>3</SIZE>
  </DATA>
  <STRING>;</STRING>
</REPLY>

<COMMAND>
  <SYMBOL>GET_PWRLEVEL</SYMBOL>
  <SIZE>3</SIZE>
  <STRING>PC;</STRING>
  <INFO>PWRLEVEL</INFO>
</COMMAND>

<COMMAND>
  <SYMBOL>SET_PWRLEVEL</SYMBOL>
	<SIZE>6</SIZE>
	<STRING>PC</STRING>
	<DATA>
		<DTYPE>DECIMAL</DTYPE>
		<SIZE>3</SIZE>
	</DATA>
	<STRING>;</STRING>
</COMMAND>

</RIGDEF>

