A Low-Cost 10 MHz TCXO


24 February 2012


There is already a 10 MHz OCXO article on this web site but a recent occurrence (when I went on a Field Day outing and left the main 10MHz OCXO on the workshop bench) made me consider building up another unit that could just be left with the FD equipment. I didn’t want another OCXO based on the oven-based Isotemp 134-10 device that takes at least ½ an hour to stabilize its frequency. Realistically I wanted a frequency source that was small and low power and even if not exactly on frequency within 0.1Hz, it was going to provide a reasonable semblance of high stability.

The web is a wonderful search tool and I checked both the Element14 (formerly Farnell) and RS Components web sites for 10MHz Oscillator units. Element14 has various TCXO oscillator versions but none have an actual frequency control pin ie. a VC-TCXO device. A search of RS’s web site revealed just one suitable device under their part code 478-8984 and made by IQD :Oscillator,crystal,SMD,10MHz,HCMOS,TVXO009900 10MHz. At under $20, that is a cheap way to go.

If you are wondering why you need to use a VC-TCXO rather than just a normal garden-variety 10MHz TTL/CMOS oscillator, the answer is as simple as - these things have an external pin to adjust the frequency. My testing of garden-variety devices has shown errors of up to 5KHz at 10MHz - not very good when being used as a reference for a frequency synthesiser at VHF/UHF or microwave frequencies.

TVXO009900 Datasheet PDF

Basic Device Specifications :

Frequency Aging            1ppm/Year 
Frequency Stability            0.9ppm
Frequency Tolerance            5ppm
Load Capacitance            15pF
Maximum Operating Temperature            70°C
Maximum Symmetry            0.55
Minimum Operating Temperature            -20°C
Mounting          Surface Mount
Output Frequency            10.000MHz
Output Level     HCMOS
Pin Count    4
Product Height   2mm
Product Length  7mm
Product Width    5mm
Supplier Package            SMT 7x5
Tuning Voltage 1.65V
Type            Voltage Controlled Temperature Compensated Crystal Oscillator (VC-TCXO)
Typical Operating Supply Voltage            3.3V


Yes, it is small physically at just 7mm x 5mm but given the size of other SM devices I have used of late, that didn't cause too much anxiety.

 Note that this is a 3.3V HCMOS device and produces a square wave output. I wanted to be able to provide a sine wave to the various synthesisers so that meant a “filtering” option was required plus a buffering arrangement to provide for up to 4 output ports to be connected. This last part was easy as the original OCXO article uses an LM7171 op-amp so the schematic from that was “lifted” for this new project. The LM7171AIM (RS code 639-4610) is a small SMD-style package equivalent to the original 8-pin DIL device so that was used in this instance.

The concept of how to implement the “filtering” was explored along two paths : (1) a parallel-resonant tuned circuit at 10 MHz; or (2) a multi-section low pass Pi filter (a LPF). My preference was for #1 but a number of calculations later, I realised that #2 was going to be easier to implement with SMD components.  The final Pi-filter design uses 4 SMD inductors in series plus 3 shunt SMD capacitors and has a 3dB-cutoff frequency of 12.5MHz.


The PCB was laid out to exclusively use SMD parts except for the multi-turn trimpot for setting the frequency. The final PCB size was 60mm long by 25mm wide using single-sided PCB material.  The PCB was fitted into a diecast box with dimensions 100x60mm and that allowed for 4 BNC female sockets to be mounted along one side, leaving enough room for an internal 9V battery to be fitted.




The TCXO device is powered from a 3.3V SOT-89 style low drop-out regulator, which, in turn, is powered from another SOT-89 style 9V low drop-out regulator. A diode-based power feed arrangement to the 3.3V regulator allows just the oscillator section of the PCB to be run from a 9V battery – or – the whole PCB (ie. oscillator + buffer section) from an external 12V DC power source. The current drain from the 9V battery is 7.7mA with no external power in my device, then 33.2mA from the external 12V supply with one port terminated in 50 ohms, 15mA of that current being used to illuminate the LED. In comparison, the Isotemp OCXO with its oven warming up takes 1 amp or so…

 Click on image to see larger view in a new window

