Peaks from SDR WAV files
by Peer-Axel Kroeske
Here you can get software tool to list the exact carrier frequencies of standard MW/LW frequencies from a Perseus SDR WAV file with 10 millihertz precision.
- It is especially designed for offset DX on medium wave. Check the link for more background information.
- Most software defined receivers (SDR) can record the whole baseband, which can be the whole medium wave band from 530 to 1700 kHz at once.
- You only need about 100 seconds to get a resolution of 10 millihertz.
- Tested with Perseus and SDR Sharp recordings.
- Only one trade-off: The spectrum appears twice after FFT analysis, mirrored around the center frequency.
- Here is an output exmple from 14/01/2023, 1828 UTC in Handewitt, Germany with Perseus SDR
Download
Installation
- The Praat software will perform the FFT calculation (WAV to spectrum). Download and extract it in any folder of your choice.
- The tool itself is a PHP script which can run on your PC locally. For that purpose you can install XAMPP.
- Unzip peaks.zip (download link above) in the xampp/htdocs directory
Processing a file
- In Praat:
- open → read file (WAV)
- analyze → to spectrum (takes a few seconds, "spectrum..." will appear in the Praats objects list and is highlighted)
- optional: with view & edit you can view the spectrum
- save → as short text file in same directory as the WAV and wait. This can take up to a minute. As soon as this is done, the spectrum file will have a file size in the file explorer.
- Open localhost/peaks.htm in your browser
Calibration
You need calibration for precise results.
- If you have a linear deviation (like 1 Hz @ 100 kHz, 2 Hz @ 200 kHz) you only need one reference frequency. The first value should remain 0 kHz.
- Perseus: You only get a linear deviation of you turn off the internal calibration before recording the WAV. If calibration is on, the center frequency should have zero deviation. However, in this case the tool requires two defined peaks
- Calibration frequencies do not need to be full values (150.00053 kHz would be allowed)
The mirrored spectrum
Unforunately, I have not found a solution for this: The center frequency has a value of 0 kHz in the WAV-file. The upper and the lower half of the baseband are put together. If you have a center frequency of 1000 kHz, then 900 kHz and 1100 kHz will both appear at 100 kHz in the resulting spectrum.
The workaround: Avoid recording at full kHz values. One example: If you record at center frequency 1001.135 kHz, you will have the standard carrier clusters in the initial WAV spectrum at
- ##035 Hz (NDB LSB modulation at #100 Hz lower)
- ##135 Hz (NDB carrier lower)
- ##235 Hz (NDB LSB modulation at #900 Hz lower)
- ##265 Hz (NDB USB modulation #400 Hz upper)
- ##365 Hz (NDB carrier #500 Hz upper)
- ##465 Hz (NDB LSB modulation #600 Hz upper)
- ##535 Hz (NDB LSB modulation #600 Hz lower)
- ##635 Hz (NDB carrier #500 Hz upper)
- ##735 Hz (NDB USB modulation #400 Hz lower)
- ##765 Hz (NDB LSB modulation at #900 Hz upper)
- ##865 Hz (NDB carrier upper)
- ##965 Hz (NDB LSB modulation at #100 Hz upper)
- #1135 Hz (10K system/lower)
- #2135 Hz (9K lower)
- #8865 Hz (10K upper)
You can avoid mirroring if you center at 0 KHz. (only for up to 1000 KHz @ 2 Msps with the Perseus)
Remarks
- It does not make much sense to go much deeper than 10 millihertz because transmitters and receivers are usually not stable enough in frequency.
- The SDR should be warmed up for high resolution and stability. For the Perseus I recommend one hour operation before recording (running the server keeps it warm, too)
- it is safer to toggle on "center" in Perseus
- Check the results for plausibility
SDR sharp issues
I managed to process a file from my Airspy HF+ discovery. But is was not as flawless as with the Perseus.
- baseband recordings below 384 ksps were not possible
- baseband recordings from remote sites (Airspy server network) gathered a few MB but were empty or had a lower sample rate (only 56 kHz in one case). Probably caused by bandwidth limitation in the Spyserver settings.
- Turn off Correct IQ. It notches the center frequency.
- Independent from the WAV: with the highest spectrum resolution of 4194304 (FFT length) the resolution sometimes seems to lose focus. No sharp waterfall lines of carriers anymore, a collection of unstable peaks scattered over a few Hz instead.
Back to radiovibrations.com