Return-Path: X-Spam-DCC: paranoid 1233; Body=3 Fuz1=3 Fuz2=3 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on lipkowski.org X-Spam-Level: X-Spam-Status: No, score=-0.2 required=5.0 tests=BAYES_00,DNS_FROM_AHBL_RHSBL, HTML_40_50,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 t8SDCnEO003713 for ; Mon, 28 Sep 2015 15:12:49 +0200 Received: from majordom by post.thorcom.com with local (Exim 4.14) id 1ZgYBZ-0005KH-QA for rs_out_1@blacksheep.org; Mon, 28 Sep 2015 14:09:41 +0100 Received: from [195.171.43.32] (helo=relay1.thorcom.net) by post.thorcom.com with esmtp (Exim 4.14) id 1ZgYBZ-0005K8-2p for rsgb_lf_group@blacksheep.org; Mon, 28 Sep 2015 14:09:41 +0100 Received: from mailfe05.swip.net ([212.247.154.129] helo=swip.net) by relay1.thorcom.net with esmtp (Exim 4.86) (envelope-from ) id 1ZgYAU-0001st-Mk for rsgb_lf_group@blacksheep.org; Mon, 28 Sep 2015 14:09:39 +0100 X-T2-Spam-Status: No, hits=-1.8 required=5.0 tests=BAYES_00, HTML_MESSAGE Received: from [81.227.25.191] (account cxu-dcw-tyr@tele2.se HELO [192.168.1.6]) by mailfe05.swip.net (CommuniGate Pro SMTP 5.4.4) with ESMTPSA id 619985713 for rsgb_lf_group@blacksheep.org; Mon, 28 Sep 2015 15:08:13 +0200 To: rsgb_lf_group@blacksheep.org References: <5601EC9F.2010607@gmail.com> <56059B48.80606@freenet.de> <56069AD1.4040303@abelian.org> <56091C59.5010205@tele2.se> From: Johan Bodin Message-ID: <56093BBC.9090104@tele2.se> Date: Mon, 28 Sep 2015 15:08:12 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: X-HELO-Warning: Remote host 212.247.154.129 (mailfe05.swip.net) used invalid HELO/EHLO swip.net - verification failed X-Scan-Signature: f272f529d93cf3b022625120e4e7d666 Subject: Re: LF: Coherent BPSK on LF using EbNaut Content-Type: multipart/alternative; boundary="------------070309070503030701000908" 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: 4181 This is a multi-part message in MIME format. --------------070309070503030701000908 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Aha... Thanks Andy. I assume that the second -S2 in your expression of Q is a typo. If changed to -S3 it all makes sense and the mixing with a quadrature LO at Fs/4 becomes clear. It was something like this I had in mind. This is of course possible to do directly at RF but now I see that downconversion to a low IF before this process is a better idea since it doesn't require heavy decimation of a signal with ridiculous Fs / BW ratio and it stays away from 1/f noise in analog parts as well. I was thinking along the lines of a QSD when I suggested the simple sampling sequence I, Q, -I -Q. There is no doubt that the hardware QSD *does* work although the samples are not instantaneous but rather averaged over a 1/4 LO cycle in the 4 LPFs of the QSD. Without thinking too much, I had the feeling that a narrow BPF ahead of the ADC would "smear" the signal in the time domain and produce a similar result in the ADC case... Interesting anyway. 73 Johan SM6LKM Andy Talbot wrote: > No, this doesn't work as the sampling of the I and Q information must > be simultaneous. Doing it your way, they are offset by a cycle of Fc > > In fact, I had this very discussion with G3PLX back in 1997 as I was > looking at doing it all in one of the early PICs around then (the old > 16C71 device). His suggestion was to do the following: > > Sample a signal centred on 1kHz at 4kHz sampling rate and number > successive samples S1, S2, S3 and S4, repeating after the four. > > Construct the two values I = S1 + S2 - S3 - S4 and Q = S1 - S2 - > S2 + S4. This has the effect of multiplying the 4kHz sampled waveform > by two 1000Hz SQUARE waves and mixes the signal to baseband centred > on 1000Hz input with a final sampling rate of 1kHz. > > Forming this sum of four samples is a decimation of the base sampling > rate from 4kHz to 1kHz . Normally decimation requires the input to be > pre-filtered to suit the output sampling rate, and this can't be done > on the chip. > > But if the baseband is externally limited to the range 750 to 1250Hzit > will prevent and aliasing. > Back then that was done by using a receiver in CW mode with its 300Hz > filter to guarantee a bandpass filtered 1kHz tone. > > It worked quite well, considering the rather average 8 bit A/D inside > the early PIC devices, and allowed me to measure the phase of off air > signals like MSF and others with remarkable success. > The receiver was an RA1792 with external reference driven from a > caesium standard. I subsequently got rid of that Rx, and don't > actually have any HF receiver that can be locked to a reference. > Hence the thoughts about doing accustom LF one for low bandwidth > signals. I do still have the Cs standard, but to avoid wearing out > the tube (which is still healthy) leave it in free-run mode with just > its OCXO operational until needed. It only takes about 1.5 - 2 hours > to warm up to full operation. The OCXO alone is almost as good as a > rubidium standard, provided I adjust it slightly for summer / winter > mean temperatures > > Andy G4JNT > > > On 28 September 2015 at 11:54, Johan Bodin > wrote: > > Is it really necessary to mix down to baseband before doing the > A/D conversion? Wouldn't direct sampling with fs = four times the > carrier frequency do the trick? I think that an I/Q signal at zero > beat could be constructed by combining the A/D samples: Sample #1 > = +I, Sample #2 = +Q, Sample #3 = -I, sample #4 = -Q and then the > cycle repeats. Combined with bandpass preselection, it will work > much like a Softrock style "QSD". Pseudocode: > > for (;;) > { > i = adc_measure(); > q = adc_measure(); > i -= adc_measure(); > q += adc_measure(); > decimate_to_slightly_above_2x_baseband_BW_and_useTheSignal (i, q); > } > > The LO simply clocks the ADC instead of driving a mixer. No big > deal for a modern ADC on LF and below (frequency-wise...). > > A nice side effect is that the need for baseband amplification is > removed and the problems with close-to-dc amplifier 1/f noise > disappears. > > Will it work? > > 73 > Johan SM6LKM > > Andy Talbot wrote: >> Yessss... >> Hadn't appreciated that was what it was doing until I read the >> description in more detail. I suppose that if soundcards are >> going to be used as the interface some sort of locking will have >> to be used. G3PLX used his clicklock technique for phase >> coherency, where the 1 PPS is bled into the receive path. You go >> one further and mix in the NMEA stream audio as well for time >> stamping. A neat solution to making use of what is really >> unsuitable hardware. Soundcards really aren't precision >> measurement tools ! >> >> It may be time to revisit the LF receiver in that case. >> Something like a direct I/Q downconversion from LF to baseband, >> low pass filtering then I/Q sampling into an A/D at something >> like 1kHz (or even lower), sending the resulting samples to a PC >> using a basic USB (or even a COM ) port. Then for backwards >> compatibility adding in the GPS timestamp information in the same >> way . >> >> Getting a certain sense of Deja-vue here. Back when LF was >> new, and soundcards were rarely used for radio and GPS receivers >> rare, I did start to build a custom LF Rx doing just this >> technique and managed to receive coherent carriers from such as >> MSF and the Swiss one and see how their phase shifted with the >> ionosphere. For freqeuncy reference I used my caesium standard. >> But it never went anywhere long term on 73 & 137kHz because a) >> PC technology moved faster and everyone else was adopting >> soundcard ideas and b) The PIC processors I was using were >> still new than and had pretty basic functionality making >> everything hard work and c) no one seemed bothered since QRSS >> has just become widely popular and they all used that mode. >> N >> ow, nearly 20 years later, the direct conversion LF receiver >> (Softrock type perhaps) and a new generation of processor chips >> make the job a lot easier. >> DDS or Fract-N synth LO, Quadrature mixer, simple (just analogue >> perhaps) low pass filter, dual A/D , PIC, PC interface >> >> >> Andy G4JNT >> >> >> >> On 26 September 2015 at 14:17, Paul Nicholson >> > wrote: >> >> >> Very nice to see this working at LF with short symbols. >> The phase was stable enough for the 20 or so minutes of each >> transmission on this path of circa 1000km. >> >> S/N of IZ7SLZ at DF6NM suggests that a contact would not have >> been possible (at this symbol rate and signal strength) without >> using coherent detection - it would be a few dB too weak. >> >> The phase looks pretty steady. The ionosphere and the local >> oscillators are both looking very good here. I wonder how >> long the phase can keep stable for - or in other words, the >> max message duration? >> >> A fine achievement, well done to both. It's great to see a >> two-way contact using this mode and this demonstration that >> it works at LF opens up some interesting possibilities. >> >> Andy Talbot wrote: >> >> > Unfortunately, I see it is not standalone, and requires >> > Spectrum lab to act as the audio "front end" ... >> >> Spectrum Lab in fact does most of the work: Digitising >> the audio, frequency shifting and the delicate business of >> resampling with reference to GPS pulses so that each audio >> sample is UT synchronous and at a constant sample rate. >> Then there is filtering and if necessary, noise (sferic) >> blanking. SL even handles the decoding of GPS messages so >> that it can accurately time the reception. After all that, >> ebnaut is just a small 'back-end' decoder. >> >> This mode is not easy to use. It requires some technical >> skill to arrange atomic quality reference oscillators at >> each end and to get the software set up correctly. >> >> For those that can rise to the challenge, the potential gain >> is several dB over any other mode on paths where the phase >> is fairly stable for the duration of a transmission. >> >> Coherent BPSK has been used for amateur satellites and packet >> networks, for a long time. These applications extract a >> reference phase from the received signal (using a Costas loop >> or equivalent). EbNaut works even when the signal is too weak >> to extract a reference phase. >> >> More info at >> >> http://abelian.org/ebnaut/ >> >> -- >> Paul Nicholson >> -- >> >> > > --------------070309070503030701000908 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit Aha... Thanks Andy.

