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

0 Members and 1 Guest are viewing this topic.

Offline imo

  • Super Contributor
  • ***
  • Posts: 2653
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #175 on: December 21, 2018, 03:01:50 pm »
I saw the oscillation in my design when the PI params were off (I doubt you can even use D). It is not only about PID params but about the sampling period "T" as well (it is related). With lower P/Is the oscillation period was longer. I spent a month with it. Tried PI, PII, PIID. After a lot of brain had leaked off my nose I switched to a simple "analog XOR PLL" :)
« Last Edit: December 21, 2018, 03:23:29 pm by imo »
 

Offline metrologist

  • Super Contributor
  • ***
  • Posts: 1842
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #176 on: December 21, 2018, 07:01:35 pm »
If the dac is not changing, then how can the (my) oscillation be related to the loop?

I will build a second unit to compare, but I'm not sure if I should build a copy and clock both with the same PPS signal or build with a different GPS and OCXO? If I build a copy and the oscillation is due to PPS jitter, then that would be mirrored and be in phase on both units. If it is a characteristic of the osc., then they will be similar but out of phase and amplitude, etc. If is a defect of the one osc., then the second may not oscillate. I'd prefer to build with different components, though.
 

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #177 on: December 21, 2018, 08:03:46 pm »
All GPSs that don't attempt to reduce the TP jitter with sawtooth correction must I suspect show rate changes (a lot) within a range of (n) ns in each direction or more.

A UCCM GPSDO's PPS output is a tamed beast compared to a non-timing GPS's especially. Whether the PPS is coming at the right instant the second changes is a function of how accurately its adjusted, because the cable length and I am sure many other things (ionospheric conditions, whether its in stationary mode...and the position its got for its location is accurate- more?) also need to be taken into account.

With sawtooth error the period between peaks in the error changes, a lot, so does the shape of the sawtooth and which direction it slopes, in a recognizably characteristic way.
« Last Edit: December 21, 2018, 08:09:38 pm by cdev »
"What the large print giveth, the small print taketh away."
 

Offline jpb

  • Super Contributor
  • ***
  • Posts: 1732
  • Country: gb
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #178 on: December 21, 2018, 10:27:44 pm »
All GPSs that don't attempt to reduce the TP jitter with sawtooth correction must I suspect show rate changes (a lot) within a range of (n) ns in each direction or more.

A UCCM GPSDO's PPS output is a tamed beast compared to a non-timing GPS's especially. Whether the PPS is coming at the right instant the second changes is a function of how accurately its adjusted, because the cable length and I am sure many other things (ionospheric conditions, whether its in stationary mode...and the position its got for its location is accurate- more?) also need to be taken into account.

With sawtooth error the period between peaks in the error changes, a lot, so does the shape of the sawtooth and which direction it slopes, in a recognizably characteristic way.
My understanding is that over a long enough time period such correction doesn't matter, so how important it is depends on the loop time constant of the GPSDO. I don't have the reference to hand, but most plots of GPS 1PPS ADEV converge to roughly the same slope with averaging time.
 

Offline Satbeginner

  • Regular Contributor
  • *
  • Posts: 143
  • Country: es
  • Dutch, early retired, living in Spain
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #179 on: December 22, 2018, 09:52:16 am »
Hi all,

I just finished putting it all in a box.
It works fine, and with the box it is even a bit more stable, I think because of the OCXO temperature being more stable.

I used two 6-channel 74HC14 as buffer for the outputs, I used three parallel inputs for the 1pps, three for the 10MHz, three for the 5MHz and three for the 1MHz I got from the 390 at pin 6 because of the better 60/40 duty-cycle there.
Each output has a 150 Ohm series resistor, every time I combined the three outputs as one, giving it an appr. 50 Ohm output resistance.

Here it is:

https://photos.app.goo.gl/DimgdLnNpAfeRTiu6

Un saludo,

Leo
You need a scope to repair a scope, and you need many multimeters to repair another multimeter!
*Tek 2467B, Tek 2465B, Tek 2465B, Tek 485, Tek 475A,  Keithley 175A, Keithley 2000, HP 3468B, HP 3457A, HP 34401A, PM 6671, PM 5716, Fluke 45, Fluke 75, Fluke 77, Fluke 79, AFX 9660BL, KPS 605D, etc. *
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #180 on: December 22, 2018, 01:16:21 pm »
This is what I see on the TIC.

