Author Topic: Lars DIY GPSDO with Arduino and 1ns resolution TIC  (Read 274204 times)

0 Members and 3 Guests are viewing this topic.

Offline Johnny B Good

  • Frequent Contributor
  • **
  • Posts: 811
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #650 on: September 27, 2020, 02:46:58 am »
I'll certainly look into adding individual regulators for every IC. I think I'll adjust the main reg to be a 12V-5V buck and have individual 3.3V linears powering everything directly. That way I don't have to worry too much about power dissipation with a 12V->3.3V linear conversion but I can still get relatively low-ripple 3.3V.

Unfortunately, LDOs are not very good at removing input supply ripple. You might want to look into adding a "capacitance multiplier" after the buck regulator to have a clean input to the LDOs:


 You're only bloody right about relying on LDOs as a switching hash filter add on to a switching converter since above 100KHz they start looking like high pass filters. The real value of using an LDO, post converter output, is to restore regulation lost the the resistance of an RC LPF placed between the switching converter's output and the input to the LDO.

 It's the RC LPF which deals with suppression of switching hash - the LDO is simply there to regulate the voltage unmolested by switching hash and ripple from the converter stage.

 The 'capacitor multiplier has its own issues of energy loss and is not really a viable solution in this type of ripple suppression, being aimed at dealing with the more sedate 100 to 120Hz ripple components of a conventional mains voltage psu.

 The charm of the humble RC LPF, apart from its compact simplicity, is its almost total lack of self resonance effects into the hundreds of MHz that such switching hash frequencies can extend into. However, that benign filtering characteristic comes with an efficiency cost and a requirement to restore voltage regulation with an LDO so tends to be used to power the more sensitive and less power hungry parts of a system. If you feel the need for such measures, target their use with with care.

John
« Last Edit: September 27, 2020, 03:24:03 am by Johnny B Good »
John
 

Offline Dbldutch

  • Regular Contributor
  • *
  • Posts: 205
  • Country: nl
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #651 on: September 27, 2020, 03:36:51 am »
@Mike

I have seen the same DAC slopes for several of my second-hand OCXO's as soon as I powered them up. For some of them, it took several months to stabilize, so I just left them with power on, and kept them well insulated before I started using them in my GPSDO's.

Even after many months of using them in a GPSDO, after a cold start, it takes a few days for some of them to really settle. And I'm witnessing this again even with my temperature controlled enclosures as well, so it's not always temperature related. On top of that, my Bliley still has some strange jumps in the DAC value when it starts from a cold state. After several days it is rock-stable now, but it used to take several weeks before the jumps stopped.

The good news is that eventually, they all stabilize. At least that's what I've seen with the 6 different used OCXO's I have.

It has been reported that the rough handling of the old equipment they were in, the removal from the old PCB's and finally the transport could be the cause. These things apparently can be extremely delicate.

The net-net of all this is that you should wait for the OCXO's to stabilize before setting the temperature correction and also before analyzing your GPSDO with TimeLab, however tempting that may be.
« Last Edit: September 27, 2020, 04:15:35 am by Dbldutch »
 
The following users thanked this post: Johnny B Good

Offline thinkfat

  • Supporter
  • ****
  • Posts: 2152
  • Country: de
  • This is just a hobby I spend too much time on.
    • Matthias' Hackerstübchen
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #652 on: September 27, 2020, 06:57:17 am »
The OCXO either loses heat or it heats up more and more. In any case, the temperature control does not seem to be working.

Nah, that's typical for 2nd hand OCXOs that have been off for a while, ripped off of a PCB, bumped around in junk bins, mishandled in shipping, etc. Like Dbldutch said, it's going to take weeks if not months for to stabilize. I have the same behavior right now with a used MV85A that I use in a GPSDO. Short term stability is quite nice, but initially it drifted like crazy. It's been over a month now and it still hasn't completely found its bearing. It's much, much better now, though.
Everybody likes gadgets. Until they try to make them.
 
The following users thanked this post: Johnny B Good

Offline Mike99

  • Regular Contributor
  • *
  • Posts: 130
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #653 on: September 27, 2020, 10:11:27 am »
Thanks for all your suggestions but I think I've worked out what's causing the DAC slope.

It corresponds to 2mV per day which for my OCXO equates to 0.9ppb (I measured the sensitivity before fitting it to the GPSDO).

The OCXO aging spec is +/- 1ppb per day after 72 hours of operation so this looks like a good fit!

This OCXO was sold as new, so although the date code is 2011 my assumption is that it has never been used until now (the pins had no evidence of being soldered).

