LIbrary for Amateur Radio Equipment Control Applications.
 
 
 
 
 
 
Go to file
Nate Bargmann 8fc10c6389 Bump version string to 1.2.15~rc1 2012-01-26 09:13:19 -06:00
adat Add LGPL boilerplate to adat source files. 2012-01-20 19:48:34 -06:00
alinco Update LGPL header in Alinco source files. 2011-08-22 21:38:34 -05:00
amsat Update LGPL header in AMSAT source files. 2011-08-22 21:38:34 -05:00
aor Remove set but unused variable errors in aor. 2011-08-25 10:56:18 -05:00
ars Update LGPL header in ARS source files. 2011-08-22 21:38:34 -05:00
bindings Add ADAT ADT-200A backend 2012-01-11 23:16:41 +01:00
c++ Synchronize C++ library version with C. 2012-01-12 06:20:41 -06:00
celestron Update LGPL header in Celestron source files. 2011-08-22 21:42:45 -05:00
doc Move files into their relevant directories 2011-02-14 03:04:19 +00:00
drake Update LGPL header in Drake source files. 2011-08-22 21:38:34 -05:00
dummy Remove set but unused variable errors in dummy. 2011-08-25 11:21:05 -05:00
easycomm Update LGPL header in Easycomm source files. 2011-08-22 21:38:35 -05:00
flexradio Assure NULL terminated strings in flexradio file. 2012-01-07 21:48:05 -06:00
fodtrack Update LGPL header in Fodtrack source files. 2011-08-22 21:38:35 -05:00
gnuradio Update LGPL header in GNU Radio source files. 2011-08-22 21:38:35 -05:00
gs232a Update LGPL header in GS-232 source files. 2011-08-22 21:38:35 -05:00
heathkit Update LGPL header in Heathkit source files. 2011-08-22 21:38:35 -05:00
icom add IC-1275 2012-01-04 09:29:09 +01:00
include CM108 GPIO PTT: do not break ABI 2012-01-11 23:28:01 +01:00
jrc Update LGPL header in JRC source files. 2011-08-22 21:38:35 -05:00
kachina Update LGPL header in Kachina source files. 2011-08-22 21:38:35 -05:00
kenwood Quell compiler warning of unitialized variable. 2012-01-21 13:06:04 -06:00
kit fix bug in fifisdr_get_level(RIG_LEVEL_AGC) 2012-01-08 22:34:13 +01:00
kylix 20060718: 2006-07-18 23:06:44 +00:00
lib Update LGPL/GPL header in lib source files. 2011-08-22 21:38:36 -05:00
lowe Update LGPL header in Lowe source files. 2011-08-22 21:38:36 -05:00
m2 Remove set but unused variable errors in m2. 2011-08-26 14:06:14 -05:00
macros timersub macro needed for timing in iofunc.c for win32 2011-12-12 09:40:43 +01:00
microtune Remove "$Id:" CVS tag as it is no longer used. 2011-08-22 21:38:38 -05:00
miniVNA Update LGPL header in miniVNA source files. 2011-08-22 21:38:36 -05:00
pcr Remove set but unused variable errors in pcr. 2011-08-25 11:26:54 -05:00
perl deprecated, use swig bindings/ instead 2002-11-05 21:33:16 +00:00
prm80 Remove set but unused variable errors in prm80. 2011-08-25 12:46:07 -05:00
racal Remove set but unused variable errors in racal. 2011-08-25 13:05:35 -05:00
rft Update LGPL header in RFT source files. 2011-08-22 21:38:36 -05:00
rotorez Update LGPL header in RotorEZ source files. 2011-08-22 21:38:36 -05:00
rpcrig Assure NULL terminated strings in rpc files. 2012-01-07 20:54:49 -06:00
rpcrot Assure NULL terminated strings in rpc files. 2012-01-07 20:54:49 -06:00
rs Update LGPL header in R&S source files. 2011-08-22 21:38:36 -05:00
sartek Update LGPL header in SARtek source files. 2011-08-22 21:38:36 -05:00
scripts Generate PDF documents from test utils man pages 2011-06-21 13:38:39 -05:00
skanti Remove set but unused variable errors in skanti. 2011-08-25 12:42:01 -05:00
spid Update LGPL header in SPID source files. 2011-08-22 21:38:37 -05:00
src Quell variable set but not used warning. 2012-01-12 15:44:29 -06:00
tapr Update LGPL header in TAPR source files. 2011-08-22 21:38:37 -05:00
tentec Orion.c: remove spurious debug statement. 2011-12-30 22:07:12 -05:00
tests Remove ASCII degree symbol 2012-01-12 15:40:48 -06:00
ts7400 Update LGPL header in ts7400 source files. 2011-08-22 21:38:37 -05:00
tuner Assure NULL terminated strings in tuner files. 2012-01-07 21:52:48 -06:00
uniden Update LGPL header in Uniden source files. 2011-08-22 21:38:37 -05:00
winradio Assure NULL terminated strings in winradio file. 2012-01-07 21:55:37 -06:00
wj Update LGPL header in Watkins-Johnson source files. 2011-08-22 21:38:38 -05:00
yaesu Change ft767gx.c to RIG_STATUS_STABLE 2012-01-26 08:43:16 -06:00
.gitignore Ignore Python binding and tarball files. 2011-06-19 19:59:29 -05:00
AUTHORS Add ADAT ADT-200A backend 2012-01-11 23:16:41 +01:00
COPYING Updated GPL 2/LGPL 2.1 licenses 2011-08-22 21:38:34 -05:00
COPYING.LIB Updated GPL 2/LGPL 2.1 licenses 2011-08-22 21:38:34 -05:00
ChangeLog Update NEWS and ChangeLog for 1.2.13.1 release 2011-05-29 07:38:28 -05:00
INSTALL Update documentation. 2011-02-01 16:31:20 +00:00
LICENSE Update for current FSF address and (C) year. 2011-08-22 21:38:34 -05:00
Makefile.am Add ADAT ADT-200A backend 2012-01-11 23:16:41 +01:00
NEWS Add ADAT ADT-200A backend 2012-01-11 23:16:41 +01:00
PLAN * cosmetic changes 2000-11-01 23:18:11 +00:00
README README* files updated for purpose. 2011-06-12 22:33:28 -05:00
README.betatester README* files updated for purpose. 2011-06-12 22:33:28 -05:00
README.developer Clarify rig_debug() explanation. 2011-12-03 11:31:40 -06:00
README.release Correct typos and SF.net URIs. 2011-07-31 10:54:08 -05:00
README.win32 Add section on build-win32.sh script 2011-06-20 21:46:38 -05:00
Segfault-award Congrats Charles 2011-02-21 22:15:12 +00:00
THANKS minor changes 2008-07-14 01:31:55 +00:00
TODO misc 2004-02-16 21:44:37 +00:00
TODO.skeleton Initial revision 2000-07-18 20:55:08 +00:00
autogen.sh chmod +x autogen.sh 2011-05-31 14:57:17 +02:00
configure.ac Bump version string to 1.2.15~rc1 2012-01-26 09:13:19 -06:00
hamlib.m4 added quoting for newer autoconf [supplied by Thomas Klausner] 2005-09-28 21:07:59 +00:00
hamlib.pc.in Add Hamlib URL per pkg-config docs 2011-06-12 06:14:28 -05:00