My GPS is set ti timing mode and I only allow maximum 2 satellites at a time. I see big jumps when it changes satellites.
« Last Edit: December 22, 2018, 01:18:10 pm by Miti »
That big spark at power up was by design!
 

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #181 on: December 22, 2018, 01:23:51 pm »
1 is the classic sawtooth pattern, that is what I've seen again and again in the literature.

Guessing - 1 is the GPS jitter measured against a good OXCO or already made GPSDO or rubidium?

What is 2?
« Last Edit: December 22, 2018, 01:30:13 pm by cdev »
"What the large print giveth, the small print taketh away."
 

Offline metrologist

  • Super Contributor
  • ***
  • Posts: 1842
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #182 on: December 22, 2018, 02:47:36 pm »
cdev, 2 is a wider view, you can see the same jump in left side.
 

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #183 on: December 22, 2018, 03:50:11 pm »
cdev, 2 is a wider view, you can see the same jump in left side.

And indeed, there it is!

All GPSs that don't attempt to reduce the TP jitter with sawtooth correction must I suspect show rate changes (a lot) within a range of (n) ns in each direction or more.

A UCCM GPSDO's PPS output is a tamed beast compared to a non-timing GPS's especially. Whether the PPS is coming at the right instant the second changes is a function of how accurately its adjusted, because the cable length and I am sure many other things (ionospheric conditions, whether its in stationary mode...and the position its got for its location is accurate- more?) also need to be taken into account.

With sawtooth error the period between peaks in the error changes, a lot, so does the shape of the sawtooth and which direction it slopes, in a recognizably characteristic way.
My understanding is that over a long enough time period such correction doesn't matter, so how important it is depends on the loop time constant of the GPSDO. I don't have the reference to hand, but most plots of GPS 1PPS ADEV converge to roughly the same slope with averaging time.

I think you're right as long as you are just looking for a frequency standard and don't need to know the (really!) 'exact' time which seems to be a technically daunting problem when you get into the nanosecond range so people shouldn't feel bad about that. It varies depending on things like your altitude too, because of relativity!
« Last Edit: December 22, 2018, 03:52:27 pm by cdev »
"What the large print giveth, the small print taketh away."
 

Offline edpalmer42

  • Super Contributor
  • ***
  • Posts: 1827
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #184 on: December 22, 2018, 04:40:42 pm »
This is what I see on the TIC.

My GPS is set ti timing mode and I only allow maximum 2 satellites at a time. I see big jumps when it changes satellites.

Why do you limit the number of satellites?  Typically, you want as many satellites as possible.  The receiver then averages them and rejects the outliers.  This gives a more stable result and minimizes any jumps when a satellite enters or leaves the constellation.

Ed
 
The following users thanked this post: Miti

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #185 on: December 22, 2018, 04:49:55 pm »
What you likely want, Miti, is to set an appropriate elevation or SN mask for your antenna location.

Launch a program that lets you visualize the orbits and signal strengths at relative points in the sky and note where the satellites are strongest, minus the bottom few degrees of elevation near the horizon. Pick a number for elevation mask that captures the strong signals and leaves out the weak ones.

Or pick a setting that excludes the marginal signals by strength.

Make sure your antenna is placed in the best possible location.
"What the large print giveth, the small print taketh away."
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #186 on: December 22, 2018, 07:21:17 pm »
What you likely want, Miti, is to set an appropriate elevation or SN mask for your antenna location.

Launch a program that lets you visualize the orbits and signal strengths at relative points in the sky and note where the satellites are strongest, minus the bottom few degrees of elevation near the horizon. Pick a number for elevation mask that captures the strong signals and leaves out the weak ones.

Or pick a setting that excludes the marginal signals by strength.

Make sure your antenna is placed in the best possible location.

My Min SV Elevation is set to 10 deg. and the Min C/NO is set to 20dbHz.

