<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<div>
<div>
<div dir="ltr" style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">
I’ll bet you a nickel I could integrate that VLF data with the rest of our Digital RF stuff in a couple of weeks.    - de AB4EJ</div>
</div>
<div><br>
</div>
<div class="ms-outlook-ios-signature">Get <a href="https://aka.ms/o0ukef">Outlook for iOS</a></div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> TangerineSDR <tangerinesdr-bounces@lists.tapr.org> on behalf of Phil Erickson via TangerineSDR <tangerinesdr@lists.tapr.org><br>
<b>Sent:</b> Thursday, March 11, 2021 6:57:54 PM<br>
<b>To:</b> Jonathan <emuman100@gmail.com><br>
<b>Cc:</b> Phil Erickson <phil.erickson@gmail.com>; TAPR TangerineSDR Modular Software Defined Radio <tangerinesdr@lists.tapr.org><br>
<b>Subject:</b> [EXTERNAL] Re: [TangerineSDR] VLF-RX tools</font>
<div> </div>
</div>
<div>
<div dir="ltr">Hi Jonathan,
<div><br>
</div>
<div>  There are only a very few formats that are designed for long term and cross-platform "survival" across many different operating systems and languages, and which have enough embedded metadata to describe the data in enough detail to allow applications
 that were not thought of at the time of recording.  HDF5 is the product of a huge amount of work - decades of person-years - to enable that sort of survivability.  We therefore use it as the carrier, with DigitalRF as the particular data structure implemented
 in it.</div>
<div><br>
</div>
<div>  I think Ryan's separate message is a workflow that would allow all the good toolsets to be implemented without changing the way that the recording happens.  Note as well that we do support purely real streams (no need to always have I and Q) and getting
 a good use case which implements that is on our list of ways we want to move forward with the format.</div>
