LIbrary for Amateur Radio Equipment Control Applications.
 
 
 
 
 
 
Go to file
Michael Black 2f4d62709e
Added a dummy snprintf to rig_debug to allow gcc to check format strings
This found tons of errors in rig_debug statements
So this patch cleans up all the files that were producing warnings or errors
This should fix a few segfaults when running with debug turned on
2019-11-30 10:04:31 -06:00
adat Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
alinco Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
amplifiers/elecraft Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
amsat Formatted amsat/ to final coding guidelines 2017-10-08 07:08:53 -05:00
android Changed some modules to LGPL in lieu of GPL 2016-10-31 11:05:24 -05:00
aor Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
ars Clean up build system, fix test programs 2013-12-10 20:14:22 -06:00
barrett Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
bindings Enable verbose mode in bindings/pytest.py 2019-10-12 01:47:44 +02:00
c++ Fix c++ amplifier compilation 2019-10-15 09:07:19 -05:00
celestron Android build updates for monolithic build 2013-09-19 07:25:08 -05:00
cnctrk Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
doc Get rid of some blank pages in manual 2019-10-11 08:16:40 -05:00
dorji Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
drake Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
dummy Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
easycomm Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
elad Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
ether6 Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
flexradio Change freq & chan struct start/end to avoid colliding with LUA SWIG start/end 2019-08-17 23:20:48 -05:00
fodtrack Android build updates for monolithic build 2013-09-19 07:25:08 -05:00
gnuradio Changed some modules to LGPL in lieu of GPL 2016-10-31 11:05:24 -05:00
gs232a astyle gs232 files 2019-11-23 22:19:56 -06:00
heathkit Android build updates for monolithic build 2013-09-19 07:25:08 -05:00
icmarine Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
icom Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
include Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
ioptron New iOptron rotator backend 2018-12-13 15:23:46 -06:00
jrc Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
kachina Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
kenwood Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
kit Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
kylix Set FILPATHLEN to 512 instead of 100 to support longer device file names -- especially ones generated by udev 2018-04-22 19:53:50 -05:00
lib Fix termios to return timeout value when timeout occurs 2019-06-12 16:38:58 -05:00
lowe Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
m2 Android build updates for monolithic build 2013-09-19 07:25:08 -05:00
macros Update ax_python_devel.m4 macro 2017-07-23 10:52:16 -05:00
meade Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
microtune Clean up backend Makefile.am files 2013-09-16 21:51:39 -05:00
miniVNA Clean up backend Makefile.am files 2013-09-16 21:51:39 -05:00
pcr Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
perl deprecated, use swig bindings/ instead 2002-11-05 21:33:16 +00:00
prm80 Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
prosistel Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
racal Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
rft Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
rotorez Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
rs Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
sartek Android build updates for monolithic build 2013-09-19 07:25:08 -05:00
scripts Update Windows build scripts 2019-06-26 19:40:10 -05:00
skanti Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
spid Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
src Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
tapr Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
tentec Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
tests Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
ts7400 Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
tuner Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
uniden Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
winradio Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
wj Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
yaesu Added a dummy snprintf to rig_debug to allow gcc to check format strings 2019-11-30 10:04:31 -06:00
.editorconfig Add new levels: RFPOWER_METER, COMP_METER, VD_METER and ID_METER, supported at least by most of recent Icom rigs. Add level NOTCHF_RAW for manual notch frequency without specified unit for Icom rigs. Add level MONITOR_GAIN. Add functions DUAL_WATCH and DIVERSITY, supported now by K3/K3S. Fix VOXDELAY level commands for many Icom rigs. Add MONITOR_GAIN level for Icom rigs. Fix and add many K3 commands and add specific rig models for K3S, KX2 and KX3 -- they are very similar to K3, but have slight differences. Extend dump_caps output for rigctl: add complete details of ext levels and frequency ranges. Tests have been performed on IC-7000, IC-756ProIII, IC-7300, IC-7600 and K3. 2019-05-30 09:37:49 +03:00
.gitignore Add ampctl/ampctld to .gitignore 2019-08-01 22:58:27 -05:00
AUTHORS Change credits 2019-05-31 23:07:45 +03:00
Android.mk Added Meade LX200 Protocol to Rotors 2018-07-17 08:57:05 -05: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 outdated URL in ChangeLog 2014-11-30 07:51:01 -06:00
INSTALL Rename autogen.sh to bootstrap to follow GNU guidelines 2017-07-27 21:30:13 -05:00
LICENSE LICENSE: Add 2012, format for 80 columns 2012-10-05 12:46:36 -05:00
Makefile.am Fix Makefile.am 2019-06-26 11:40:41 -05:00
NEWS Add FT847UNI for early serial number units that are one-way comm 2019-01-28 15:53:28 -06:00
PLAN * cosmetic changes 2000-11-01 23:18:11 +00:00
README Updates to README files for changed library structure 2013-09-22 20:58:18 -05:00
README.betatester Rename autogen.sh to bootstrap to follow GNU guidelines 2017-07-27 21:30:13 -05:00
README.coding_style Modified coding style to Allman 2017-10-04 21:10:27 -05:00
README.developer Add first cut at amplifier control 2019-06-12 15:52:35 -05:00
README.osx Rename autogen.sh to bootstrap to follow GNU guidelines 2017-07-27 21:30:13 -05:00
README.release Rename autogen.sh to bootstrap to follow GNU guidelines 2017-07-27 21:30:13 -05:00
README.win32 Rename autogen.sh to bootstrap to follow GNU guidelines 2017-07-27 21:30:13 -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 Updates for 1.2.15 cycle 2012-02-02 20:40:55 -06:00
TODO.skeleton Initial revision 2000-07-18 20:55:08 +00:00
bootstrap Rename autogen.sh to bootstrap to follow GNU guidelines 2017-07-27 21:30:13 -05:00
configure.ac Add first cut at amplifier control 2019-06-12 15:52:35 -05:00
hamlib.m4 added quoting for newer autoconf [supplied by Thomas Klausner] 2005-09-28 21:07:59 +00:00
hamlib.pc.in Fix hardcoded pcconfig libdir 2017-09-03 12:33:00 -05:00

README

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

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 library provides functions for both radio and rotator control,
and data retrieval from the radio or rotator.  A number of functions useful
for calculating distance and bearing and grid square conversion are included.

libhamlib.so -  library that provides generic API for all RIG types.
    This is what Application programmers will "see".  Will have different
    names on other platforms, e.g. libhamlib-2.dll on MS windows.  Also
    contains all radio and rotator "backends" (formerly in their own
    dlopen'ed libraries) provided by Hamlib.

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

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

2. xxxx. 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.incremental

Where

Major:  Currently at 3, but can be advanced when changes to the API require
client programs to be rewritten to take advantage of new features of
Hamlib.  This number has advanced a couple of times throughout the life of
Hamlib.  Advancement of the major number is only for frontend API changes
that require modification of client source.  ABI compatibility is presently
maintained to prior releases so that a program linked to an earlier
1.2.Y.[Z] release will work with a later 3.Y[.Z] release without
recompiling.  Itis our intention to maintain such ABI compatibility as long
as practical.

Minor:  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 3.0) and would advance to 1
(e.g. Hamlib 3.0.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