---
name: "gnss-sdr"
section: "1"
platform: "linux"
package: "gnss-sdr"
version: "0.0.20-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/gnss-sdr"
---

# gnss-sdr(1)

GNSS Software Defined Receiver.

## NAME

**gnss-sdr** - GNSS Software Defined Receiver.

## SYNOPSIS

**gnss-sdr -c=***\<path-to-configuration-file\>* \[OPTION\]...

## DESCRIPTION

**gnss-sdr** is a Global Navigation Satellite Systems Software Defined Receiver written in C++. It implements all the signal processing chain, taking as input raw samples coming from the output of an Analog-to-Digital Converter, and processing them up to the computation of the Position-Velocity-Time solution, including the generation of code and phase measurements. .TP **gnss-sdr** is able to work with raw data files or, if there is computational power enough, in real time with suitable radio frequency front-ends. The whole receiver is defined in a single configuration file, and therefore users can define theirs. .TP There is some flexibility in how flags may be specified. The following examples are equivalent: .RS 8 .TP gnss-sdr -c=/home/user/rx.conf .TP gnss-sdr --c=/home/user/rx.conf .TP gnss-sdr -c /home/user/rx.conf .TP gnss-sdr --c /home/user/rx.conf .RE

## OPTIONS

**gnss-sdr** takes the following options:

- **-c=***\<path-to-configuration-file\>* or **-config\_file=***\<path-to-configuration-file\>*

  Set the configuration file. This flag is mandatory.

- **-s=***\<path-to-raw-signal-file\>* or **-signal\_source=***\<path-to-raw-signal-file\>*

  If defined, path to the file containing the signal samples (overrides the data file specified in the configuration file).

- **-log\_dir=***\<path-to-directory\>*

  If defined, overrides the default directory where logs are saved.

- **-doppler\_max=***\<doppler\_max\>*

  If defined, maximum Doppler value in the search grid, in Hz (overrides the configuration file).

- **-doppler\_step=***\<doppler\_step\>*

  If defined, sets the frequency step in the search grid, in Hz (overrides the configuration file).

- **-cn0\_samples=***\<samples\>*

  Number of correlators outputs (one per integration time) used for CN0 estimation. It defaults to 20 outputs.

- **-cn0\_min=***\<cn0\_min\>*

  Minimum valid CN0 (in dB-Hz). It defaults to 25 dB-Hz. If set, it overrides the configuration file.

- **-max\_lock\_fail=***\<max\_lock\_fail\>*

  Maximum number of lock failures before dropping a satellite. It defaults to 50 failures. If set, it overrides the configuration file.

- **-carrier\_lock\_th=***\<carrier\_lock\_th\>*

  Carrier lock error threshold (in rad). It defaults to 0.85 rad (48.7 degrees). If set, it overrides the configuration file.

- **-dll\_bw\_hz=***\<dll\_bw\_hz\>*

  If defined, bandwidth of the DLL low pass filter, in Hz (overrides the configuration file).

- **-pll\_bw\_hz=***\<pll\_bw\_hz\>*

  If defined, bandwidth of the PLL low pass filter, in Hz (overrides the configuration file).

- **-RINEX\_version=***\<version\>*

  If defined, specifies the RINEX version (2.11 or 3.02). Default: "3.02". Overrides the configuration file.

- **-version**

  Print program version and exit.

- **-help**

  Print all the available commandline flags and exit.

## SEE ALSO

[**volk\_gnsssdr\_profile**(1)](/volk_gnsssdr_profile/1.md) .TP Examples of configuration files available at: ${prefix}/share/gnss-sdr/conf, where ${prefix} uses to be /usr or /usr/local. .TP Check https://gnss-sdr.org for more information.

## BUGS

Please report bugs at https://github.com/gnss-sdr/gnss-sdr/issues

## AUTHOR

Carles Fernandez-Prades (carles.fernandez@cttc.es) .TP This software package has been developed at CTTC (Centre Tecnologic de Telecomunicacions de Catalunya, https://www.cttc.cat) with contributions from around the world.
