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

0 Members and 2 Guests are viewing this topic.

Offline metrologist

  • Super Contributor
  • ***
  • Posts: 2199
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #200 on: December 29, 2018, 02:44:14 pm »
Thank you, Miti, for posting, and I am with your thoughts on Lars.

I've had some setbacks. First, my Jupiter GPS module fails to start. I played around for a day with it and at the end I reversed polarity the power and it got warm. I bought this GPS many years ago just to make a GPSDO. Then one of my UCCM GPSDO modules died. This is similar to the bg7tbl but by another. I'm not sure if just the 6V buck converter died or something on his interface board or the UCCM module. Another thread...

So, I dug out a Lassen GPS for the PPS. What's the best way to deal with the PPS here - I don't think there is anything in the gps to set? It keeps lock at TC=160. The sawtooth period started out around 3 seconds and seems to have increased to ~13 seconds. It's not supposed to swing that far, should be within 100ns. I'm also running a timelapse video of the two 10MHz signals on a scope, to see the wander and drift.

30X, 82mins:
« Last Edit: December 30, 2018, 12:26:50 pm by metrologist »
 

Online Miti

  • Super Contributor
  • ***
  • Posts: 1320
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #201 on: December 31, 2018, 12:30:42 am »
Looking at your video, I doubt you have a lock there. I have a Ublox GPS set to output 10MHz and I connected both, the GPSDO and the GPS, to the oscilloscope. They are pretty much locked as you see in the picture for weeks. You can see the expected jitter of about 20 ns but the two signals don't drift more than +/- 10 ns from what you see in the picture and always come back into alignment. The drift is so slow, it takes minutes or tens of minutes to go 10ns left or right and to come back. They never drift one full period.
Fear does not stop death, it stops life.
 

Offline edpalmer42

  • Super Contributor
  • ***
  • Posts: 2260
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #202 on: December 31, 2018, 01:55:26 am »
To me, it looks like it's locked but there's noise on the oscillator's EFC line.  The noise could be coming from the power supply or the PLL circuitry.  The frequency excursions are so small that you might not be able to see or measure the noise.

If it wasn't locked, I'd expect the frequency difference to be larger and the drift would be in one direction rather than the back-and-forth that occurs.  You can see the square wave tends to drift towards the right, but occasionally pulls back to the left to try and maintain the phase difference between the two.

Ed
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 4670
  • Country: nr
  • It's important to try new things..
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #203 on: December 31, 2018, 08:51:38 am »
Also doublecheck the atmega's Vcc decoupling. The noise at its 5V Vcc directly affects the EFC.
https://www.eevblog.com/forum/projects/lars-diy-gpsdo-with-arduino-and-1ns-resolution-tic/msg1933384/#msg1933384
« Last Edit: December 31, 2018, 08:54:27 am by imo »
 

Offline metrologist

  • Super Contributor
  • ***
  • Posts: 2199
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #204 on: December 31, 2018, 02:04:20 pm »
There may be EFC noise, but that is nothing we can see here. I am looking at the dac swings. I don't really know yet how the time constant is factored. I sort of expected the calculation to occur as some kind of average over the duration, but I see a new dac value every tic so I suspect a running average.

For fun, I just cranked the TC to 6000 and increased damping. The phase would then drift about 180 deg over an hour and the dac would cycle through 3 values as the sawtooth resets.
 

Offline pepermint

  • Newbie
  • Posts: 1
  • Country: pl
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #205 on: December 31, 2018, 04:44:04 pm »
Hello for a few days testing versions of mini gpsdo. Very fast stabilizes OCXO.
,

Thanks to Lars for a very good project.

I wish you all happy and prosperous New Year

best regards

73 Marek SP4ELF
 
The following users thanked this post: Satbeginner

Online Miti

  • Super Contributor
  • ***
  • Posts: 1320
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #206 on: January 01, 2019, 12:25:24 am »
There may be EFC noise, but that is nothing we can see here. I am looking at the dac swings. I don't really know yet how the time constant is factored. I sort of expected the calculation to occur as some kind of average over the duration, but I see a new dac value every tic so I suspect a running average.

For fun, I just cranked the TC to 6000 and increased damping. The phase would then drift about 180 deg over an hour and the dac would cycle through 3 values as the sawtooth resets.

Metrologist,

If you see a different DAC every second, you're not locked. Once it locks, it is stable over longer or shorter periods of time, depending on the TC and the stability of your OCXO. Take a look at mine below. Can you post a screen shot?
Fear does not stop death, it stops life.
 

