Skip to content

TCXO Frequency

The NanoVNA-H uses a Temperature Compensated Crystal Oscillator (TCXO) as its frequency reference. Calibrating this reference ensures accurate frequency measurements across the entire sweep range.

The TCXO provides the master clock for:

  • Si5351 frequency synthesizer (all output frequencies are derived from this reference)
  • All frequency calculations
  • Time domain distance measurements

Even small errors (parts per million) can cause significant frequency offsets at higher frequencies.

PPM (parts per million) is how frequency accuracy is specified. A 1 ppm error means the oscillator is off by 1 Hz for every 1 MHz:

Measurement Frequency1 ppm Error10 ppm Error
7 MHz (40m band)7 Hz70 Hz
50 MHz (6m band)50 Hz500 Hz
145 MHz (2m band)145 Hz1.45 kHz
432 MHz (70cm band)432 Hz4.32 kHz
1 GHz1 kHz10 kHz

At HF, 10 ppm is barely noticeable. At UHF, 10 ppm can shift a narrowband filter measurement by several kHz — enough to misidentify the center frequency.

The TCXO frequency enters the Si5351’s PLL, which multiplies it up to a VCO frequency (typically 600–900 MHz), then divides back down to produce the output. Any error in the TCXO propagates through the entire chain:

TCXO (26 MHz) → PLL × N → VCO → ÷ M → Output

A 1 ppm TCXO error produces exactly 1 ppm output error at every frequency. The PLL does not correct or amplify the reference error — it passes through linearly.

ModelNominal TCXOTypical Range
NanoVNA-H26 MHz25.999-26.001 MHz
NanoVNA-H426 MHz25.999-26.001 MHz
  1. Connect a signal source of known frequency (e.g., 10 MHz reference)
  2. Set sweep centered on the reference frequency
  3. Note where the signal appears
  4. Calculate the TCXO error from the offset
  1. Connect frequency counter to the NanoVNA-H’s RF output
  2. Set the NanoVNA-H to a CW frequency (e.g., freq 10000000)
  3. Measure the actual output frequency
  4. Calculate the ratio to find actual TCXO frequency

If you set 10.000000 MHz but measure 10.000385 MHz:

Ratio = 10.000385 / 10.000000 = 1.0000385
Actual TCXO = 26.000000 * 1.0000385 = 26.001001 MHz
  1. Go to CONFIG > EXPERT CONFIG
  2. Tap TCXO FREQ
  3. Enter the actual TCXO frequency in Hz
  4. Tap ENTER or a unit key
Terminal window
# Set TCXO frequency (in Hz)
tcxo 26001000
# Query current setting (firmware dependent)
tcxo

After setting the TCXO frequency:

Terminal window
saveconfig

Or via menu: CONFIG > SAVE

After TCXO calibration:

  1. Set CW frequency to your reference frequency
  2. Verify output matches expected value
  3. Check that known markers appear at correct frequencies

If you have a receiver capable of picking up WWV/WWVH time signals:

  1. Set NanoVNA-H to transmit near 5, 10, or 15 MHz
  2. Listen for beat note with WWV
  3. Adjust TCXO until beat note is minimized (zero beat)

Even TCXOs have some temperature coefficient. For highest accuracy:

  • Note the ambient temperature during calibration
  • Re-verify if operating at significantly different temperatures
  • Consider using the NanoVNA-H in a temperature-stable environment for critical measurements
Calibration MethodExpected Accuracy
Factory default+/- 10 ppm
Calibrated with counter+/- 1 ppm
Calibrated with GPS reference+/- 0.1 ppm

At 1 GHz, 1 ppm error equals 1 kHz frequency error.

Terminal window
# Set TCXO frequency
tcxo 26000000 # Set to exactly 26 MHz
tcxo 26001234 # Set to 26.001234 MHz
# The value is stored in config._xtal_freq