README

Hamlib - (C) Frank Singleton 2000 (vk3fcs@ix.netcom.com)
         (C) Stephane Fillod 2000-2011
         (C) The Hamlib Group 2000-2011

The purpose of this project is to provide stable, flexible, shared libraries
that enable quicker development of Amateur Radio Equipment Control
Applications.

Many Amateur Radio Transceivers come with serial interfaces that allows
software to control the radio. This project will endeavour to provide shared
libraries that greatly simplify the application programmer's interaction
with radio equipment and other controllable devices such as rotators,
switches, etc.

Supported Radios
----------------

The Hamlib Wiki page, Supported Radios, contains a snapshot of the supported
radios at the time of the last Hamlib release.  Go to http://www.hamlib.org
to reach the Wiki.

Hamlib Design
-------------

The shared libs will provide functions for both radio control,
and data retrieval from the radio.

The structure of the libraries will be as follows.

(1)  There will be 1 frontend library "libhamlib" that
     provides the generic API for user applications.

(2)  There will be "n" backend libraries that "wrap"
     rig specific communications inside frontend API.

(3)  Frontend lib will load (on demand) the appropriate
     backend lib as required.

Frontend Library
----------------

libhamlib.so -  frontend lib that provides generic API
                for all RIG types. This is what Application
                programmers will "see".

