Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

KrakenSDR would do a good job of this, they combine five RTLSDR into a coherent array. The top end of their tuning range is 1766 MHz which would include the 1575 MHz of the GPS L1 signal.

The little five antenna array can even attach on the roof of a car for a handy ground plane. Prob not a good idea to drive with it out there tho.



sort by: page size:

You could also use a single receiver with a small antenna array (GPS wavelength is around 20 cm) to estimate the angle of arrival of the incoming signals.

Great project, thanks for posting it!

It just so happens I've got an RTL-SDR, a GPS receiver that outputs raw pseudoranges, and a signal splitter that lets me put the signal from one antenna into two receivers.

So if you like I can get the pseudoranges out of a commercial GPS receiver, and the raw signal from an RTL-SDR at the same time, which might help you pinpoint your last bit of location inaccuracy.

Would you be interested in that? Or do you consider this project complete?


Piksi GPS (http://www.swiftnav.com/piksi.html) and the more recently Reach GPS (https://www.indiegogo.com/projects/reach-first-affordable-rt...) do offer this kind of functionality, but it is still tough to do, so props to the Texas team for democratizing $10,000 technology.

However, I wish some of these guys would show us the initialization procedures. In my experience trying to get an RTK level solution with an L1 only GPS receiver (read: cheap) is impractically hard. Then once you have it, you can lose it with the slightest change in the number of satellites available (i.e. if you go under a tree or next to a building). However, my experience is now over 3-4 years old, maybe we've come a long way.


GPS signals are sufficiently low frequency that a phased array would need to be fairly large. Each antenna in the array would need to be around 5cm and you'd need quite a few of them on each axis. Totally doable but someone probably decided a dish was easier/cheaper than a big board of antennas or waveguides and associated circuitry. Phased array would be nice to have though, since if the array was large enough you could have multiple beams produced by different parts of the array and cover more/multiple areas.

I did this back in the day using a ublox LEA-M8F module for my PhD work following the instructions posted here: http://www.opendigitalradio.org/lea-m8f-gpsdo I also experimented with RTK which this module is capable of. Now there's probably a more up to date ublox module available which could provide even better results using multi frequency GNSS etc.

"and you can also do some antenna magic"

Just thinking about what that would involve. Very high gain antennas could track individual GPS satellites and probably defeat jammers. A phased array system (similar to Starlink's 'dishy', but probably larger due to the much lower frequency) might also work. Either solution would make many if not most uses of GPS either physically impractical and/or too costly.


Moreover, high end dual frequency GPS receivers like you'd surely put in a plane will typically have sub-meter precision.

If you want to explore deeper, there's some fun (and well commented) open source GPS processing codes in Octave/Matlab [1], coming from the excellent book [2]. Those are compatible with cheap RTL-SDRs. [3] also looks nice, but as I recall is Linux only.

[1] https://github.com/kristianpaul/SoftGNSS

[2] https://www.ocf.berkeley.edu/~marsy/resources/gnss/A%20Softw...

[3] https://gnss-sdr.org/


A single GPS receiver might not be accurate enough. Differential GPS could help here.

New L5 GPS should be able to help, at least in terms of not being thrown off by receiving reflections off of buildings (multipath). We'll see!

Yeah, GPS alone is not enough.

This product uses an auxiliary GNSS antenna and software to provide centimeter level precision: https://sitevision.trimble.com/


Groundbased gps transmitters might help to increase accuracy.

There are commercial products for less than $100 that do this for the L1 C/A signal - such as [1].

You can rebroadcast at substantially higher power than the signal coming directly from the satellite, so the direct signal gets drowned out. After all, the satellite has to broadcast to cover half the world, while you only have to cover a few square meters.

Now, I'll grant the receiver may see a change in signal strength, some cycle slips, and an increase in clock skew. But you get those in normal GPS operation anyway. If you're going to detect GPS attacks and self-destruct your drone you'll want a very low false-positive rate, and I'm not sure that's feasible.

[1] http://www.diplomat.co.uk/products/hardware-products/active-...


And then there's RTK (I like to talk about https://centipede.fr ) that measures the offset between GPS signals and litteral ground truth and proadcasts it, enabling centimeter-level precision.

The more systems, the merrier, even if they aren't all accurate, you can use them to increase precision (kalman anyone?). Someone mentioned multi band. You can also use signals from multiple systems at different frequencies.


I just read through the LightSquared story and am pretty intrigued!

One of the fascinating demonstrations of the fact that GPS is relatively interference robust is that Galileo (ESA GNSS system) runs on the same frequencies as GPS; the different spreading codes mean that receivers can choose which signal to listen to.

Reading about the LightSquared system though, they do talk about a quite real concern: overloading the receiver's frontend entirely. That's one of the concerns that would be addressed by using directional antennas (if you're receiving interference, rotate your antenna so that the source is in an antenna null). As far as I know, most civilian receivers wouldn't have a directional antenna, they'd have an omni so that they work in any orientation; it'd suck if your iPhone could only receive GPS signals if it were sitting flat. On a military vessel, it'd make a lot more sense to mount an upward-cone-looking antenna high up on a mast to avoid sources of surface interference.

I'm super curious now though! I've got a software GPS receiver set up, I'd like to try injecting noise into the (virtual) signal chain and see how much noise power is necessary to lose lock. If anyone's curious, GNSS-SDR works great with $20 RTLSDR radios: http://gnss-sdr.org/source-code

Edit: I did a bit more research, and it sounds like overloading the front-end is the most common approach to jamming. People are turning on multi-watt transmitters in their vehicles (e.g. to block fleet management GPS from detecting their location). Despite the amount of power they're putting out, they seem to be limited in range to around 50 feet.

It's also pretty satisfying to see http://www.novatel.com/assets/gajt/pdf/gajt-white-paper.pdf which indicates that the solution I came up with (directional antennas with nulls pointed at the interference sources) is a solid strategy for mitigating jamming.


Have you seen the "Homemade GPS Receiver" project?[1]

I imagine it'd be a whole lot easier if you already have gear to receive and sample the RF side, but still an interesting challenge.

Don't forget to implement CoCom restrictions :)

[1] http://www.holmea.demon.co.uk/GPS/Main.htm


Modern GNSS receivers with modern multi-band antennas can track hundreds of satellites simultaneously across all the various GNSS systems including GPS, GLONASS, GALILEO, etc....

This is how they build RTK surveying equipment, and they can have their own RTK reference point that uses statistical averaging over time to get accuracy down to the centimeter range or below, and then rebroadcast that to the local RTK rover nodes. There are multiple correction systems available that you can subscribe to, some of which can transmit their corrections via 4G/LTE/5G or other radio band communications, so that you don't need your own RTK reference for your rover units.

For good RTK equipment, you can easily pay $40k or more, but if you look around you can find some equipment that costs less than $1000. My current favorite is the SparkFun GPS RTK Express Kit, although you need a pair of them if you want to do your own RTK reference point and you don't subscribe to one of the various other correction systems.


That used to be done. They're called "psuedolites". You'd put one somewhere on your property. It listens to the GPS satellites, and over a few hours, gets its own location very accurately by averaging error. Then it rebroadcasts a correction signal to cooperating GPS receivers nearby. Some airports have used these. They're called "ground based augmentation systems" in aviation.

There are agricultural versions. Deere sells some.[1] They call this "RTK".

[1] https://www.deere.com/en/technology-products/precision-ag-te...


> One of the most accurate solution is to keep a GPS receiver on a well known location.

I wonder if a network of connected devices with a GPS-disciplined SDR receiver and a regular GPS one could work both as this project does plus as passive radar like the software that was recently taken down. The purpose would be to have much wider coverage along with redundancy and error correction.

next

Legal | privacy