Offline metrologist

  • Super Contributor
  • ***
  • Posts: 2199
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #207 on: January 01, 2019, 03:07:58 pm »
Miti, the red trace in the earlier plot shows the dac setting. I'm just playing around with this very lousy GPS. The sawtooth correction is over 200ns. I can get lock with lower TC, but the frequency wanders all around following that PPS - you can see it bouncing in the video. It would be better to average more tics and I was trying with very long TC to accomplish that, but then no lock. I need to spend some time with the code and maybe make some modifications.

« Last Edit: January 01, 2019, 03:14:37 pm by metrologist »
 

Offline bingo600

  • Super Contributor
  • ***
  • Posts: 1976
  • Country: dk
 

Offline jpb

  • Super Contributor
  • ***
  • Posts: 1771
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #209 on: January 03, 2019, 04:51:20 pm »
Sad news  :'(  :'(
https://www.eevblog.com/forum/metrology/farewell-to-our-friend-lars/

/Bingo
Yes, very sad. Lars was so helpful even when he was very unwell and undergoing treatment he still took the time to give detailed responses to technical questions.
 
The following users thanked this post: cdev

Offline cdev

  • Super Contributor
  • ***
  • !
  • Posts: 7350
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #210 on: January 04, 2019, 12:49:47 am »
I think the biggest favor we could do for Lars is learn from his design and postings and refine his GPSDO/TIC design while keeping it affordable to all.

It would be great to see more of the principles of accurate measurement incorporated into the body of knowledge that technically literate people learn to be so.

I know things like measuring where lightning strikes by time of arrival using GPS timing, seeing how all the pieces fit together to make some amazing accomplishment happen would make a lot of kids eyes light up.

The really cynical discussion going on in another thread has been making me think just how much we all need that for our sanity. It really is important not just to have dreams, but to actually realize them.

Knowledge and the scientific process is a magical thing and a principle that not only makes life interesting, it also will carry somebody through a lot of hard times.
"What the large print giveth, the small print taketh away."
 

Offline Squiddaddy

  • Regular Contributor
  • *
  • Posts: 90
  • Country: us
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #211 on: January 04, 2019, 01:51:12 am »
I had recently gathered up the parts to start building his gpsdo. I will make the effort to complete it.
RIP, and thanks for sharing your knowledge.
 
The following users thanked this post: Marco1971

Offline PT_Dreamer

  • Contributor
  • Posts: 40
  • Country: pt
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #212 on: January 07, 2019, 12:05:14 am »
Can anyone help me please?

I have been trying to tune my GPSDO, but I'm having some issues.

I started by limiting the OCXO frequency span with some resistors to the point where with "h1" I get an average of 57 for diff_ns and with "h65535" an average of -83. I think this makes the VCO range 140ppb so I set the gain to 465 (≈65536/140).
With this gain and default time constant I get a lock with no issues.
I then tried to tune the time constant. For that I set the time constant to 4 and ran timelab for frequency difference as DAC *2.142E-12 .
This is what I got for MDEV:
 

According to the documentation I thought that the TC should be where the graph inflects from descent to crescent, so it should be about 1000 on the graph above.
Issue is that I can't get a log with TC's bigger than 300. What am I doing wrong?

Also about the linearization parameters I have read the documentation again and again but I just don't get it, I'm supposed to change the TIC offset to 1000 and then?

Any help? Thanks!

P.S.-Just read that Lars passed away, my condolences to the family and friends.
 

Offline metrologist

  • Super Contributor
  • ***
  • Posts: 2199
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #213 on: January 07, 2019, 04:10:46 pm »
Which GPS are you using and do you know the PPS jitter? Also, can you post some of your log data when locked at TC=300?
 

Online Miti

  • Super Contributor
  • ***
  • Posts: 1320
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #214 on: January 07, 2019, 08:52:13 pm »
Leave the offset at 500. Try going from low to high with the TC. Set it to 200 and let it lock. After few hours go to 300 and so on. Do you have temperature sensors installed? Is the temperature compensation enabled?  Post a screen shot after you send "f2". Keep in mind that higher the TC, longer the lock time is. For TC=500 for example, lock time is more than 41 min from the moment TIC is less than 100. The way you calculate the lock time is TC*5 in seconds.
Fear does not stop death, it stops life.
 

Offline PT_Dreamer

  • Contributor
  • Posts: 40
  • Country: pt
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #215 on: January 07, 2019, 10:56:29 pm »
Which GPS are you using and do you know the PPS jitter? Also, can you post some of your log data when locked at TC=300?
Hi,
I'm using a NEO6Q bases board designed by a project I was part of in the past. Have a 7M arriving on the slow boat from China. No idea about the 1pps jitter, I can try looking at it with the scope.
Since posting I realized I had TempCoeff set to 4 (I'm not using a temp sensor), must have happened when setting TC to 4. After setting it to zero I think things improved a bit. I can get a lock with TC=450 and it maintains the lock. If I then change it to 500 the lock is maintained for a few hours but then breaks.
I attach one of this experiments, I start with TC=450 and get a lock, then at time 18581 I change TC to 500, the lock breaks at time 35507  (about 5 hours later) and recovers at  time 38021 (so after about TCx5). Then the lock is lost again at time 40389, a bit after I change the TC back to 450 and never loose lock again.

Leave the offset at 500. Try going from low to high with the TC. Set it to 200 and let it lock. After few hours go to 300 and so on. Do you have temperature sensors installed? Is the temperature compensation enabled?  Post a screen shot after you send "f2". Keep in mind that higher the TC, longer the lock time is. For TC=500 for example, lock time is more than 41 min from the moment TIC is less than 100. The way you calculate the lock time is TC*5 in seconds.
No temperature sensors, reading trough the documentation I thought I wasn't supposed to use one when using an ocxo.

f2 taken from the attached doc:
Code: [Select]
Gain    465 Damping 3.00 TimeConst 500 FilterDiv 2 TIC_Offset 500
TempRef 280 TempCoeff 0 TICmin  12.0 TICmax  1012 Square comp 0.100
Warm up time 300 LockPPScounter 9582 MissedPPS 1 TimeSinceMissedPPS  10552
ID_Number  0 Restarts  40 Total hours 288

So even if things are better I'm still far from the ideal TC=1000 which I thought was what the previous MDEV I posted indicated, right?
Also I'm still lost when it comes to setting the linearization parameters.

Thank you both for your help!

José

P.S- File was too big to attach here so I saved it to google drive
https://drive.google.com/open?id=0B8279AP3EkuyNnl0aWhWdFJsQ1lpdzJGdmczZ3BfeG1tczg4
 

Online Miti

  • Super Contributor
  • ***
  • Posts: 1320
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #216 on: January 08, 2019, 04:29:03 am »
According to Lars, your TC should be indeed 1000 but is seems extremely good to me. What OCXO do you use? Is the GPSDO enclosed or flapping in the breeze? A high TC makes it very slow to keep up with the temperature changes. That could be the reason why it goes in and out of lock.
I use temperature sensors in my GPSDO with OCXO and it makes a big difference. My GPSDO is enclosed and it stays locked with TC=500, that is my optimum TC, see page 4 for my MDEV.
« Last Edit: January 08, 2019, 04:33:40 am by Miti »
Fear does not stop death, it stops life.
 

Offline metrologist

  • Super Contributor
  • ***
  • Posts: 2199
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #217 on: January 08, 2019, 03:12:15 pm »
I was also going to ask which OCXO. The tune range is limited to 140; I checked the NEO6Q PPS spec is <60ns 99%. I suspected that with a high enough TC, the tune response is too slow to chase that PPS - that is why I was interested in seeing some of the log file. Your PPS looks mostly within its 30ns spec.

I noticed that both times before NoLock, the tic value continued to increase until just over 100ns where lock was lost. Miti may be on track with applying temp compensation as something was causing an upward drift that looks like it just overran the dac.

Did you enable tic's extra digit for timelab and did you remove linearization errors from the resulting plot?
 

Offline PT_Dreamer

  • Contributor
  • Posts: 40
  • Country: pt
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #218 on: January 09, 2019, 10:32:00 pm »
According to Lars, your TC should be indeed 1000 but is seems extremely good to me. What OCXO do you use? Is the GPSDO enclosed or flapping in the breeze? A high TC makes it very slow to keep up with the temperature changes. That could be the reason why it goes in and out of lock.
I use temperature sensors in my GPSDO with OCXO and it makes a big difference. My GPSDO is enclosed and it stays locked with TC=500, that is my optimum TC, see page 4 for my MDEV.

Hi,

I'm using an isotemp MOD:OCXO143-141 from ebay. The GPSDO is inside an enclosure but kind of ghetto style (I attached a photo of the setup).
Currently the only issue I see is that I have it very close to a window because with the present GPS module I need to place the antenna in the middle of the garden to get a steady signal and I was out of coax to make a bigger extension, and the nights have been very cold lately.
I have mounted an NTC now and I'm logging some data to tune the coeff.
Should I mount the NTC in contact with the OCXO, close to it, or in the middle of the enclosure?

I was also going to ask which OCXO. The tune range is limited to 140; I checked the NEO6Q PPS spec is <60ns 99%. I suspected that with a high enough TC, the tune response is too slow to chase that PPS - that is why I was interested in seeing some of the log file. Your PPS looks mostly within its 30ns spec.

I noticed that both times before NoLock, the tic value continued to increase until just over 100ns where lock was lost. Miti may be on track with applying temp compensation as something was causing an upward drift that looks like it just overran the dac.

Did you enable tic's extra digit for timelab and did you remove linearization errors from the resulting plot?
I didn't enable the extra digit, I thought it only affected the time error column which I didn't use with timelab (I used the DAC). How do I remove the linearization errors from the plot?

Thank you for the help!

José
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 4670
  • Country: nr
  • It's important to try new things..
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #219 on: January 09, 2019, 10:37:54 pm »
TimeLab->Edit->Subtract global linear...
 

Online Miti

  • Super Contributor
  • ***
  • Posts: 1320
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #220 on: January 09, 2019, 11:49:53 pm »
I'm using an isotemp MOD:OCXO143-141 from ebay. The GPSDO is inside an enclosure but kind of ghetto style (I attached a photo of the setup).
Currently the only issue I see is that I have it very close to a window because with the present GPS module I need to place the antenna in the middle of the garden to get a steady signal and I was out of coax to make a bigger extension, and the nights have been very cold lately.
I have mounted an NTC now and I'm logging some data to tune the coeff.
Should I mount the NTC in contact with the OCXO, close to it, or in the middle of the enclosure?


I didn't play with that particular OCXO but my Bliley NV47A1282 can only go to TC=600. It has a hard time locking with TC=500 though, I normally lock it with TC=400 and after few hours I change it to TC=500 and is stays locked if I don't turn the box upside down. I didn't go above TC=500.
I use two LM35 sensors, the one in column 4 (that's used for compensation) is siliconed to the OCXO, the one in column 11 is just an indicator, somewhere in the middle of the enclosure.
There's a post above from Lars in response to my question on how to calculate the TempCoeff, take a look . The TempRef is the average raw reading from the sensor in your lab over about a day or so.
And close the enclosure. It's essential for high TC.
Fear does not stop death, it stops life.
 

Offline texaspyro

  • Super Contributor
  • ***
  • Posts: 1407
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #221 on: January 09, 2019, 11:59:25 pm »
Try using an Oscilloquartz 8663 DOCXO.  I have found them to be virtually immune to room temperarure changes.  Also, once they settle in (may take a few weeks) they tend to have very low drift rates.
 

Online Miti

  • Super Contributor
  • ***
  • Posts: 1320
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #222 on: January 10, 2019, 12:46:22 am »
Try using an Oscilloquartz 8663 DOCXO.  I have found them to be virtually immune to room temperarure changes.  Also, once they settle in (may take a few weeks) they tend to have very low drift rates.

I don't doubt it is an amazing OCXO but in this case I think it would complicate things. 12V supply, 0 - 10V VC. The schematic would need some upgrades.
« Last Edit: January 10, 2019, 12:50:56 am by Miti »
Fear does not stop death, it stops life.
 

Offline texaspyro

  • Super Contributor
  • ***
  • Posts: 1407
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #223 on: January 10, 2019, 01:09:54 am »
12V in,  LM7805 for the electronics.   My 8663's tend to be on freq at around 4V in.   The 8663 does have a Vref output (around 7V).   You could switch a FET buffer powered by Vref driven by the Arduino PWM. 
 

Online Miti

  • Super Contributor
  • ***
  • Posts: 1320
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #224 on: January 10, 2019, 02:01:06 am »
12V in,  LM7805 for the electronics.   My 8663's tend to be on freq at around 4V in.   The 8663 does have a Vref output (around 7V).   You could switch a FET buffer powered by Vref driven by the Arduino PWM.

In the datasheet, VRef is specified at RLoad>20KOhm, source resistance is 1KOhm, you'd need to buffer it for stability.
Look, I'm not saying it's not doable, don't get me wrong. All I'm saying is that it is not trivial, it would need some thinking and some testing... and that could be fun, I can't wait to see some results.
The result, however, may be pretty close to adding a temperature sensor to Isotemp or Bliley and finding the right TempCoeff.

Cheers
Fear does not stop death, it stops life.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf