<!doctype linuxdoc system>

<!-- This is the Linux HAM-HOWTO. It is a list of amateur radio software
	for linux, please send any comments of suggestions to the author:
	terryd@extro.ucc.su.oz.au
 -->

<article>

<title>Linux HAM-HOWTO, Amateur Radio Software List
<author>Terry Dawson, VK2KTJ, <tt>terryd@extro.ucc.su.oz.au</tt>
<date>v1.8, 9 July 1995

<abstract>
It is hoped that this document will assist Amateur Radio operators in finding
and trying the various amateur radio software that has been written for or
ported to Linux. It is also hoped that as a consequence of this information
being available that more amateur radio operators will choose Linux as the
platform of choice for their experimentation, and that software developers
will choose Linux as the platform for their software development, further
expanding the role of operating systems like Linux in the Amateur Radio field.
This document also provides some detailed information on how to configure
and install some of the more important pieces of software.
</abstract>

<!-- Table of contents -->
<toc>

<!-- Begin the document -->

<sect><heading>Introduction.

<p>
This list was prompted by comments that had been expressed in the various
Linux newsgroups about the number of amateur radio operators that were
involved with Linux. It is now clear that Linux is becoming a popular
platform for Amateur Radio development work.

This list was originally called the RADIOLINUX list, but Matt Welsh
suggested that there was no reason why it shouldn't be distributed
with the Linux Documentation Project documents, so it has been renamed the
HAM-HOWTO and will be made available with the rest of the Linux
Documentation. I make no apologies for the name.

<sect1><heading>Changes from the previous version

<p>

<verb>
Additions:
	Added Brian Lantz's TNOS.
	Added Philip VanBaren's audio spectrum analyser.
	Added Emarit Ranu's FT-890 controller program.

Corrections:
	Updated Packet Cluster information.
	Updated AX.25 kernel software.
	Updated AX.25 utilites information.
	Updated howto configure PI card.
	Updated rspf daemon information.
</verb>

<sect><heading>Where to obtain new versions of this document.

<p>
This list will be periodically posted to the <tt>comp.os.linux.announce</tt>
newsgroup, and to the <tt>HAMS</tt> list on <tt>niksula.hut.fi</tt>.

It is also available from the following World Wide Web sites:

The Linux Documentation Project runs a Web Server and this list appears
there as <url url="http://sunsite.unc.edu/mdw/HOWTO/HAM-HOWTO.html"
	name="The HAM-HOWTO">.

Dennis Boylan N4ZMZ <tt>&lt;dennis@nanovx.atl.ga.us></tt> makes it available
at the following three locations:

<url url="http://www.com/linux/radio/index.html" name="www.com">,
<url url="http://www.hboc.com/linux/index.html" name="www.hboc.com"> and
<url url="http://www.lan.com/linux/index.html" name="www.lan.com">.

John Gotts N8QDW <tt>&lt;jgotts@engin.umich.edu></tt> makes it available at:
<url url="http://www.engin.umich.edu/~jgotts/linuxhamsoft.html"
	name="www.engin.umich.edu">. 

Dan Todd <tt>&lt;dantodd@fusilli.ucdavis.edu></tt> makes it available
at the following two locations:
<url url="http://wheel.dcn.davis.ca/~dantodd/Linux/HAM-HOWTO.html" name="wheel.dcn.davis.ca">, and <url url="http://fusilli.ucdavis.edu/Linux/HAM-HOWTO.html" name="fusilli.ucdavis.edu">.

Alan Hargreaves VK2KVF <tt>&lt;alan@dap.CSIRO.AU></tt> makes it available
in Australia at:
<url url="http://www.dap.csiro.au/RadioLinux" name="www.dap.csiro.au">.

Please let me know if you'd like to make it available somewhere too. I'd
like to see it on some Web Servers that are accessible from radio.

<sect><heading>Satellite Software.

<p>
The following software is for use in experimentation with Satellite
communication.

<sect1><heading>MicroSat Ground Station Software

<p>
<descrip>
<tag>Author
</tag>John Melton, G0ORX/N6LYT, g0orx@amsat.org and Jonathan Naylor G4KLX, g4klx@amsat.org
<tag>Description
</tag>Microsat Ground Station software.
<tag>Status
</tag>BETA. Version 0.9-Xaw released.
<tag>System requirements
</tag>Alan Cox's kernel based AX.25 support ver 1.1.12 or better. X-Windows. The programs make use of the Athena Widgets and look much better with the 3D libraries.
<tag>Detail
</tag>This software allows you to use of a KISS tnc to directly communicate with the Microsat series of satellites. It provides an Athena Widgets based X-Windows interface, and allows you a comprehensive range of means of interacting with the satellite. The software should work with any window manager.
<p>
The software provides the following programs:
	<descrip>
	<tag>xpb:</tag>broadcast monitor
	<tag>xpg:</tag>ftl0 file upload program, message upload program
	<tag>xtlm:</tag>telemetry display program
	<tag>downloaded:</tag>downloaded file list viewer
	<tag>directory:</tag>directory list viewer
	<tag>message:</tag>message preparation application
	<tag>viewtext:</tag>uncompressed ASCII text file viewer
	<tag>viewlog:</tag>display the contents of some log files
	<tag>xweber:</tag>special program for downloading webersat images
	<tag>phs:</tag>general purpose PACSAT header stripper
	</descrip>

<tag>Where and How to obtain it.
</tag>John's software is available from:
<url url="ftp://ftp.ucsd.edu/hamradio/packet/tcpip/incoming/microsat-0.9-Xaw.tar.gz" name="ftp.ucsd.edu"> or <url url="ftp://ftp.funet.fi/pub/ham/satellite/microsat/microsat-0.9-Xaw.tar.gz" name="ftp.funet.fi">. Please check for new versions.
<tag>Licensing/Copyright
</tag>GNU Public License. Freely redistributable, No warranty.
<tag>Contributed by:
</tag>John Melton, G0ORX/N6LYT, Alan Cox, GW4PTS, Jonathon Naylor, G4KLX
</descrip>

<sect1><heading>SatTrack - Satellite tracking program

<p>
<descrip>
<tag>Name
</tag>SatTrack
<tag>Author
</tag>Manfred Bester, DL5KR, manfred@ssl.berkeley.edu, (510) 849-9922
<tag>Description
</tag>Satellite realtime tracking and orbit prediction program with X11 color graphics.
<tag>Status
</tag>Version 3.1 has been released.
<tag>System requirements
</tag>A vt100 terminal and or X11 server. A Maths Coprocessor is useful, but not essential, for good performance.
<tag>Detail
</tag>SatTrack is a satellite tracking program that has been written in 'C' language on a UNIX workstation. It provides two different live displays, for single or multiple satellites, and two different orbit prediction facilities. Cursor controls used in both live displays are compatible with the VT100 standard, which allows the program to be run basically from any terminal. An optional X Window graphics display shows the typical world map tracking chart. The orbit prediction can be run either interactively or in a batch mode. In the latter case all necessary parameters are specified on the command line. The program uses the NORAD/NASA two-line Keplerian element (TLE) sets directly.
<p>
The current version of SatTrack can track a single satellite and/or display multiple satellites for a single ground station. It also can control suitable ground station hardware, like antennas and radio equipment, and has an autotrack mode in which it switches automatically between a number of specified satellites. For calibration purposes tracking of the Sun and the Moon are also provided. Future releases will provide more options. SatTrack requires about 5 MB of disk space in the full distribution with eight different world maps (2 styles, with 4 different sizes each, to fit everyone's screen and taste) and less than 1.5 MB of memory at run time. More information can be obtained from the <url url="http://ssl.berkeley.edu/isi&lowbar;www/sattrack.html" name="SatTrack WWW Home Page">
<p>
Compiling the software under Linux is quite straightforward. Manfred has designed the Makefile to compile the software directly under your home directory, this is easy to change.
<p>
The steps I took were:
<tscreen><verb>
# cd /usr/src
# export HOME=/usr/src
# gzip -dc sattrack.V3.1.tar.gz | tar xvf -
# cd SatTrack/src
# vi Makefile
  {Comment SUN4 compile options}
  {Uncomment the linux options}
  {Select the options you want} 
# make
</verb></tscreen>

<tag>Where and How to obtain it.
</tag>SatTrack can be found at:
<url url="ftp://ftp.amsat.org/amsat/software/Linux/sattrack.V3.1.tar.gz"
	name="ftp.amsat.org"> or
<url url="ftp://ftp.jvnc.net/priv/kupiec/sattrack/sattrack.V3.1.tar.Z"
	name="ftp.jvnc.net"> or the
<url url="http://ssl.berkeley.edu/isi&lowbar;www/sattrack-3.1.tar.gz"
	name="SatTrack WWW Home Page">

<tag>Licensing/Copyright
</tag>The software is Copyright of Manfred Bester. It can be used without
special permission for non-profit, non-commercial use. For commercial
applications a license from the author is required.
<tag>Contributed by:
</tag>Manfred Bester, DL5KR
</descrip>

<sect><heading>Shack Automation Software.

<p>
Software for simplifying tasks in the shack. Examples might include software
for controlling the newer breed of radios, logging programs, QSL database,
or antenna rotation.

<sect1><heading>FT-890 remote control

<p>
<descrip>
<tag>Author
</tag>Emarit Ranu, drranu@holly.ColoState.EDU, KG0CQ.
<tag>Description
</tag>A simple program to control a Yaesu FT-890 transciever via its CAT port
from linux.
<tag>Status
</tag>Working
<tag>System requirements
</tag>Yaesu FT-890, Yaesu FIF-232C interface converter or homebuilt equivalent (Feb 1993 "QST", page 37). Linux, serial cable.
<tag>Detail
</tag>The program is started with one parameter specifying the com port to use.
Once started the program is menu driven. Future versions will support
an X-Windows interface.
<tag>Where and How to obtain it.
</tag>The software is currently only available from the author by email.
<tag>Licensing/Copyright
</tag>You may copy this program millions of times, the only restrictions are:
	<itemize>
	<item>You may not charge ANYONE for the program itself.
	<item>You may not distribute modified versions of the program.
	<item>If you distribute the program, it MUST be the ORIGINAL tar file as received by the author. The README file has to be included.
	</itemize>
<tag>Contributed by:
</tag>Emarit Ranu, drranu@holly.ColoState.EDU
</descrip>

<sect><heading>Packet Radio

<p>
Software for use in conjunction with, or for facilitating packet radio.

<sect1><heading>Kernel Based AX.25 networking.

<p>
<descrip>
<tag>Author
</tag>Alan Cox, GW4PTS, iialan@iifeak.swan.ac.uk and Jonathon Naylor, G4KLX, jsn@cs.nott.ac.uk
<tag>Description
</tag>Software that allows the Linux Kernel to perform AX.25 networking.
<tag>Status
</tag>ALPHA. Still under development. In a working state.
<tag>System requirements
</tag>Linux kernel 1.3.0 or later.
<tag>Detail
</tag>Alan's software provides the programmer with a berkeley socket based
interface to the AX.25 protocol. AX.25 sockets can opened for either
connected, or connectionless modes of operation. Support to allow tcp/ip
over AX.25 is provided. The user applications have been written by Jonathon
Naylor G4KLX. Jonathon has recently added NetRom support and provided fixes
and other enhancements to the code.
The software comes in two parts, a kernel patch, and the user programs.
The user programs included are:
<descrip>
<tag>axassociate</tag>to associate a particular AX.25 callsign with a userid on your system.
<tag>axattach</tag>to convert a serial device into a KISS device.
<tag>axl</tag>an AX.25 listener designed to start a PMS when it receives an
incoming connection. The PMS is still very new.
<tag>axsetcall</tag>to change the callsign of a port.
<tag>beacon</tag>generated beacon messages every 30 minutes.
<tag>call</tag>A linemode AX.25 connection program. Call allows you to make
connections to other AX.25 nodes. It provides file transmit and receive
capabilities, and newer versions allow YAPP binary file transfers.
<tag>listen</tag>a packet trace tool for radio links.
<tag>mheard</tag>a program to display callsign heard on radio ports.
<tag>netromd</tag>a daemon program to generate netrom routing broadcasts.
<tag>noderest</tag>a program to restore netrom routing information from a file.
<tag>nodesave</tag>a program to save netrom routing informtion to a file.
<tag>nrparms</tag>a program to configure a netrom interface.
<tag>rip98d</tag>an implementation of the rip98 routing protocol.
</descrip>
<tag>Where and How to obtain it.
</tag>There are a number of different versions of the software. You must choose
the one that suits your version of Linux kernel. Software for kernel versions
older than 1.3.* is available from:
<url url="ftp://sunacm.swan.ac.uk/pub/misc/Linux/Radio/"
	name="sunacm.swan.ac.uk">

More detail on where and how to obtain the software is provided in the
AX.25 section of the `Installation, Configuration, Hints and Tricks'
chapter below.

<tag>Licensing/Copyright
</tag>Most of the software is covered by the GNU Public License, some of the
software is Copyright by the Regents of University California Berkeley.
</descrip>

<sect1><heading>JNOS

<p>
<descrip>
<tag>Author
</tag>Brandon Allbery, KF8NH, bsa@kf8nh.wariat.org
<tag>Description
</tag>Brandon ported JNOS to Linux. His port is currently of the 1.09
(aka 1.08df) release of JNOS. Future versions will probably be based on Doug
Crompton's evolution of 1.08df. Brandon suggests that JNOS for Linux is
primarily of interest to people with existing DOS-based NOS configurations
(especially server/switch configurations) who wish to switch to Linux or to
escape the 640K barrier.
<tag>Status
</tag>The current version is ALPHA.4. Brandon is still tracking down bugs,
as well as evolving new features.
<tag>System Requirements.
</tag>Any version of Linux along with <em>ncurses</em> 1.8.1 or 1.8.5 (the latter is
preferred). Optionally you will require Linux networking (at least loopback)
and <em>slattach</em> (kernels pre-1.1.13 or post-1.1.20 required for this).
<tag>Detail
</tag>
If you include the Linux networking code in addition to JNOS, you can link
the two by a slip link running over a pty, so that Linux can provide services
to your radio users. In this way you can easily add servers without having
to build them into JNOS itself.
Brandon has supplied the following list of known bugs:
<itemize>
<item>some servers seem to be causing unexplained exits.
<item>PPP is reported not to work in ALPHA.4, although it worked in ALPHA.3.
<item>BBS forwarding when convers is compiled in but not configured causes core 
dumps.
<item>the finger server is getting bad filenames.
<item>the bbs W command is case-munging filenames.
</itemize>
<tag>Where and How to obtain it.
</tag>You can obtain JNOS for Linux ALPHA.4 at:
<url url="ftp://ftp.ucsd.edu/hamradio/packet/tcpip/linux/j109lxA4.tgz"
	name="ftp.ucsd.edu">
<em>ncurses</em> is available on most Linux ftp sites.
<tag>Licensing/Copyright
</tag>Brandon's modifications to JNOS are public domain. Most of the
pre-existing NOS code is copyrighted and restricted to non-commercial 
use by the various contributors from Phil Karn on.
<tag>Contributed by:
</tag>Brandon Allbery, KF8NH
</descrip>

<sect1><heading>TNOS 

<p>
<descrip> 
<tag>Author
</tag>Brian A. Lantz, brian@lantz.com
<tag>Description
</tag>TNOS is a NOS derivative that is being actively supported and which
is avialable for both DOS and Linux. It features enhancements not found in
other NOS versions.
<tag>Status
</tag>The current version is 1.14 and is stable.
<tag>System Requirements
</tag>Kernel networking slip support if you want to link the normal Linux
network facilities with TNOS. A kiss tnc.
<tag>Detail
</tag>Brian maintains a World Wide Web server which contains up to date
information on TNOS, you can find it at
<url url="http://www.lantz.com/tnos/current/linux/" name="www.lantz.com">.
<tag>Where and how to obtain it
</tag>The current version of TNOS is always available from:
<url url="http://www.lantz.com/tnos/current/" name="www.lantz.com">,
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/ham/tnos/" name="sunsite.unc.edu">, or
<url url="ftp://ftp.ucsd.edu/hamradio/packet/tcpip/linux/" name="ftp.ucsd.edu">.

<tag>Licensing/Copyright etc.
</tag>Free for use by amateur radio operators and educational oraganisations
</descrip>

<sect1><heading>N0ARY Packet BBS for UN*X

<p>
<descrip>
<tag>Author
</tag>Bob Arasmith, N0ARY, ported to Linux (and others) by Bob Proulx, KF0UW, rwp@fc.hp.com
<tag>Description
</tag>A packet bbs implemented under UN*X.
<tag>Status
</tag>ALPHA. Bob is running version ARY-0.9 on both Linux and HP-UX. The next
version from N0ARY which is called 4.0 is in alpha test/development release.
Bob has not been able to bring this online yet and is still running 0.9+kf0uw
mods. Bob has about half it working with Alan Cox's AX.25 kernel which would
be the desirable combination.
<tag>System Requirements.
</tag>Linux installation, C Compiler, plus HAM radio TNC hardware.
<tag>Detail
</tag>This bbs has an excellent packet user interface.  It has a compatible
set of commands with the RLI bbs so users will be familiar with it immediately.
It then extends the command set to be a very nice natural language style
interface (e.g "list at allus about KPC-3"). Many csh style bang commands are
supported. Also included is a mail interface to provide a packet to internet
gateway.

Currently you need to customize the source code for your installation so you
need some C programming proficiency.
<tag>Where and How to obtain it.
</tag>For a Linux version or for Linux information send mail to
<tt>rwp@fc.hp.com</tt>. For a SunOS version contact <tt>bob@arasmith.com</tt>.
This code is not packaged for distribution yet since it is not past the alpha
stage of development.
<tag>Licensing/Copyright
</tag>Copyright by Bob Arasmith, N0ARY, but freely redistributable.
<tag>Contributed by:
</tag>Bob Proulx, kf0uw, rwp@fc.hp.com
</descrip>

<sect1><heading>MBL/RLI message to NNTP and email converter.

<p>
<descrip>
<tag>Author
</tag>SM0OHI, pme@it.kth.se
<tag>Description
</tag>Software that will convert incoming MBL/RLI messages into either NNTP
or RFC-822 formatted mail messages.
<tag>Status
</tag>Development, not yet released.
<tag>System requirements
</tag>Unknown.
<tag>Detail
</tag>This software would be ideally suited to those who want to establish
a mail and news gateway between conventional tcp/ip networks and the amateur
radio mail network.
<tag>Where and How to obtain it.
</tag>Not yet availale.
<tag>Licensing/Copyright
</tag>Unknown.
<tag>Contributed by:
</tag>SM0OHI
</descrip>

<sect1><heading>Packet Cluster Node software

<p>
<descrip>
<tag>Author
</tag>Franta Bendl, DJ0ZY, and Bernhard ("Ben") Buettner, DL6RAI, root@dl6rai.muc.de
<tag>Description
</tag>A PacketCluster like system running on Linux.
<tag>Status
</tag>Released in March 1995.
<tag>System Requirements
</tag>Linux Kernel version 1.1.50 or greater with Alan Cox's AX.25 version 025
driver, TCP/IP networking, SysV IPC. Also needs Perl and KISS TNC hardware on
serial device.
<tag>Detail
</tag>PacketCluster nodes have been available for about six years. The original
software was written by Dick Newell, AK1A, and is running under DOS.
<em>clx</em> is a system which clones a PacketCluster node. To the outside
user commands and features are mostly identical, remote PacketCluster nodes,
which can be networked, don't see the difference between a generic
PacketCluster node and <em>clx</em>. So it fits well into an established
network of PacketCluster nodes.
								   
<em>clx</em> is not a user application, it is network node software. As such it
is not of much use for the individual amateur. SysOPs of PacketCluster nodes
with some experience on both PacketCluster and Linux will find this
application interesting.

Here are some of the features of CLX:

<itemize>
<item>It is fully compatible with the internal PCxx protocol and from a users'
point of view. It allows multitasking and different priorities for different
things.
<item>The software detects looping DX spots without generating endless
messages. <em>clx</em> filters out such duplicate information. We have
implemented a concept which allows us to connect the network at multiple
points, which would formerly have been called a "Cluster Loop". <em>clx</em>
knows of so-called "active" and "passive" links. The outcome is that more DX
information is seen by clx.
<item>An interface to call your external programs (even dialog programs).
<item><em>clx</em> uses modern programming concepts like shared memory for
common data, lex &amp; yacc to implement command language, shared libraries to
keep binaries small (this is still on our wish list), remote procedure calls
for inter process communication. It is strictly modularized with its own
dedicated process for every major task.
<item>Comprises the following modules:
<descrip>
<tag>con&lowbar;ctl</tag>interfaces AX.25 kernel code and provides a socket for local users.
<tag>rcv&lowbar;ctl</tag>manages receive spooling.
<tag>snd&lowbar;ctl</tag>manages transmit spooling.
<tag>rm&lowbar;disp</tag>receive message dispatcher, forwards messages to other processes.
<tag>usr&lowbar;req</tag>user database requests, forks a process for every database task to make it run in the background. The background process later sends the results directly to send&lowbar;ctl.
<tag>mb&lowbar;ctl</tag>mailbox control. The mailbox keeps messages in a file system, header information is stored in the database.
<tag>usr&lowbar;ctl</tag>user administration (logins, logouts, logbook).
<tag>usc&lowbar;mng</tag>manages external user commands and command extensions.
<tag>iu&lowbar;com</tag>inter user communication (talk, conference).
<tag>send&lowbar;ctl</tag>transmit spooling, handling priorities.
<tag>icl&lowbar;com</tag>inter node communication (processing and generating PCxx messages).
<tag>clx&lowbar;ctl</tag>system administration, installing shared memory pages.
<tag>int&lowbar;com</tag>manages internal program communications.
</descrip>
<item>The following is the only application program which can be run on the console:
<descrip>
<tag>loc&lowbar;usr</tag>allows console operator(s) to log in like a normal user.
</descrip>
</itemize>

Future enhance planned are:
<itemize>
<item>A console monitor to watch ongoing activities
<item>Speed optimization
<item>An internal clx protocol
<item>An additional command shell for experienced users
</itemize>

<tag>Where and How to obtain it:
</tag>You can obtain <em>clx</em> from <url
url="ftp://ftp.uni-erlangen.de/pub/public/pc-freeware/hamradio/packet/packclus/clx" name="ftp.uni-erlangen.de"> or 
<url url="ftp://ftp.funet.fi/pub/ham/unix/Linux/cluster" name="ftp.ucsd.edu">

There are five files that make up the package:
<itemize>
<item>00index
<item>clx_105.tgz
<item>install.clx
<item>README_1.06
<item>upd_106.tgz
</itemize>

<tag>Licensing/Copyright
</tag><em>clx</em> is available for non-commercial use, but the authors
want to keep track of who is using their product, so before you can actually
use the software you have to ask for an encrypted callsign string to be
placed in the configuration file. You must send mail to
<tt>&lt;clx&lowbar;us@dl6rai.muc.de></tt> to organise this.
<tag>Contributed by:
</tag>Bernhard ("Ben") Buettner, DL6RAI
</descrip>

<sect1><heading>Single floppy disk AX.25 router.

<p>
<descrip>
<tag>Author
</tag>Alan Cox, GW4PTS, iialan@iifeak.swan.ac.uk
<tag>Description
</tag>A single floppy disk version of linux with enough software to allow
a PC to act as an AX.25/IP router.
<tag>Status
</tag>Development, not yet released.
<tag>System requirements.
</tag>As for any Linux system a 386SX class PC or better.
<tag>Detail
</tag>No detail yet.
<tag>Where and How to obtain it.
</tag>Not yet available.
<tag>Licensing/Copyright
</tag>Unknown/Undecided.
</descrip>

<sect1><heading>TNT.

<p>
<descrip>
<tag>Author
</tag>Mark Wahl, DL4YBG, DL4YBG @ DB0BLO.&num;.DEU.EU, wahlm@zelator.de
<tag>Description
</tag>A Hostmode terminal program for TNC's that support the WA8DED
hostmode protocol.
<tag>Status
</tag>Version 0.8 is reportedly stable.
<tag>System requirements
</tag>TNC supporting WA8DED hostmode protocol, serial line.
<tag>Detail
</tag>TNT is a full featured hostmode terminal program. Compiling it on Linux
is as difficult as untarring the source and typing `make'. It provides both
a `dumb' terminal and X11 version. It comes with some comprehensive
documentation which describes its features in some detail. Its main features
are:
	<descrip>
	<tag>Multiple sessions:</tag>TNT supports multiple packet radio
	connections on virtual screens that you can switch between. Each session
	window provides split screen (seperate transmit and receive text)
	operation with a status line. Commands can be entered in either a command
	session, or in any terminal session using a command key. Each of the
	virtual screens can be larger than the physical screen and can be scrolled
	around.
	<tag>Data capture, file transfer and logging:</tag>A number of options are
	available for logging received text to files. You can log transmit, receive
	or both to a log file. You can overwrite or append received data to
	existing files. You can use the `autobin' protocol to transmit or receive
	binary files.
	<tag>Remote Shell operation:</tag>You can provide a shell to remote users
	so that they can access other programs on your computer. You can also run
	a program and direct its input/output to a channel so that users can use
	it.
	<tag>Redirection of devices to a channel:</tag>TNT allows you to redirect
	input/output from a channel to a device, a modem for example.
	<tag>Umlaut conversion:</tag>TNT provides umlaut conversion if necessary.
	<tag>Remote mode:</tag>Remote users can issue command themselves if
	allowed to do so.
	<tag>Socket mode:</tag>You can configure tnt so that it opens a socket for
	users to telnet to that allows them operation just as you have from the
	console. This is useful where your linux machine is on an ethernet and you
	want other terminal on the net to have use of your radio.
	</descrip>

<tag>Where and How to obtain it.
</tag>The software is available by anonymous ftp from:
<url url="ftp://ftp.funet.fi/pub/ham/unix/packet/tntsrc08.tgz"
	name="ftp.funet.fi">. This site is mirrored at a number of places
so you will probably find it at other places as well.
<tag>Licensing/Copyright
</tag>GNU Public License. Freely redistributable, no warranty.
<tag>Contributed by:
</tag>Steffen Weinreich, DL5ZBG.
</descrip>

<sect1><heading>IPIP encapsulation daemon.

<p>
<descrip>
<tag>Name
</tag>Mike Westerhof's IPIP encapsulation daemon.
<tag>Author
</tag>Mike Westerhof KA9WSB (original code), then Bdale Garbee N3EUA (port to BSD), then Ron Atkinson N8FOW and John Paul Morrison (port to Linux), then Bdale rolled it all back together again.
<tag>Description
</tag>A daemon that will allow you to use your linux machine as an IPIP encapsulating gateway.
<tag>Status
</tag>Ron is running this code himself, and the other version have been run quite successfully.
<tag>System requirements
</tag>KISS TNC, any version of Linux supporting RAW sockets.
<tag>Detail
</tag>If you've ever used an internet gateway from your amateur packet radio you have probably been connected by an encapsulation gateway of some descpription. Most run KA9Q's NOS and DOS, but others run Unix and this daemon. It allows you to encapsulate IP within IP, so that you can 'tunnel' IP connections over the Internet. The software allows you to connect a KISS TNC to your linux machine and to have all datagrams received on it carried across the Internet to a similar gateway. Bdale has installation instructions in the package.
<tag>Where and How to obtain it.
</tag>This software is available from the
<url url="ftp:///col.hp.com/hamradio/packet/etc/ipip/ipip.tar.gz"
	name="col.hp.com"> ftp site.
<tag>Licensing/Copyright etc.
</tag>Freely distributable, though Bdale asks that if you use the code and like it you might send him a QSL card or a postcard.
<tag>Contributed by:
</tag>Ron Atkinson, N8FOW, and Bdale Garbee, N3EUA
</descrip>


<sect1><heading>AXIP encapsulation daemon.

<p>
<descrip>
<tag>Name
</tag>Mike Westerhof's AXIP encapsulation daemon.
<tag>Author
</tag>Mike Westerhof KA9WSB, ported to Linux by Ron Atkinson N8FOW.
<tag>Description
</tag>A daemon that will allow you to use your linux machine as an AXIP encapsul
ating gateway.
<tag>Status
</tag>Not properly tested, but assumed to work ok.
<tag>System requirements
</tag>KISS TNC, any version of Linux supporting RAW sockets.
<tag>Detail
</tag>This daemon is the partner to the IPIP encapsulation daemon. It allows you to encapsulate AX.25 frames in IP to carry them across the Internet. This is useful for linking AX.25 networks in remote areas. Ron has supplied a <tt>Makefile</tt> for linux, and with it the software compiled without errors on my system running a recent version kernel. Ron has also written some <tt>README</tt> files which give you the detail necessary to compile the system and the original documentation describes how to configure it.
<tag>Where and How to obtain it.
</tag>This software is available in the
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/ham/ax25ip.tar.gz"
	name="sunsite.unc.edu ham apps directory">.
<tag>Licensing/Copyright etc.
</tag>Freely distributable so long as the original copyright notice is not removed.
<tag>Contributed by:
</tag>Ron Atkinson, N8FOW
</descrip>

<sect1><heading>Ping-Pong Convers Server

<p>
<descrip>
<tag>Name
</tag>Fred Baumgartens Convers Server for Linux.
<tag>Author
</tag>Fred Baumgarten, DC6IQ, &lt;dc6iq@insu1.etec.uni-karlsruhe.de>
<tag>Description
</tag>This is a version of the convers server that allows multiple users to
simultaneously chat with each other in a round-table style conversation. It is
compatible with the NOS convers servers, but provides extra facilities such
as saving/restoring of Personal Text and Chanel Topics.
<tag>Status
</tag>In use of a number of popular convers servers, appears very stable.
<tag>System requirements.
</tag>Linux, GNU make, C compiler.
<tag>Detail.
</tag>Complete installation instructions are included in the <tt>INSTALL</tt>
file that is included in the distribution.
<tag>Where and How to obtain it.
</tag>A distribution of this software is available in the
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/ham/convers-941122.tar.gz"
	name="sunsite.unc.edu ham apps directory">. The home of the software
is at <url url="ftp://insu1.etec.uni-karlsruhe.de/pub/hamradio/convers/convers"
	name="insu1.etec.uni-karlsruhe.de ftp server">
<tag>Licensing/Copyright etc.
</tag>Presumably copyright Fred Baumgarten (not specifically stated), but some
portions appear to be free for non-commercial use and copying provided the
copyright notices stay intact.
</descrip>

<sect1><heading>AX.25 digipeater for Linux

<p>
<descrip>
<tag>Name
</tag>axdigi
<tag>Author
</tag>Craig Small vk2xlz &lt;csmall@acacia.itd.uts.edu.au>
<tag>Description
</tag>Allows Linux to digipeat across different ax.25 ports
<tag>Status
</tag>Beta release
<tag>System requirements
</tag>Requires Alan Cox AX.25 kernel support
<tag>Detail.
</tag>Allows frames to come in one port and out another using normal ax.25
digipeater methods.  Changes the digipeater callsign to the correct one for
the correct return port.
<tag>Where and How to obtain it.
</tag>
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/ham/axdigi.tgz" name="sunsite.unc.edu">
<url url="ftp://ftp.ucsd.edu/hamradio/packet/tcpip/linux/axdigi.tgz" name="ftp.ucsd.edu">
<tag>Licensing/Copyright etc.
</tag>GNU GPL
<tag>Contributed by:
</tag>Craig Small vk2xlz &lt;csmall@acacia.itd.uts.edu.au>
</descrip>

<sect1><heading>Gracilis PacketTwin kernel driver

<p>
<descrip>
<tag>Name
</tag>Gracilis PacketTwin kernel driver
<tag>Author
</tag>Craig Small vk2xlz &lt;csmall@acacia.itd.uts.edu.au>
<tag>Description
</tag>Device driver for Gracilis PackeTwin cards.
<tag>Status
</tag>Alpha test - needs some more work before it is properly released.
<tag>System requirements.
</tag>Gracilis PackeTwin card, Alan Cox's AX.25 kernel software.
<tag>Detail.
</tag>Provides kernel based driver support for the Gracilis PackeTwin card
using the kernel AX.25 code.
<tag>Where and How to obtain it.
</tag>Currently available only by email from the author.
<tag>Licensing/Copyright etc.
</tag>Restricted use by alpha testers only, general GPL release is some
months off.
<tag>Contributed by:
</tag>Craig Small vk2xlz &lt;csmall@acacia.itd.uts.edu.au>
</descrip>

<sect1><heading>RSPF Daemon

<p>
<descrip>
<tag>Name
</tag>RSPF - Radio Shortest Path First routing daemon for Linux
<tag>Author
</tag>Craig Small vk2xlz &lt;csmall@acacia.itd.uts.edu.au>
<tag>Description
</tag>An implementation of the Radio Shortest path First routing protocol
for linux. The daemon supports version 2.2 of the protocol which corrects
a lot of bugs and problems that were present in version 2.1.
<tag>Status
</tag>Alpha test - running. Current version is 0.03
<tag>System requirements.
</tag>Requires Alan Cox's kernel based AX.25 code.
<tag>Detail
</tag>This program will allow Linux to become an RSPF router.  It hopefully
addresses some of the quirks of RSPF v2.1, the version in NOS. It will also
allow remote/local queries via a tcp session.
<tag>Where and How to obtain it.
</tag>Alpha versions are available from
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/ham/" name="sunsite.unc.edu">,
<url url="ftp://ftp.ucsd.edu/hamradio/packet/tcpip/incoming/" name="ftp.ucsd.edu"> or from the author.
<tag>Licensing/Copyright
</tag>Will be covered by the GPL when formally released.
<tag>Contributed by:
</tag>Craig Small vk2xlz &lt;csmall@acacia.itd.uts.edu.au> 
</descrip>

<sect1><heading>Z8530 SCC driver.

<p> 
<descrip>
<tag>Name
</tag>generic Z8530 SCC device driver.
<tag>Author
</tag>Joerg Reuter, &lt;DL1BKE@melaten.ihf.rwth-aachen.de>
<tag>Description
</tag>A device driver to allow you to use a range of 8530 based SCC cards
under Linux.
<tag>Status
</tag>stable
<tag>System requirements.
</tag>a modern Linux kernel
<tag>Detail
</tag>The Zilog Z8530 SCC provides Synchronous/Asynchronous, HDLC, NRZI
encoding and other capabilities. There are a number of peripheral cards that
use the Z850 as the basis of their design. The driver is generic enough to be
pushed into service for just about any sort of 8530 card. The <tt>README</tt>
file that comes with the package provides detail on installation and
configuration.
<tag>Where and How to obtain it:
</tag>The driver can be obtained from:
<url url="ftp://ftp.ucsd.edu/hamradio/packet/tcpip/incoming/z8530drv-1.8.dl1bke.tar.gz" name="ftp.ucsd.edu"> for kernel versions older than 1.3.*. Kernel
version 1.3.* supports the driver in the standard distribution.
<tag>Licensing/Copyright
</tag>Gnu Public License.
</descrip>

<sect><heading>Morse Code

<p>
Software for use in conjunction with, or for facilitating Morse communication.

<sect1><heading>GW4PTS Morse trainer.

<p>
<descrip>
<tag>Author
</tag>Alan Cox, GW4PTS, iialan@iifeak.swan.ac.uk
<tag>Description
</tag>A Morse Code trainer that uses the PC internal speaker
<tag>Status
</tag>stable, works quite well, unfinished.
<tag>System requirements
</tag>Linux, any version
<tag>Detail
</tag>Alan wrote this small program in only an hour. It is quite neat,
and allows you to play morse at a range of speeds and frequencies through
the PC internal speaker. You can specify the text to be played either
from the command line, from a file, or the program is capable of generating
random character groups. As it stands you must invoke the program from a
Linux Virtual Console, as it relies on certain kernel calls to produce the
sound, and these don't work as easily from an XTerm. As it sounds each
character it lists the character in verbal form (Di, Dit, Dah etc.) to the
screen. Alan is hoping that someone will take the code and enhance it with
the features he has listed in the comments at the head of the source file.
<tag>Where and How to obtain it.
</tag>I've had a large number of responses from people seeking this code,
so I've obtained Alan's permission to make it available. You can obtain it
from <url url="ftp://sunsite.unc.edu/pub/Linux/apps/ham/GW4PTS.morse.tar.gz"
name="sunsite.unc.edu">.
<tag>Copyright/Licensing
</tag>GNU Public License 2, freely redistributable, no warranty.
</descrip>

<sect1><heading>morse (aka superiormorse)

<p>
<descrip>
<tag>Author
</tag>Joe Dellinger, Hawaii Institute of Geophysics, University of Hawaii at Manoa, joe@sep.stanford.edu, jdellinger@trc.amoco.com, joe@soest.hawaii.edu
<tag>Description
</tag>A morse-code practice program for UNIX workstations.
<tag>Status
</tag>Quite stable
<tag>System Requirements
</tag>Currently supports X11, Sun4, HP, Indigo, and Linux
<tag>Detail
</tag>Lots of features and options.  Includes a utility for generating random content QSOs, similar to those used in the FCC exams.
<tag>Where and How to obtain it:
</tag><em>morse</em> can be obtained from:
<url url="ftp://sepftp.stanford.edu/pub/UNIX&lowbar;utils/morse/morse.tar.gz"
	name="sepftp.standford.edu">.
<tag>Licensing/Copyright
</tag>Freely Redistributable
<tag>Contributed by:
</tag>Brian Suggs, AC6GV, and John Gotts, jgotts@engin.umich.edu
</descrip>

<sect><heading>AMTOR Software.

<p>
Software for use in conjunction with, or for facilitating AMTOR.


<sect><heading>PACTOR Software.

<p>
Software for use in conjunction with, or for facilitating PACTOR.

<sect><heading>Slow Scan Television Software.

<p>
Software for use in conjunction with, or for facilitating Slow Scan Television.

<sect><heading>Facsimile Software.

<p>
Software for use in conjunction with, or for facilitating Facsimile.

<sect><heading>Design and Construction Software.

<p>
Software to assist in the design and construction of amateur radio related
things. Antenna, Circuit Board, Filter, and QSL card design packages are
all good candidates for this section.

<sect1><heading>Software Oscilloscope

<p>
<descrip>
<tag>Author
</tag>Jeff Tranter, Jeff&lowbar;Tranter@Mitel.COM
<tag>Description
</tag>Scope is a simple software emulation of an oscilloscope. It graphically
displays voltage as a function of time.
<tag>Status
</tag>ALPHA. First release.
<tag>System requirements
</tag>Sound card with input capability supported by the kernel sound driver.
SVGALIB is used to do the display work.
<tag>Detail
</tag>Scope uses the <tt>/dev/dsp</tt> device to take audio in from the
soundcard and displays it on the screen in a manner similar to an oscilloscope.
Jeff claims Scope was written more for amusement value than for any serious
purpose.
<tag>Where and How to obtain it.
</tag>You can obtain source, makefile and man page for Scope from:
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/circuits/scope-0.1.tar.gz"
	name="sunsite.unc.edu">
<tag>Licensing/Copyright
</tag>GNU Public License, Freely redistributable, No warranty.
</descrip>

<sect1><heading>Printed Circuit Board design tool.

<p>
<descrip>
<tag>Author
</tag>Thomas Nau, &lt;Thomas.Nau@rz.uni-ulm.de>
<tag>Description
</tag>An X11 based interactive printed circuit board design tool.
<tag>Status
</tag>Vers 1.3, stable.
<tag>System requirements
</tag>X11 Windowing system and a recent flex program.
<tag>Detail
</tag>The pcb package comes with good instructions on how to compile and install the software. I compiled it without error under X11R6. It comes with package layouts for a range of popular components and the example layout nicely demonstrates the capabilities of the package.
<tag>Where and How to obtain it.
</tag>You can obtain the pcb package from:
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/circuits/pcb-1.3.tar.gz" name="sunsite.unc.edu"> or from:
<url url="ftp://ftp.medizin.uni-ulm.de/pub/pcb-1.3/pcb-1.3.tar.gz" name="ftp.medizin.uni-ulm.de">
<tag>Licensing/Copyright
</tag>GNU Public License
</descrip>

<sect1><heading>Chipmunk circuit design and simulation tool

<p>
<descrip>
<tag>Author
</tag>Dave Gillespie &lt;daveg@synaptics.com> and John Lazzaro &lt;lazzaro@cs.berkeley.edu>
<tag>Description
</tag>Schematic Entry and Digital or Analog Simulation.
<tag>Status
</tag>vers 5.10, stable.
<tag>System requirements
</tag>X11 windowing system and older (XFree86-2.x) libs, 8 bpp (256 color) only
<tag>Detail
</tag>I haven't tried this one out yet.
<tag>Where and How to obtain it.
</tag>You can obtain the Chipmunk package from:
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/circuits" name="sunsite.unc.edu">or <url url="ftp://ifi.uio.no/pub/" name="ifi.uio.no">.
<tag>Licensing/Copyright
</tag>Modified GNU Public License, Caltch specifically disclaimed from liability.
</descrip>

<sect1><heading>irsim

<p>
<descrip>
<tag>Author
</tag>Dmitry Teytelman, dim@leland.stanford.edu
<tag>Description
</tag>An event-driven logic-level simulator for MOS circuits
<tag>Status
</tag>Version 9.2, production.
<tag>System Requirements
</tag>X-Windows.
<tag>Detail
</tag>irsim is an X11 based simulator for MOS circuits. It has two simulation
modes, either <em>switch</em> where each transistor is modelled as a voltage
controlled switch, or <em>linear</em> where each transistor is modelled as
a resistor in series with a voltage controlled switch, and each node has a
capacitance.
<tag>Where and How to obtain it.
</tag>You can obtain irsim from:
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/circuits/irsim-9.2.linux.1.tar.gz" name="sunsite.unc.edu">.
<tag>Licensing/Copyright
</tag>Freely Redistributable
</descrip>

<sect1><heading>Spice vers. 3f4

<p>
<descrip>
<tag>Author
</tag>University of California, Berkeley, ported by Jeff@EE.Ryerson.Ca
<tag>Description
</tag>Spice is an analog circuit emulator. 
<tag>Status
</tag>Stable release.
<tag>System requirements
</tag>Unknown.
<tag>Detail
</tag>Spice allows you to design and test circuits in a computer modelled
environment to see how they will behave without having to touch a soldering
iron, or solder. A <tt>readme</tt> file comes with the package. To install I
did the following:
<tscreen><verb>
# cd /usr/src
# gzip -dc spice3f4.tar.gz | tar xvf -
# cd spice3f4
# ./utils/build linux
# ./utils/build linux install
</verb></tscreen>

<tag>Where and How to obtain it.
</tag>You can obtain version 3f4 of Spice from:
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/circuits/spice3f4.tar.gz"
	name="sunsite.unc.edu">
<tag>Licensing/Copyright
</tag>Copyright held by University California, Berkeley. Freely redistributable provided you are not unfriendly to the U.S.
</descrip>

<sect1><heading>svgafft - Spectrum analyser

<p>
<descrip>
<tag>Author
</tag>Andrew Veliath, drewvel@ayrton.eideti.com
<tag>Description
</tag>svgafft is a spectrum analyser for Linux.
<tag>Status
</tag>Alpha software, but usable.
<tag>System requirements
</tag>Linux supported sound card, svgalib, a 486DX33 or better.
<tag>Detail
</tag>svgafft uses the <tt>/dev/dsp</tt> device and currently supports 16-bit
and 8-bit sample resolution on supported Linux soundcards. It's display is
something akin to a high-end spectrum analyzer with falling peaks.
<tag>Where and How to obtain it:
</tag>Look for <tt>svgafft-0.2.tar.gz</tt> on <tt>sunsite.unc.edu</tt>
<tag>Licensing/Copyright
</tag>Unknown, check any <tt>README</tt> supplied.
</descrip>

<sect1><heading>Audio Spectrum Analyser

<p>
<descrip>
<tag>Author
</tag>Philip VanBaren, phillipv@eecs.umich.edu
<tag>Description
</tag>An audio spectrum analyser for Linux SVGALIB or X-Windows.
<tag>Status
</tag>Alpha but usable
<tag>System requirements
</tag>Linux supported sound card, svgalib or X-Windows.
<tag>Detail
</tag>freq5a1 uses the <tt>/dev/dsp</tt> device, samples the incoming
audio, performs a fast fourier transform on the data and displays the
output in either 640x480 VGA or an X-Window.
<tag>Where and How to obtain it:
</tag>You can obtain freq5a1.tar.gz from:
<url url="http://bul.eecs.umich.edu/~phillipv/signal" name="umich.edu">,
<url url="ftp://sunsite.unc.edu/pub/Linux/apps/sound/freq5a1.tar.gz" name="sunsite.unc.edu"> or by mail from the author.
<tag>Licensing/Copyright
</tag>GNU Public License vers 2.0.
</descrip>

<sect><heading>Training/Educational Software.

<p>
Software to assist in education or training for amateur radio. Morse Code
tutorials, technical examination database, Computer Based Training software,
and the like are listed here.

<sect><heading>Miscellaneous Software.

<p>
Software that didn't neatly fit into any other category.

<sect1><heading>Linux for HAMS CD-ROM

<p>
<descrip>
<tag>Author
</tag>Bruce Perens, bruce@pixar.com
<tag>Description
</tag>A complete linux distribution on CDROM specifically designed for Amateur
Radio operators.
<tag>Status
</tag>Not yet available.
<tag>System requirements.
</tag>Linux compatible hardware, some software will obviously require
specialised hardware to operate. No additional software should be required.
<tag>Detail
</tag>A complete Linux distribution specifically catering
for Amateur Radio operators. It will include a fully featured Linux installationplus a range of amateur radio specific software such as those listed in this
document. Bruce has detail and updated status report available at the
<url url="http://www.rahul.net/perens/LinuxForHams" name="LinuxForHams WWW page">.
<tag>Where and how to obtain it:
</tag>It isn't yet available, details will be made available when it is
released.
<tag>Licensing/Copyright
</tag>GNU Public License.
<tag>Contributed by:
</tag>Bruce Perens, bruce@pixar.com
</descrip>

<sect1><heading>SunClock

<p>
<descrip>
<tag>Author
</tag>John Mackin, john@cs.su.oz.AU
<tag>Description
</tag>A clock that will show you instantly what parts of the globe are
exposed by sunlight and what parts aren't.
<tag>Status
</tag>Released.
<tag>System requirements.
</tag>X-Windows.
<tag>Detail
</tag>
<em>sunclock</em> is another of those desktop gadgets that most people
think look nice but really don't have a lot of use for. I use sunclock
to obtain an at-a-glance indication of the time anywhere in the world.
In its iconic form it sits in a small Mercator projection. When maximised
it produces the same image but obviously larger with slightly more detail.
It also displays the date, local time and UTC. sunclock actually calculates
mathematically what parts of globe are sunlit and which aren't, it seems quite
accurate, so long as you assume the earth has no atmosphere.
<tag>Where and How to obtain it.
</tag>I haven't seen any precompiled sunclock binaries for Linux about, so
check your nearest <em>archie</em> server. sunclock compiled straight out of
the box for me.
<tag>Licensing/Copyright
</tag>Public Domain and may be freely copied as long as the notices at the top
of sunclock.c remain intact.
</descrip>

<sect1><heading>Xearth

<p>
<descrip>
<tag>Author
</tag>Kirk Lauritz Johnson, tuna@cag.lcs.mit.edu, modified by Dimitris Evmorfopoulos, devmorfo@cs.mtu.edu.
<tag>Description
</tag>A rotating earth for X-windows root window. It has real life shading,
and options for geostatic view, and non geostatic view. A prettier and more
modern version of <em>sunclock</em> but requires a bit more processing power.
<tag>Status
</tag>released, stable.
<tag>System requirements.
</tag>X-Windows.
<tag>Detail
</tag>
<em>xearth</em> is much like <em>sunclock</em> except that it draws a
view of the earth onto your root map in blue and green, as the earth would
be viewed from space. You have a number of options in determining the
behaviour of the view. You can either have it so that the same part of the
earth is displayed, and the sun rotates, so you'll have varying light and
shadow on the display, or you can have it shown as if you were travelling
with the sun, so the whole of the globe is visible, and the earth rotates.
You can specify the latitude/longtitude that will be the centre of the
display. <em>xearth</em> is also capable of producing <em>gif</em> and
<em>ppm</em> graphics output, so you can generate custom graphics of the globe.
When run as your root map, you can adjust the interval of time between updates.
On my 486sx25 you notice a small degradation in performance when it is
recalculating, but it's not annoying.
<tag>Where and How to obtain it.
</tag>A precompiled <em>xearth</em> binary is available from:
<bf>sunsite.unc.edu</bf>, or the source can be obtained from just about any
X11/contrib directory. Try <bf>export.lcs.mit.edu</bf> if you can't find it
elsewhere.
<tag>Licensing/Copyright
</tag>Copyright (C) 1989, 1990, 1993 by Kirk Lauritz Johnson. The copyright
notice included states that <em>xearth</em> is freely redistributable so long
as the copyright notice is left intact, and be included in documentation.
<tag>Contributed by:
</tag>Alan Cox, GW4PTS.
</descrip>

<sect><heading>Installation, Configuration, Hints and Tricks.

<p>
This section provides some detail on how to actually install and use some
of the listed software. It will also detail some solutions to some tricky
problems that you might encounter with the software.

<sect1><heading>AX.25 - Packet Radio protocol kernel software.

<p>
The <em>AX.25</em> protocol offers both connected and connectionless modes of
operation, and is used either by itself for point-point links, or to carry
other protocols such as tcp/ip and netrom.

It is similar to X.25 level 2 in structure, with some extensions to make it
more useful in the amateur radio environment.

Alan Cox has developed some kernel based AX.25 software support for Linux
and these are available in ALPHA form for you to try. Alan's code supports
KISS based TNC's (Terminal Node Controllers), the Ottawa PI card and the
Z8530 SCC driver.

The User programs contain a P.M.S. (Personal Message System), a beacon facility,
a line mode connect program, `listen' an example of how to capture all
AX.25 frames at raw interface level and programs to configure the NetRom
protocol.

Be sure to read <tt>/usr/local/ax25/README</tt> as it contains more complete
information regarding this software.

<sect2><heading>Where to obtain the AX.25 software.

<p>
The AX.25 software is comprised of two component, the kernel source and
the utility programs. As of the version 1.3.* release of Linux kernel
source the AX.25, Netrom, Z8530 SCC and PI card drivers are all included
as a standard. I strongly recommend you obtain and use the version 1.3.*
kernel source. Be warned though, this software is <bf>alpha</bf> and
may have problem that you wouldn't otherwise encounter.
<p>
You can obtain the latest kernel source from:

<bf>ftp.funet.fi</bf>
<tscreen><verb>
/pub/OS/Linux/PEOPLE/Linus/v1.3/
</verb></tscreen>

You will also need the utility programs. The latest version of those
can be found at:

<bf>ftp.ucsd.edu</bf>
<tscreen><verb>
/hamradio/packet/tcpip/incoming/ax25-utils-030.tar.gz
                            .../ax25-utils-030-patch1.gz
</verb></tscreen>


<sect2><heading>Installing the AX.25 software.

<p>
The software comes in two parts, the kernel source, and the user programs.

<sect3><heading>The kernel source.

<p>
If you are using the 1.3.* kernel source then all you have to do is build the
kernel as you would normally.

The following should be safe:

<tscreen><verb>
# cd /usr/src/linux
# make config
# make dep;make
</verb></tscreen>

Be sure to answer `yes' when you are asked if you should include the AX.25
support in the <em>make config</em> step. You will also need to answer `y'
to including SLIP if you want the AX.25 code to support a KISS TNC or if
you intend running a version of NOS on your system so you can link the two.
You will be asked if you wish to include the Z8530 driver. If you wish to
support the Ottawa PI driver then you must answer `y' when asked:
<tt>Do you want to be offered ALPHA test drivers ?</tt> and:
<tt>Other ISA cards ?</tt> then `y' when prompted:
<tt>Ottawa PI and PI/2 support</tt>.

<sect3><heading>The user programs.

<p>
To install the user programs you should try:

<tscreen><verb>
# cd /usr/local
# gzip -dc ax25-utils-030.tar.gz | tar xvvof -
# gzip -dc ax25-utils-030-patch1.gz | patch -p0
# cd ax25
</verb></tscreen>

You should then read the <tt>README</tt> file and follow its instructions.
When you are happy you are ready to compile, then do:

<tscreen><verb>
# cd /usr/local/ax25/src
# make clean
# make install
</verb></tscreen>

<sect2><heading>Configuring and using the AX.25 software.

<p>
Configuring an AX.25 port is very similar to configuring a slip device.
The AX.25 software has been designed to work with a TNC in <em>kiss</em>
mode or an Ottawa PI2 card. You will need to have the TNC preconfigured and
connected to your serial port. You can use a comms program like
<em>minicom</em> or <em>seyon</em> to configure the TNC into kiss mode if you
wish.

You use the <em>axattach</em> program in much the same way as you would use
the <em>slattach</em> program. For example:

<tscreen><verb>
# /usr/local/ax25/bin/axattach -s 4800 /dev/cua1 VK2KTJ &
</verb></tscreen>

would configure your <tt>/dev/cua1</tt> serial device to be a <em>kiss</em>
interface at 4800 bps, with the hardware address <tt>VK2KTJ</tt>.

You would then use the <em>ifconfig</em> program to configure the ip address
and netmask as for an ethernet device:

<tscreen><verb>
# /sbin/ifconfig sl0 44.136.8.5
# /sbin/ifconfig sl0 netmask 255.255.255.0
# /sbin/ifconfig sl0 broadcast 44.136.8.255
# /sbin/ifconfig sl0 arp mtu 257 up
</verb></tscreen>

To test it out, try the following:

<tscreen><verb>
/usr/local/ax25/bin/call VK2DAY via VK2RVT
</verb></tscreen>

The <em>call</em> program is a linemode terminal program for making
ax.25 calls. It recognises lines that start with `~' as command lines.
The `~.' command will close the connection.

You also need to configure some items such as the window to use. This
necessitates editing only one file. Edit the <tt>/usr/local/ax25/etc/ports</tt>
file. This is an ascii file containing one line for each AX.25 port. You must
have the entries in this file in the same order as you configure your AX.25
interfaces.

The format is as follows:

<tscreen><verb>
callsign baudrate window frequency
</verb></tscreen>

At this stage not much of this information is used, it will be picked up and
used in later developments.

Please refer to the man pages in <tt>/usr/local/ax25/man</tt> and the
<tt>README</tt> file in <tt>/usr/local/ax25</tt> for more information.

<sect1><heading>Ottawa PI/PI2 card driver.

<p>
The Ottawa PI card is a Z8530 SCC based card for IBM PC type machines that
is in common usage by Amateur Radio operators worldwide. While it is most
commonly used by Amateur Radio Operators, it could be pressed into service
in other fields where it is desirable to have the features of a Z8530. It
supports a high speed half duplex (single DMA channel) port, and a low speed
(&lt;9k6bps interrupt driven) half duplex port. The PI2 is a new version of
the card that supports an on board radio modem, and improved hardware design.

A driver for this card has been written by <tt>David Perry,
&lt;dp@hydra.carleton.edu></tt>, and is available from in the
standard linux kernel. Please refer to the AX.25 section for configuration
details.

<sect1><heading>HOWTO link NOS and the Linux kernel networking software

<p>
Many people like to run some version of NOS under Linux because it has
all of the features and facilities they are used to. Most of those people
would also like to have the NOS running on their machine capable of talking
to the Linux kernel so that they can offer some of the linux capabilities
to radio users. Brandon S. Allbery, KF8NH, contributed information to
explain how to achieve this.
<p>
Since both Linux and NOS support the slip protocol it is possible to link
the two together by creating a slip link. You could do this by using two
serial ports with a loopback cable between them, but this would be slow
and costly. Linux provides a feature that many other unix-like operating
systems provide called `pipes'. These are special pseudo devices that
look like a standard tty device to software but in fact loopback to another
pipe device. To use these pipes the first program must open the <bf>master</bf>
end of the pipe, and the open then the second program can open the
<bf>slave</bf> end of the pipe. When both ends are open the programs can
communicate with each other simply by writing characters to the pipes in the
way they would if they were terminal devices.
<p>
To use this feature to connect the Linux Kernel and a copy of NOS, or some
other program you first must chosoe a pipe device to use. You can find one
by looking in your <tt>/dev</tt> directory. The master end of the pipes are
named: <tt>ptyp[1-f]</tt> and the slave end of the pipes are known as:
<tt>ttyp[1-f]</tt>. Remember they come in pairs, so if you select
<tt>/dev/ptypf</tt> as your master end then you must use <tt>/dev/ttypf</tt>
as the slave end.
<p>
Once you have chosen a pipe device pair to use you should allocate the master
end to you linux kernel and the slave end to the NOS program, as the Linux
kernel starts first and the master end of the pipe must be opened first.
You must also remember that your Linux kernel must have a different IP address
to your NOS, so you will need to allocate a unique address for it if you
haven't already.
<p>
You configure the pipe just as if it were a serial device, so to create
the slip link from your linux kernel you can use commands similar to the
following:
<p>
<tscreen><verb>
# /sbin/slattach -s 38400 -p slip /dev/ptypf &
# /sbin/ifconfig sl0 broadcast 44.255.255.255 pointopoint 44.70.248.67 /
	mtu 1536 44.70.4.88
# /sbin/route add 44.70.248.67 sl0
# /sbin/route add -net 44.0.0.0 gw 44.70.248.67
</verb></tscreen>
<p>
In this example the Linux kernel has been given IP address <tt>44.70.4.88</tt>
and the NOS program is using IP address <tt>44.70.248.67</tt>. The
<em>route</em> command in the last line simply tells your linux kernel to route
all datagrams for the amprnet via the slip link created by the
<em>slattach</em> command. Normally you would put these commands into your
<tt>/etc/rc.d/rc.inet2</tt> file after all your other network configuration
is complete so that the slip link is created automatically when you reboot.
Note: there is no advantage in using <em>cslip</em> instead of <em>slip</em>
as it actually reduces performance because the link is only a virtual
one and occurs fast enough that having to compress the headers first takes
longer than transmitting the uncompressed datagram.
<p>
To configure the NOS end of the link you could try the following:
<p>
<tscreen><verb>
# you can call the interface anything you want; I use "linux" for convenience.
attach asy ttypf - slip linux 1024 1024 38400
route addprivate 44.70.4.88 linux
</verb></tscreen>
<p>
These commands will create a slip port named `linux' via the slave end of
the pipe device pair to your linux kernel, and a route to it to make it
work. When you have started NOS you should be able to ping and telnet to
your NOS from your Linux machine and vice versa. If not, double check that
you have made no mistakes especially that you have the addresses configured
properly and have the pipe devices around the right way.

<sect><heading>How to contribute or update an entry.

<p>
I'd like for this list to be as complete and up-to-date as possible. So I'm
keen to hear about any developments or products that I don't already know
about, or that the entry is obselete or outdated for.

What I'd like as a minimum set of requirement would be something like the
following:

<descrip>
<tag>Name
</tag>The name of the software in question.
<tag>Author
</tag>Who wrote, or ported the software. An email address, or some other means
of contacting them is also essential.
<tag>Description
</tag>A single line description of what the software does.
<tag>Status
</tag>An indication of the software's status. Is it still in testing? Is it a
production release? Is it still in the design stage?
<tag>System requirements
</tag>What does the software require to run? Does it require X-Windows? Does
it need a soundcard? Does it need a certain version of kernel? Does it need
other software to support it?
<tag>Detail
</tag>I'm not keen on including a large amount of detail on each piece of
software as this would consume a lot of time reading and trying to keep up
to date. So instead what I'd like to list is what makes this software unique,
anything special about it. Perhaps its most outstanding features, that sort of
thing.
<tag>Where and How to obtain it.
</tag>If the software is freely distributable then ftp details would be great.
If it is commercial software then the name of the company distributing the
software, and an address or telephone number. If it is available only by some
other means, say mail order, then details on where and how to obtain it.
<tag>Licensing/Copyright
</tag>Is the software Copyleft? Copyright? Shareware? Public Domain? Restricted
in use in any way?
</descrip>

Don't worry if you don't know all of these details, just send me what you do
know and I'll list what I can. I'd rather have an incomplete listing than no
listing at all.

Please mail any contributions to:

<tt>terryd@extro.ucc.su.oz.au</tt> or <tt>terry@orac.dn.itg.telecom.com.au</tt>

I'd list a packet radio address too but I'm still not properly operational
again yet after moving house.

<sect><heading>Discussion relating to Amateur Radio and Linux.

<p>
There are various places that discussion relating to Amateur Radio and Linux
take place. They take place in the <tt>comp.os.linux.*</tt> newsgroups, they
also take place on the <tt>HAMS</tt> list on <tt>niksula.hut.fi</tt>. Other
places where they are held include the <tt>tcp-group</tt> mailing list at
<tt>ucsd.edu</tt> (the home of amateur radio tcp/ip discussions), and I
believe there is an `IRC' channel that sometimes is used to discuss them as
well.

To join the Linux <bf>HAMS</bf> channel on the mail list server, send mail
to:
<tscreen><verb>
linux-activists@niksula.hut.fi
</verb></tscreen>
with the line:
<tscreen><verb>
X-Mn-Admin: join HAMS
</verb></tscreen>
at the top of the message body (not the subject line).

To join the <tt>tcp-group</tt> send mail to:
<tscreen><verb>
listserver@ucsd.edu
</verb></tscreen>
with the line:
<tscreen><verb>
subscribe tcp-group
</verb></tscreen>
in the body of the text.

<bf>Note:</bf> Please remember that the <tt>tcp-group</tt> is primarily for
discussion of the use of advanced protocols, of which tcp/ip is one, in
Amateur Radio. <em>Linux specific questions should not ordinarily go there.</em>

</article>
