KISS
36
Let's look at data from the TNC to the computer. First, all information flowing in this direction is da-
ta. No special messages are sent from the TNC to the computer in KISS Mode. The only data flow-
ing in this direction is that received through the radio link. Every "frame" of data sent from the
TNC will begin and end with a special FEND character. This character is the ASCII code $C0 (hex)
or 192 decimal. The second byte of the data will be the data type and will always be at $00. This
means that the following information is data. If the data actually contains the FEND character
($C0) it will be necessary to tell the computer that the $C0 it receives is not the end of the frame,
but simply is more data. This is accomplished by replacing the $C0 character with a special se-
quence consisting of a FESC ($DB) followed by a TFEND character ($DC). One final special se-
quence which could be sent from the TNC to the computer is a FESC ($DB) followed by TFESC
($DD). This is translated into $DB by the computer program.
Now, looking at data flowing in the other direction, that is from the computer to the TNC. There
are five possible commands that you may need to issue to the TNC from the computer and they
basically concern setup parameters. These are commands needed to set TXDELAY, PERSISTENCE,
SLOTTIME, FULLDUP and finally, a command to exit the KISS Mode of operation. The only other
data which the computer may send to the TNC in KISS Mode is data which is to transmitted over
the radio (HDLC) channel. The data coming from the computer must also begin and end with the
same FEND character as is used for data coming from the TNC. All special character sequences
must also be used to send the FEND and FESC characters as data.
Each of the commands is assigned a command type number as follows:
TYPE
FUNCTION
0
1
2
3
255
Data to be transmitted
TXDELAY – second byte contains txdelay in 10 ms increments
PERSISTENCE – second byte contains persistence value
SLOTTIME – second byte contains slot interval
Causes exit from KISS Mode
For example, if I want to set the TXDELAY in my KISS Mode TNC to 100 milliseconds, the com-
puter would send the following bytes to the TNC:
C0 01 0A C0
and to send a data packet saying hello would be:
C0 00 68 65 65 6C6F C0
It is important to note, that this data packet does not contain any addressing information, and
therefore cannot be sent via AX.25 protocol All of the addressing and formatting of the addresses
must be done in the computer and sent as a data packet to the TNC.