Would it surprise you that he can get location data accurate to about 20 centimeters? That figure doesn’t tell the whole story, as readings were taken while the dongle was stationary for three hours, then averaged to achieve that type of accuracy. But depending on what you need the data for this might not be a problem. And [Michele] does plan to implement real-time GPS data in his next iteration of the project. He plans to use an SDR acquisition algorithm to measure doppler shift in accounting for the slow clock speed of the dongles compared to standard GPS receivers. We can understand how that would work, but we’re glad he has the skills to actually make it happen because we’re at a loss on how the concept could be implemented.

My understanding of GPS is each sat sends the signal with a timestamp. Knowing the sat orbit and time it sent the signal it’s position can be calculated. Then compare the differences in the send time from each sat and with 3 you can calculate the location relative to the sats, or with 4 the elevation is also possible.

I’m pretty sure he knows how GPS itself works, but is wondering how this device actually ends up working as a GPS reciever. It appears as though it just uses the built-in television tuner to pick up the gps signals instead, and then uses cleverly written software to work out triangulation.

Just to be clear, GPS is something you do with SDR. So any SDR can do GPS, as long as it covers the right frequency range. This is one of the reasons why SDR is so exciting, particularly at this price range.

There are two stories in Michele’s post. The first is about new developments in GNSS (GPS+Galileo+Glonass) particularly with regards to using Tomasu Tomaji’s INCREDIBLE RTKlib software ( rtklib.com ) with a subset of new hardware chips that enable access to RAW GPS DATA. The end of the article is about the RTL-SDR dongles, and how for the money, its surprising that it can pick up and track the satellites, although I didn’t get out of the article that he was able to calculate a PVT fix from that data. OTOH, using these new cheap RTKlib-compatible chips, it’s clear that you can get incredibly good accuracy. My results aren’t as good as Michele’s because my house is under some trees (and thats important) and I don’t have the highest quality antenna (I am using a Pctel GPS-TMG40 off of ebay) but I am able to get consistent accuracy well under a meter using standalone PPP. To do that much better than that you typically need two units, a base unit with an (absolutely) known position, and a clear sky view – no multipath- and a “geodetic grade” antenna at both locations. Ideally a very good antenna.

You also may want to get your ephemeris data off the net directly from NASA.

Then you can get accuracy down to one or two cm, or better!

Check out rtklib.com and the author Tomaji Takasu’s home page. He also has posted a lot on the GPS-OSS mailing list.. He’s one of those extremely helpful people who make the net such a special place. His software has completely changed the game for GPS accuracy. A lot of big companies must be VERY displeased that he wrote his great software, which can and should also be used for teaching because it graphically illustrates the entire GPS process along with its internals, showing you at least a dizen kinds of science in action. RTKlib is a must see!

Michele makes a great – tiny USB dongle, the Yuan 10- that uses the Skytraq S1315F GPS module, its not very expensive and its can output raw data – so with RTKlib, its the equivalent of a $1000+ surveying grade GPS.

And as Michele mentioned, it can output that position with centimeter level accuracy *20 times a second*.

Crystal on the dongles is not accurate enough for positioning, is what I gather. On the other hand, he was able to use the satellites to test the sensitivity of the dongle, and using the SDR identify which satellites they were and where in the sky they were to give us that nice sky plot (thats quite useful for evaluating the receiver and antennas, as those satellite signals are weak but steady.) The sky plot is computationally simple because the satellites broadcast where they are continuously. Where *you* are is much more complicated and its a facinating journey getting to that solution, see my post about RTKlib above.

RTKlib is like crack for physics teachers. The number of potential applications for it just makes you head spin.

Mr. Takasu was able to measure earth movement in 3 dimensions in the Japanese earthquake last year.

He also uses the varying speed of propagation to estimate the level of water in the air.

(Another researcher in the US, at NOAA, had the brilliant idea that using GPS reflections off the ground (which have opposite polarization to the signal so you can calculate it by diffing it) you can figure out the moisture content of soil. )

Thats really useful info.
Stuff like that.

He also built a GPS rover using a beagle board that runs Debian that allows you to get cm level accuracy anywhere within 20-30 km of the base station.

Anyone can do that. Thats my plan, I have all the hardware to do it now, so as soon as I have a few days of free time.

It might be able to get GPS accuracy out of the dongles, especially if they can be kept at a stable temperature.

But that will require some new software, as it requires some extra calculation because the hardware doesn’t have the dedicated processing pipeline that GPS chips have.

RTKlib does something similar, so I would expect that it *might* be possible to do something using the DVB-T dongles and that.

CUDA would also be useful in that context.. It might be possible to leverage all these low-tech-high tech discoveries – the cheap dongles and cheap CUDA-capable graphics cards and cheap homemade broadband GNSS-capable antennas, (archimedes spiral, log spiral, circular annular patch) and end up with a homebrew earth station for scientific visualization of a great number of earth science and space communications applications.

I’ve got an off topic question about this. I’ve always been interested in radio, and seeing that these realtek chips will let me do more stuff than my cheap old scanner got me interested. However, I also have an unused piece of equipment at work, a National Instrument data acquisition module, that can monitor up to 18 analog signals (in this case, outputs from sensors, up to 12v range I think, at maybe around 1-2 Ms/s). Can I hook an antenna to one of the inputs and do SDR with it?

I think you would need two more things. One is a tuner module, as you would only be able to sample say 0-1MHz, and the tuner would bring higher frequencies down to this range. This is what the E4000 tuner does on the RTL SDR (the RTL can only sample 0-3MHz or so, but the E4000 can bring any frequency from 64-1700MHz down to 0Hz where the RTL chip can “see” it.) You would also need to sample the I and Q components of the signal in order to do SDR. I imagine you’d need your own circuit and use two of the analogue inputs to do that. Then you’d have to write drivers so the software you want to use can see your new device. I think it’s doable, but likely to cost more than the $11 DVB stick would, and take longer than the shipping time from Hong Kong :-)

Many of the real time GPS vehicle tracking systems
can monitor hundreds of vehicles at the same time. It has more accessible qualities and more manageable since GPS navigation is designed for car systems.
Device which highlights high resolution features
normally implies sharper images projected on the screen.