<div><br>
</div>
<div>Cheers</div>
<div>Phil W1PJE</div>
</div>
<br>
<div class="x_gmail_quote">
<div dir="ltr" class="x_gmail_attr">On Thu, Mar 11, 2021 at 7:47 PM Jonathan <<a href="mailto:emuman100@gmail.com">emuman100@gmail.com</a>> wrote:<br>
</div>
<blockquote class="x_gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left-width:1px; border-left-style:solid; border-left-color:rgb(204,204,204); padding-left:1ex">
Hi Phil,<br>
<br>
When you mean "not always persistent across decades of measurements", do <br>
you mean sampling rate and sample length inconsistency across different <br>
data sources?<br>
<br>
Yes, it is a purely real signal. There is a utility called vtresample that <br>
will resample the VLF stream and maintain timestamp alignment. And you are <br>
exactly right, there is a file in the source called vtlib.h which looks to <br>
define the timestamping format. Many of the utilities have this as an <br>
#include.<br>
<br>
The author must not have felt a need to document the format. He's not <br>
affiliated with a university and I don't believe he's a licensed ham, <br>
however, he's an active VLF enthusiest. He must have written his tool set <br>
and used his format to maintain persistence in the data. I have always <br>
felt that his format was adequate, especially when using his stream <br>
manipulation utilities which align and maintain timestamping.<br>
<br>
I wasn't sure about the reason for the insistance on using DigitalRF for <br>
VLF data analysis and storage on the TangerineSDR other than that's what <br>
the grants are paying for everyone to support. It's such a useful tool set <br>
that it seems like a waste not to utilize it.<br>
<br>
Jonathan<br>
KC3EEY<br>
<br>
On Thu, 11 Mar 2021, Phil Erickson wrote:<br>
<br>
> Date: Thu, 11 Mar 2021 19:12:58 -0500<br>
> From: Phil Erickson <<a href="mailto:phil.erickson@gmail.com" target="_blank">phil.erickson@gmail.com</a>><br>
> To: Jonathan <<a href="mailto:emuman100@gmail.com" target="_blank">emuman100@gmail.com</a>><br>
> Cc: TAPR TangerineSDR Modular Software Defined Radio<br>
>     <<a href="mailto:tangerinesdr@lists.tapr.org" target="_blank">tangerinesdr@lists.tapr.org</a>><br>
> Subject: Re: [TangerineSDR] VLF-RX tools<br>
> <br>
> Hi Jonathan,<br>
><br>
>  We'll take a look.  For a purely real signal (e.g. cos(\omega t)), of<br>
> course you would need exp(j \omega t) in I and exp(-j \omega t) in Q.  I<br>
> believe DigitalRF may have the ability to capture purely real signals<br>
> without the need to do 2X expansion into I and Q, but I'll ask.  Things<br>
> like PCM audio streams are unfortunately not always persistent across<br>
> decades of measurements (we know this sort of thing from hard experience at<br>
> Haystack), so we choose HDF5 for long term persistence.<br>
><br>
>  I don't have the time at the moment to wade through code, but if this is<br>
> C code, it is likely there is a header file (".h") somewhere that contains<br>
> the stream format.  You might post that here when it's found.  For this<br>
> application, "derived from the source code" definitely needs to be replaced<br>
> with a formal data specification and that could form the start of it.<br>
><br>
> Cheers<br>
> Phil W1PJE<br>
><br>
> On Thu, Mar 11, 2021 at 7:02 PM Jonathan <<a href="mailto:emuman100@gmail.com" target="_blank">emuman100@gmail.com</a>> wrote:<br>
><br>
>> Hi Phil,<br>
>><br>
>> The stream format is not documented, however, it can be derived from the<br>
>> source code of many of the utility programs, like vtcard, vtcat, vtraw,<br>
>> and vtwavex to name a few. It's single-channel or multi-channel pcm with<br>
>> timestamping information. vtcat can combine single channel streams, say<br>
>> from an E-Field receiver and two B-Field receivers into a multi-channel<br>
>> stream and align timestamps of all channels.<br>
>><br>
>> I'm not an expert at C by any means, and I haven't really looked at<br>
>> understanding the stream format in the source code yet. For a conversion<br>
>> utility, would the stream have to be copied and phase-shifted to generate<br>
>> IQ data?<br>
>><br>
>> vlfrx-tools captures and works with data in its original form. From the<br>
>> soundcard, it's a pcm audio stream. There are utilities vtrtlsdr and<br>
>> vtsdriq that read data from a RTL dongle or SDR-IQ receiver respectively.<br>
>> vtsdriq can output either I and Q data in two channels or a single channel<br>
>> stream.<br>
>><br>
>> Jonathan<br>
>> KC3EEY<br>
>><br>
>> On Thu, 11 Mar 2021, Phil Erickson wrote:<br>
>><br>
>>> Date: Thu, 11 Mar 2021 04:33:08 -0500<br>
>>> From: Phil Erickson <<a href="mailto:phil.erickson@gmail.com" target="_blank">phil.erickson@gmail.com</a>><br>
>>> To: TAPR TangerineSDR Modular Software Defined Radio<br>
>>>     <<a href="mailto:tangerinesdr@lists.tapr.org" target="_blank">tangerinesdr@lists.tapr.org</a>><br>
>>> Cc: Jonathan <<a href="mailto:emuman100@gmail.com" target="_blank">emuman100@gmail.com</a>><br>
>>> Subject: Re: [TangerineSDR] VLF-RX tools<br>
>>><br>
>>> Hi Jonathan,<br>
>>><br>
>>>  I looked at the documentation (HTML page) but I cannot find a precise<br>
>>> definition of the stream format.  Where is that located or could you<br>
>>> summarize that?  It would then be possible for those of us familiar with<br>
>>> DigitalRF, and in particular the Haystack team who maintains it, to<br>
>> examine<br>
>>> the ways in which a .vt file could be translated to DigitalRF or the<br>
>> other<br>
>>> way around.<br>
>>><br>
>>> 73<br>
>>> Phil W1PJE<br>
>>><br>
>>> On Wed, Mar 10, 2021 at 10:46 PM Jonathan via TangerineSDR <<br>
>>> <a href="mailto:tangerinesdr@lists.tapr.org" target="_blank">tangerinesdr@lists.tapr.org</a>> wrote:<br>
>>><br>
>>>> Hi Tom,<br>
>>>><br>
>>>> Thank you for looking at the documentation for vlfrx-tools! I'll list<br>
>> some<br>
>>>> useful utilities included in vlfrx-tools to try to illustrate how useful<br>
>>>> they can be. A utility can be written to convert to DigitalRF/HDF5,<br>
>>>> however, vlfrx-tools does not normally generate IQ data.<br>
>>>><br>
>>>> For others on the list, the vlfrx-tools documentation is<br>
>>>> available at <a href="https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabelian.org%2Fvlfrx-tools%2F&data=04%7C01%7Cbill.engelke%40ua.edu%7Cc9ba8354e9a0404bce9008d8e4f2022a%7C2a00728ef0d040b4a4e8ce433f3fbca7%7C0%7C0%7C637511075367373957%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=i7Lzs6hzZod9G%2FzFvE74Q%2Fdaleu1Lx7tzYjQWthVimY%3D&reserved=0" originalsrc="http://abelian.org/vlfrx-tools/" shash="hPHW8vjiJ2xBtrYdoeDwqZeXmmLl4aUkLECjybFn/YDBcUJemuHIINm6hUbUSbdpYRFaYmPtfwJRJHD1aX0fWRahG3ioq6dTLLHD3QCB1wgdoTEjYTBmqnTaqzsq2d90pekKjqroTs7sNUjenBTTKUKlSqTQB6xciptqbUJTFk4=" rel="noreferrer" target="_blank">
http://abelian.org/vlfrx-tools/</a> and this also includes the<br>
>>>> source code. Also, for the others on the list, I'd like to make the<br>
>>>> argument that vlfrx-tools is advantageous because of its useful toolset<br>
>> in<br>
>>>> analysis and post-processing of both natural radio, amateur radio in the<br>
>>>> VLF band, and VLF transmitters. Such tools don't exist (to my knowledge)<br>
>>>> for formats like DigitalRF. Since vlfrx-tools is such a diverse and<br>
>>>> usefull toolset that already exists, it's advantageous to utilize it in<br>
>>>> post-processing on the PSWS database to make available SID events,<br>
>>>> whistler and chorus events, and lightning location data, just to name a<br>
>>>> few.<br>
>>>><br>
>>>> vtblank - an impulsive noise blanker that removes sferics and other<br>
>>>> impulsive noise from the VLF spectrum. It's useful in studying VLF<br>
>>>> transmitters and especially useful for VLF QSOs.<br>
>>>><br>
>>>> vtam - used to extract the magnitude of a non-stationary signal like a<br>
>>>> sferic. You can examine the timing of sferics, whistlers, and the edges<br>
>> of<br>
>>>> timing signals like WWVB.<br>
>>>><br>
>>>> vtpolar - generate a polar plot movie of a triple axis VLF stream. This<br>
>>>> allows you to see the bearing of incoming VLF signals like whistlers.<br>
>>>> Please watch the movie in the documentation!<br>
>>>><br>
>>>> vtsid - automatically  detects sudden ionospheric disturbances with VLF<br>
>>>> transmitters like NAA. It generates a plot and a data file. The<br>
>> extraction<br>
>>>> utility can extract records from that data file.<br>
>>>><br>
>>>> vtevent - automatically detects whistlers and chorus and generates a<br>
>>>> spectrogram plot, data file, and audio file of the event.<br>
>>>><br>
>>>> vttoga - creates time of group arrival data from sferics the incoming<br>
>> VLF<br>
>>>> stream or a file.<br>
>>>><br>
>>>> vtspot - used to generate lightning location data from vttoga data from<br>
>>>> VLF receivers around the world. The PSWS database can provide lightning<br>
>>>> location data using a network of receivers.<br>
>>>><br>
>>>> vtping - used to detect meteor ping.<br>
>>>><br>
>>>> vtwrite - writes a VLF stream, either from a ring buffer or network<br>
>>>> socket, to file for storage.<br>
>>>><br>
>>>> vtread - reads a .vt file into a ring buffer or network socket.<br>
>>>><br>
>>>> vtraw - extract raw audio froma VLF stream. This also removes the<br>
>>>> timestamping.<br>
>>>><br>
>>>> vtwavex - extract a wav file from a VLF stream. This also removes the<br>
>>>> timestamping.<br>
>>>><br>
>>>> These are just some examples of useful utilities of vlfrx-tools. A<br>
>> utility<br>
>>>> to convert a .vt file to DigitalRF/HDF5 can be written (however, I<br>
>> cannot<br>
>>>> support that). Also, vlfrx-tools does not generate IQ data normally.<br>
>> But,<br>
>>>> with such a toolset, so much can done. I would hope this convinces some<br>
>> of<br>
>>>> those who may be skeptical. In any case, I urge you to look at the<br>
>>>> documentation.<br>
>>>><br>
>>>> Jonathan<br>
>>>> KC3EEY<br>
>>>><br>
>>>> On Wed, 10 Mar 2021, Tom McDermott via TangerineSDR wrote:<br>
>>>><br>
>>>>> Date: Wed, 10 Mar 2021 12:07:26 -0800<br>
>>>>> From: Tom McDermott via TangerineSDR <<a href="mailto:tangerinesdr@lists.tapr.org" target="_blank">tangerinesdr@lists.tapr.org</a>><br>
>>>>> To: TAPR TangerineSDR Modular Software Defined Radio<br>
>>>>>     <<a href="mailto:tangerinesdr@lists.tapr.org" target="_blank">tangerinesdr@lists.tapr.org</a>><br>
>>>>> Cc: Tom McDermott <<a href="mailto:tom.n5eg@gmail.com" target="_blank">tom.n5eg@gmail.com</a>><br>
>>>>> Subject: [TangerineSDR] VLF-RX tools<br>
>>>>><br>
>>>>> Hi,  I don't have Jonathan Rizzo's direct email, so sending this to the<br>
>>>>> list.<br>
>>>>><br>
>>>>> We talked a bit about the VLF receiver on the last conference call, and<br>
>>>> the<br>
>>>>> VLFRX tools.<br>
>>>>> I'd like to email with Jonathan directly.   It appears those tools have<br>
>>>> the<br>
>>>>> ability to<br>
>>>>> read from a file (and thus in Linux from a named pipe).  Gnuradio can<br>
>>>> write<br>
>>>>> to a named pipe<br>
>>>>> as well to DigitalRF (HDF5).   Perhaps this may provide a mechanism to<br>
>>>>> hook the receiver both to the Tangerine archiving method as well as to<br>
>>>>> VLFRX.?<br>
>>>>><br>
>>>>> -- Tom, N5EG<br>
>>>>> <a href="mailto:n5eg@tapr.org" target="_blank">n5eg@tapr.org</a><br>
>>>>><br>
>>>><br>
>>>> --<br>
>>>> TangerineSDR mailing list<br>
>>>> <a href="mailto:TangerineSDR@lists.tapr.org" target="_blank">TangerineSDR@lists.tapr.org</a><br>
>>>> <a href="https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.tapr.org%2Fmailman%2Flistinfo%2Ftangerinesdr_lists.tapr.org&data=04%7C01%7Cbill.engelke%40ua.edu%7Cc9ba8354e9a0404bce9008d8e4f2022a%7C2a00728ef0d040b4a4e8ce433f3fbca7%7C0%7C0%7C637511075367383953%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=7bP82UlL1139rafSQnZ7i%2F1zhYyKb%2FP2t07ae%2FhyMKk%3D&reserved=0" originalsrc="http://lists.tapr.org/mailman/listinfo/tangerinesdr_lists.tapr.org" shash="lIj2gS82xOQRV2wI+rcSCpUjJo7eSH4vNo6qbZU6zxTD8pOUy/FpgIemNrW1ypIgshi1Xduelv/VtJTxsqwNifrVKI/awDB1HUKzRHDuVkZNeGezA5CrROt6qHvhGlebG5LvnyH/XAwgINtrwf8VfXOKOQzJIIAMY10E9kM8i4U=" rel="noreferrer" target="_blank">
http://lists.tapr.org/mailman/listinfo/tangerinesdr_lists.tapr.org</a><br>
>>>><br>
>>><br>
>>><br>
>>> --<br>
>>> ----<br>
>>> Phil Erickson<br>
>>> <a href="mailto:phil.erickson@gmail.com" target="_blank">phil.erickson@gmail.com</a><br>
>>><br>
>><br>
><br>
><br>
> -- <br>
> ----<br>
> Phil Erickson<br>
> <a href="mailto:phil.erickson@gmail.com" target="_blank">phil.erickson@gmail.com</a><br>
><br>
</blockquote>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr" class="x_gmail_signature">----<br>
Phil Erickson<br>
<a href="mailto:phil.erickson@gmail.com" target="_blank">phil.erickson@gmail.com</a><br>
</div>
</div>
</body>
</html>