From: Kai Harrekilde-Petersen on
Terje Mathisen <"terje.mathisen at tmsw.no"> writes:

> Bernd Paysan wrote:
>> Terje Mathisen<"terje.mathisen at tmsw.no"> wrote:
>>> The canonical "cheap but accurate" time source these days is a Garmin
>>> GPS18LVC: Together with an RS232 DB9 connector and a USB cable you have
>>> all the hw needed for a ~1us timing reference, at a total cost of around
>>> $60-80, plus half an hour's work.
>>
>> Are you serious? The serial cable alone may be capable of 1us precision
>> when talking to the GPS mouse (but it doesn't have to - 2.5us jitter for
>> 115kbs is good enough), but converting from/to USB adds an indefinite delay.
>>
>> So if you want to have a precise serial GPS mouse, use a real serial
>> interface, not something routed through USB.
>
> Oops, I was unclear!
>
> The 18LVC is a pure serial GPS, I use the USB cable simply to supply
> +5V power, the actual GPS signals are delivered via RX/TX/GND/DCD on
> the DB9 connector, with DCD used for the Pulse Per Second (PPS) signal
> from the GPS.
>
> I have soldered together several GPS boards, including one of the
> original 8-channel Motorola Oncore UT+ receivers (capable of ~35ns
> RMS).
>
> My corporate NTP servers use the newer 12-channel version of the same
> Oncore units.

This reminds me of something that has been puzzling me: If Wikipedia
is right, the GPS satelites send a complete GPS frame (1500 bits) in
30 seconds, at 50bits/sec.