What about the other graphs? Will the shape of the MDEV curve change after running for a few weeks?

Mike
 

Offline Mike99

  • Regular Contributor
  • *
  • Posts: 130
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #654 on: September 27, 2020, 10:13:45 am »
vref use on GPSDO?


I have an OCXO that has both the EFC and a vref connection. Its my understanding that this is the point that represents the highest tip of the control voltage range. Is it used?

No, I have a separate precision voltage source for Vref.

Mike
 

Offline Mike99

  • Regular Contributor
  • *
  • Posts: 130
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #655 on: September 27, 2020, 10:15:04 am »
The OCXO either loses heat or it heats up more and more. In any case, the temperature control does not seem to be working.

I haven't implemented temperature control yet. tempCoeff=0.

Mike
 

Offline Mike99

  • Regular Contributor
  • *
  • Posts: 130
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #656 on: September 27, 2020, 10:20:06 am »
That was bloody fast work! I started working my way from using a NEO-M8N module as a cheap 10MHz/30MHz reference to check the calibration of an HF Transceiver I hadn't re-calibrated in over twenty years for lack of a suitable antenna and propagation conditions to receive the 10MHz WWV broadcast I'd last used, gulp! back in the early nineties!

Hi John

That's precisely my reason for building this, as last year I bought a Yaesu FT-840 transceiver and wanted to check its calibration. I have an end fed half wave antenna which allows me to receive WWV after midnight, although it's very weak and probaby not a good calibration source!

Mike
 

Offline Dbldutch

  • Regular Contributor
  • *
  • Posts: 205
  • Country: nl
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #657 on: September 27, 2020, 10:29:58 am »
Because I don't have a counter with a high enough resolution and precision to measure the GPSDO 10MHz output other than by using the TimeLab "trick", I have been on the look-out for an alternative.

It seems like this "competitor" to the Lars GPSDO has an interesting aside, a counter that has the sought after resolution and precision.
Have a look: https://www.instructables.com/id/GPSDO-YT-Disciplined-Oscillator-10Mhz-Reference-Fr/
Any comments?

I have ordered an ATMEGA 328p chip and will try to only use the counter function.
It may work, or it may not...

I'll keep you posted.
 

Offline billy_gr

  • Newbie
  • Posts: 6
  • Country: gr
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #658 on: September 27, 2020, 11:14:45 am »
Because I don't have a counter with a high enough resolution and precision to measure the GPSDO 10MHz output other than by using the TimeLab "trick", I have been on the look-out for an alternative.

It seems like this "competitor" to the Lars GPSDO has an interesting aside, a counter that has the sought after resolution and precision.
Have a look: https://www.instructables.com/id/GPSDO-YT-Disciplined-Oscillator-10Mhz-Reference-Fr/
Any comments?

I have ordered an ATMEGA 328p chip and will try to only use the counter function.
It may work, or it may not...

I'll keep you posted.

Use this one (updated version )
https://www.instructables.com/id/GPSDO-YT-10-Mhz-Lcd-2x16-With-LED/

I have build it on a breadboard before trying LARS version, "looks" accurate, meaning i have tried on my counter while using LARS as a reference and then this one both are stay locked at 10MHz (0,001 Hz)
 
The following users thanked this post: Dbldutch

Offline 0xFFF0

  • Regular Contributor
  • *
  • Posts: 87
  • Country: de
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #659 on: September 27, 2020, 11:42:16 am »
Have a look: https://www.instructables.com/id/GPSDO-YT-Disciplined-Oscillator-10Mhz-Reference-Fr/
Any comments?

These GPSDO work with a FLL not with a PLL. The lock is very fast and stable. Are there any further experiences with this type? Unfortunately there is no source code from the project.
« Last Edit: September 27, 2020, 11:44:12 am by 0xFFF0 »
 

Offline 0xFFF0

  • Regular Contributor
  • *
  • Posts: 87
  • Country: de
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #660 on: September 27, 2020, 11:48:10 am »
I've just run my new GPSDO with the Vectron OCXO for a couple of days and would appreciate the experts' opinion on the results.

I have a gain of 590, TC of 200s and TempCoeff of 0. The OCXO temperature varied by less than two degrees.

I'm curious about the slope on the DAC value.

Thanks,

Mike

So far I have bought 3 Vectrons on ebay. The first did not work at all, the second the REF-V was defective, the third finally worked. I can't make the seller responsible now, but mostly they are destroyed during transport.
 

