[time-nuts] Another "atomic" clock question

Chris Albertson albertson.chris at gmail.com
Fri Mar 7 15:31:06 EST 2014

On Fri, Mar 7, 2014 at 10:28 AM, Lars Walenius
<lars.walenius at hotmail.com> wrote:
> Chris, about using one Arduino for two GPSDO controllers:
> Even if a microcontroller has lots of capacity I would recommend to use separate controllers for each oscillator. One of the reasons is what Tom van Baak said about using only one interrupt to avoid jitter and even if you trigger both channels from the same PPS and have just one interrupt you will have a problem that you can´t read two ADC´s at the same time.

You don't have to read both at the same time.  All you need is to have
a constant time between the interrupt and when you read the ADC. That
constant can be any reasonable number so long as it remains constant

> Even the HC390 I wouldn´t use for two different oscillators to prevent crosstalk. Both the processor and HC390 is so cheap it isn´t worth the risk IMO.

Risk?  It's easy to measure.  Risk is when you don't know what is
going to happen.  But in this case we can test.

> Actually I would also recommend to put them in separate boxes even if it is more work  (and I´m lazy ) to get best performance.

I think you might be addressing pico seconds on a system that works in
the few nano seconds range.    A serial commanded Rb oscillator moves
in such large steps that I'm 100% sure the step quantization error
will dominate everything.  The step size is something like 5E-11.  But
the stability I expect will be very good.
> Having two GPSDO´s that you can compare is very nice as long as you understand how they correlate , if that is not what you want to test. Of course you can also set one or both in hold mode to test them freerunning.
> I have thought of connecting the M12 to the Arduino and if someone can help with code to get the sawtooth correction value into the Arduino and decoded I would be glad to have it.

I'm looking for an OCXO.  Not much reason to start before I find one.
 People are over bidding on eBay for 30 year old salvage parts.
eventually I'll win one at a reasonable price.   Then I'll write up my
results.   In the mean time I've started a wholesale refactoring of
the posted Arduino code.  I need t make it  a bit more modular and

I have an Motorola Oncore UT+ type GPS.  I think it might have the
same sawtooth.    I'm pretty sure there is code in the standard NTP
distribution to read the Oncore type data and (maybe sawtooth???)   I
plan to read the NTP drivers and borrow whatever is usable.

I did just build and finish testing a serial interfaced LCD display.
Now I can display states using just two Arduino pins.  (Without the
serial interface an LCD takes 6 to 10 pins)  I'm using I2C so I can
add other devices to the same serial interface, like a DAC or whatever

> Lars
> From: Chris Albertson
> On Wed, Mar 5, 2014 at 5:43 PM, Didier Juges <shalimr9 at gmail.com> wrote:
>> Tom and Bob,
>> It is not obvious to me that it is "easier" to simply apply a correction in
>> nS increments with a range as wide as 100nS. How is this done? Using
>> switched delay lines or delay gates?
> Here is my plan for processing saw tooth data.  If it's not going to
> work I'd rather hear about it now then a month from now after I've put
> in some effort.
> This is going into Lars' Arduino based GPSDO.  Every second I read the
> voltage on a TIC capacitor.  This tells by the phase in nanoseconds
> between the PPS and the OCXO.  Then I add whatever the current GPS
> sawtooth value is to whatever my TIC said.   I compare this to a set
> point.  This is the phase error.  The OCXO is adjusted based on a
> filtered version of this error.
> So in short, I don't correct even try to delay the pulse.  I don't see
> any need to do that.  I measure the pulse and get a number in
> nanoseconds.  then I use sawtooth to correct the number.
> It seems way-hard and with no purpose to correct the pulse and then
> measure it.  Better to correct the measurement.  I think it is more
> accurate too a delay could never be perfect.
> The controller has LOT of spare capacity so I don't see way I can't
> add one of more TIC channels and a few more DACs  I should be able to
> discipline an OCXO and my Rb  oscillator from the same GPS PPS input.
>  The 74HC360 is only 1/2 used an Arduino has enough spare pins.  Any
> one more 74HC4046 and some passive parts would be required to build a
> dual channel GPSDO.
> It will be interesting to look at andompare the 10MHz outputs of two
> oscillators that are being disciplined by the same controller and GPS
> receiver.
> --
> Chris Albertson
> Redondo Beach, California
> _______________________________________________
> time-nuts mailing list -- time-nuts at febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
> _______________________________________________
> time-nuts mailing list -- time-nuts at febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.


Chris Albertson
Redondo Beach, California

More information about the time-nuts mailing list