mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-12-12 19:20:32 +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.
290 lines
12 KiB
Plaintext
290 lines
12 KiB
Plaintext
; 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
|
|
|
|
|
|
;######### SIGNAL_SOURCE CONFIG ############
|
|
;#implementation: Use [File_Signal_Source] or [UHD_Signal_Source] or [GN3S_Signal_Source] or [Rtlsdr_Signal_Source]
|
|
SignalSource.implementation=File_Signal_Source
|
|
|
|
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
SignalSource.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.
|
|
;#Use gr_complex for 32 bits float I/Q or ishort for I/Q interleaved short integer.
|
|
;#If ishort is selected you should have to instantiate the Ishort_To_Complex data_type_adapter.
|
|
SignalSource.item_type=ishort
|
|
|
|
;#sampling_frequency: Original Signal sampling frequency in [Hz]
|
|
SignalSource.sampling_frequency=4000000
|
|
|
|
;#freq: RF front-end center frequency in [Hz]
|
|
SignalSource.freq=1575420000
|
|
|
|
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
SignalSource.samples=0
|
|
|
|
;#repeat: Repeat the processing file. Disable this option in this version
|
|
SignalSource.repeat=false
|
|
|
|
;#dump: Dump the Signal source data to a file. Disable this option in this version
|
|
SignalSource.dump=false
|
|
SignalSource.dump_filename=../data/signal_source.dat
|
|
|
|
;#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
|
|
|
|
|
|
;######### SIGNAL_CONDITIONER 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
|
|
SignalConditioner.implementation=Signal_Conditioner
|
|
|
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
|
;## Changes the type of input data.
|
|
;#implementation: Use [Ishort_To_Complex] or [Pass_Through]
|
|
DataTypeAdapter.implementation=Ishort_To_Complex
|
|
;#dump: Dump the filtered data to a file.
|
|
DataTypeAdapter.dump=false
|
|
;#dump_filename: Log path and filename.
|
|
DataTypeAdapter.dump_filename=../data/data_type_adapter.dat
|
|
|
|
;######### INPUT_FILTER 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.
|
|
|
|
;InputFilter.implementation=Fir_Filter
|
|
;InputFilter.implementation=Freq_Xlating_Fir_Filter
|
|
InputFilter.implementation=Pass_Through
|
|
|
|
;#dump: Dump the filtered data to a file.
|
|
InputFilter.dump=false
|
|
|
|
;#dump_filename: Log path and filename.
|
|
InputFilter.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 gnuradio's function: gr_remez.
|
|
;#These function calculates the optimal (in the Chebyshev/minimax sense) FIR filter inpulse reponse given a set of band edges, the desired reponse 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.
|
|
InputFilter.input_item_type=gr_complex
|
|
|
|
;#outut_item_type: Type and resolution for output filtered signal samples. Use only gr_complex in this version.
|
|
InputFilter.output_item_type=gr_complex
|
|
|
|
;#taps_item_type: Type and resolution for the taps of the filter. Use only float in this version.
|
|
InputFilter.taps_item_type=float
|
|
|
|
;#number_of_taps: Number of taps in the filter. Increasing this parameter increases the processing time
|
|
InputFilter.number_of_taps=5
|
|
|
|
;#number_of _bands: Number of frequency bands in the filter.
|
|
InputFilter.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
|
|
|
|
#used for gps
|
|
InputFilter.band1_begin=0.0
|
|
;InputFilter.band1_end=0.8
|
|
InputFilter.band1_end=0.85
|
|
InputFilter.band2_begin=0.90
|
|
InputFilter.band2_end=1.0
|
|
|
|
#used for galileo
|
|
InputFilter.band1_begin=0.0
|
|
;InputFilter.band1_end=0.8
|
|
InputFilter.band1_end=0.45
|
|
InputFilter.band2_begin=0.55
|
|
InputFilter.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
|
|
|
|
InputFilter.ampl1_begin=1.0
|
|
InputFilter.ampl1_end=1.0
|
|
InputFilter.ampl2_begin=0.0
|
|
InputFilter.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
|
|
InputFilter.band1_error=1.0
|
|
InputFilter.band2_error=1.0
|
|
|
|
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
InputFilter.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.
|
|
InputFilter.grid_density=16
|
|
|
|
;#The following options are used only in Freq_Xlating_Fir_Filter implementation.
|
|
;#InputFilter.IF is the intermediate frequency (in Hz) shifted down to zero Hz
|
|
|
|
InputFilter.sampling_frequency=4000000
|
|
InputFilter.IF=0
|
|
|
|
|
|
|
|
;######### RESAMPLER 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 neigbourhood interpolation
|
|
;Resampler.implementation=Direct_Resampler
|
|
Resampler.implementation=Pass_Through
|
|
|
|
;#dump: Dump the resamplered data to a file.
|
|
Resampler.dump=false
|
|
;#dump_filename: Log path and filename.
|
|
Resampler.dump_filename=../data/resampler.dat
|
|
|
|
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
Resampler.item_type=gr_complex
|
|
|
|
;#sample_freq_in: the sample frequency of the input signal
|
|
Resampler.sample_freq_in=4000000
|
|
|
|
;#sample_freq_out: the desired sample frequency of the output signal
|
|
Resampler.sample_freq_out=4000000
|
|
|
|
|
|
;######### CHANNELS GLOBAL CONFIG ############
|
|
;#count: Number of available satellite channels.
|
|
Channels_1B.count=4
|
|
;#in_acquisition: Number of channels simultaneously acquiring
|
|
Channels.in_acquisition=1
|
|
Channel.signal=1B
|
|
|
|
|
|
;######### ACQUISITION GLOBAL 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.coherent_integration_time_ms=4
|
|
|
|
Acquisition_1B.implementation=Galileo_E1_PCPS_QuickSync_Ambiguous_Acquisition
|
|
|
|
;#threshold: Acquisition threshold
|
|
Acquisition_1B.threshold=0.05
|
|
;#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
|
|
;#sampled_ms: Signal block duration for the acquisition signal detection [ms];
|
|
Acquisition_1B.coherent_integration_time_ms=8
|
|
|
|
Acquisition_1B.cboc=false
|
|
|
|
;######### TRACKING GLOBAL 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=true
|
|
|
|
;#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=20.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 CONFIG ############
|
|
;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L1 C/A or [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 algorithm:
|
|
PVT.implementation=RTKLIB_PVT
|
|
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
|
PVT.iono_model=Broadcast ; options: OFF, Broadcast, SBAS, Iono-Free-LC, Estimate_STEC, IONEX
|
|
PVT.trop_model=Saastamoinen ; options: OFF, Saastamoinen, SBAS, Estimate_ZTD, Estimate_ZTD_Grad
|
|
|
|
;#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
|
|
|
|
;#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
|
|
|
|
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
|
|
;#dump_filename: Log path and filename without extension. Notice that PVT will add ".dat" to the binary dump, ".kml" and ".geojson" to GIS-friendly formats.
|
|
PVT.dump_filename=./PVT
|
|
|
|
;#nmea_dump_filename: NMEA log path and filename
|
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
|
|
|
;#flag_nmea_tty_port: Enables or disables the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
PVT.flag_nmea_tty_port=true;
|
|
|
|
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
PVT.nmea_dump_devname=/dev/pts/4
|
|
|
|
;#flag_rtcm_server: Enables or disables a TCP/IP server transmitting RTCM 3.2 messages (accepts multiple clients, port 2101 by default)
|
|
PVT.flag_rtcm_server=false;
|
|
|
|
;#flag_rtcm_tty_port: Enables or disables the RTCM log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
PVT.flag_rtcm_tty_port=false;
|
|
|
|
;#rtcm_dump_devname: serial device descriptor for RTCM logging
|
|
PVT.rtcm_dump_devname=/dev/pts/1
|