Offline 0xFFF0

  • Regular Contributor
  • *
  • Posts: 87
  • Country: de
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #661 on: September 27, 2020, 11:57:27 am »
I'll certainly look into adding individual regulators for every IC. I think I'll adjust the main reg to be a 12V-5V buck and have individual 3.3V linears powering everything directly. That way I don't have to worry too much about power dissipation with a 12V->3.3V linear conversion but I can still get relatively low-ripple 3.3V.

Unfortunately, LDOs are not very good at removing input supply ripple. You might want to look into adding a "capacitance multiplier" after the buck regulator to have a clean input to the LDOs:


 You're only bloody right about relying on LDOs as a switching hash filter add on to a switching converter since above 100KHz they start looking like high pass filters. The real value of using an LDO, post converter output, is to restore regulation lost the the resistance of an RC LPF placed between the switching converter's output and the input to the LDO.

 It's the RC LPF which deals with suppression of switching hash - the LDO is simply there to regulate the voltage unmolested by switching hash and ripple from the converter stage.

 The 'capacitor multiplier has its own issues of energy loss and is not really a viable solution in this type of ripple suppression, being aimed at dealing with the more sedate 100 to 120Hz ripple components of a conventional mains voltage psu.

 The charm of the humble RC LPF, apart from its compact simplicity, is its almost total lack of self resonance effects into the hundreds of MHz that such switching hash frequencies can extend into. However, that benign filtering characteristic comes with an efficiency cost and a requirement to restore voltage regulation with an LDO so tends to be used to power the more sensitive and less power hungry parts of a system. If you feel the need for such measures, target their use with with care.

John

Capacitance Multiplier play their role in audio equipment. They will filter audible hum. I think in GPSDO they don't make any sense
« Last Edit: September 27, 2020, 11:59:48 am by 0xFFF0 »
 

Offline thinkfat

  • Supporter
  • ****
  • Posts: 2152
  • Country: de
  • This is just a hobby I spend too much time on.
    • Matthias' Hackerstübchen
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #662 on: September 27, 2020, 12:08:44 pm »
They can adjust frequency every 1000 seconds only. The rest of the time the OCXO effectively drifts around. No temperature compensation either.  Suitable for an Rb standard, or for an extremely good OCXO. Not possible to provide 1PPS output, either, as they're only frequency locked.
Everybody likes gadgets. Until they try to make them.
 

Offline Mike99

  • Regular Contributor
  • *
  • Posts: 130
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #663 on: September 27, 2020, 12:55:13 pm »
So far I have bought 3 Vectrons on ebay. The first did not work at all, the second the REF-V was defective, the third finally worked. I can't make the seller responsible now, but mostly they are destroyed during transport.

I was lucky, mine came from a test equipment supplier a few miles from my home. It's a shame he didn't have any more.

Mike
 

Offline nealix

  • Regular Contributor
  • *
  • Posts: 76
  • Country: us
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #664 on: September 27, 2020, 04:24:17 pm »
Hi guys:

New to this forum thread.  I am very interested in bread-boarding my first GPSDO attempt, and have some Bliley and other 5 and 12 volts OCXO's in the parts bin.  I have already built various Arduino Nano projects and also have an Agilent 53131A counter and a resonable scope.   I have been using a "commercial" BG7TBL eBay GPSDO for the last few years.  So now I would like to learn more and try building one.    QUESTIONS:

1.  What is the latest version schematic that has evolved from all the discussion here about improvements?
     Is this exists, does anyone share the arduino sketch code so I can get started learning how it works?

2.  Does anyone share the KiCad files so I can learn to adapt a PCB to the OCXO and parts that I have?
     (I have recently installed KiCad, and need an excuse to start learning it :-)  )

3.  Has anyone in the forum made a PCB with multiple mounting holes for the various OCXO types/sizes?

4.  Is it best to use a square wave or sine wave OCXO for this project?

Sincere Thanks in advance for any mentoring/guidance,

Neal
N6YFM
 

Offline Dbldutch

  • Regular Contributor
  • *
  • Posts: 205
  • Country: nl
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #665 on: September 28, 2020, 09:18:22 am »
@nealix

I suggest that first of all, you read this complete blog from beginning to end at least once. Yes, it may take you a day or two, but the information in here is invaluable. All what you're asking for is there, including the source code.

If you want, you can also have a look on my personal blog for more information about what I did. On that blog is also a link to my Github site with code, schematics and PCB information, albeit made with DipTrace.

http://www.paulvdiyblogs.net/2020/07/a-high-precision-10mhz-gps-disciplined.html

