<!--
	Rig definition file for use with fldigi
-->

<RIGDEF>
  <RIG>Kenwood TS-870</RIG>
  <PROGRAMMER>
	Dave Baxter		G0WBX
</PROGRAMMER>
  <STATUS>
	UnVerified
	Version:	0.10
	Date:		13 Feb 2012
</STATUS>
  <TITLE>RigCAT - TS-870</TITLE>

<!-- Instructions for setting up the port
	ECHO     set to true for CI-V type of interface in which a h/w loop back sends all
	         outgoing data from Tx to Rx, or if the transceiver echos the data stream
-->  

<!--
default settings for initial setup
-->

<TIMEOUT>50</TIMEOUT>
<RETRIES>2</RETRIES>
<WRITE_DELAY>5</WRITE_DELAY>
<BAUDRATE>57600</BAUDRATE>
<RTSCTS>false</RTSCTS>
<ECHO>false</ECHO>
<CMDPTT>true</CMDPTT>

<MODES>
    <ELEMENT>
      <SYMBOL>LSB</SYMBOL>
      <BYTE>31</BYTE>
    </ELEMENT>
    <ELEMENT>
      <SYMBOL>USB</SYMBOL>
      <BYTE>32</BYTE>
    </ELEMENT>
    <ELEMENT>
      <SYMBOL>CW</SYMBOL>
      <BYTE>33</BYTE>
    </ELEMENT>
    <ELEMENT>
      <SYMBOL>CW-R</SYMBOL>
      <BYTE>37</BYTE>
    </ELEMENT>
    <ELEMENT>
      <SYMBOL>AM</SYMBOL>
      <BYTE>35</BYTE>
    </ELEMENT>
    <ELEMENT>
      <SYMBOL>FM</SYMBOL>
      <BYTE>34</BYTE>
    </ELEMENT>
    <ELEMENT>
      <SYMBOL>FSK</SYMBOL>
      <BYTE>36</BYTE>
    </ELEMENT>
    <ELEMENT>
      <SYMBOL>FSK-R</SYMBOL>
      <BYTE>39</BYTE>
    </ELEMENT>
  </MODES>
<!-- lsb mode strings should match those given in the modes symbol specifier -->  <LSBMODES>
    <STRING>LSB</STRING>
    <STRING>CW-R</STRING>
    <STRING>FSK</STRING>
  </LSBMODES>
<!-- frequency & mode data are contained in the IF; response
     IFaaaaaaaaaaaXXXXXbbbbbcdXeefghjklmmX;
     12345678901234567890123456789012345678
     where:
         aaaaaaaaaaa => decimal value of vfo frequency
         bbbbb => rit/xit frequency
         c => rit off/on
         d => xit off/on
         e => memory channel
         f => tx/rx
         g => mode
         h => function
         j => scan off/on
         k => split off /on
         l => tone off /on
         m => tone number
         X => unused characters
         
Test output from Minicom to IF; command         

IF00014070000       -00300     000200;

0002000 is vfoA in usb
0001000 is vfoA in LSB
0003000 CW
0004000 FM
0005000 AM
0007000 CW.N    (dont have narrow filter however)
0002100 VFOB in USB
0002001 VFOA in USB SPILT
0012000 PTT on in USB
         
-->  <REPLY>
    <SYMBOL>MODE</SYMBOL>
    <SIZE>38</SIZE>
    <STRING>IF</STRING>
    <FILL>27</FILL>
    <DATA>
      <DTYPE>BYTE</DTYPE>
      <SIZE>1</SIZE>
    </DATA>
    <FILL>7</FILL>
    <STRING>;</STRING>
  </REPLY>
  <REPLY>
    <SYMBOL>FREQ</SYMBOL>
    <SIZE>38</SIZE>
    <STRING>IF</STRING>
    <DATA>
      <DTYPE>DECIMAL</DTYPE>
      <SIZE>11</SIZE>
      <MAX>00030000000</MAX>
      <MIN>00001810000</MIN>
      <RESOL>1</RESOL>
    </DATA>
    <FILL>24</FILL>
    <STRING>;</STRING>
  </REPLY>
  <COMMAND>
    <SYMBOL>SETFREQ</SYMBOL>
    <SIZE>14</SIZE>
    <STRING>FA</STRING>
    <DATA>
      <DTYPE>DECIMAL</DTYPE>
      <SIZE>11</SIZE>
      <MAX>00030000000</MAX>
      <MIN>00001810000</MIN>
      <RESOL>1</RESOL>
    </DATA>
    <STRING>;</STRING>
  </COMMAND>
  <COMMAND>
    <SYMBOL>GETFREQ</SYMBOL>
    <SIZE>3</SIZE>
    <STRING>IF;</STRING>
    <INFO>FREQ</INFO>
  </COMMAND>
  <COMMAND>
    <SYMBOL>SETMODE</SYMBOL>
    <SIZE>4</SIZE>
    <STRING>MD</STRING>
    <DATA>
      <DTYPE>BYTE</DTYPE>
      <SIZE>1</SIZE>
    </DATA>
    <STRING>;</STRING>
  </COMMAND>
  <COMMAND>
    <SYMBOL>GETMODE</SYMBOL>
    <SIZE>3</SIZE>
    <STRING>IF;</STRING>
    <INFO>MODE</INFO>
  </COMMAND>
  <COMMAND>
    <SYMBOL>PTTON</SYMBOL>
    <SIZE>3</SIZE>
    <STRING>TX;</STRING>
  </COMMAND>
  <COMMAND>
    <SYMBOL>PTTOFF</SYMBOL>
    <SIZE>3</SIZE>
    <STRING>RX;</STRING>
  </COMMAND>
</RIGDEF>
