Return to KLUBNL.PL main page

rsgb_lf_group
[Top] [All Lists]

LF: Re: [rsgb_lf_group] Coherent receivers and EbNaut

To: [email protected], [email protected]
Subject: LF: Re: [rsgb_lf_group] Coherent receivers and EbNaut
From: Wolfgang Büscher <[email protected]>
Date: Sun, 8 Nov 2015 17:10:56 +0100
In-reply-to: <CAA8k23Qtq4Wm2Z-qzx=9o=n909ZekEkWwT3UCXDxw0_ysGSnUA@mail.gmail.com>
References: <CAA8k23Qtq4Wm2Z-qzx=9o=n909ZekEkWwT3UCXDxw0_ysGSnUA@mail.gmail.com>
Reply-to: [email protected]
Sender: [email protected]
User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0
Hello Andy,

The wave files written by Spectrum Lab are indeed decimate I/Q pairs (camouflaged as a stereo wave file). Since the sampling rate (etc) in the header don't allow the required precision (number of decimals), the file contains an extra 'chunk header' (or whatever they call it in the file specification).

http://www.qsl.net/dl4yhf/speclab/wavfiles.htm#extra_wave_header_chunks

Actually, that extra 'chunk' (header) with the pattern "inf1" is just an ASCII string which is easily parseable and writeable. Almost all parts of the string are optional, except (for this application) "sr" = sampling rate and "rf" = radio frequency, and -I think- "ut"= unix timestamp.

>>>
* sr=* precise sampling rate (samples per second), "measured" or "calibrated". *rf=* radio frequency (useful if the recording contains downconverted, decimated I/Q samples).
*ut=* Unix timestamp (seconds elapsed since 1970-01-01 00:00:00 UTC)
*glat=* geographic latitude in degrees, positive north, negative south.
*glon=* geographic longitude in degrees, positive east, negative west.
*masl=* GPS height in meters above sea level. Only valid (and non-zero) if a GPS receiver is connected and operating .
*kmh=* GPS speed in kilometers per hour .
<<<

Maybe Paul can confirm which of those tokens are really required. The GPS data certainly not :-)

Cheers,
  Wolf .


Am 08.11.2015 um 16:57 schrieb Andy Talbot [email protected] [rsgb_lf_group]:


Although my query is specifically with the authors of EbNaut and Speclab. posting via the two LF groups so everyone can join in:

I now have a completely locked narrowband digital receiver that delivers 12 bit I/Q samples at 1kHz sampling rate on an RS422 interface to a PC. The data packets also carry a timestamp carrying date / time accurate to 1ms (the sample rate).

PS software is written so far to take this, filter and decimate the samples to get to a resulting output sampling rate that can be as low as 0.24Hz with a corresponding signal bandwidth of 0.05Hz.

So far all I do is plot them, but now is the time to decide how to write them to a .WAV file for reading by EbNaut Rx software. So the following questions arise :

How are slow sampling rates stored in a .WAV file? Clearly I/Q samples are stored as stereo pairs, but what information is placed in the .WAV file header? For example, the sampling rate can't be in there as a .WAV header holds that as an integer. Similar arguments apply to other values held in the header.

I believe the timestamp of the start of the recording reflects in the file name.

And - if I publish the serial protocol, would it be feasible for Ebnaut to be modified to accept the data directly?

As for the digital receiver :

It consists of a Finningley Dongle (almost the same as a Softrock) operating from 20khz to 500kHz. The LO comes from an AD9852 DDS chosen as it has 48 bit registers so allowing more accurate frequency setting than the 32 bits of AD9850 type. That is tuned via a rotary encoder / LCD in 0.01Hz steps, the DDS clock is 10MHz direct from a master reference. The receiver delivers I/Q IF at 1kHz to a downcoverting quadrature digitiser via a simple CR phasing network

The digitiser is a 16F819 pic sampling the 1kHz input at 4kHz, then generating S! + S2 - S3 - S4 and S1 - S2 - S3 + S4, forming into packets and sending via a RS422 driver. At start up the PIC reads NMEA data from a GPS, and sets internal clock registers. These are then updated by th ePIC firmware itself, and synchronised to the 1 PPS signal so the timestamps are applied to the output stream exactly. A 1kHz opamp bandpass filter on the input does the anti-aliasing necessary. Bandwidth is about 60Hz.

All will be written up in due course....

The plot below, if it passes though one or both reflector / group, is a two hour plot of the MSF60kHz signal. you can see the decimation and averaging values on the screen. The upwards phase shift over the latter third is either, my VE2ZAZ GPSDO doing a correction. or a genuine propagation artefact of the 60kHz signal as dusk falls . I suspect the former as, technically, the sun is still up at 1555z as I write this!

If it fails to get through, the image can be found at http://www.g4jnt.com/DownLoad/MSF_2hours.jpg

Andy  G4JNT

Inline images 1




__._,_.___
------------------------------------------------------------------------
Posted by: Andy Talbot <[email protected]>
------------------------------------------------------------------------


Visit Your Group <https://uk.groups.yahoo.com/neo/groups/rsgb_lf_group/info;_ylc=X3oDMTJmb2JrNGRwBF9TAzk3NDkwNTA1BGdycElkAzg1MDgwODk1BGdycHNwSWQDMTY5MDA2MzEwOARzZWMDdnRsBHNsawN2Z2hwBHN0aW1lAzE0NDY5OTgyNzg->

  * New Members
    
<https://uk.groups.yahoo.com/neo/groups/rsgb_lf_group/members/all;_ylc=X3oDMTJnYmswdWY2BF9TAzk3NDkwNTA1BGdycElkAzg1MDgwODk1BGdycHNwSWQDMTY5MDA2MzEwOARzZWMDdnRsBHNsawN2bWJycwRzdGltZQMxNDQ2OTk4Mjc4>
    2

Yahoo! Groups <https://uk.groups.yahoo.com/neo;_ylc=X3oDMTJlamFzODcwBF9TAzk3NDkwNTAzBGdycElkAzg1MDgwODk1BGdycHNwSWQDMTY5MDA2MzEwOARzZWMDZnRyBHNsawNnZnAEc3RpbWUDMTQ0Njk5ODI3OA--> • Privacy <https://info.yahoo.com/privacy/uk/yahoo/groups/details.html> • Unsubscribe <mailto:[email protected]?subject=Unsubscribe> • Terms of Use <https://info.yahoo.com/legal/uk/yahoo/utos/en-gb/details.html>

__,_._,___


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