Oscillator Needs Fine-Tuning

Since their invention more than a century ago, crystal oscillators have been foundational to electronic design. They allow for precise timekeeping for the clocks in computers as well as on our wrists, and can do it extremely accurately and inexpensively to boot. They aren’t without their downsides though; a quartz watch might lose or gain a few seconds a month due to variations in temperature and other non-ideal environmental situations, but for working in the world of high-frequency circuits this error is unacceptable. For that you might reach for something like an oven oscillator, a circuit with a temperature controlled chamber able to keep incredibly precise time.

[IMSAI Guy] found this 10 MHz oven oscillator on a site selling bulk electronics at bargain basement prices. But as is unsurprising for anyone who’s used a site like this to get cheap circuits, it didn’t quite hit its advertised frequency of 10.000000 MHz. The circuit design is capable of this amount of accuracy and precision, though, thanks to some cleverly-designed voltage dividers and filtering. One of those voltage dividers allows a potentiometer to control a very narrow range of output frequencies, and from the factory it was outputting between 9.999981 and 9.9999996 MHz. To get it to actually output a 10 MHz wave with eight significant digits of accuracy, a pull-up resistor on the voltage divider needed to be swapped out.

While this was a fairly simple fix, one might wonder how an off-the-shelf component like this would miss the mark in such an obvious way but still go into production. But that’s one of life’s great mysteries and also the fun of sourcing components like this. In this case, the oven oscillator was less than $10. But these circuits aren’t always as good of a deal as they seem.

