Git Product home page Git Product logo

gnss-sdrlib's Introduction

GNSS-SDRLIB v2.0 Beta

An Open Source GNSS Software Defined Radio Library

Author

Taro Suzuki
E-Mail: [email protected] HP: http://www.taroz.net

Features

  • GNSS signal processing functions written in C
    • Code generations
    • Signal acquisition / tracking
    • Decoding navigation messages
    • Pseudo-range / carrier phase mesurements
  • GUI application (AP) written in C++/CLI
  • Visualization of GNSS signal processing in real-time
  • Real-time positioning with RTKLIB (http://www.rtklib.com/)
  • Observation data can be outputted in RINEX or RTCM format
  • Support following signals (tracking and decoding navigation message)
    • GPS L1CA
    • GLONASS G1
    • Galileo E1B
    • BeiDou B1I
    • QZSS L1CA/SAIF/LEX
    • SBAS L1
  • Support following front-ends for real-time positioning
  • Support RF binary file for post processing

System Requirements

  • GNSS-SDRLIB v2.0 only works in 64-bit Windows
  • The CLI/GUI applications are built with Microsoft Visual Studio Express 2012
  • SIMD SSE2 supported CPU (Pentium IV and later processor) is required

Directory and Files

./bin                   Executable APs for Windows  
    ./gnss-sdrcli.exe   Real-time GNSS signal processing AP (CLI)  
    ./gnss-sdrcli.ini   Configuration file for CLI AP  
    ./gnss-sdrgui.exe   Real-time GNSS signal processing AP (GUI)  
    ./frontend          Directory of front-end configuration files  
    ./cli               Command line interface  
    ./windows           VS2012 project of CLI AP (for Windows)  
./linux                 Makefile of CLI AP (for Linux)  
./gui                   VS2012 project of GUI AP (for Windows)  
./src                   Library source codes  
    ./sdr.h             Library header file  
    ./sdracq.c          Functions related to signal acquisition  
    ./sdrcmn.c          Functions related to SIMD operation  
    ./sdrcode.c         Functions related to generation of ranging code  
    ./sdrinit.c         Functions related to initialization/end process  
    ./sdrlex.c          Functions related to QZSS LEX decoding  
    ./sdrmain.c         Main function  
    ./sdrnav.c          Functions related to navigation data  
    ./sdrnav_gps.c      Functions related to decoding GPS nav. data  
    ./sdrnav_glo.c      Functions related to decoding GLONASS nav. data  
    ./sdrnav_gal.c      Functions related to decoding Galileo nav. data  
    ./sdrnav_bds.c      Functions related to decoding BeiDou nav. data  
    ./sdrnav_sbs.c      Functions related to decoding SBAS nav. data  
    ./sdrout.c          Functions related to RINEX/RTCM outputs  
    ./sdrplot.c         Functions related to plot graph  
    ./sdrrcv.c          Functions related to receiving RF data  
    ./sdrspec.c         Functions related to spectrum analysis  
    ./sdrsync.c         Functions related to generating observation data  
    ./sdrtrk.c          Functions related to signal tracking  
    ./rcv               Source codes related to front-end  
./lib                   Source codes related to used library  
./test                  Test data  
    ./data              Test IF data  
    ./output            Default RINEX output directory  

How to use

See manual or support page http://www.taroz.net/gnsssdrlib_e.html

License

Copyright (C) 2014 Taro Suzuki [email protected]

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

gnss-sdrlib's People

Contributors

taroz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gnss-sdrlib's Issues

Problem in debug the mixcarr

I can not get into the function (mixcarr in sdrcmn.c ). When I put a debug point, it will shown a white point not a red one.

function :fftwf_execute_dft

I have a problem with the function fftwf_execute_dft. Whenever I run the cli program on Ubuntu or Windows 7, there comes the same error at "fftwf_execute_dft 0xC0000005: Access violation reading location 0x0000000000000010".
I refer that the function comes from the opensource lib. So I have no idea with it.
Thanks for giving any advice about it.

comma separator in Rinex

using the italian version of windows the decimal point is replaced by a comma in the Rinex file
using notepad to find and and replace everything works fine

the problem about beidou

when i try to use the data about the bd1, it destroys .i can't figure out why.
And can you give me the configure about beidou's system

RTL-SDRLib works better than in Windows than in Linux?

I can make RTL-SDRLib work in Ubuntu. However, it appears to me that the Windows application under the ./bin directory works better than the Linux application I generated from the source, with the same configuration and same RTL-SDR donge. This doesn't make sense to me ...

Basic Install Instruction from my previous experience

Dear All,

Here is some DRAFT writing from my previous experience with this GNSS-SDRLIB from Prof. Suzuki

I will continue update it upon any feedback received.

** Install regular building tools if you haven't done so.

$ sudo apt update && sudo apt upgrade && sudo apt install build-essential cmake git

** Install KA9Q FEC library

$ git clone --recursive [email protected]:Opendigitalradio/ka9q-fec.git && cd ka9q-fec && mkdir build && cd build && cmake ../ && make && sudo make install && sudo ldconfig

** Install RTL-SDR library

$ git clone --recursive [email protected]:osmocom/rtl-sdr.git && cd rtl-sdr && mkdir build && cd build && cmake ../ -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON && make && sudo make install && sudo ldconfig

** Install FFTW from http://www.fftw.org/download.html
In some cases, you need to build three times possibly as instructed below.

$ cd fftw3

$ ./configure --enable-threads --enable-shared && make && sudo make install

$ ./configure --enable-threads --enable-shared --enable-float && make && sudo make install

$ ./configure --enable-threads --enable-shared --enable-long-double && make && sudo make install

** clone GNSS-SDRLIB, compile
$ git clone [email protected]:taroz/GNSS-SDRLIB.git && cd GNSS-SDRLIB/cli/linux && make clean && make

Let me know how the instruction above will work on your side.

Have fun,

Shu

Any Interest in an L5 GPS Version?

I have gnss-sdrlib running just fine for L1-only gps. Is anyone interested in collaborating to create an L5-only version? The L5 acq and track algorithms from the CU-SDR (Matlab) project could be leveraged as a start.

My setup for gnss-sdrlib is an i86 processor running Ubuntu LTS, BladeRF 2.0 front end. I also have a 3-channel Firehose front end, but there is no real-time API built for it yet. Running on an M1/M2 Mac could be interesting too, but would need to get the needed Arm-based libs running.

GNSS-SDRLIB + BladeRF

Hello,
The BladeRF integration is not working.
It reports low peak, and strange doppler for all satellites (No matter if the antenna is actually connected of not).
When i try to connect with RTKLIB i get a "connected from 127.0.0.1!" notification on the GNSS-SDRLIB monitor but the RTKLIB reports timeout after a few seconds.
I've tried both TCP Client and NTRIP client with RTCM3 and RTCM2 on the RTKLIB but without success.
Any idea where i should start looking for the bug ?
BR,
Nir.

plan = fftwf_plan_dft_1d( n, cpx, cpx, FFTW_FORWARD, FFTW_ESTIMATE ); fails

Dear Taroz and All,

GNSS-SDRLIB is a great tool to me. I tried to compile and run GNSS-SDRLIB but encountered many problems. The current one is plan = fftwf_plan_dft_1d( n, cpx, cpx, FFTW_FORWARD, FFTW_ESTIMATE ); breaks.

The console deplays

free(): invalid next size (fast)
Aborted (core dumped)

Any hints? What did I do wrong?

Can't build GUI in VS2022

Hi,
just tried to run the SDR GUI.
After several lib problems there is one I can't solve:
LINK 2019 unresolved external symbol "__imp___iob_func" in function "STEREO_SendFpga".

This seems to be connected with libnslstereo.a(nslstereo_STA.o)

Any ideas how to fix that are welcom.
Cheers

GPS fix with GNSS-SDRLIB+RTKNAVI+RTL SDR V3

Dear all,
I am unable to get a GPS fix with GNSS-SDRLIB + RTKNAVI.
I am using Win 10, the RTL SDR V3 dongle(RTL2832U R860 TCXO+BIAS T+HF), bias tee on, GPS antenna and RTKLIB 2.4.3.
Is it working for anyone? Could you kindly tell me how you managed it?
I am not the only one having problems. Thank you for your attention.

RTL-SDR Error

Hi, sir,
When I pushed the start button on the GUI, I got the following error message:
error: failed to set samplerate
error: failed to initialize rtlsdr
error: rcvinit
Can you give me any advice? Thank you.

First, I installed the Realtek driver and it occured the errors above.
Now I change the driver to Zadig's and it works fine.
This issue can be closed, thanks.

Doesn't support rtknavi

I'm trying to view the data the gnss-sdrlib gets in rtknavi but I'm facing a problem. After I press start at the rtknavi it doesn't display anything. It says "timeout" after few seconds then attempt to connect again. In the gnss-sdrlib log I can see it says "connection from 127.0.0.1" but still the rtknavi doesn't show anything.

Can you please help me with that?

Thank you

Loading pre recorded file

Hi all,

I've a prerecorded IQ file (from a HackRF) which is already filtered on the GPS frequency around 1576 MHz and would like to load it so as to check the coordinated. I've gone through the documentation but have to say I'm a bit lost.
Can someone point me to the right doc please or just explain how to load a and IQ file ?

Thanks in advance !

gnss-sdrlib with rtl sdr

GNSS-SDRLIB start!
error: failed to open rtlsdr device #0
error rcvinit

The issue is that my rtl sdr dongle shows up as #1 and there is no way to select it and thus sdrlib fails with the error above. I took a look at rtlsdr_L1.ini but do not see where I can specify to look for device #1 instead of the default of #0.

How to use VS2015 open GUI ?

Severity Code Description Project File Line Suppression State
Error LNK2001 unresolved external symbol __imp___iob_func gnss-sdrcli E:\GNSS-SDRLIB\GNSS-SDRLIB-2017030127for-ubuntu\cli\win\gnss-sdrcli\libnslstereo.a(nslstereo_STA.o) 1

GNSS-SDRLIB Working in VS19

I was able to get GNSS-SDRLIB working in VS19 on Win10 running an rtl-sdr. I'd like to now use a LimeSDR (and maybe other SDRs), so am thinking of integrating SoapySDR with GNSS-SDRLIB. Anyone have any thoughts/recommendations in doing this? Has anyone tried this?

Thanks, Don

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.