Why do you limit the number of satellites?  Typically, you want as many satellites as possible.  The receiver then averages them and rejects the outliers.  This gives a more stable result and minimizes any jumps when a satellite enters or leaves the constellation.

Ed

I quote from the Ublox document "Timing_AppNote_(GPS.G6-X-11007).pdf", section 1.2.2:

"Single satellite navigation can be useful under poor GPS reception conditions. Time information can be heavily degraded due to multipath effects. To avoid such degradation choose an antenna that primarily receives satellites with high elevation angles. Using the UBX-CFG-NAV5 message, low elevation angle satellites can be ignored. Furthermore the number of satellites can be reduced using the UBX-CFG-NAVX5 message."

Edit: Are you sure it averages the satellites? It's very hard to find any information regarding the Ublox timing mode other than what I mentioned before. It would make sense but I don't know where you found that?
« Last Edit: December 22, 2018, 07:33:15 pm by Miti »
That big spark at power up was by design!
 

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #187 on: December 22, 2018, 08:59:09 pm »
Are you sure that your antenna setup doesn't have some problem? How long is the antenna feedline?

If everything checks out, You might want to try a different antenna with higher gain LNA?

But, it sounds like you know what you're doing there, and the behavior you're seeing might be what might be seen with a inadequate antenna or very long (or thin) feedline. Or maybe water or some other problem with the feedline. Of course if its indoors that wouldn't apply. I'm sorry to ask all these questions. To explain, I've spent a lot of time fooling around with antennas over the years but still when I got my own GPSDO at the beginning I made some of the classic mistakes. It seems like its human nature. That said I cant think of what would be causing that. Noise maybe- Noise, power supply noise?

Thats a shot in the dark. U-center has some settings you can use to measure how much noise is being picked up.

If you have a patch antenna, (not a QFH, some of the timing antennas - like my own, are QFHs) how is the ground plane under your antenna, is there a flat metal horizontal ground plane underneath the patch part?
« Last Edit: December 22, 2018, 09:04:38 pm by cdev »
"What the large print giveth, the small print taketh away."
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #188 on: December 23, 2018, 12:08:49 am »
But, it sounds like you know what you're doing there...

Appearance may be deceiving  :-DD

cdev,

I don't have any major problem with my GPSDO, I was just showing metrologist what my TIC looks like. Lars seems to have done a very good job.
One minor issue is that with the number of satellites restricted to 2, I see some jumps (in the order of 10 to 40 ns, I think it depends if it is clear or cloudy) when it uses some satellites. Ed said that I should enable maximum number of satellites but I'm not sure about that. At least the only documentation that I found about the timing mode of Ublox modules contradicts that, if I read it correctly.
Anyway, my antenna is a small patch one, in the basement window, partially covered by a tree. :palm:
Still, I'm getting very decent levels, one sided though.
That big spark at power up was by design!
 

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #189 on: December 23, 2018, 02:10:55 am »
If I were you I would try to use Lady heather or U-center to determine a good elevation mask, not restrict the # of SVs, and just work with that. Also try to get a better sky view. Here is an idea. Can you put your antenna inside some plastic object that protects it from lawnmowers in the middle of your lawn, on the ground. The ground plane is meant to be in a situation like that, there is much less of a reason to put the antenna up high with a patch antenna than say with VHF as the signals you want come from above not the horizon.

Arguably the best place is on a good ground plane. Can you - just for the sake of knowing, put it in some waterproof enclosure (double plastic bags would be good) and then put it on a flat piece of metal a bit out on your lawn. If you hadn't done it before that might be interesting. My GPSDO had markedly better performance (with the antenna there (in the middle of an open lawn) than anywhere indoors or under the eaves.
"What the large print giveth, the small print taketh away."
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #190 on: December 23, 2018, 02:31:11 am »
I think Ed is right. I changed the maximum SV # to 25 but I kept the S/N and elevation restriction. That's after the red line. Looks much better, eh?

Edit: The graph is the TIC.
« Last Edit: December 23, 2018, 02:51:41 am by Miti »
That big spark at power up was by design!
 

Offline edpalmer42

  • Super Contributor
  • ***
  • Posts: 1827
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #191 on: December 23, 2018, 07:18:20 am »
What you likely want, Miti, is to set an appropriate elevation or SN mask for your antenna location.