26 thoughts on “Oscillator Needs Fine-Tuning

    1. More likely parts changed their value over time. We are talking really minuscule adjustment there.

      The other thing is his Agilent counter – unless he has the ovenized oscillator option or some external 10MHz reference (e.g. a GPS receiver) the counter itself is not super accurate and the errors from the instrument are comparable with the thing he is trying to measure. I happen to have the same one.

      So yeah, he got 10.000000 bang on on his counter – but is that really 10MHz?

      1. @Jan said: “The other thing is his Agilent counter – unless he has the ovenized oscillator option or some external 10MHz reference (e.g. a GPS receiver) the counter itself is not super accurate and the errors from the instrument are comparable with the thing he is trying to measure. I happen to have the same one. So yeah, he got 10.000000 bang on on his counter – but is that really 10MHz?”

        Yeah, the problem is you still need a known stable reference to measure against. The easiest method (at present) is a GNSS (e.g. GPS) disciplined source.

        1. Acronym time! I know:
          Oscillator = XO, and
          Temperature Compensated Oscillator = TCXO
          So:
          Voltage Controlled, Temperature Compensated Oscillator = VCTCXO ?
          GPS Disciplined, Voltage Controlled Temperature Compensated Oscillator = GDVCTCXO ??

          1. The crystal in the OP is ovenised, so it’s a VCOCXO :)

            Now, how about we add some more for a GPS disciplined, rubidium controlled, ovenised crystal oscillator.
            Oh, and GPS is ultimately referenced to caesium oscillators too.
            How many layers can we get? :D

  1. There was a really cool QRP oven oscillator circuit that used all passive components to maintain temp but I can’t seem to find it. While on the subject (yet still off topic), for LC oscillators you can use a butterfly plate trimmer and put a negative tempco fixed value on one lead and a positive tempco on the other to address shifts based on temp change. I’ve seen it done in a few older valve designs and tried it myself with good results.

  2. As others have posited, how accurate are the instruments used to measure the parameter being measured ?

    Going further – as a certain Vulcan science officer once stated –
    “instruments only register what they are designed to register, the universe still contains infinite unknowns”.

  3. I have one of those (presumably) surplus 10 MHz OCXO boards bought off Amazon (https://www.amazon.com/dp/B0B5VJK7HJ/) for around twelve bucks. They are a little more expensive today ($13.80) and the price varies widely on Amazon, so be sure to shop around, or wait forever for the AliExpress shipping delay. The frequency adjustment divider does need a small modification to get the OCXO on 10 MHz. But the bigger problem was the on board LM2940 LDO regulator. I found that under load (especially when the OCXO oven was warming up) my switching DC source supply had a lot of ripple, too much for the LM2940 LDO (which is marked TI, but I presume is Chinese counterfeit). The PSRR of a real (not Chinese fake) LM2940 LDO is typically specified at 64 dB at 120 Hz, 9 VDC, and 100 mA out (https://www.ti.com/product/LM2940-N), my switching regulator runs at a couple hundred KHz. Long story short: when the OCXO is warming up there is too much switching pre-regulator current draw which really messes up the OCXO output phase noise. I ran the OCXO temporarily off a Li-Ion battery and the problem went away – but that is obviously not an ideal solution. Anyway, around twelve bucks or less for one of these 10 MHz OCXO boards is still a good deal provided you know what you are getting into in terms of additional work required. Remember; you still need a known precise 10 MHZ reference to calibrate against!

    1. I have several single “aa” cell powered clocks that creep fast in one (big city) location.
      My vehicle clock also creeps when it’s parked there. Many cell towers, etc, in the area.
      Where I’m sitting right now? Car clock stays within a couple~three mins for months, I’ve had the battery clocks here also (where I bought them) and they all run the same few mins a year gain.
      Spend a few months at the big city location and car clock begins to drift fast by several mins a month again. Out of curiosity I’ve swapped the clocks locations back and forth over the last few years and always the same fast drift in the city.
      Ambient (indoor location with heat & AC) temps are usually kept a few degrees cooler in the city location, yet things run faster there. No sun shining on any of them or hvac vents or hot equipment nearby.
      Line/mains powered clocks tend to average out pretty close to correct, baring any power outages.
      Feels like I should have some wires strung up and trying to drive LED lighting. ;)

  4. one might wonder how an off-the-shelf component like this would miss the mark in such an obvious way but still go into production

    I’m going to assume that his frequency counter is truly accurate, and that the oscillator really isn’t meeting spec. In that case, I can see how a bad module, or even a lot of them, could be produced. Anything from a pot or resistor, to the gain device, to the crystal itself could be out of spec because it wasn’t tested properly before assembly or because the test equipment went out of cal.

    For that matter, maybe most of those impossibly cheap modules coming from Ali Express were within spec after all, and he just got one that had been dropped or otherwise mis-handled.

  5. Many applications do not need an axact frequency – they need a stable frequency.
    e.g a modern frequency counter with a processor can more easily correct the frequency by multiplication, than by actually trimming the oscillator, which requires a stable reference voltage, DAC etc.
    Similarly DDS systems don’t care what fclk is as long as they know what it is.
    In other cases the oscillator will be disciplined by GPS or locked to another system frequency. Again the free running frequency of the oscillator does not matter.

  6. I have the same board and it seems to be rock solid but high in frequency although I have not yet made a GPSDO to confirm. Two freq. counters read the same: 10,000,048 Hz at V_CTRL 4.5V and 10,000,017 Hz at V_CTRL 0.2V so it’s a few ppm high.
    Older original is 100k trimpot and this has been updated to 200k, look at the board pics.
    These SZ-Plaza modules appear ranked. CTI OC5SC25 17022 QR:170222607 but I got no info.
    Also the “sine” output filter might load down the oscillator too much and next I’ll remove it to see if I can get freq. to come down.

    The LM2940 clone is junk it regulates terrible. Needs over 10V in to come up to 5V out, so it runs hot.

  7. If you really want to get it to be 10.00000 MHz, try researching “Lars GPSDO”. This oscillator works pretty well in that setup. Been using one for a couple years now. Not as good as my Bodnar mini, but good enough for what I need to do. I bought just the oscillator, used, on *bay. I suspect the ones on these modules are used.

    1. Not really. The first trick for ovens is not so much that you hold the temperature stable, but that you hold the crystal temperature at a point where the frequency does not change with temperature.
      The crystals have a cubic curve, and the temperature is set to be on the flat top of one of the parabolic humps. dF/dT =0 at the oven point. dF/dT can be less than 1% of what an uncompensated crystal has.
      This means that if you change the temperature away from that point enough to move the frequency (i.e. onto the steep flanks of the curve), the frequency is no longer even close to stable with the inevitable dT (as the “oven” is far from perfectly constant temperature)

  8. There is something weird going on with the significant digits in the article- 10.000000 (ten with 6 zeros) then the range of error is quoted as 9.999981 (6 digits to right of decimal) and 9.9999996 MHz (7 digits to right of decimal).
    Definitely pedantic but also definitely an order of magnitude different kinda by definition and when working so far down the accuracy/precision rabbit hole surely matters.
    .
    10.000000 MHz is simply 10,000,000 Hz by the way, and an difference of even 1 Hz is a huge difference, as would be +/- 19Hz as the 9.999981 figure would suggest. Or allowing for a typo, somewhere between -19 and -4 Htz, still sucks.

  9. While this was a fairly simple fix, one might wonder how an off-the-shelf component like this would miss the mark in such an obvious way but still go into production. But that’s one of life’s great mysteries and also the fun of sourcing components like this.

    Is this some kind of a joke I did not get? I mean, how could you possibly come to this conclusion after watching the video? It was a problem with a cheap Chinese board that required a slight modification of a passive component, not a faulty OCXO.

    Also, I’m no expert though, I always believed that OCXO are meant to be stable, not accurate out-of-the-box. Thus the calibration potentiometer on the board.

    Also#2, if you look closely at the case, there’s something resembling a production date (you can google the part images for comparison). So it’s likely a 10-year-old part. And some datasheet I got after 15 seconds of googling specifies ageing at up to 0.4 ppm over 10 years. Again, I’m no expert, but my back-of-the-envelope calculations tells me that 9.9999996 MHz is well within the specified range.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.