About
unixcw is an umbrella project for a Linux library and for
few Linux applications related to Morse code. The
applications are:
- cw - a CW sending 'engine' that reads characters
from stdin, sounds them on either the sound card, or
the console speaker, and echoes them to stdout.
- cwgen - a simple random character generator that can
be used as a feed for cw.
- cwcp - a curses-based program that generates groups
of characters from selected sets, words, and CW
abbreviations randomly, and sounds them using libcw.
It owes much to CP222.EXE, by VU2ZAP.
- xcwcp - a CW tutor program for X Window environment.
It offers the same random and keyboard sending as
'cwcp', and in addition can read CW that is sent to it
using the keyboard or mouse as a keyer, making it
useful for sending as well as receiving practice.
The heart of the package is 'libcw'. This is a library
which, when built, offers the following basic CW services
to a caller program:
- Morse code character translation tables, and lookup
functions
- Morse code low-level timing calculations
- A 'sidetone' generation and queueing system, using
either the system sound card or the console
speaker
- Optional keying control for an external device, say
a transmitter, or an oscillator
- CW character and string send routines, tied in with
the character lookup
- CW receive routines, also tied in to the character
lookup
- Adaptive speed tracking of received CW
- An iambic keyer, with both Curtis 8044 types A and B
timing
- Straight key emulation
The library uses signals and threads to create a
background task in which to do the majority of its work,
leaving the main program free to handle other tasks. Sound
is produced on soundcard (through PulseAudio - the
default, OSS, or ALSA), or on console buzzer.
libcw is written in C for easy portability and use.
libcw, cw, and cwgen require a C compiler. cwcp requires
a C compiler and a Curses library. xcwcp requires a C++
compiler and Qt library (version 5).
Current version
Current version of unixcw is 3.6.1, which was released in
November 2023. See
News for information
about recent changes.
Screen shots
See them
here
License
unixcw is a
free
software, released under
GNU General Public License v2.0.
Developer
Kamil Ignacak, acerion at wp dot pl.
|