Launch a program that lets you visualize the orbits and signal strengths at relative points in the sky and note where the satellites are strongest, minus the bottom few degrees of elevation near the horizon. Pick a number for elevation mask that captures the strong signals and leaves out the weak ones.

Or pick a setting that excludes the marginal signals by strength.

Make sure your antenna is placed in the best possible location.

My Min SV Elevation is set to 10 deg. and the Min C/NO is set to 20dbHz.

If Lady Heather supports your GPSDO, you can use the SAE command to see at what elevation the signal strength starts to drop off.  By setting the elevation mask slightly above this elevation, you'll reject a lot of marginal, multipath, and otherwise distorted signals.

Quote
Why do you limit the number of satellites?  Typically, you want as many satellites as possible.  The receiver then averages them and rejects the outliers.  This gives a more stable result and minimizes any jumps when a satellite enters or leaves the constellation.

Ed

I quote from the Ublox document "Timing_AppNote_(GPS.G6-X-11007).pdf", section 1.2.2:

"Single satellite navigation can be useful under poor GPS reception conditions. Time information can be heavily degraded due to multipath effects. To avoid such degradation choose an antenna that primarily receives satellites with high elevation angles. Using the UBX-CFG-NAV5 message, low elevation angle satellites can be ignored. Furthermore the number of satellites can be reduced using the UBX-CFG-NAVX5 message."

Boy, some awkward wording here.  'Navigation' for a timing receiver??  Anyway, yes, you can do single satellite timing once you've done a survey to figure out where you are.  But as soon as that satellite goes out of sight, you're screwed.  Single satellite operation is a very limited form of operation that is only useful under very specific circumstances.  The same comments would apply to running with a reduced number of satellites.  I don't know where that would make sense.

Quote
Edit: Are you sure it averages the satellites? It's very hard to find any information regarding the Ublox timing mode other than what I mentioned before. It would make sense but I don't know where you found that?

The magic acronym is RAIM (Receiver Autonomous Integrity Monitoring) - often called TRAIM for Timing Receiver....  Timing receivers have it, navigation ones don't.  Since the timing receiver doesn't have to recalculate position every second, it has lots of spare cycles to improve the quality of the timing outputs.  The inner workings might be different for every company, but basically, the receiver picks the best satellites and tosses the rest.  'Averaging' might not be the correct word mathematically, but that's the effect.  I'm not familiar with the M8T, but there might be a command to show you which satellites are used in the timing solution.  The answer could change from second to second or minute to minute.

The M8T data sheet says in section 1.8.4  Timing integrity and availability:

Code: [Select]
Fix redundancy (RAIM)
The receiver automatically and continually adjusts the significance of individual signal measurements in the
reported estimate of time according to its quality and consistency. This ensures that the integrity of the
reported time is protected from individual faulty signals or measurements so long as there are more signals
in use than the minimum required. The minimum number changes depending on the situation but
whenever it is exceeded “raim active” is set in message TIM-TP to indicate that this protection is active.

Doing a quick browse through the datasheet, I saw a section on the Survey-In process.  Although there isn't a lot of detail, it looks like it's a necessary step to achieve a stable output.

Ed
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #192 on: December 23, 2018, 03:26:52 pm »
I did a Survey-In and the GPS is in Fixed mode. Unfortunately, after few days of Survey-In running, I couldn't get a position accuracy better than 16m, probably due to the position of antenna that only sees the west side of the sky.

Lady Heather does something weird to my GPS modules, it reduces the sensitivity dramatically. The signal level drops significantly and I have to do a restore to default to see them coming back to normal. It must send some funny messages.
That big spark at power up was by design!
 

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #193 on: December 23, 2018, 03:29:25 pm »
You're not using the M8T sawtooth correction, right? (Since Lars' GPSDO doesn't utilize it.)

Previously you posted that you use the "UBX-CFG-NAV5" message - the implication seems to me to be that that message automatically sets the elevation mask in some way. Usually that wouldn't leave you with only a few satellites but if more than half of the sky was already blocked, sure, I could see you ending up with only a few.

