KA9Q software

The KA9Q-Radio Package is a set of software modules which controls SDR front ends like the RX888MKII, take the data stream of these front ends and processes it into base band (pcm or iq) streams for audio. It has many software modules around the core software to compress data, to decode data. and to make the streams available for the users by means of multicast channels.

If you even think of using this software package, start with reading Phil Karn's 'internal commit'.

Get it here.

 

The package is based on modular software programs, and we use in our websdr and wspr design several programs.

In this page we discuss a few programs which we need for our design, but there is a lot more available. And a lot of documentation is available on the internet.

The front end software:

There is quite a lot of hardware supported by the software modules, but we only use the one to support the RX888MKII radio.

This software drives the RX888MKII and is taking the data stream coming from the ad-convertor. In the config file for the radio (later discussed in detail) we select a sample rate of 64800000 s/s. This results in a digital signal with a bandwidth of little over 30MHz. It results in a data stream of over 1 Gb/s. Therefor the usb cable should be of good quality and at least USB-3.

 

This huge data stream is handed over to the workhorse of the software modules, i.e. radiod. Radiod uses a config file, where all operational parameters are defined. This config file is discussed later in detail. The program does a FFT on the incoming stream, demodulates one or more channels and emits base band as multicast RTP/UDP or I/Q streams. Each stream gets a multicast ip address and in the config file you give it a name. You can pick names as you like. The bands have to be defined in the config file. Each band sends status info and accepts control  commands via separate channels. The block size which is used for the FFT is 20ms, which is important for the signal latency (to be discussed later).

All these features are heavily used in our design for the websdr and the wspr spotting.

 

There are several demodulators, of which we use only one, the linear demodulator. These demodulators are configured again in the config file, and do SSB, CW, AM.

It is clear that the config file is important to let the software do what you want, so we go into that a bit more.

go to the next page: The radiod config file