AA6E Software Site
This page lists software and procedures developed at AA6E that may be of interest to the amateur radio community. Our specialty is Python-based software tailored for the Linux operating system. Source code is always provided: That's the way Python is. While the code is meant to be "pure Python" as much as possible, some adaptation to your environment may be necessary. While this software runs most easily under Linux, I am providing some tips about running Python programs under Windows. Please let me know if it is useful or if you have suggestions. Please read the fine print below.
Some of the Python code provided here is not up to date with current Python and/or Linux releases. In most cases, it will be simple for the user to make the appropriate updates. Please let me know if you have a particular interest in a specific program.
FlexControl for LInux - A sample Python program for taking data and setting LEDs on the FlexRadio Systems FlexControl. This USB knob makes a good controller for your favorite Linux device, not just for SmartSDR for Windows.
Network audio routines - afxmit.c and afrecv.c support unidirectional audio transfer over the network using UDP protocols. PortAudio and Speex are used with 8 kHz 16 bit mono sampling. The software is provided as-is (of course!) with no support available. It compiles and runs successfully on Ubuntu 12.04 (Intel 32 and 64 bit) and Ubuntu 11.10 (Beagleboard ARM v7l). See W1HQ remote for details. An article describing the remote receiver project (Martin Ewing, AA6E, "A Software-Based Remote Receiver Solution, January/February 2014, pp 3-6) has the most recent information. The code distribution for this article is at rrx code.
PyHamClock - A Python / wxPython application to display a real-time dual local / UTC clock window, suitable for Amateur Radio operations. (12/2009, 6/2011)
HAUS System - Python routines to run on Plat'Home Open Micro Server (MIPSEL architecture) in Home Automation Utilities System.
qrz.py - A Python command-line program to examine, format, and print data from the QRZ.com XML database. (QRZ account required.) I started this project because I wanted a flexible way to print mailing labels for outgoing QSL cards.
p100.py - A Python/wxWidgets program that emulates the Z100 tuning indicator. It demonstrates how to get audio data into Python, do some FFT processing, and make appropriate windows and controls. Uses the wxPython and numpy packages. Versions for OSS Audio and PortAudio.
Rigserve - A new Python-based server that provides rig-independent control of ham equipment over an IP port. Useful for local or remote control of your station. Compact, but highly extensible to new types of rigs. Currently supports Ten-Tec Orion and the Icom IC-R8500 receiver.
Tone Generator - This program turns your soundcard into a function generator, with sine-, square-, and triangular-wave outputs. Supports single or dual tones, and two soundcards.
ofilter.py - Orion Bandpass Filter: A Python/wxPython control panel that allows easy tuning of the Orion's DSP to home in on digimode signals, like PSK31. (10/07)
opsk.py - A Python control panel for PSK31 operations on the Ten-Tec Orion transceiver. Controls band selection and passband filtering. (earlier software using TK/inter.)
octl.py - This program simulates the Orion's LCD front panel on a generic "VT100" (curses) Linux terminal screen.
ot.py - This is a program that sends serial port commands to the Orion and view the responses at the most basic level.
Orion Dump/Restore Utility: odump.py (source) is a simple Python program that extracts most of the available Orion control parameters into an ASCII file. orestore.py (source) is a companion program that reloads the Orion from odump.py output. The user can easily edit odump.py to obtain a particular subset of information, as required. (Experimental, unsupported.)
The software is provided "as is" and is not warranted for any purpose. Don't bet the farm that it is going to work without bugs! Furthermore, the author is not able to guarantee support for this software, although he welcomes bug reports, comments, and suggestions.
All software is copyrighted by the author. Permission is granted to copy and adapt this software for non-commercial purposes, provided that all derived software contains the line "based in part on software from www.aa6e.net/aa6e". This software may not be re-published or re-distributed on the Internet or on any other media without permission from the author.