mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-12-13 11:40:33 +00:00
dc18980194
GNSS-SDR.internal_fs_sps The old name was misleading, since the units are samples per second and not Hertz. Backward compatibility is kept, so this change does not break any existing configuration.
452 lines
18 KiB
Plaintext
452 lines
18 KiB
Plaintext
; Default configuration file
|
|
; You can define your own receiver and invoke it by doing
|
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
|
;
|
|
|
|
[GNSS-SDR]
|
|
|
|
;######### GLOBAL OPTIONS ##################
|
|
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [samples per second].
|
|
GNSS-SDR.internal_fs_sps=4000000
|
|
|
|
Receiver.sources_count=2
|
|
|
|
;#enable_throttle_control: Enabling this option tells the signal source to keep the delay between samples in post processing.
|
|
; it helps to not overload the CPU, but the processing time will be longer.
|
|
SignalSource.enable_throttle_control=false
|
|
|
|
;#repeat: Repeat the processing file. Disable this option in this version
|
|
SignalSource.repeat=false
|
|
|
|
|
|
;######### SIGNAL_SOURCE 0 CONFIG ############
|
|
|
|
;#implementation: Use [File_Signal_Source] or [UHD_Signal_Source] or [GN3S_Signal_Source] (experimental)
|
|
SignalSource0.implementation=File_Signal_Source
|
|
|
|
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
SignalSource0.filename=/datalogger/signals/CTTC/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN.dat ; <- PUT YOUR FILE HERE
|
|
|
|
;#item_type: Type and resolution for each of the signal samples.
|
|
SignalSource0.item_type=ishort
|
|
|
|
;#sampling_frequency: Original Signal sampling frequency in [Hz]
|
|
SignalSource0.sampling_frequency=4000000
|
|
|
|
;#freq: RF front-end center frequency in [Hz]
|
|
SignalSource0.freq=1575420000
|
|
|
|
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
SignalSource0.samples=0
|
|
|
|
;#dump: Dump the Signal source data to a file. Disable this option in this version
|
|
SignalSource0.dump=false
|
|
|
|
SignalSource0.dump_filename=../data/signal_source.dat
|
|
|
|
;######### SIGNAL_SOURCE 1 CONFIG ############
|
|
|
|
;#implementation: Use [File_Signal_Source] or [UHD_Signal_Source] or [GN3S_Signal_Source] (experimental)
|
|
SignalSource1.implementation=File_Signal_Source
|
|
|
|
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
SignalSource1.filename=/datalogger/signals/CTTC/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN.dat ; <- PUT YOUR FILE HERE
|
|
|
|
;#item_type: Type and resolution for each of the signal samples.
|
|
SignalSource1.item_type=ishort
|
|
|
|
;#sampling_frequency: Original Signal sampling frequency in [Hz]
|
|
SignalSource1.sampling_frequency=4000000
|
|
|
|
;#freq: RF front-end center frequency in [Hz]
|
|
SignalSource1.freq=1575420000
|
|
|
|
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
SignalSource1.samples=0
|
|
|
|
;#dump: Dump the Signal source data to a file. Disable this option in this version
|
|
SignalSource1.dump=false
|
|
|
|
SignalSource1.dump_filename=../data/signal_source.dat
|
|
|
|
|
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
|
;## It holds blocks to change data type, filter and resample input data.
|
|
|
|
;#implementation: Use [Pass_Through] or [Signal_Conditioner]
|
|
;#[Pass_Through] disables this block and the [DataTypeAdapter], [InputFilter] and [Resampler] blocks
|
|
;#[Signal_Conditioner] enables this block. Then you have to configure [DataTypeAdapter], [InputFilter] and [Resampler] blocks
|
|
SignalConditioner0.implementation=Signal_Conditioner
|
|
|
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
|
;## Changes the type of input data.
|
|
;#implementation: [Pass_Through] disables this block
|
|
DataTypeAdapter0.implementation=Ishort_To_Complex
|
|
|
|
;######### INPUT_FILTER 0 CONFIG ############
|
|
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
|
|
;#implementation: Use [Pass_Through] or [Fir_Filter] or [Freq_Xlating_Fir_Filter]
|
|
;#[Pass_Through] disables this block
|
|
;#[Fir_Filter] enables a FIR Filter
|
|
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation that shifts IF down to zero Hz.
|
|
|
|
InputFilter0.implementation=Pass_Through
|
|
|
|
;#dump: Dump the filtered data to a file.
|
|
InputFilter0.dump=false
|
|
|
|
;#dump_filename: Log path and filename.
|
|
InputFilter0.dump_filename=../data/input_filter.dat
|
|
|
|
;#The following options are used in the filter design of Fir_Filter and Freq_Xlating_Fir_Filter implementation.
|
|
;#These options are based on parameters of GNU Radio's function: gr_remez.
|
|
;#These function calculates the optimal (in the Chebyshev/minimax sense) FIR filter impulse response given a set of band edges, the desired response on those bands, and the weight given to the error in those bands.
|
|
|
|
;#input_item_type: Type and resolution for input signal samples. Use only gr_complex in this version.
|
|
InputFilter0.input_item_type=gr_complex
|
|
|
|
;#outut_item_type: Type and resolution for output filtered signal samples. Use only gr_complex in this version.
|
|
InputFilter0.output_item_type=gr_complex
|
|
|
|
;#taps_item_type: Type and resolution for the taps of the filter. Use only float in this version.
|
|
InputFilter0.taps_item_type=float
|
|
|
|
;#number_of_taps: Number of taps in the filter. Increasing this parameter increases the processing time
|
|
InputFilter0.number_of_taps=5
|
|
|
|
;#number_of _bands: Number of frequency bands in the filter.
|
|
InputFilter0.number_of_bands=2
|
|
|
|
;#bands: frequency at the band edges [ b1 e1 b2 e2 b3 e3 ...].
|
|
;#Frequency is in the range [0, 1], with 1 being the Nyquist frequency (Fs/2)
|
|
;#The number of band_begin and band_end elements must match the number of bands
|
|
|
|
InputFilter0.band1_begin=0.0
|
|
InputFilter0.band1_end=0.45
|
|
InputFilter0.band2_begin=0.55
|
|
InputFilter0.band2_end=1.0
|
|
|
|
;#ampl: desired amplitude at the band edges [ a(b1) a(e1) a(b2) a(e2) ...].
|
|
;#The number of ampl_begin and ampl_end elements must match the number of bands
|
|
|
|
InputFilter0.ampl1_begin=1.0
|
|
InputFilter0.ampl1_end=1.0
|
|
InputFilter0.ampl2_begin=0.0
|
|
InputFilter0.ampl2_end=0.0
|
|
|
|
;#band_error: weighting applied to each band (usually 1).
|
|
;#The number of band_error elements must match the number of bands
|
|
InputFilter0.band1_error=1.0
|
|
InputFilter0.band2_error=1.0
|
|
|
|
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
InputFilter0.filter_type=bandpass
|
|
|
|
;#grid_density: determines how accurately the filter will be constructed.
|
|
;The minimum value is 16; higher values are slower to compute the filter.
|
|
InputFilter0.grid_density=16
|
|
|
|
;#The following options are used only in Freq_Xlating_Fir_Filter implementation.
|
|
;#InputFilter0.IF is the intermediate frequency (in Hz) shifted down to zero Hz
|
|
|
|
InputFilter0.sampling_frequency=4000000
|
|
InputFilter0.IF=0
|
|
|
|
;######### RESAMPLER 1 CONFIG ############
|
|
;## Resamples the input data.
|
|
|
|
;#implementation: Use [Pass_Through] or [Direct_Resampler]
|
|
;#[Pass_Through] disables this block
|
|
;#[Direct_Resampler] enables a resampler that implements a nearest neighborhood interpolation
|
|
|
|
Resampler1.implementation=Pass_Through
|
|
|
|
;#dump: Dump the resampled data to a file.
|
|
Resampler1.dump=false
|
|
;#dump_filename: Log path and filename.
|
|
Resampler1.dump_filename=../data/resampler.dat
|
|
|
|
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
Resampler1.item_type=gr_complex
|
|
|
|
;#sample_freq_in: the sample frequency of the input signal
|
|
Resampler1.sample_freq_in=4000000
|
|
|
|
;#sample_freq_out: the desired sample frequency of the output signal
|
|
Resampler1.sample_freq_out=4000000
|
|
|
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
|
;## It holds blocks to change data type, filter and resample input data.
|
|
|
|
;#implementation: Use [Pass_Through] or [Signal_Conditioner]
|
|
;#[Pass_Through] disables this block and the [DataTypeAdapter], [InputFilter] and [Resampler] blocks
|
|
;#[Signal_Conditioner] enables this block. Then you have to configure [DataTypeAdapter], [InputFilter] and [Resampler] blocks
|
|
SignalConditioner1.implementation=Signal_Conditioner
|
|
|
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
|
;## Changes the type of input data. Please disable it in this version.
|
|
;#implementation: [Pass_Through] disables this block
|
|
DataTypeAdapter1.implementation=Ishort_To_Complex
|
|
|
|
;######### INPUT_FILTER 1 CONFIG ############
|
|
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
|
|
;#implementation: Use [Pass_Through] or [Fir_Filter] or [Freq_Xlating_Fir_Filter]
|
|
;#[Pass_Through] disables this block
|
|
;#[Fir_Filter] enables a FIR Filter
|
|
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation that shifts IF down to zero Hz.
|
|
|
|
InputFilter1.implementation=Pass_Through
|
|
|
|
;#dump: Dump the filtered data to a file.
|
|
InputFilter1.dump=false
|
|
|
|
;#dump_filename: Log path and filename.
|
|
InputFilter1.dump_filename=../data/input_filter.dat
|
|
|
|
;#The following options are used in the filter design of Fir_Filter and Freq_Xlating_Fir_Filter implementation.
|
|
;#These options are based on parameters of GNU Radio's function: gr_remez.
|
|
;#These function calculates the optimal (in the Chebyshev/minimax sense) FIR filter impulse response given a set of band edges, the desired response on those bands, and the weight given to the error in those bands.
|
|
|
|
;#input_item_type: Type and resolution for input signal samples. Use only gr_complex in this version.
|
|
InputFilter1.input_item_type=gr_complex
|
|
|
|
;#outut_item_type: Type and resolution for output filtered signal samples. Use only gr_complex in this version.
|
|
InputFilter1.output_item_type=gr_complex
|
|
|
|
;#taps_item_type: Type and resolution for the taps of the filter. Use only float in this version.
|
|
InputFilter1.taps_item_type=float
|
|
|
|
;#number_of_taps: Number of taps in the filter. Increasing this parameter increases the processing time
|
|
InputFilter1.number_of_taps=5
|
|
|
|
;#number_of _bands: Number of frequency bands in the filter.
|
|
InputFilter1.number_of_bands=2
|
|
|
|
;#bands: frequency at the band edges [ b1 e1 b2 e2 b3 e3 ...].
|
|
;#Frequency is in the range [0, 1], with 1 being the Nyquist frequency (Fs/2)
|
|
;#The number of band_begin and band_end elements must match the number of bands
|
|
|
|
InputFilter1.band1_begin=0.0
|
|
InputFilter1.band1_end=0.45
|
|
InputFilter1.band2_begin=0.55
|
|
InputFilter1.band2_end=1.0
|
|
|
|
;#ampl: desired amplitude at the band edges [ a(b1) a(e1) a(b2) a(e2) ...].
|
|
;#The number of ampl_begin and ampl_end elements must match the number of bands
|
|
|
|
InputFilter1.ampl1_begin=1.0
|
|
InputFilter1.ampl1_end=1.0
|
|
InputFilter1.ampl2_begin=0.0
|
|
InputFilter1.ampl2_end=0.0
|
|
|
|
;#band_error: weighting applied to each band (usually 1).
|
|
;#The number of band_error elements must match the number of bands
|
|
InputFilter1.band1_error=1.0
|
|
InputFilter1.band2_error=1.0
|
|
|
|
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
InputFilter1.filter_type=bandpass
|
|
|
|
;#grid_density: determines how accurately the filter will be constructed.
|
|
;The minimum value is 16; higher values are slower to compute the filter.
|
|
InputFilter1.grid_density=16
|
|
|
|
;#The following options are used only in Freq_Xlating_Fir_Filter implementation.
|
|
;#InputFilter1.IF is the intermediate frequency (in Hz) shifted down to zero Hz
|
|
|
|
InputFilter1.sampling_frequency=4000000
|
|
InputFilter1.IF=0
|
|
|
|
;######### RESAMPLER 1 CONFIG ############
|
|
;## Resamples the input data.
|
|
|
|
;#implementation: Use [Pass_Through] or [Direct_Resampler]
|
|
;#[Pass_Through] disables this block
|
|
;#[Direct_Resampler] enables a resampler that implements a nearest neighborhood interpolation
|
|
|
|
Resampler1.implementation=Pass_Through
|
|
|
|
;#dump: Dump the resampled data to a file.
|
|
Resampler1.dump=false
|
|
;#dump_filename: Log path and filename.
|
|
Resampler1.dump_filename=../data/resampler.dat
|
|
|
|
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
Resampler1.item_type=gr_complex
|
|
|
|
;#sample_freq_in: the sample frequency of the input signal
|
|
Resampler1.sample_freq_in=4000000
|
|
|
|
;#sample_freq_out: the desired sample frequency of the output signal
|
|
Resampler1.sample_freq_out=4000000
|
|
|
|
|
|
;######### CHANNELS GLOBAL CONFIG ############
|
|
;#count: Number of available GPS satellite channels.
|
|
Channels_1C.count=2
|
|
;#count: Number of available Galileo satellite channels.
|
|
Channels_1B.count=2
|
|
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
Channels.in_acquisition=1
|
|
|
|
|
|
;# CHANNEL CONNECTION
|
|
Channel0.RF_channel_ID=0
|
|
Channel1.RF_channel_ID=0
|
|
Channel2.RF_channel_ID=1
|
|
Channel3.RF_channel_ID=1
|
|
;#signal:
|
|
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
Channel.signal=1B
|
|
|
|
|
|
;######### GPS ACQUISITION CONFIG ############
|
|
|
|
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
Acquisition_1C.dump=false
|
|
;#filename: Log path and filename
|
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
|
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
Acquisition_1C.item_type=gr_complex
|
|
;#if: Signal intermediate frequency in [Hz]
|
|
Acquisition_1C.if=0
|
|
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
Acquisition_1C.sampled_ms=1
|
|
;#implementation: Acquisition algorithm selection for this channel: [GPS_L1_CA_PCPS_Acquisition] or [Galileo_E1_PCPS_Ambiguous_Acquisition]
|
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
|
;#threshold: Acquisition threshold
|
|
Acquisition_1C.threshold=0.0075
|
|
;#pfa: Acquisition false alarm probability. This option overrides the threshold option. Only use with implementations: [GPS_L1_CA_PCPS_Acquisition] or [Galileo_E1_PCPS_Ambiguous_Acquisition]
|
|
;Acquisition_1C.pfa=0.01
|
|
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
Acquisition_1C.doppler_max=10000
|
|
;#doppler_max: Doppler step in the grid search [Hz]
|
|
Acquisition_1C.doppler_step=500
|
|
|
|
|
|
;######### GALILEO ACQUISITION CONFIG ############
|
|
|
|
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
Acquisition_1B.dump=false
|
|
;#filename: Log path and filename
|
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
|
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
Acquisition_1B.item_type=gr_complex
|
|
;#if: Signal intermediate frequency in [Hz]
|
|
Acquisition_1B.if=0
|
|
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
Acquisition_1B.sampled_ms=4
|
|
;#implementation: Acquisition algorithm selection for this channel: [GPS_L1_CA_PCPS_Acquisition] or [Galileo_E1_PCPS_Ambiguous_Acquisition]
|
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
|
;#threshold: Acquisition threshold
|
|
;Acquisition_1B.threshold=0
|
|
;#pfa: Acquisition false alarm probability. This option overrides the threshold option. Only use with implementations: [GPS_L1_CA_PCPS_Acquisition] or [Galileo_E1_PCPS_Ambiguous_Acquisition]
|
|
Acquisition_1B.pfa=0.0000008
|
|
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
Acquisition_1B.doppler_max=15000
|
|
;#doppler_max: Doppler step in the grid search [Hz]
|
|
Acquisition_1B.doppler_step=125
|
|
|
|
;######### TRACKING GPS CONFIG ############
|
|
|
|
;#implementation: Selected tracking algorithm: [GPS_L1_CA_DLL_PLL_Tracking] or [GPS_L1_CA_DLL_PLL_C_Aid_Tracking] or [GPS_L1_CA_TCP_CONNECTOR_Tracking] or [Galileo_E1_DLL_PLL_VEML_Tracking]
|
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
|
;#item_type: Type and resolution for each of the signal samples. Use only [gr_complex] in this version.
|
|
Tracking_1C.item_type=gr_complex
|
|
|
|
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
Tracking_1C.if=0
|
|
|
|
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
Tracking_1C.dump=false
|
|
|
|
;#dump_filename: Log path and filename. Notice that the tracking channel will add "x.dat" where x is the channel number.
|
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
|
|
|
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
Tracking_1C.pll_bw_hz=45.0;
|
|
|
|
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
Tracking_1C.dll_bw_hz=4.0;
|
|
|
|
;#order: PLL/DLL loop filter order [2] or [3]
|
|
Tracking_1C.order=3;
|
|
|
|
;######### TRACKING GALILEO CONFIG ############
|
|
|
|
;#implementation: Selected tracking algorithm: [Galileo_E1_DLL_PLL_VEML_Tracking]
|
|
Tracking_1B.implementation=Galileo_E1_DLL_PLL_VEML_Tracking
|
|
;#item_type: Type and resolution for each of the signal samples. Use only [gr_complex] in this version.
|
|
Tracking_1B.item_type=gr_complex
|
|
|
|
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
Tracking_1B.if=0
|
|
|
|
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
Tracking_1B.dump=false
|
|
|
|
;#dump_filename: Log path and filename. Notice that the tracking channel will add "x.dat" where x is the channel number.
|
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
|
|
|
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
Tracking_1B.pll_bw_hz=15.0;
|
|
|
|
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
Tracking_1B.dll_bw_hz=2.0;
|
|
|
|
;#order: PLL/DLL loop filter order [2] or [3]
|
|
Tracking_1B.order=3;
|
|
|
|
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5] for GPS and [0.15] for Galileo
|
|
Tracking_1B.early_late_space_chips=0.15;
|
|
|
|
;#very_early_late_space_chips: only for [Galileo_E1_DLL_PLL_VEML_Tracking], correlator very early-late space [chips]. Use [0.6]
|
|
Tracking_1B.very_early_late_space_chips=0.6;
|
|
|
|
|
|
;######### TELEMETRY DECODER GPS CONFIG ############
|
|
;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L1 C/A
|
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
|
TelemetryDecoder_1C.dump=false
|
|
;#decimation factor
|
|
TelemetryDecoder_1C.decimation_factor=4;
|
|
|
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
|
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
|
TelemetryDecoder_1B.dump=false
|
|
|
|
|
|
;######### OBSERVABLES CONFIG ############
|
|
;#implementation:
|
|
Observables.implementation=Hybrid_Observables
|
|
|
|
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
Observables.dump=false
|
|
|
|
;#dump_filename: Log path and filename.
|
|
Observables.dump_filename=./observables.dat
|
|
|
|
|
|
;######### PVT CONFIG ############
|
|
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
PVT.implementation=RTKLIB_PVT
|
|
|
|
;#output_rate_ms: Period between two PVT outputs. Notice that the minimum period is equal to the tracking integration time (for GPS CA L1 is 1ms) [ms]
|
|
PVT.output_rate_ms=100;
|
|
|
|
;#display_rate_ms: Position console print (std::out) interval [ms]. Notice that output_rate_ms<=display_rate_ms.
|
|
PVT.display_rate_ms=500;
|
|
|
|
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
PVT.dump=false
|
|
|
|
PVT.flag_rtcm_server=false
|
|
PVT.flag_rtcm_tty_port=false
|
|
PVT.rtcm_dump_devname=/dev/pts/1
|
|
|
|
;#dump_filename: Log path and filename without extension. Notice that PVT will add ".dat" to the binary dump and ".kml" to GoogleEarth dump.
|
|
PVT.dump_filename=./PVT
|