Experiment

Some radio hobbyists already have a receiver they'd like to use, and have asked us if that's ok. The answer is "Probably, yes." Here's how:

EclipseMob's app saves recordings as a .wav file. The .wav file is 16 bits, sampled at either 44.1 kHz or 48 kHz (depends on the phone hardware). Since .wav files have that info in the header, we can deal with different sample rates when we get the data. The time and location info are stored as a JSON with the same file name as the recording. (A JSON is just a plaintext file with the extension .json instead of .txt, and the text organized in a particular format.) Here's an example:

 

 {
"createdAt": "Aug 8, 2017 10:10:34 AM",
"duration": 847.268,
"id": "cc8a8872-9ced-4ddb-8db2-926c0a52c028",
"latitude": 42.4003829,
"longitude": -71.1093868,
"size": 74722816,

}

 

In order to get a 60 kHz signal through the audio input passband of a phone (most phones have an antialiasing filter that cuts off at about 22 kHz), EclipseMob's receiver downconverts, using the phone to generate a 20.9 kHz local oscillator signal.  That signal is doubled in one multiplier and then fed into a second multiplier to convert down to 18.2 kHz, which we'll be able to detect with the phone.  Because of this setup, we'll be looking for WWVB on 18.2 kHz, and you won't be.  To deal with that, please add an extra field to your JSON, as shown below:

 

{
"createdAt": "Aug 8, 2017 10:10:34 AM",
"duration": 847.268,
"id": "cc8a8872-9ced-4ddb-8db2-926c0a52c028",
"latitude": 42.4003829,
"longitude": -71.1093868,
"size": 74722816,

"loFrequency" : YOUR LOCAL OSCILLATOR FREQUENCY HERE, IN HERTZ
}

 

If you have converted WWVB to baseband, your loFrequency entry would read 60000.  If you are directly sampling the RF, you would enter 0.  For EclipseMob we'd enter 41800, but that's also what we'll assume if the field is left blank.