Return-Path: X-Spam-DCC: paranoid 1233; Body=2 Fuz1=2 Fuz2=2 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on lipkowski.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DNS_FROM_AHBL_RHSBL, HTML_MESSAGE,RATWARE_GECKO_BUILD autolearn=no version=3.1.3 Received: from post.thorcom.com (post.thorcom.com [195.171.43.25]) by paranoid.lipkowski.org (8.13.7/8.13.7) with ESMTP id tBDCfAn3016236 for ; Sun, 13 Dec 2015 13:41:10 +0100 Received: from majordom by post.thorcom.com with local (Exim 4.14) id 1a85uo-00049x-JA for rs_out_1@blacksheep.org; Sun, 13 Dec 2015 12:38:14 +0000 Received: from [195.171.43.32] (helo=relay1.thorcom.net) by post.thorcom.com with esmtp (Exim 4.14) id 1a85uo-00049o-5x for rsgb_lf_group@blacksheep.org; Sun, 13 Dec 2015 12:38:14 +0000 Received: from mout0.freenet.de ([195.4.92.90]) by relay1.thorcom.net with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.86) (envelope-from ) id 1a85to-0006zY-MJ for rsgb_lf_group@blacksheep.org; Sun, 13 Dec 2015 12:38:13 +0000 Received: from [195.4.92.142] (helo=mjail2.freenet.de) by mout0.freenet.de with esmtpa (ID dl4yhf@freenet.de) (port 25) (Exim 4.85 #1) id 1a85tb-0001kY-Rs for rsgb_lf_group@blacksheep.org; Sun, 13 Dec 2015 13:36:59 +0100 Received: from localhost ([::1]:51099 helo=mjail2.freenet.de) by mjail2.freenet.de with esmtpa (ID dl4yhf@freenet.de) (Exim 4.85 #1) id 1a85tb-0002hx-NT for rsgb_lf_group@blacksheep.org; Sun, 13 Dec 2015 13:36:59 +0100 Received: from mx5.freenet.de ([195.4.92.15]:50643) by mjail2.freenet.de with esmtpa (ID dl4yhf@freenet.de) (Exim 4.85 #1) id 1a85qI-0001Zc-Aa for rsgb_lf_group@blacksheep.org; Sun, 13 Dec 2015 13:33:34 +0100 Received: from x4d08ea1d.dyn.telefonica.de ([77.8.234.29]:51109 helo=[192.168.178.27]) by mx5.freenet.de with esmtpsa (ID dl4yhf@freenet.de) (TLSv1.2:DHE-RSA-AES128-SHA:128) (port 587) (Exim 4.85 #1) id 1a85qH-0002Nn-Sj for rsgb_lf_group@blacksheep.org; Sun, 13 Dec 2015 13:33:34 +0100 To: rsgb_lf_group@blacksheep.org References: <56686FA0.4050707@gmail.com> <56695B15.6010203@abelian.org> <56696950.1040300@abelian.org> <5669B7CE.1090601@freenet.de> <5669E1E3.6070008@abelian.org> From: =?UTF-8?Q?Wolfgang_B=c3=bcscher?= Message-ID: <566D6597.4070901@freenet.de> Date: Sun, 13 Dec 2015 13:33:27 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 MIME-Version: 1.0 In-Reply-To: X-Originated-At: 77.8.234.29!51109 X-Scan-Signature: 05df7db787776cda2726d56f546a4588 Subject: Re: LF: LF EbNaut test from JN80 on 137370 Content-Type: multipart/alternative; boundary="------------040804070003090904020705" X-SA-Exim-Scanned: Yes Sender: owner-rsgb_lf_group@blacksheep.org Precedence: bulk Reply-To: rsgb_lf_group@blacksheep.org X-Listname: rsgb_lf_group X-SA-Exim-Rcpt-To: rs_out_1@blacksheep.org X-SA-Exim-Scanned: No; SAEximRunCond expanded to false X-Scanned-By: MIMEDefang 2.56 on 10.1.3.10 Status: O X-Status: X-Keywords: X-UID: 5788 This is a multi-part message in MIME format. --------------040804070003090904020705 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Just to confirm (answer a bit late).. In a file recorded by SpectraVue (the software which came along with the SDR-IQ), with the VFO tuned to 77490 Hz, recodring DCF77 on 77500 Hz, produces a 'positive' 10 Hz baseband frequency in the I+Q wave file recorded by that software. And, as expectable for "I" ~ cos(omega*t) and "Q" ~ sin(omega*t), the phase of the signal's "I" component *leads* the "Q" component by 90 degrees. So, "all ok" with the files recorded by whatever software. Besides that, it's advisable *not* to tune the SDR exactly to the frequency of the EbNaut signal. Detune by a few Hz to avoid having the "0 Hz" component (after the downconversion, either digital or analog) inside the decoder's passband. Now back to local EbNaut testing... Have a nice sunday an a merry xmas season everyone, Wolf . Am 12.12.2015 um 13:12 schrieb Andy Talbot: > Hit send too soon on the last one > > On 12 December 2015 at 12:06, Andy Talbot > wrote: > > I've just added a fine tune to the PC prog to shift teh input > frequeny by any amount specified in a text box > > { ipI& and ipQ& are the input samples from the receiver } > > LOtheta = Val(Tuning.Text) / Fsample > LocalOsc = LocalOsc + LOtheta 'Both are normalised > frequencies (Fsample = 1) > LocalOsc = LocalOsc - Int(LocalOsc) 'Fractional > part only > theta = 2 * pi * LocalOsc > IPData(DataPointer&, 0) = ipI& * Cos(theta) - ipQ& * > Sin(theta) ' I > IPData(DataPointer&, 1) = ipQ& * Cos(theta) + ipI& * > Sin(theta) ' Q > > The effect of that is for any positive freqeuncy in Hz intereed into > Tuning.text , the spectrum plot shift positive, and conversely the > display shifts wown for any -ve value entered > > Andy G4JNT > > > > > On 10 December 2015 at 20:34, Paul Nicholson > > wrote: > > > In vlfrx-tools I use > > I = s(t) * cos( 2pi * Fo * t); > > Q = s(t) * sin( 2pi * Fo * t); > > where s(t) is the incoming signal and Fo is the > local oscillator frequency. Is that right, or > should there be a minus sign in there somewhere? > > If s(t) is VO1NA at 137370.00000 and I set Fo to > 137369.9, then when I put I and Q into EbNaut, it > needs an offset of +0.1 Hz to decode as you would > expect with the LO being 0.1Hz on the low side. > > For more general mixing and frequency shift, > to select the upper sideband of the mixer output > I use > > I - j * Q > > is that the right way round? When I take I/Q data > from an RTL2832 I find I have to invert Q to get the > correct sideband, ie I + j * Q. That's the only > independent source of I/Q signal that I have available > to try. > > -- > Paul Nicholson > -- > > > > --------------040804070003090904020705 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit Just to confirm (answer a bit late)..

In a file recorded by SpectraVue (the software which came along with the SDR-IQ),  with the VFO tuned to 77490 Hz, recodring DCF77 on 77500 Hz, produces a 'positive' 10 Hz baseband frequency in the I+Q wave file recorded by that software.
And, as expectable for "I" ~ cos(omega*t) and "Q" ~ sin(omega*t), the phase of the signal's "I" component *leads* the "Q" component by 90 degrees. So, "all ok" with the files recorded by whatever software.

Besides that, it's advisable *not* to tune the SDR exactly to the frequency of the EbNaut signal. Detune by a few Hz to avoid having the "0 Hz" component (after the downconversion, either digital or analog) inside the decoder's passband.

Now back to local EbNaut testing...

Have a nice sunday an a merry xmas season everyone,
   Wolf .


Am 12.12.2015 um 13:12 schrieb Andy Talbot:
Hit send too soon on the last one

On 12 December 2015 at 12:06, Andy Talbot <andy.g4jnt@gmail.com> wrote:
I've just added a fine tune to the PC prog to shift teh input frequeny by any amount specified in a text box
           
 
  {  ipI& and ipQ& are the input samples from the receiver  }
 
            LOtheta = Val(Tuning.Text) / Fsample  
            LocalOsc = LocalOsc + LOtheta             'Both are normalised frequencies (Fsample = 1)
            LocalOsc = LocalOsc - Int(LocalOsc)      'Fractional part only
            theta = 2 * pi * LocalOsc
  
            IPData(DataPointer&, 0) = ipI& * Cos(theta) - ipQ& * Sin(theta)       '    I
            IPData(DataPointer&, 1) = ipQ& * Cos(theta) + ipI& * Sin(theta)      '   Q

The effect of that is for any positive freqeuncy in Hz intereed into Tuning.text , the spectrum plot shift positive, and conversely the display shifts wown for any -ve value entered

Andy  G4JNT



On 10 December 2015 at 20:34, Paul Nicholson <vlf0403@abelian.org> wrote:

In vlfrx-tools I use

 I = s(t) * cos( 2pi * Fo * t);

 Q = s(t) * sin( 2pi * Fo * t);

where s(t) is the incoming signal and Fo is the
local oscillator frequency.   Is that right, or
should there be a minus sign in there somewhere?

If s(t) is VO1NA at 137370.00000 and I set Fo to
137369.9, then when I put I and Q into EbNaut, it
needs an offset of +0.1 Hz to decode as you would
expect with the LO being 0.1Hz on the low side.

For more general mixing and frequency shift,
to select the upper sideband of the mixer output
I use

   I - j * Q

is that the right way round?   When I take I/Q data
from an RTL2832 I find I have to invert Q to get the
correct sideband, ie I + j * Q.   That's the only
independent source of I/Q signal that I have available
to try.

--
Paul Nicholson
--





--------------040804070003090904020705--