Note that the schematic shows a 78L09 as the higher voltage regulator - in this case the final design had an 8V version fitted (78L08) due to non-availability of the 9v version at the time..

The PCB was built up without the oscillator device soldered in place and the input to the LPF fed from the signal generator at a level of +10dBm. The output from a buffer-output termination point was measured with a 20MHz CRO and compared against the RF input voltage to cross-check the LPF response. By raising the frequency to 15MHz, the output was well down versus that at 10MHz (compared to the input voltage). At 20 MHz, the output was virtually nonexistent on the CRO. The resistor marked “Rg” on the PCB layout was selected as 1K after the loss in the LPF at 10 MHz had been determined, but has been marked as 3.3K as the absolute maximum to be used. It is critical that this feedback resistor value be selected to avoid any sign of clipping of the sine wave shape.

The TCXO was then added to the board and the output fed to both the GPSDO-locked frequency counter and the CRO. The initial frequency was 9.999996 MHz with the trimpot at an undetermined point along its travel. A quick adjustment moved it to 10.000000 MHz. The waveform was displayed on the CRO was visually close to sine so the low pass filtering was reasonably effective. (Note : a square wave fed to a circuit which removes all harmonics generates a true sine wave at the fundamental frequency.)

My usual procedure when working with frequency references is to use a Lissajous pattern on the CRO to check for frequency error and is a far quicker way to “net” an oscillator to frequency than using just a frequency counter. The 10MHz GPSDO frequency reference is fed to CH2 on the CRO, the oscillator under test into CH1 and the timebase switch set to X-Y mode. That produces a (theoretical) circular trace on the CRO’s screen. In my case, it is always an ellipse… What is important is whether the trace rotates right or left. A stationary trace means that the two frequencies are exactly the same, either one higher or lower causes a rotation effect. I use the TCXO/OCXO frequency pre-set control so that there is no trace rotation. Just a 1Hz difference causes the trace to rotate noticeably.

The voltage measured on the frequency control pin was about +1.43V when the counter/CRO indicated 10.000000 MHz but even the application of the 10 Megohm DVM input impedance shifted the frequency somewhat. This could be overcome by using lower resistance values for the voltage divider (currently, the top one is 470K (the pigtail style in the photos below), the lower adjustment trimpot is set at something less than its 1 Meg maximum, probably about 270K).

Inside view of the completed TCXO unit.

The 9V battery serves as an indicator as to how big the PCB actually is.

Closer view of the TCXO end of the PCB. The TCXO is at the RH end of the PCB near the 470K pigtail-style resistor. The 3.3v regulator is directly below it in the photo. The 8v SMD regulator is near the LHS bottom. The white rectangle at top RHS is the 20 turn 1Mohm trimport for adjusting the output frequency.

A view from the other side

The actual frequency is adjusted through the hole in the end of the diecast box.

The diecast box has mounting flanges to make it easy to permanently mount.

The top view of the box as it would be mounted.

The business side of the box : 4 x BNC connectors, the incoming 12V DC power lead and the green power LED.


My long-term plan will be to replace the current alkaline-style 9V battery with a NiMH version and add a series diode and voltage-dropping resistor to allow the battery to be trickle-charged when the external 12V power supply is present. The internal battery will allow the oscillator section to continue to be powered while in transit thus providing better frequency stability. I may yet enclose the TCXO end of the PCB with some silicone (or foam) filler to slow any temperature effects that could cause a frequency shift.

I expect that there will be some ageing of the oscillator with a resulting drift in output frequency so I plan to leave it powered on for some months to try to achieve early ageing. My initial survey of its short-term stability is quite promising though. The day after it was adjusted exactly onto frequency and used to lock a 384 MHz synthesiser, the frequency drift of the synth output was found to be less than 15Hz ( so 15/38.4 = 0.39 Hz at 10MHz ). For a brand new product at the beginning of it's ageing cycle, that's not too bad !