Return to KLUBNL.PL main page

rsgb_lf_group
[Top] [All Lists]

Re: LF: VLF NA Ebnaut

To: [email protected]
Subject: Re: LF: VLF NA Ebnaut
From: Paul Nicholson <[email protected]>
Date: Sun, 31 Dec 2017 16:13:21 +0000
Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=abelian.org ; s=default; h=Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID :Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To: Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe :List-Post:List-Owner:List-Archive; bh=hz/8U40fk7e295tgUKqhG4H9U0WGx+94j5SLU7P4+B4=; b=RhzXmoyqd+O2L4ygIrVnhpQHN+ OA/IFO30H+yOUe7icHtkhumFoxMROH58C1CbQ4OFWBPJrdTs5sDfwuUjA+rkeO5IuOg30qs24WcY6 PC3NBtlwmNvuPCEXg0HZWriVqxWWvo8PEih0Jafn1QG3Jf1wY/SdBBi7AmNvkQ3ttm38=;
In-reply-to: <CAC+C6w4edBSyO+B+YEq5AhGZtqdYCovJ1PN2ts=haQ6XLFSgFQ@mail.gmail.com>
References: <[email protected]> <[email protected]> <[email protected]> <[email protected]> <CAC+C6w4_aRNHoigGPN3GjnbN+v=Pasm7nT-kxO4fWKbW0iB72w@mail.gmail.com> <CAC+C6w4edBSyO+B+YEq5AhGZtqdYCovJ1PN2ts=haQ6XLFSgFQ@mail.gmail.com>
Reply-to: [email protected]
Sender: [email protected]
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
Domenico wrote:

> can you suggest us some commands for stacking  vlfrx-tools
> raw audio

The script I use is attached, save it to your working directory
and make executable with

 chmod +x stack

First I'll describe how to phase shift.

Assume you've extracted each repeat and mixed down to base
band at a low sample rate, eg with some command like

 for day in 27 28 29 30
 do

    vtread -T 2017-12-${day}_22:30,+27900 /raw | # Retrieve signal
      vtcat -p |                      # Pad over any timing breaks
      vtfilter -h bp,f=8270,w=3000 |      # Filter before blanking
      vtblank -a12 -d0 -t100 -v |      # Typical nighttime options
      vtmult -f 8269.9 |                    # Mix down to baseband
      vtresample -r 240 | vtresample -r1 > w4dex-${day}.vt

 done

You end up with a set of files:

  w4dex-27.vt w4dex-28.vt, w4dex-29.vt, w4dex-30.vt

each containing two channels, I and Q with the signal at
zero frequency.

You don't usually have to adjust phase but in this case the
transmitted phase changed from night to night so we need to
change the phase of three of the files so they all share
the same phase.  Let's leave the 27th with its original
phase and adjust 28, 29, and 30 to match.  The required
adjustments are:

 28: +118 deg
 29: +236 deg
 30: +260 deg

Run each of the three files through vtmix, with the coefficients
calculated by awk.  Eg for the 28th,

 angle=118

 mix=`awk -v "A=$angle" 'BEGIN{
   sinA = sin( A * 3.14159/180)
   cosA = cos( A * 3.14159/180)
   printf( "-c %.3e,%.3e -c %.3e,%.3e\n", cosA, sinA, -sinA, cosA);
 }'`

 vtmix $mix < w4dex-28.vt > w4dex-28.pt

where I'm using .pt to stand for the phase shifted version.

Now stack the four files using the script:

 ./stack w4dex-27.vt w4dex-28.pt, w4dex-29.pt, w4dex-30.pt > stack.vt

Then you can just decode stack.vt in the normal way:

 vtraw -oa stack.vt |
  ebnaut -dp16K21A -r1 -S30 -k20 -N3 -PU -L500000 -v

Of course, there isn't as much typing as it looks.  Anything you run
more than once or twice you'll type into a text file and make it
executable with chmod +x so that you can run that file as a command.
You soon end up with a nice suite of signal processing scripts to
make everything quick and easy and reliable.

Oh, if the decode fails, try weighting with power instead of
amplitude:

 ./stack -p w4dex-27.vt ... > stack.vt

and/or try a -a option to ebnaut:

 ebnaut -dp16K21A -r1 -S30 -k20 -N3 -PU -L500000 -v -a 50

--
Paul Nicholson
--

Attachment: stack
Description: Text document

<Prev in Thread] Current Thread [Next in Thread>