The Skytraq/Navspark units are significantly more sensitive than the Ublox GPSs. maybe in your situation you would do better with one of them. They are so sensitive that for me, they work indoors without needing to be near a window at all.
« Last Edit: December 23, 2018, 04:08:11 pm by cdev »
"What the large print giveth, the small print taketh away."
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #194 on: December 23, 2018, 07:39:12 pm »
I don't know how to use that correction. Can you point to a document that details that?

Previously you posted that you use the "UBX-CFG-NAV5" message - the implication seems to me to be that that message automatically sets the elevation mask in some way. Usually that wouldn't leave you with only a few satellites but if more than half of the sky was already blocked, sure, I could see you ending up with only a few.

I don't know what you mean by that. Take a look at the NAV5 configuration. You set the elevation, it doesn't set it automatically.
The number of satellite and the signal level is pretty good considering the antenna is in the window and I technically, visually, only see half of the sky. The U-Center seems to contradict that though.
Anyway, I'm not changing anything in my setup, it's good enough for what I need it for (a reasonably accurate and stable 10MHz reference), I'm just trying to understand how I can make the best out of it and understand more about the GPS gibberish documentation.
If you can point to a glossary of terms for GPS that would be very appreciated.
That big spark at power up was by design!
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #195 on: December 23, 2018, 11:20:56 pm »
I'm worried about Lars!

I hope and pray he's OK and I wish him, and everybody on this forum, a Merry Christmas, full of hope, health and peace!
That big spark at power up was by design!
 
The following users thanked this post: cdev, 9aplus

Offline mycroft

  • Regular Contributor
  • *
  • Posts: 50
  • Country: br
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #196 on: December 23, 2018, 11:24:49 pm »
His last post was one week ago at https://blog.liw.fi/.
 

Online cdev

  • Super Contributor
  • ***
  • Posts: 5845
  • Country: 00
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #197 on: December 23, 2018, 11:30:58 pm »
Ublox has a book sized PDF document, their GPS compendium, do you have that?

Since you have a ublox GPS the chances of their using the same terminology is fairly good, often the same word or thing has different definitions depending on who is using it.

Its free.

To be honest with you Although I have one working ublox GPS and like their software, I'm far less familiar with it than I would like to be and have a bunch of other things that are a higher priority for me right now than that. That said, their software is quite good and the combination of it and their hardware is really educational. If you really want to dig around in their protocol there is another program called Comms Champion that speaks it - even the non-sanctioned parts of it.

I don't know how to use that correction. Can you point to a document that details that?

Previously you posted that you use the "UBX-CFG-NAV5" message - the implication seems to me to be that that message automatically sets the elevation mask in some way. Usually that wouldn't leave you with only a few satellites but if more than half of the sky was already blocked, sure, I could see you ending up with only a few.

I don't know what you mean by that. Take a look at the NAV5 configuration. You set the elevation, it doesn't set it automatically.
The number of satellite and the signal level is pretty good considering the antenna is in the window and I technically, visually, only see half of the sky. The U-Center seems to contradict that though.
Anyway, I'm not changing anything in my setup, it's good enough for what I need it for (a reasonably accurate and stable 10MHz reference), I'm just trying to understand how I can make the best out of it and understand more about the GPS gibberish documentation.
If you can point to a glossary of terms for GPS that would be very appreciated.
"What the large print giveth, the small print taketh away."
 

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #198 on: December 23, 2018, 11:32:35 pm »
His last post was one week ago at https://blog.liw.fi/.

I don't think he is the same Lars. He is Lars Walenius, while the one in the link is Lars Wirzenius.
That big spark at power up was by design!
 
The following users thanked this post: cdev, Jacon

Offline Miti

  • Frequent Contributor
  • **
  • Posts: 874
  • Country: ca
Re: Lars DIY GPSDO with Arduino and 1ns resolution TIC
« Reply #199 on: December 23, 2018, 11:42:04 pm »
Ublox has a book sized PDF document, their GPS compendium, do you have that?

Since you have a ublox GPS the chances of their using the same terminology is fairly good, often the same word or thing has different definitions depending on who is using it.

Its free.

Thanks! I didn't know about this book. It is exactly what I needed.
That big spark at power up was by design!
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf