[aprssig] What is "TNC Channel Switching"?
Stephen H. Smith
wa8lmf2 at aol.com
Fri Apr 11 10:16:08 EDT 2014
On 4/11/2014 9:42 AM, Andrew Pavlin wrote:
> Could one then presume that such TNC's could not participate in any binary radio network (such as TCP/IP over AX.25 or OpenTRAC), since the binary payload might contain those characters?
>
> Seems kind of archaic, especially with KISS having a means to send such commands without reserving byte values in the data stream.
>
Long before KISS, AX.25 packet communications meant keyboard-to-keyboard
conversations using TNCs operated from dumb ASCII devices like Teletype
machines, ADM3 "glass TTYs" and VT-100 terminals. Then with dumb-terminal
emulating software like ASCII Express, ProComm, Hyperterminal, etc. [The
reason TNCs have considerable firmware "intelligence" is that, in the
beginning, the devices connected to them were completely dumb keyboards; i.e.
not computers.)
The user typed either commands to control the functions of the TNC, or text to
be transmitted over-the-air, all from the same keyboard. You typed the command
"CONV" (converse) before typing text over the air, and "Ctrl-C" before typing a
command to the TNC's internal firmware.
There WAS NO binary data to be transmitted -- only what could be typed from a
basic keyboard; i.e. 7-bit classic ASCII. Later, full 8-bit bytes with values
above 127 decimal or $7F were transmitted by using various means of expressing
them as printable ASCII characters; i.e. something like hex dumps.
[This is similar to how email works even today. The actual transmission of
email still uses the original 7-bit ASCII coding; binary file attachments and
UniCode text are converted into strings of printable ASCII text for
transmission, and then converted back to 8-bit bytes at the receiving end. The
effect of this is that an attached "1 megabyte" file actually causes typically
about 1.5 megabytes to be sent over the TCP/IP link.]
When packet started being about connecting computers together, rather than dumb
keyboards and displays, the KISS protocal was added. KISS bypassed the command
interpreters in the TNC and truly used the TNC as just a dumb modem. KISS is
fully 8-bit transparent, but does provide it's own means of selectiong "logical
ports" on a single physical channel.
The Kantronics "stream switch" characters were a way of accommodating multiple
logical channels in the 7-bit ASCII world that predated KISS, by using two
typeable characters that were not used much (at least in American English and
if you weren't a Unix programmer!).
More information about the aprssig
mailing list