Backend Examples are:
---------------------

1.hamlib-yaesu.so will provide connectivity to Yaesu
  FT 747GX Transceiver, FT 847 "Earth Station", etc. via a standard API.

2. hamlib-xxxx.so will provide connectivity to the Wiz-bang
   moon-melter 101A (yikes..)

Hamlib will also enable developers to develop professional looking GUI's
towards a standard control library API, and they would not have to worry
about the underlying connection towards physical hardware.

Initially serial (RS232) connectivity will be handled, but we expect that IP
(and other) connectivity will follow afterwards.  Connection via a USB port
is accomplished via the Linux kernel support.  USB to serial converters are
well supported.  Other such devices may be supported as long as they present
a serial (RS-232) interface to Hamlib.

Availability
------------

Most distributions have the latest Hamlib release in their testing or alpha
versions of their distribution.  Check your package manager for the Hamlib
version included in your distribution.

Developing with Hamlib API
--------------------------

C language API documentation is at:

        http://www.hamlib.org/index.php?title=Documentation

Take a look at tests/README for more info on simple programming examples and
test programs.

C++ programming is supported and language bindings are available for Perl,
Python, and TCL.  A network daemon utility is also available for any
programming language that supports network sockets (even netcat!).


Recompiling
-----------

Hamlib is entirely developed using GNU tools, under various Linux systems.
The library may be recompiled by the familiar "three step":

        ./configure
        make
        sudo make install

See the INSTALL file for more information.

Contributing
------------

Consult the README.betatester and README.developer files in this directory
if you feel like testing or helping with Hamlib development.

Contributions of rig specifications and protocol documentation are highly
encouraged.  Do keep in mind that in some cases the manufacturer may not
provide complete control information or it is only available under a
Non-Disclosure Agreement (NDA).  Any documentation *must* be publicly
available so we can legally write and distribute Free Software supporting a
given device.

The Hamlib team is very interested to hear from you, how Hamlib builds and
works on your system, especially on non-Linux system or non-PC systems. We
try to make Hamlib as portable as possible.

Please report in case of problems at hamlib-developer@lists.sourceforge.net
Git email formatted patches or in unified diff format are welcome!

Also, take a look at http://sourceforge.net/projects/hamlib/ Here you will
find a mail list, link to the Wiki, and the latest releases.  Feedback,
questions, etc. about Hamlib are very welcome at the mail list:

        <hamlib-developer@lists.sourceforge.net>

Hamlib Version Numbers
----------------------

Like other software projects, Hamlib uses a version numbering scheme to help
program authors and users understand which releases are compatible and which
are not.  Hamlib releases now follow the format of:

Major.minor.release.incremental

Where

Major:		Equals 1 for this C language API implementation of rig
control and won't change. Any successor that is a major code rewrite or
differing implementation would have this number advanced (not too likely).

Minor:		Currently at 2, but can be advanced when changes to the API
require client programs to be rewritten to continue to use Hamlib.  This
number has advanced a couple of times throughout the life of Hamlib.
Advancement of the minor number is only for frontend API changes that
require modification of client source.  Also indicates ABI compatibility so
that a program linked to an earlier 1.X.Y release will work with a later
1.X.Y release without recompiling.

Release:	This number advances when either new backend(s) or new rig
model(s) to existing backend(s) are added.  Advancing this number informs
client program authors (and users of those programs) that new model/backend
support has been added.  Will also include bug fixes since the last
Incremental release.

Incremental:	May be undefined (e.g. Hamlib 1.2.14) and would advance to 1
(e.g. Hamlib 1.2.14.1) for any bug fixes or feature additions to existing
model(s) or backend(s), then to 2, etc.  New rig models or backends are not
included in Incremental.  When Release is advanced, Incremental will reset
to undefined and will not be included as part of the version number.

Release schedule
----------------

Hamlib has in the past maintained a "ready when it's ready" philosophy.
However, given that much of the Linux user base is now influenced by the
Ubuntu distribution and its timed six month release schedule, Hamlib
releases will be scheduled in advance of Ubuntu releases.  Planned release
dates for Hamlib are now 1 February and 1 August of each calendar year.
Between those dates various Incremental releases will occur as development
warrants.


Have Fun / Frank S / Stephane F / The Hamlib Group

  73's de vk3fcs/km5ws / f8cfe