Be careful though, this topic can be very contagious, before you realize it, you're a time-nut.
 
The following users thanked this post: Fennec

Offline nealix

  • Regular Contributor
  • *
  • Posts: 76
  • Country: us
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #666 on: September 29, 2020, 04:21:01 am »
@Dbldutch

I read your entire blog.  Thanks.

I have a question about the GPS modules.   You talked about the M8T (expensive) and less cost M7N and Neo 6M modules.
Once you finally found a good view of the sky, had enough satellites, and saved coordinates in the EEPROM, did you still find the
need for the expensive M8T, or did you find adequate operation/accuracy using the Neo 7N or M?
(I should qualify that I am not looking for perfection, just reasonable accuracy for the average radio and test equipment hobbyist.
Also, I do have a proper outdoor GPS antenna mounted in a 360 degree clear-sky view.  My GPS disciplined dual-timezone wall clock
project always shows 12 sats with it's NEO 6 module)

Second question -  You mentioned in your blog's GPS section;
"One other mistake I made was that I didn't save all the settings into the NEO EEPROM and so I lost them after a power cycle. Because I no longer monitored the NEO output, I was unaware of this."

Where do I read to learn more about how to do the above, how to store things in the EEPROM?  Is there a forum post, or is that from
some other web site or article or user manual?   Would it perhaps be the u-center program at the Ublox site?
And is it just the local coordinates that you store so after a power cycle it can lock faster?  Or do you make other settings such
as modes, etc? 

Thanks again for getting me started.   I have some GPS modules already, and also ordered some of the other parts today.

Cheers,

Neal
 

Offline thinkfat

  • Supporter
  • ****
  • Posts: 2152
  • Country: de
  • This is just a hobby I spend too much time on.
    • Matthias' Hackerstübchen
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #667 on: September 29, 2020, 06:38:36 am »
@Dbldutch

I read your entire blog.  Thanks.

I have a question about the GPS modules.   You talked about the M8T (expensive) and less cost M7N and Neo 6M modules.
Once you finally found a good view of the sky, had enough satellites, and saved coordinates in the EEPROM, did you still find the
need for the expensive M8T, or did you find adequate operation/accuracy using the Neo 7N or M?
(I should qualify that I am not looking for perfection, just reasonable accuracy for the average radio and test equipment hobbyist.
Also, I do have a proper outdoor GPS antenna mounted in a 360 degree clear-sky view.  My GPS disciplined dual-timezone wall clock
project always shows 12 sats with it's NEO 6 module)

Second question -  You mentioned in your blog's GPS section;
"One other mistake I made was that I didn't save all the settings into the NEO EEPROM and so I lost them after a power cycle. Because I no longer monitored the NEO output, I was unaware of this."

Where do I read to learn more about how to do the above, how to store things in the EEPROM?  Is there a forum post, or is that from
some other web site or article or user manual?   Would it perhaps be the u-center program at the Ublox site?
And is it just the local coordinates that you store so after a power cycle it can lock faster?  Or do you make other settings such
as modes, etc? 

Thanks again for getting me started.   I have some GPS modules already, and also ordered some of the other parts today.

Cheers,

Neal

Only timing receivers like the M8T will have an "overdetermined clock mode" which calculates precise timing instead of precise position (can't do both): You supply a precise position, the receiver calculates precise time. A general purpose receiver cannot make use of an externally supplied precise position, it will calculate position and time for every measurement interval, usually once per second. Accuracy of the time pulse generally depends on the precision of the position, so if the position uncertainty is high, so is the time uncertainty. With a general purpose receiver under open sky, the position accuracy will be maybe down to 2 or 3 meters. But as you can feed a timing receiver with an arbitrarily precise position, you can get the uncertainty it down into the centimeter regime.

Eventually, any GPS module will do, but of course there will be an impact on the stability. A timing receiver after a good survey-in will output a time pulse accurate down to 1ns, if your GPSDO software makes use of the quantization correction. A general purpose receiver will be in the >20ns range. This means heavier filtering and longer time constants will be needed to achieve good short-term stability. For long term stability it doesn't matter a lot. Quality of the OCXO matters, though: An OCXO that ages fast or has high susceptibility to temperature changes will require a faster control loop, which will not be able to filter the timepulse noise of the GPS as efficiently.

Regarding configuration of the Ublox modules and saving to EEPROM, that's done with the U-Center software indeed. But I'm not aware that you can also save a position. I think after a restart, if you don't feed a position externally or start a survey-in, it will function as a regular GPS receiver.
Everybody likes gadgets. Until they try to make them.
 
The following users thanked this post: Dbldutch

Offline 0xFFF0

  • Regular Contributor
  • *
  • Posts: 87
  • Country: de
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #668 on: September 29, 2020, 08:40:38 am »
You can buy these modules (not cheap, ~$130):
Multi-band GNSS receiver with nanosecond-level timing accuracy:
https://www.u-blox.com/en/product/zed-f9t-module
 

Offline Dbldutch

  • Regular Contributor
  • *
  • Posts: 205
  • Country: nl
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #669 on: September 29, 2020, 08:53:53 am »
Neal,

If you have a good location for the antenna with a 360 degrees view of the sky, there is less need to use a timing receiver. I have a very poor view of the sky which is why I have to rely on a timing version.

The U-Blox website gives you access to the datasheets and documentation. I could not find much information in blogs so I had to look it all up and give it a try.
There are cheaper sources for timing receivers other than buying them from U-Blox, Google is your friend.

Success!
 

Offline Dbldutch

  • Regular Contributor
  • *
  • Posts: 205
  • Country: nl
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #670 on: September 29, 2020, 12:39:49 pm »
I got a little tired of re-programming my GPSDO's after I changed a fan controller parameter while tuning the PID controller.
I have now added code to the Lars program to incorporate the settings of the minimum PWM, the maximum ambient temperature and the Kp, Ki and Kd gain parameters. Both the info and help display(f1) and the list of current variables (f2) incorporate these changes.

The code for version 3.60 is on my Github https://github.com/paulvee/Lars-GPSDO

Enjoy!
 

Offline Mike99

  • Regular Contributor
  • *
  • Posts: 130
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #671 on: September 29, 2020, 04:19:22 pm »
I should qualify that I am not looking for perfection, just reasonable accuracy for the average radio and test equipment hobbyist.

Hi Neal, and welcome to the forum.

I am only a couple of months ahead of you on the learning curve and will leave the difficult answers to the experts  :)

However, my needs are the same as yours and my philosophy is to start cheap and work up. On that basis I bought a couple of GY-GPSV3-NEO modules on eBay for UKP7 each and an active GPS antenna for UKP9. The antenna is mounted on the house wall and can see about half the sky. It works fine for me (so far ...) although my GPS modules are the NEO-7M which doesn't have the EEPROM so you can't update the firmware.

Mike
G8GYW
 

Offline 0xFFF0

  • Regular Contributor
  • *
  • Posts: 87
  • Country: de
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #672 on: September 29, 2020, 04:48:52 pm »
Thanks again for getting me started.   I have some GPS modules already, and also ordered some of the other parts today.
Cheers,
Neal

I can recommend this:
 

Offline nealix

  • Regular Contributor
  • *
  • Posts: 76
  • Country: us
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #673 on: October 05, 2020, 01:12:07 am »
Just wanted to show the first results of my attempts to regulate the temperature inside the GPSDO enclosure, in an attempt to isolate the OCXO temperatures from the room temperature changes. All this to get a "pure" DAC result, devoid of temperature effects.

The data is taken from my Trimble based GPSDO, where the OCXO itself is insulated from all 6 sides in a 10-15mm thick hard-foam box. Inside the box is one of the LM35 temperature sensors.

I'm using the other LM35 that measures the ambient temperature right on top of D1/R1/C1 inside the enclosure to drive a 30mm 5V DC fan with a PWM signal, coming from a simple PID controller. Both LM35's are now low-pass filtered to get rid of the noise.

@Dbldutch

When you say that the LM35 is low-pass filtered, I assume that is in software?   Or have you updated a schematic to show
the interfacing of the LM35 and filter?    I have already downloaded and looked at;   Controller Schematic V2_1.jpg

Is C11 and R12 the filtering you mention, or is it in software on your version 3.6?

Cheers,

Neal
 

Offline Dbldutch

  • Regular Contributor
  • *
  • Posts: 205
  • Country: nl
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #674 on: October 05, 2020, 04:18:08 am »
@Neal:

The capacitor and resistor in the hardware actually does very little to filter the LM35 output. It helps but the output still jitters a lot from second to second.

I used a quick-and-dirty IIR filter to average the acquisitions in the software. In my V3.6 software, look at lines 97..101 for the details.

Because Lars also uses one of these values for his temperature compensation, in a (for me) rather complicated way that I didn't want to disturb, I only filter the LM35 outputs for the status display. They are at lines 1040 and 1079. I use this status display for my analysis in Excel.

I hope this helps.
 
The following users thanked this post: nealix


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf