Getting Started with UltraMSK

This section contains information and instructions for setting up an UltraMSK receiver system.

13 Feb 2012

Installing Linux

Fedora Core UltraMSK runs on the Linux operating system. Install Linux on your computer. The Fedora Core distribution is recommended. The installation guide for Fedora Core is available here.

Installing the Jack Audio Connection Kit

JACK Logo UltraMSK uses the Jack Audio Connection Kit for data acquisition from your sound card. On Fedora Linux, Jack can be installed over the internet using yum.

[root@localhost src]# yum install jack-audio-connection-kit 
...
Installed: jack-audio-connection-kit.i386 0:0.101.1-9.fc5
Complete!
[root@localhost src]# 

Alternatively, download and install Jack directly from the source code.

Library dependencies

You can use ldd to check that all required libraries are installed. UltraMSK needs the following RPM software packages to be installed: glibc, libstdc++, jack-audio-connection-kit, openssl, libgcc and zlib.

[james@localhost UltraMSK-1.0b1]$ more /etc/redhat-release
Fedora Core release 5 (Bordeaux)
[james@localhost UltraMSK-1.0b1]$ ldd msk
        linux-gate.so.1 =>  (0x00118000)
        libm.so.6 => /lib/libm.so.6 (0x00271000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x42741000)
        libjack.so.0 => /usr/lib/libjack.so.0 (0x49615000)
        libcrypto.so.6 => /lib/libcrypto.so.6 (0x0050c000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x42733000)
        libc.so.6 => /lib/libc.so.6 (0x00136000)
        /lib/ld-linux.so.2 (0x00119000)
        librt.so.1 => /lib/librt.so.1 (0x009b2000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x002ad000)
        libdl.so.2 => /lib/libdl.so.2 (0x0026b000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00298000)
[james@localhost UltraMSK-1.0b1]$

UltraMSK options

Running msk as shown below will display a list of command line options.

[james@localhost UltraMSK-1.0b1]$ ./msk
UltraMSK. Version 1.0 beta 1. Compiled on Jun 21 2006
Copyright 2005-2006 James Brundell

Options:
-f [frequency]  : set receiver Frequency (Hz)
-b [baud rate]  : set Baud rate (default = 200 Hz)
-c [call sign]  : set station Call sign (default = MSK)
-r [resolution] : set output Resolution (default = 1.0 seconds)
-o [directory]  : set data file Output directory (default = .)
-p [input]      : set input channel for 1 PPS signal (default = 1)
-s [input]      : set input channel for VLF Signal (default = 2)
-n [name]       : specify the jackd server Name
-g [gain]       : set 1 PPS signal Gain (default = 1.0)
-d              : enable status output

The main UltraMSK command line options are -f, -b, -c and -r:

-f
sets the receiver centre frequency in Hertz eg. -f 19800, or -f 18600.000185
-b
specify the MSK baud rate. Most stations are 200 baud but some are 100 baud
-c
specify the signal call sign eg. -c NWC. The callsign is also used as the beginning of the data output file name eg. NWC20060704.txt
-r
specify the data output time resolution

Checking the GPS 1PPS signal

The -d option enables the output of the 1 PPS status information. Connect the GPS 1 PPS signal to one channel of the sound card. If necessary, use the -p option to specify the channel number.

[james@localhost UltraMSK-1.0b1]$ ./msk -f 19800 -d
% Your evaluation license will expire on 2006-08-31.
% Connected to VLF signal on input alsa_pcm:capture_2
% Connected to PPS signal on input alsa_pcm:capture_1
1152004946.009 95990.332981 -0.000100698 1 -0.999998
1152004947.009 95990.202865 1.69984e-06 1 -0.999995
1152004948.014 95990.229544 2.78753e-06 1 -0.999998
1152004949.009 95990.253993 4.58451e-06 1 -1.000000
1152004950.008 95990.275939 5.89242e-06 1 -0.999995
1152004951.012 95990.294966 6.60543e-06 1 -0.999998
% Terminating...
[james@localhost UltraMSK-1.0b1]$

Terminate using Ctrl-C. For each GPS pulse received the program outputs one line of 5 numbers. The first number is the unix time stamp of the pulse. The second number is the current estimate of sound card sampling rate. The third number is the time difference between an internally generated 1 Hz signal and the received GPS 1PPS signal. The fourth number is the number of seconds since the previous GPS pulse was received. The fifth number is the correlation coefficient of a linear fit to the phase of the GPS pulse versus frequency. This value must be very close or equal to -1.0.

Check that 1 line of numbers is output each second. UltraMSK will not function if the GPS 1 PPS signal is not correctly received. UltraMSK assumes that the rising edge of the GPS pulse is synchronized to UTC. If not then you will need to use the -g option to invert the 1 PPS signal.