I calibrated the OCXO by comparison to WWV to an accuracy of just better than 1 Hz and verified by repeated observations that it is virtually drift-free, at least for QRSS work. I'll describe how to do this in my next post.
In the old days of tube receivers a standard method for finding the band edge was to use a 100 kHz crystal oscillator with a harmonic generator to provide markers every 100 kHz. This posts describes a similar approach to allow the 10 MHz oscillator to provide markers every 2.44 kHz with an accuracy of 1 Hz up through the Ten Meter Band. It couples the OCXO with a binary divider to divide down to 2.44 kHz, or 2.4414060 to be exact, then produces harmonics which occur at this interval up through 10m.
Several years ago I purchased a frequency calibrator kit from W8DIZ which used this scheme with a TCXO and a 74HC4040 12 bit Binary Counter which can be configured to divide by up to 4096. The DIZ kit used only the divide-by 2, 4 and 8 to produce strong markers at 10, 5 and 2.5 MHz but I reconfigured it for the 4096 maximum and was pleasantly surprised to see a plethora of harmonics throughout the HF spectrum.
Figure 1. W8DIZ Frequency Standard |
The output from J2 was injected into the receiver's input through a BNC "T" adapter with a gimmick capacitor to adjust the amplitude.
The difficulty of having 2.44 kHz harmonics is that they are not likely to be close enough to the frequency span of a waterfall grabber to be seen. Consider a typical grabber screen on 30m which extends from 10130.9 to 10140.1 kHz. The nearest marker from the OCXO is at 10139.159 kHz or about 740 Hz below the grabber window. What to do?
Spectrum Lab is a bottomless pit of useful features along with a tiny programming language to make them work. One of these features is an internal audio oscillator by which the frequency can be set either manually or under computer control. The programming command to set the frequency is,
generator[0].freq = "desired frequency",
[0] refers to the first of three oscillators and note that "desired frequency" can be an algebraic expression.
There is also a special command to measure the peak frequency of a signal in a specified interval,
peak_f(f1,f2).
Putting it all together,
generator[0].freq = 879 + peak_f(450,470).
I use the "Conditional Actions" section to execute the command every 1000 milliseconds. Use "always" as the "if" statement and the generator command as the "then" statement.
The OCXO harmonic appears at an audio frequency of about 461 Hz and the second part of the above equation measures it's exact value, after which 878 is added to move the audio oscillator output frequency to a nominal value of 1340 Hz which is well within the grabber window. I used 879 just to illustrate how to move the OCXO signal but other values could be used to move it, for example, to be close to a signal being studied.
You can familiarize yourself with the Spectrum Lab commands by clicking on the help screen and scrolling down to Interpreter : -commands, -functions, -expressions.
Make sure your receiver's bandpass is wide enough to allow the marker frequency as well as the grabber window.
Here's an example:
This is a high resolution study of WA5DJJ's GPS stabilized fsk QRSS signal. The individual dots and dashes are not evident because the scan speed is very slow. Note that the frequency range is only 20 Hz. The slow drift of the OCXO is due to temperature changes in the receiver and can be used to correct the frequency of the signal being measured by subtraction, ie, the OCXO is the baseline.
Near the right side you can see a gap in the OCXO signal. This was caused by QRM down at the frequency of the OCXO marker, probably from JT65.
Though this post describes precision frequency measurement for QRSS work it can be used for other applications by choosing the appropriate Spectrum Lab parameters.