Today you can get laptimers (e.g. the Athlon-RW by Starlane
<http://kortlink.dk/7cvc>) which use the GPS signal to measure both
your lap time with a resolution of less than 1/100th of a second, and
to plot your speed and trajectory around the track. Cool gadgets!

But how on earth can the laptimers actually determine your position
(and thus, when you have completed another lap) with such an accuracy,
when the "real" reference is only updated every 30 seconds? Sure,
more than 4 satelites means more updates, but there is a factor of
3000 between the two numbers to start out with, so even 12 satelites
won't make much difference here.


Kai
--
Kai Harrekilde-Petersen <khp(at)harrekilde(dot)dk>
From: Bernd Paysan on
Kai Harrekilde-Petersen wrote:
> This reminds me of something that has been puzzling me: If Wikipedia
> is right, the GPS satelites send a complete GPS frame (1500 bits) in
> 30 seconds, at 50bits/sec.

Ok, but one bit is transmitted as 1023 "chirps" (the spread-spectrum
signal basics), and the length of a chirp sequence is one millisecond
(the other 19 milliseconds are silence). The modulation is rectangular,
and the bandwidth limitation of the GPS band allows to determine the
edge of a bit to 1% of the total bit modulation - i.e. up to 10ns. This
equals 3m, which is the "raw" precision of GPS (C/A). For further
explanation, see

http://en.wikipedia.org/wiki/Global_Positioning_System

scroll down to about the middle of the article.

From a systematic approach at a positioning system, GPS (using a
discrete modulation band) is simply nonsense. A pulse radio based GPS
could easily achieve a "raw" precision of 2cm or less using the same (or
less) energy and baseline frequency (~1.5GHz, a bit high for my personal
taste, since that's already severely affected by weather), and the
military version could avoid jamming a lot better than they do now
(jamming a known frequency is just too easy, jamming pulses with unknown
timing pattern is rather difficult). Also, the known multipath
propagation problems of GPS would simply vanish (pulse radio based
positioning simply assumes the first pulse comes from the straight path,
and the next pulse comes so much later that all echos in the meantime
faded away).

GPS development started during the Vietnam war. Under the conditions
there - rainforest, with typical thunderstorms once a day, and days of
heavy rain, GPS barely works even with today's, very sensitive
receivers. A system not designed to work under these conditions strikes
me odd when developed by the US military during that time. But then,
the USA decided to attack mostly nations with dry climate and little
vegetation afterwards - where GPS works fine ;-).

--
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://www.jwdt.com/~paysan/
From: Del Cecchi on

"Bernd Paysan" <bernd.paysan(a)gmx.de> wrote in message
news:mc1v27-qlc.ln1(a)vimes.paysan.nom...
> Kai Harrekilde-Petersen wrote:
>> This reminds me of something that has been puzzling me: If
>> Wikipedia
>> is right, the GPS satelites send a complete GPS frame (1500 bits)
>> in
>> 30 seconds, at 50bits/sec.
>
> Ok, but one bit is transmitted as 1023 "chirps" (the spread-spectrum
> signal basics), and the length of a chirp sequence is one
> millisecond
> (the other 19 milliseconds are silence). The modulation is
> rectangular,
> and the bandwidth limitation of the GPS band allows to determine the
> edge of a bit to 1% of the total bit modulation - i.e. up to 10ns.
> This
> equals 3m, which is the "raw" precision of GPS (C/A). For further
> explanation, see
>
> http://en.wikipedia.org/wiki/Global_Positioning_System
>
> scroll down to about the middle of the article.
>
> From a systematic approach at a positioning system, GPS (using a
> discrete modulation band) is simply nonsense. A pulse radio based
> GPS
> could easily achieve a "raw" precision of 2cm or less using the same
> (or
> less) energy and baseline frequency (~1.5GHz, a bit high for my
> personal
> taste, since that's already severely affected by weather), and the
> military version could avoid jamming a lot better than they do now
> (jamming a known frequency is just too easy, jamming pulses with
> unknown
> timing pattern is rather difficult). Also, the known multipath
> propagation problems of GPS would simply vanish (pulse radio based
> positioning simply assumes the first pulse comes from the straight
> path,
> and the next pulse comes so much later that all echos in the
> meantime
> faded away).
>
> GPS development started during the Vietnam war. Under the
> conditions
> there - rainforest, with typical thunderstorms once a day, and days
> of
> heavy rain, GPS barely works even with today's, very sensitive
> receivers. A system not designed to work under these conditions
> strikes
> me odd when developed by the US military during that time. But
> then,
> the USA decided to attack mostly nations with dry climate and little
> vegetation afterwards - where GPS works fine ;-).
>
> --
> Bernd Paysan
> "If you want it done right, you have to do it yourself"
> http://www.jwdt.com/~paysan/

Given the era, it might be reasonable to assume that GPS was
originally intended for things like bombers or perhaps cruise
missiles, not grunts in the jungle. It would also work fine
defending Europe from the Soviets which was another major concern, for
reasons that escape me now.

del



From: Terje Mathisen "terje.mathisen at on
Kai Harrekilde-Petersen wrote:
> Terje Mathisen<"terje.mathisen at tmsw.no"> writes:
>
>> Bernd Paysan wrote:
>>> Terje Mathisen<"terje.mathisen at tmsw.no"> wrote:
>>>> The canonical "cheap but accurate" time source these days is a Garmin
>>>> GPS18LVC: Together with an RS232 DB9 connector and a USB cable you have
>>>> all the hw needed for a ~1us timing reference, at a total cost of around
>>>> $60-80, plus half an hour's work.
>>>
>>> Are you serious? The serial cable alone may be capable of 1us precision
>>> when talking to the GPS mouse (but it doesn't have to - 2.5us jitter for
>>> 115kbs is good enough), but converting from/to USB adds an indefinite delay.
>>>
>>> So if you want to have a precise serial GPS mouse, use a real serial
>>> interface, not something routed through USB.
>>
>> Oops, I was unclear!
>>
>> The 18LVC is a pure serial GPS, I use the USB cable simply to supply
>> +5V power, the actual GPS signals are delivered via RX/TX/GND/DCD on
>> the DB9 connector, with DCD used for the Pulse Per Second (PPS) signal
>> from the GPS.
>>
>> I have soldered together several GPS boards, including one of the
>> original 8-channel Motorola Oncore UT+ receivers (capable of ~35ns
>> RMS).
>>
>> My corporate NTP servers use the newer 12-channel version of the same
>> Oncore units.
>
> This reminds me of something that has been puzzling me: If Wikipedia
> is right, the GPS satelites send a complete GPS frame (1500 bits) in
> 30 seconds, at 50bits/sec.
>
> Today you can get laptimers (e.g. the Athlon-RW by Starlane
> <http://kortlink.dk/7cvc>) which use the GPS signal to measure both
> your lap time with a resolution of less than 1/100th of a second, and
> to plot your speed and trajectory around the track. Cool gadgets!
>
> But how on earth can the laptimers actually determine your position
> (and thus, when you have completed another lap) with such an accuracy,
> when the "real" reference is only updated every 30 seconds? Sure,
> more than 4 satelites means more updates, but there is a factor of
> 3000 between the two numbers to start out with, so even 12 satelites
> won't make much difference here.

Simple:

GPS decoding is a (very) stateful protocol!

First of all, a GPS receiver needs a very stable (short-term) local
oscillator in order to measure the relative reception times of the basic
once-per-second 50-bit packet from each satellite.

These delta measurements must be done with 1-10 ns precision in order to
be able to come up with a final location which is accurate to better
than 5m, or better than 2m with WAAS/EGNOS differential correction.

Most cheap GPS receivers return a full 7-way solution every second,
consisting of x,y,x,dx,dy,dz (all in an Earth Fixed Earth Centered
coordinate system) and time, but you could buy sub-$100 units for a few
years now that will do the same 5 or more times/second.

Anyway, having that basic capability, it becomes quite simple to
interpolate between the two (or more) nearest (in space) samples and
determine the exact time you made another lap.

GPS is _very_ cool technology, particularly the way even the cheapest
receivers have to take time dilation in a variable gravity field into
consideration in order to deliver the most accurate position estimate.(*)

Terje

(*) GPS orbits take about 11 hours 58 min so that they make two full
circuits during the time the Earth rotates once. The orbits are very
close to but not quite circular. This means that the onboard clocks run
a tiny bit faster and slower for the various parts of the orbit,
depending upon how deep it is in the Earth's gravity field.
--
- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"