I assume that the second -S2 in your expression of Q is a typo. If changed to -S3 it all makes sense and the mixing with a quadrature LO at Fs/4 becomes clear. It was something like this I had in mind. This is of course possible to do directly at RF but now I see that downconversion to a low IF before this process is a better idea since it doesn't require heavy decimation of a signal with ridiculous Fs / BW ratio and it stays away from 1/f noise in analog parts as well.

I was thinking along the lines of a QSD when I suggested the simple sampling sequence I, Q, -I -Q. There is no doubt that the hardware QSD *does* work although the samples are not instantaneous but rather averaged over a 1/4 LO cycle in the 4 LPFs of the QSD. Without thinking too much, I had the feeling that a narrow BPF ahead of the ADC would "smear" the signal in the time domain and produce a similar result in the ADC case...

Interesting anyway.

73
Johan SM6LKM

Andy Talbot wrote:
No, this doesn't work as the sampling of the I and Q information must be simultaneous.   Doing it your way, they are offset by a cycle of Fc

In fact, I had this very discussion with G3PLX back in 1997 as I was looking at doing it all in one of the early PICs around then (the old 16C71 device).    His suggestion was to do the following:

Sample a signal centred on 1kHz at 4kHz sampling rate and number successive samples S1, S2, S3 and S4, repeating after the four.

