I ran last night's signal through vtmatch. First I retrieve
14 hours of signal and mix down to baseband I/Q at 100 samples/sec.
vtread -T2015-12-01_19:00,2015-12-02_09:00 /raw |
vtmult -f 2777 | # 137.777 kHz is at 2777 Hz in /raw
vtresample -r 100 > v9.vt
The file v9.vt is two channels, ch1 = I, ch2 = Q.
Then I create a template for matching, using the known message,
echo VO1NA |
ebnaut -e -r100 -S2 -p8K19A -N5 |
awk '{print $1}' > ref9.txt
ref9.txt is just a single column of sample values, 1024 seconds
long.
Then
vtmatch -t ref9.txt v9.vt | vtplot -gs 2000,480
produces
http://abelian.org/vlf/tmp/151202a.gif
in which I is the top channel and Q is below and the time axis
is seconds from 2015-12-01 19:00.
Each spike is a VO1NA message at half-hour intervals. Some spikes
are +I, others -Q, and some are a mix. That means the phase isn't
being preserved from one message to the next.
The little spike in both channels at offset 3600 seconds is
the 20:00 message which gave Eb/N0 = 3.4 dB. Messages that
decode below about 1 or 2dB are not really visible on the
cross-correlation. They might be if I knew the phase and
rotated I/Q to put the signal all into one channel.
I'll upload a new vtmatch.c just as soon as I've persuaded it
to pass its regression tests.
--
Paul Nicholson
--
|