Sunday, March 6, 2016

An RTL-SDR dataset for gnss-sdr

I've had several requests for a dataset for users to play with. I've been recalcitrant simply because every dataset I've taken has been from my house! So this week I went to a park and took a two-minute acquisition using GNSS-SDR. My setup is a RTL-SDR stick with a 0.5PPM TXCO and aluminum case with the bias tee mod, a LNA4ALL, and a cheap active GPS antenna. (By no means are 0.5PPM TXCO, aluminum care or LNA4ALL requirements, I've gotten a good fix with a cheap dongle in a plastic case with no LNA.)

The dataset lives on my Google Drive. The .conf file is the file I used for acquisition. If you want to use it for playback with gnss-sdr, you need to make the following changes

Line 29: Change the SignalSource.implementation from Osmosdr_Signal_Source to File_Signal_Source
Line 30: Uncomment the SignalSource.filename and provide the correct path to the data file
Line 42: Change SignalSource.dump to false

gnss_sdr_pvt.nmea contains position/velocity/time (PVT) in NMEA format. The GSDR063p40.16N contains the raw navigational information and the GSDR063p40.16O contains the observables. PVT.kml is a Google Earth file with coordinates.

You might be interested in recovering the chip rate.


  1. Hi Philip, Thanks a lot for the blog. Very helpful for a beginner like myself. gnss-sdr works for me with the dataset that's given along with it. I tried with your config file and ouput.dat. However, I get the following error.
    Tracking_1C.GPS_L1_CA_DLL_PLL_Optim_Tracking: Undefined implementation for block
    Couldn't figure out the cause of the same. Any guesses on what I might be doing wrong? Thanks a lot.

    1. Turns out that it works when I replace it with "GPS_L1_CA_DLL_PLL_Tracking" as in the default conf_file of gnss-sdr.