Construct the two values  I = S1 + S2 - S3 - S4   and  Q = S1 - S2 - S2 + S4.  This has the effect of multiplying the 4kHz sampled waveform by two 1000Hz SQUARE waves and mixes the signal to baseband  centred on 1000Hz input with a final sampling rate of 1kHz.

Forming this sum of four samples is a decimation of the base sampling rate from 4kHz to 1kHz .  Normally decimation requires the input to be pre-filtered to suit the output sampling rate, and this can't be done on the chip.

But if the baseband is externally limited to the range 750 to 1250Hzit will prevent and aliasing.  
Back then that was done by using a receiver in CW mode with its 300Hz filter to guarantee a bandpass filtered 1kHz tone.

It worked quite well, considering the rather average 8 bit A/D inside the early PIC devices, and allowed me to measure the phase of off air signals like MSF and others with remarkable success. 
The receiver was an RA1792 with external reference driven from a caesium standard.  I subsequently got rid of that Rx, and don't actually have any HF receiver that can be locked to a reference.  Hence the thoughts about doing  accustom LF one for low bandwidth signals.  I do still have the Cs standard, but to avoid wearing out the tube (which is still healthy) leave it in free-run mode with just its OCXO operational until needed.  It only takes about 1.5 - 2 hours to warm up to full operation.   The OCXO alone is almost as good as a rubidium standard, provided I adjust it slightly for summer / winter mean temperatures

Andy  G4JNT


