Return-Path: X-Spam-DCC: paranoid 1290; 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, 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 tA8GI5H7009990 for ; Sun, 8 Nov 2015 17:18:05 +0100 Received: from majordom by post.thorcom.com with local (Exim 4.14) id 1ZvScJ-00064x-QD for rs_out_1@blacksheep.org; Sun, 08 Nov 2015 16:14:55 +0000 Received: from [195.171.43.32] (helo=relay1.thorcom.net) by post.thorcom.com with esmtp (Exim 4.14) id 1ZvScJ-00064o-ED for rsgb_lf_group@blacksheep.org; Sun, 08 Nov 2015 16:14:55 +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 1ZvSbF-0006kA-A7 for rsgb_lf_group@blacksheep.org; Sun, 08 Nov 2015 16:14:54 +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 1ZvSay-0000y0-CX; Sun, 08 Nov 2015 17:13:32 +0100 Received: from localhost ([::1]:47173 helo=mjail2.freenet.de) by mjail2.freenet.de with esmtpa (ID dl4yhf@freenet.de) (Exim 4.85 #1) id 1ZvSay-0000pT-8K; Sun, 08 Nov 2015 17:13:32 +0100 Received: from mx11.freenet.de ([195.4.92.21]:47399) by mjail2.freenet.de with esmtpa (ID dl4yhf@freenet.de) (Exim 4.85 #1) id 1ZvSYU-0004m3-JK; Sun, 08 Nov 2015 17:10:58 +0100 Received: from x4d0868e6.dyn.telefonica.de ([77.8.104.230]:52632 helo=[192.168.178.27]) by mx11.freenet.de with esmtpsa (ID dl4yhf@freenet.de) (TLSv1.2:DHE-RSA-AES128-SHA:128) (port 587) (Exim 4.85 #1) id 1ZvSYU-0005gB-Av; Sun, 08 Nov 2015 17:10:58 +0100 To: rsgb_lf_group@yahoogroups.co.uk, rsgb_lf_group@blacksheep.org References: From: =?UTF-8?Q?Wolfgang_B=c3=bcscher?= Message-ID: <563F7410.20902@freenet.de> Date: Sun, 8 Nov 2015 17:10:56 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: X-Originated-At: 77.8.104.230!52632 X-Scan-Signature: 41a44ec7f64a884bcdc566aa8432178a Subject: LF: Re: [rsgb_lf_group] Coherent receivers and EbNaut Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit 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: 4907 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 andy.g4jnt@gmail.com [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 > ------------------------------------------------------------------------ > > > Visit Your Group > > > > * New Members > > 2 > > Yahoo! Groups > > > • Privacy > • > Unsubscribe > > • Terms of Use > > > __,_._,___