Friday, November 12, 2010

Open source Software Defined Radio GPS receiver


Just a quick update to the people who are involved on gps-sdr.
Here is a version that (as far as I am aware) compiles on Ubuntu Lucid (32 and 64 bits).
And if you don't have any of NSL's GNSS data grabber, here is file captured with Primo which should give you a position in Nottingham :)


P.S. Please note that I am not a maintainer of gps-sdr, so please do not ask me for support on how to install the software or other trivial receiver stuff. Also, I don't take any responsibility for the modifications I have done. In practice, take the code you need from it.. and that's about it!

Saturday, October 23, 2010

Ladies and gentlemen, our "Wave"


This is a special post for me, there is just so much work behind it that I feel literally relieved :)

Figure 1: Wave GNSS front-end.

Luis and me went through a quantity of problems, but eventually this week we can claim that Wave works reliably and performs well.
So here it is, our vision of an industrial direct bandpass sampling, multi-constellation, multi-frequency receiver.

Figure 2: Wave digital board rev1.1 with LVDS, USB, and GigETH connectors exposed.

Figure 3: Wave RF board rev1.1 with dual band filters and variable gain amplifiers

I will not explain the theory behind it, just post a file captured with a Novatel GPS-704X antenna at NSL. With your favourite acquisition algorithm, you may find in there all the currently available satellite navigation signals. And if you know what we are talking about, you know you just need one parameter: f_S = 5.4e8.

By the way, we will be done soon with porting gps-sdr. Wave has already passed the overnight stress test with it on a 64-bit Ubuntu distribution.

Figure 4: gps-sdr processing GPS L1 as digitised and conditioned by Wave. Take a look at the spectrum of the signal on the left (we have a strong external interference at 1.369 MHz, we don't know who's responsible YET). And of course Luis' empty tea mug on the right, filled with champagne later that afternoon :)

We hope readers will find this tool as intriguing as we do. We like to think that we made one step towards the ultimate real-time all-frequencies, all constellations software receiver. Any takers of our challenge?

To be continued,
Luis and Michele

Thursday, July 22, 2010

Snapshot post-processing with PRIMO


Today I'd like to show what Ben, Luis, and me have been doing in our spare time and sometimes sacrifying our precious weekend hours.

Internal codename RETROFIX, it's a service running on one of our servers and processing small snapshots of data collected with PRIMO. At the moment uses about 200ms of signal and it's therefore limited in sensitivity. But surely it proofs the concept that with a coarse time tag and 128kBytes of digitized RF signal you can calculate the position and the time of a user.

If you have a PRIMO dongle just contact me and I'll send you the website address, the configuration files, and the application to grab a compatible signal: I'd love to have some feedback.

Come back soon for updates,

Thursday, May 13, 2010

Linking PRIMO with gps-sdr


just finished adapting the open-source project to use PRIMO. On our Ubuntu Karmic 32bit laptop runs nicely but still uses a lot of resources (especially the GUI). The effect is nevertheless outstanding!

Figure 1: The gps-sdr GUI running with PRIMO (PVT window).

Figure 1: The gps-sdr GUI running with PRIMO (alm. and eph. window).

I really have to congratulate with Gregory Heckler and his colleagues for the fantastic job they have done so far. Every PRIMO user can now also enjoy their open-source receiver.

Thank you guys,

P.S. On their project website you should be able to find the archive with a preliminary snapshot of the code. Compile and run the GUI with ./gps-gse and the receiver with sudo ./gps-sdr -primo. I had no time to test it with the USRP 'cause we only have tweaked ones in the lab.. just be aware I tuned the scaling in acquisition and correlators.

Wednesday, May 12, 2010

Galileo E5AltBOC tracking in slow motion

Hello everyone,

not grabbed with our "TUNE" boards (the plot would not be as detailed at 61.44Msps) but with our next one I did not write about yet (samples at about 440Msps), here is a basic E5AltBOC pilot signal tracking:

Figure 1: Galileo PRN02 E5AltBOC tracking. Spirent GSS8000 simulator, static scenario, GPS L1, L2, L5, Galileo E1, E5a/b, E6 all in view.

Figure 1: GIOVE-B E5AltBOC tracking. Clear sky conditions, Novatel GPS704-X antenna, static scenario in Nottingham, May the 6th 2010, 00:05 GMT.

These animations are obtained using octave and ffmpeg... at 40x slower motion :)

More to come soon,

Thursday, April 29, 2010

Opening the door to new signals


I don't manage to keep my promise of updating regularly this blog (blush). Anyway, I am improving little by little so another pretty stable thing is a board which I use to capture the new civil signals from GPS, Glonass, Galileo, Compass. I might refer to it as "TUNE".

Figure 1: Six single channel TUNE boards.

With a much wider bandwith than PRIMO, these boards can capture through USB a continuous endless stream of E5AltBOC signal with 1 bit quantisation (122.88Mbps). Two can also be connected together to have some sort of a dual-frequency sampler.

At the moment, the GUI to configure everything (tuner, clock distribution, ADC) is a little "complicated":

Figure 2: The TUNE configuration GUI. it's my next part-time job to make it little more user friendly.
Some results of acquisitions and tracking of "famous" signals will follow shortly.

Regards everyone and thanks for all the comments had so far,