On 28 September 2015 at 11:54, Johan Bodin <jhbodin@tele2.se> wrote:
Is it really necessary to mix down to baseband before doing the A/D conversion? Wouldn't direct sampling with fs =  four times the carrier frequency do the trick? I think that an I/Q signal at zero beat could be constructed by combining the A/D samples: Sample #1 = +I, Sample #2 = +Q, Sample #3 = -I, sample #4 = -Q and then the cycle repeats. Combined with bandpass preselection, it will work much like a Softrock style "QSD". Pseudocode:

for (;;)
{
  i = adc_measure();
  q = adc_measure();
  i -= adc_measure();
  q += adc_measure();
  decimate_to_slightly_above_2x_baseband_BW_and_useTheSignal (i, q);
}

The LO simply clocks the ADC instead of driving a mixer. No big deal for a modern ADC on LF and below (frequency-wise...).

A nice side effect is that the need for baseband amplification is removed and the problems with close-to-dc amplifier 1/f noise disappears.

Will it work?

73
Johan SM6LKM

Andy Talbot wrote:
Yessss...
Hadn't appreciated that was what it was doing until I read the description in more detail.   I suppose that if soundcards are going to be used as the interface some sort of locking will have to be used.   G3PLX used his clicklock technique for phase coherency, where the 1 PPS is bled into the receive path. You go one further and mix in the  NMEA stream audio as well for time stamping.   A neat solution to making use of what is really unsuitable hardware.  Soundcards really aren't precision measurement tools !

It may be time to revisit the LF receiver in that case.    Something like a direct I/Q downconversion from LF to baseband, low pass filtering  then I/Q sampling into an A/D at something like 1kHz (or even lower), sending the resulting samples to a PC using a basic USB (or even a COM ) port.  Then for backwards compatibility adding in the GPS timestamp information in the same way .

Getting a certain sense of Deja-vue here.    Back when LF was new, and soundcards were rarely used for radio and GPS receivers rare, I did start to build a custom LF Rx doing just this technique and managed to receive coherent carriers from such as MSF and the Swiss one and see how their phase shifted with the ionosphere. For freqeuncy reference I used my caesium standard.    But it never went anywhere long term on 73 & 137kHz because a) PC technology moved faster and everyone else was adopting soundcard ideas and b)  The PIC processors I was using  were still new than and had pretty basic functionality making everything hard work  and c) no one seemed bothered since QRSS has just become widely popular and they all used that mode.
N
ow, nearly 20 years later, the direct conversion LF receiver (Softrock type perhaps) and a new generation of processor chips make the job a lot easier.   
DDS or Fract-N synth LO, Quadrature mixer, simple (just analogue perhaps) low pass filter, dual A/D , PIC, PC interface


Andy  G4JNT 



On 26 September 2015 at 14:17, Paul Nicholson <vlf0403@abelian.org> wrote:

Very nice to see this working at LF with short symbols.
The phase was stable enough for the 20 or so minutes of each
transmission on this path of circa 1000km.

S/N of IZ7SLZ at DF6NM suggests that a contact would not have
been possible (at this symbol rate and signal strength) without
using coherent detection - it would be a few dB too weak.

The phase looks pretty steady.  The ionosphere and the local
oscillators are both looking very good here.  I wonder how
long the phase can keep stable for - or in other words, the
max message duration?

A fine achievement, well done to both.  It's great to see a
two-way contact using this mode and this demonstration that
it works at LF opens up some interesting possibilities.

Andy Talbot wrote:

> Unfortunately, I see it is not standalone, and requires
> Spectrum lab to act as the audio "front end" ...

Spectrum Lab in fact does most of the work:  Digitising
the audio, frequency shifting and the delicate business of
resampling with reference to GPS pulses so that each audio
sample is UT synchronous and at a constant sample rate.
Then there is filtering and if necessary, noise (sferic)
blanking.  SL even handles the decoding of GPS messages so
that it can accurately time the reception.  After all that,
ebnaut is just a small 'back-end' decoder.

This mode is not easy to use.  It requires some technical
skill to arrange atomic quality reference oscillators at
each end and to get the software set up correctly.

For those that can rise to the challenge, the potential gain
is several dB over any other mode on paths where the phase
is fairly stable for the duration of a transmission.

Coherent BPSK has been used for amateur satellites and packet
networks, for a long time.  These applications extract a
reference phase from the received signal (using a Costas loop
or equivalent).  EbNaut works even when the signal is too weak
to extract a reference phase.

More info at

 http://abelian.org/ebnaut/

--
Paul Nicholson
--





--------------070309070503030701000908--