mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-08-25 11:06:49 +00:00
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into next
This commit is contained in:
commit
abd33f5d66
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Default configuration file
|
; Default configuration file
|
||||||
; You can define your own front-end calibration tool configuration and invoke it by doing
|
; You can define your own front-end calibration tool configuration and invoke it by doing
|
||||||
; ./front-end-cal --config_file=my_GNSS_SDR_configuration.conf
|
; ./front-end-cal --config_file=my_GNSS_SDR_configuration.conf
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Default configuration file
|
; Default configuration file
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
@ -25,149 +28,63 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=File_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
|
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.
|
|
||||||
SignalSource.item_type=ishort
|
SignalSource.item_type=ishort
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
;SignalConditioner.implementation=Pass_Through
|
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Ishort_To_Complex
|
DataTypeAdapter.implementation=Ishort_To_Complex
|
||||||
;DataTypeAdapter.implementation=Pass_Through
|
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### INPUT_FILTER CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
InputFilter.implementation=Pass_Through ; or Fir_Filter
|
||||||
;#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
|
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
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
|
InputFilter.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter.number_of_bands=2
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
InputFilter.band1_begin=0.0
|
||||||
InputFilter.band1_end=0.44
|
InputFilter.band1_end=0.44
|
||||||
InputFilter.band2_begin=0.55
|
InputFilter.band2_begin=0.55
|
||||||
InputFilter.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter.ampl1_end=1.0
|
InputFilter.ampl1_end=1.0
|
||||||
InputFilter.ampl2_begin=0.0
|
InputFilter.ampl2_begin=0.0
|
||||||
InputFilter.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter.band2_error=1.0
|
InputFilter.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter.filter_type=bandpass
|
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
|
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.sampling_frequency=4000000
|
||||||
InputFilter.IF=0
|
InputFilter.IF=0
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
InputFilter.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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 neighborhood interpolation
|
|
||||||
;Resampler.implementation=Direct_Resampler
|
|
||||||
Resampler.implementation=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
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=2000000
|
|
||||||
;#dump: Dump the resampled data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS L1 C/A satellite channels.
|
|
||||||
Channels_1C.count=6
|
Channels_1C.count=6
|
||||||
;#count: Number of available Galileo E1B satellite channels.
|
|
||||||
Channels_1B.count=0
|
Channels_1B.count=0
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
|
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel.signal=1C
|
|
||||||
|
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
;######### SPECIFIC CHANNELS CONFIG ######
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
;######### CHANNEL 0 CONFIG ############
|
;######### CHANNEL 0 CONFIG ############
|
||||||
;Channel0.signal=1C
|
;Channel0.signal=1C
|
||||||
;#satellite: Satellite PRN ID for this channel. Disable this option for random search
|
|
||||||
;Channel0.satellite=11
|
;Channel0.satellite=11
|
||||||
|
|
||||||
;######### CHANNEL 1 CONFIG ############
|
;######### CHANNEL 1 CONFIG ############
|
||||||
@ -176,90 +93,52 @@ Channel.signal=1C
|
|||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.005
|
Acquisition_1C.threshold=0.005
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_min=-10000
|
|
||||||
;#doppler_step Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#maximum dwells
|
|
||||||
Acquisition_1C.max_dwells=5
|
Acquisition_1C.max_dwells=5
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
PVT.trop_model=Saastamoinen ; options: OFF, Saastamoinen, SBAS, Estimate_ZTD, Estimate_ZTD_Grad
|
||||||
PVT.AR_GPS=PPP-AR ; options: OFF, Continuous, Instantaneous, Fix-and-Hold, PPP-AR
|
PVT.AR_GPS=PPP-AR ; options: OFF, Continuous, Instantaneous, Fix-and-Hold, PPP-AR
|
||||||
;#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=10
|
PVT.output_rate_ms=10
|
||||||
;#display_rate_ms: Position console print (std::out) interval [ms]. Notice that output_rate_ms <= display_rate_ms.
|
|
||||||
PVT.display_rate_ms=500
|
PVT.display_rate_ms=500
|
||||||
PVT.positioning_mode=PPP_Static
|
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea
|
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
|
PVT.flag_nmea_tty_port=true
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
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=true
|
PVT.flag_rtcm_server=true
|
||||||
;#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
|
PVT.flag_rtcm_tty_port=false
|
||||||
;#rtcm_dump_devname: serial device descriptor for RTCM logging
|
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=false
|
PVT.dump=false
|
||||||
;#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
|
PVT.dump_filename=./PVT
|
||||||
|
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -79,7 +82,6 @@ Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
|||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.threshold=0.0
|
Acquisition_1C.threshold=0.0
|
||||||
Acquisition_1C.pfa=0.00001
|
Acquisition_1C.pfa=0.00001
|
||||||
Acquisition_1C.if=0
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
Acquisition_1C.dump=false;
|
Acquisition_1C.dump=false;
|
||||||
@ -90,7 +92,6 @@ Acquisition_1G.implementation=GLONASS_L1_CA_PCPS_Acquisition
|
|||||||
Acquisition_1G.item_type=gr_complex
|
Acquisition_1G.item_type=gr_complex
|
||||||
Acquisition_1G.threshold=0.0
|
Acquisition_1G.threshold=0.0
|
||||||
Acquisition_1G.pfa=0.00001
|
Acquisition_1G.pfa=0.00001
|
||||||
Acquisition_1G.if=0
|
|
||||||
Acquisition_1G.doppler_max=10000
|
Acquisition_1G.doppler_max=10000
|
||||||
Acquisition_1G.doppler_step=250
|
Acquisition_1G.doppler_step=250
|
||||||
Acquisition_1G.dump=false;
|
Acquisition_1G.dump=false;
|
||||||
@ -100,7 +101,6 @@ Acquisition_1G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.early_late_space_chips=0.5
|
Tracking_1C.early_late_space_chips=0.5
|
||||||
Tracking_1C.pll_bw_hz=20.0;
|
Tracking_1C.pll_bw_hz=20.0;
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
@ -109,7 +109,6 @@ Tracking_1C.dump_filename=/archive/gps_tracking_ch_
|
|||||||
|
|
||||||
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_Tracking
|
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1G.item_type=gr_complex
|
Tracking_1G.item_type=gr_complex
|
||||||
Tracking_1G.if=0
|
|
||||||
Tracking_1G.early_late_space_chips=0.5
|
Tracking_1G.early_late_space_chips=0.5
|
||||||
Tracking_1G.pll_bw_hz=25.0;
|
Tracking_1G.pll_bw_hz=25.0;
|
||||||
Tracking_1G.dll_bw_hz=3.0;
|
Tracking_1G.dll_bw_hz=3.0;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -82,7 +85,6 @@ Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
|||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.threshold=0.0
|
Acquisition_2S.threshold=0.0
|
||||||
Acquisition_2S.pfa=0.00001
|
Acquisition_2S.pfa=0.00001
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.doppler_max=10000
|
Acquisition_2S.doppler_max=10000
|
||||||
Acquisition_2S.doppler_step=60
|
Acquisition_2S.doppler_step=60
|
||||||
Acquisition_2S.max_dwells=1
|
Acquisition_2S.max_dwells=1
|
||||||
@ -91,7 +93,6 @@ Acquisition_1G.implementation=GLONASS_L1_CA_PCPS_Acquisition
|
|||||||
Acquisition_1G.item_type=gr_complex
|
Acquisition_1G.item_type=gr_complex
|
||||||
Acquisition_1G.threshold=0.0
|
Acquisition_1G.threshold=0.0
|
||||||
Acquisition_1G.pfa=0.00001
|
Acquisition_1G.pfa=0.00001
|
||||||
Acquisition_1G.if=0
|
|
||||||
Acquisition_1G.doppler_max=10000
|
Acquisition_1G.doppler_max=10000
|
||||||
Acquisition_1G.doppler_step=250
|
Acquisition_1G.doppler_step=250
|
||||||
Acquisition_1G.dump=false;
|
Acquisition_1G.dump=false;
|
||||||
@ -100,7 +101,6 @@ Acquisition_1G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.early_late_space_chips=0.5
|
Tracking_2S.early_late_space_chips=0.5
|
||||||
Tracking_2S.pll_bw_hz=2.0;
|
Tracking_2S.pll_bw_hz=2.0;
|
||||||
Tracking_2S.dll_bw_hz=0.250;
|
Tracking_2S.dll_bw_hz=0.250;
|
||||||
@ -110,7 +110,6 @@ Tracking_2S.dump_filename=/archive/gps_tracking_ch_
|
|||||||
|
|
||||||
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_Tracking
|
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1G.item_type=gr_complex
|
Tracking_1G.item_type=gr_complex
|
||||||
Tracking_1G.if=0
|
|
||||||
Tracking_1G.early_late_space_chips=0.5
|
Tracking_1G.early_late_space_chips=0.5
|
||||||
Tracking_1G.pll_bw_hz=25.0;
|
Tracking_1G.pll_bw_hz=25.0;
|
||||||
Tracking_1G.dll_bw_hz=3.0;
|
Tracking_1G.dll_bw_hz=3.0;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -36,7 +39,6 @@ Acquisition_1G.implementation=GLONASS_L1_CA_PCPS_Acquisition
|
|||||||
Acquisition_1G.item_type=gr_complex
|
Acquisition_1G.item_type=gr_complex
|
||||||
Acquisition_1G.threshold=0.0
|
Acquisition_1G.threshold=0.0
|
||||||
Acquisition_1G.pfa=0.0001
|
Acquisition_1G.pfa=0.0001
|
||||||
Acquisition_1G.if=0
|
|
||||||
Acquisition_1G.doppler_max=10000
|
Acquisition_1G.doppler_max=10000
|
||||||
Acquisition_1G.doppler_step=250
|
Acquisition_1G.doppler_step=250
|
||||||
Acquisition_1G.dump=true;
|
Acquisition_1G.dump=true;
|
||||||
@ -47,7 +49,6 @@ Acquisition_1G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_Tracking
|
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1G.item_type=gr_complex
|
Tracking_1G.item_type=gr_complex
|
||||||
Tracking_1G.if=0
|
|
||||||
Tracking_1G.early_late_space_chips=0.5
|
Tracking_1G.early_late_space_chips=0.5
|
||||||
Tracking_1G.pll_bw_hz=25.0;
|
Tracking_1G.pll_bw_hz=25.0;
|
||||||
Tracking_1G.dll_bw_hz=3.0;
|
Tracking_1G.dll_bw_hz=3.0;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -36,7 +39,6 @@ Acquisition_1G.implementation=GLONASS_L1_CA_PCPS_Acquisition
|
|||||||
Acquisition_1G.item_type=gr_complex
|
Acquisition_1G.item_type=gr_complex
|
||||||
Acquisition_1G.threshold=0.0
|
Acquisition_1G.threshold=0.0
|
||||||
Acquisition_1G.pfa=0.0001
|
Acquisition_1G.pfa=0.0001
|
||||||
Acquisition_1G.if=0
|
|
||||||
Acquisition_1G.doppler_max=10000
|
Acquisition_1G.doppler_max=10000
|
||||||
Acquisition_1G.doppler_step=250
|
Acquisition_1G.doppler_step=250
|
||||||
Acquisition_1G.dump=false;
|
Acquisition_1G.dump=false;
|
||||||
@ -47,7 +49,6 @@ Acquisition_1G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
Tracking_1G.item_type=gr_complex
|
Tracking_1G.item_type=gr_complex
|
||||||
Tracking_1G.if=0
|
|
||||||
Tracking_1G.early_late_space_chips=0.5
|
Tracking_1G.early_late_space_chips=0.5
|
||||||
Tracking_1G.pll_bw_hz=40.0;
|
Tracking_1G.pll_bw_hz=40.0;
|
||||||
Tracking_1G.dll_bw_hz=3.0;
|
Tracking_1G.dll_bw_hz=3.0;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -79,7 +82,6 @@ Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
|||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.threshold=0.0
|
Acquisition_1C.threshold=0.0
|
||||||
Acquisition_1C.pfa=0.00001
|
Acquisition_1C.pfa=0.00001
|
||||||
Acquisition_1C.if=0
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
Acquisition_1C.dump=false;
|
Acquisition_1C.dump=false;
|
||||||
@ -90,7 +92,6 @@ Acquisition_2G.implementation=GLONASS_L2_CA_PCPS_Acquisition
|
|||||||
Acquisition_2G.item_type=gr_complex
|
Acquisition_2G.item_type=gr_complex
|
||||||
Acquisition_2G.threshold=0.0
|
Acquisition_2G.threshold=0.0
|
||||||
Acquisition_2G.pfa=0.00001
|
Acquisition_2G.pfa=0.00001
|
||||||
Acquisition_2G.if=0
|
|
||||||
Acquisition_2G.doppler_max=10000
|
Acquisition_2G.doppler_max=10000
|
||||||
Acquisition_2G.doppler_step=250
|
Acquisition_2G.doppler_step=250
|
||||||
Acquisition_2G.dump=false;
|
Acquisition_2G.dump=false;
|
||||||
@ -100,7 +101,6 @@ Acquisition_2G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.early_late_space_chips=0.5
|
Tracking_1C.early_late_space_chips=0.5
|
||||||
Tracking_1C.pll_bw_hz=20.0;
|
Tracking_1C.pll_bw_hz=20.0;
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
@ -109,7 +109,6 @@ Tracking_1C.dump_filename=/archive/gps_tracking_ch_
|
|||||||
|
|
||||||
Tracking_2G.implementation=GLONASS_L2_CA_DLL_PLL_Tracking
|
Tracking_2G.implementation=GLONASS_L2_CA_DLL_PLL_Tracking
|
||||||
Tracking_2G.item_type=gr_complex
|
Tracking_2G.item_type=gr_complex
|
||||||
Tracking_2G.if=0
|
|
||||||
Tracking_2G.early_late_space_chips=0.5
|
Tracking_2G.early_late_space_chips=0.5
|
||||||
Tracking_2G.pll_bw_hz=25.0;
|
Tracking_2G.pll_bw_hz=25.0;
|
||||||
Tracking_2G.dll_bw_hz=2.0;
|
Tracking_2G.dll_bw_hz=2.0;
|
||||||
@ -127,6 +126,7 @@ Observables.dump_filename=/archive/gnss_observables.dat
|
|||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
|
PVT.positioning_mode=Single
|
||||||
PVT.output_rate_ms=100
|
PVT.output_rate_ms=100
|
||||||
PVT.display_rate_ms=500
|
PVT.display_rate_ms=500
|
||||||
PVT.trop_model=Saastamoinen
|
PVT.trop_model=Saastamoinen
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -82,7 +85,6 @@ Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
|||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.threshold=0.0
|
Acquisition_2S.threshold=0.0
|
||||||
Acquisition_2S.pfa=0.00001
|
Acquisition_2S.pfa=0.00001
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.doppler_max=10000
|
Acquisition_2S.doppler_max=10000
|
||||||
Acquisition_2S.doppler_step=60
|
Acquisition_2S.doppler_step=60
|
||||||
Acquisition_2S.max_dwells=1
|
Acquisition_2S.max_dwells=1
|
||||||
@ -91,7 +93,6 @@ Acquisition_2G.implementation=GLONASS_L2_CA_PCPS_Acquisition
|
|||||||
Acquisition_2G.item_type=gr_complex
|
Acquisition_2G.item_type=gr_complex
|
||||||
Acquisition_2G.threshold=0.0
|
Acquisition_2G.threshold=0.0
|
||||||
Acquisition_2G.pfa=0.00001
|
Acquisition_2G.pfa=0.00001
|
||||||
Acquisition_2G.if=0
|
|
||||||
Acquisition_2G.doppler_max=10000
|
Acquisition_2G.doppler_max=10000
|
||||||
Acquisition_2G.doppler_step=250
|
Acquisition_2G.doppler_step=250
|
||||||
Acquisition_2G.dump=false;
|
Acquisition_2G.dump=false;
|
||||||
@ -100,7 +101,6 @@ Acquisition_2G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.early_late_space_chips=0.5
|
Tracking_2S.early_late_space_chips=0.5
|
||||||
Tracking_2S.pll_bw_hz=2.0;
|
Tracking_2S.pll_bw_hz=2.0;
|
||||||
Tracking_2S.dll_bw_hz=0.250;
|
Tracking_2S.dll_bw_hz=0.250;
|
||||||
@ -110,7 +110,6 @@ Tracking_2S.dump_filename=/archive/gps_tracking_ch_
|
|||||||
|
|
||||||
Tracking_2G.implementation=GLONASS_L2_CA_DLL_PLL_Tracking
|
Tracking_2G.implementation=GLONASS_L2_CA_DLL_PLL_Tracking
|
||||||
Tracking_2G.item_type=gr_complex
|
Tracking_2G.item_type=gr_complex
|
||||||
Tracking_2G.if=0
|
|
||||||
Tracking_2G.early_late_space_chips=0.5
|
Tracking_2G.early_late_space_chips=0.5
|
||||||
Tracking_2G.pll_bw_hz=25.0;
|
Tracking_2G.pll_bw_hz=25.0;
|
||||||
Tracking_2G.dll_bw_hz=3.0;
|
Tracking_2G.dll_bw_hz=3.0;
|
||||||
@ -128,6 +127,7 @@ Observables.dump_filename=/archive/gnss_observables.dat
|
|||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
|
PVT.positioning_mode=Single
|
||||||
PVT.output_rate_ms=100
|
PVT.output_rate_ms=100
|
||||||
PVT.display_rate_ms=500
|
PVT.display_rate_ms=500
|
||||||
PVT.trop_model=Saastamoinen
|
PVT.trop_model=Saastamoinen
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -30,7 +33,6 @@ Acquisition_2G.implementation=GLONASS_L2_CA_PCPS_Acquisition
|
|||||||
Acquisition_2G.item_type=gr_complex
|
Acquisition_2G.item_type=gr_complex
|
||||||
Acquisition_2G.threshold=0.0
|
Acquisition_2G.threshold=0.0
|
||||||
Acquisition_2G.pfa=0.0001
|
Acquisition_2G.pfa=0.0001
|
||||||
Acquisition_2G.if=0
|
|
||||||
Acquisition_2G.doppler_max=10000
|
Acquisition_2G.doppler_max=10000
|
||||||
Acquisition_2G.doppler_step=250
|
Acquisition_2G.doppler_step=250
|
||||||
Acquisition_2G.dump=true;
|
Acquisition_2G.dump=true;
|
||||||
@ -41,7 +43,6 @@ Acquisition_2G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_2G.implementation=GLONASS_L2_CA_DLL_PLL_Tracking
|
Tracking_2G.implementation=GLONASS_L2_CA_DLL_PLL_Tracking
|
||||||
Tracking_2G.item_type=gr_complex
|
Tracking_2G.item_type=gr_complex
|
||||||
Tracking_2G.if=0
|
|
||||||
Tracking_2G.early_late_space_chips=0.5
|
Tracking_2G.early_late_space_chips=0.5
|
||||||
Tracking_2G.pll_bw_hz=20.0;
|
Tracking_2G.pll_bw_hz=20.0;
|
||||||
Tracking_2G.dll_bw_hz=2.0;
|
Tracking_2G.dll_bw_hz=2.0;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -36,7 +39,6 @@ Acquisition_1G.implementation=GLONASS_L1_CA_PCPS_Acquisition
|
|||||||
Acquisition_1G.item_type=gr_complex
|
Acquisition_1G.item_type=gr_complex
|
||||||
Acquisition_1G.threshold=0.0
|
Acquisition_1G.threshold=0.0
|
||||||
Acquisition_1G.pfa=0.0001
|
Acquisition_1G.pfa=0.0001
|
||||||
Acquisition_1G.if=0
|
|
||||||
Acquisition_1G.doppler_max=10000
|
Acquisition_1G.doppler_max=10000
|
||||||
Acquisition_1G.doppler_step=250
|
Acquisition_1G.doppler_step=250
|
||||||
Acquisition_1G.dump=false;
|
Acquisition_1G.dump=false;
|
||||||
@ -47,7 +49,6 @@ Acquisition_1G.dump_filename=/archive/glo_acquisition.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1G.implementation=GLONASS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
Tracking_1G.item_type=gr_complex
|
Tracking_1G.item_type=gr_complex
|
||||||
Tracking_1G.if=0
|
|
||||||
Tracking_1G.early_late_space_chips=0.5
|
Tracking_1G.early_late_space_chips=0.5
|
||||||
Tracking_1G.pll_bw_hz=40.0;
|
Tracking_1G.pll_bw_hz=40.0;
|
||||||
Tracking_1G.dll_bw_hz=3.0;
|
Tracking_1G.dll_bw_hz=3.0;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -35,12 +38,11 @@ Channel.enable_FPGA=true
|
|||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fpga
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
Acquisition_1C.item_type=cshort
|
Acquisition_1C.item_type=cshort
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fpga
|
|
||||||
Acquisition_1C.select_queue_Fpga=0;
|
Acquisition_1C.select_queue_Fpga=0;
|
||||||
Acquisition_1C.threshold=0.005
|
Acquisition_1C.threshold=0.005
|
||||||
;Acquisition_1C.pfa=0.01
|
;Acquisition_1C.pfa=0.01
|
||||||
@ -50,7 +52,6 @@ Acquisition_1C.doppler_step=500
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking_Fpga
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking_Fpga
|
||||||
Tracking_1C.item_type=cshort
|
Tracking_1C.item_type=cshort
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.dump=false
|
Tracking_1C.dump=false
|
||||||
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
@ -60,7 +61,6 @@ Tracking_1C.order=3;
|
|||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### TELEMETRY DECODER GPS CONFIG ############
|
||||||
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
TelemetryDecoder_1C.decimation_factor=1;
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=GPS_L1_CA_Observables
|
Observables.implementation=GPS_L1_CA_Observables
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -68,8 +71,7 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.008
|
Acquisition_1C.threshold=0.008
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
@ -79,7 +81,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -11,107 +13,43 @@ GNSS-SDR.internal_fs_sps=4000000
|
|||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Spir_File_Signal_Source
|
SignalSource.implementation=Spir_File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource.filename=/dtalogger/signals/spir/data/20Secs/20Secs_L1.dat ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/dtalogger/signals/spir/data/20Secs/20Secs_L1.dat ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=int
|
SignalSource.item_type=int
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=80000000
|
SignalSource.sampling_frequency=80000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
DataTypeAdapter.implementation=Pass_Through
|
||||||
DataTypeAdapter.item_type=float
|
DataTypeAdapter.item_type=float
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
||||||
;InputFilter.implementation=Pass_Through
|
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=float
|
InputFilter.input_item_type=float
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
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
|
InputFilter.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter.number_of_bands=2
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
InputFilter.band1_begin=0.0
|
||||||
InputFilter.band1_end=0.45
|
InputFilter.band1_end=0.45
|
||||||
InputFilter.band2_begin=0.55
|
InputFilter.band2_begin=0.55
|
||||||
InputFilter.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter.ampl1_end=1.0
|
InputFilter.ampl1_end=1.0
|
||||||
InputFilter.ampl2_begin=0.0
|
InputFilter.ampl2_begin=0.0
|
||||||
InputFilter.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter.band2_error=1.0
|
InputFilter.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter.filter_type=bandpass
|
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
|
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=80000000
|
InputFilter.sampling_frequency=80000000
|
||||||
InputFilter.IF=10164
|
InputFilter.IF=10164
|
||||||
InputFilter.decimation_factor=20
|
InputFilter.decimation_factor=20
|
||||||
@ -119,105 +57,58 @@ InputFilter.decimation_factor=20
|
|||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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
|
Resampler.implementation=Pass_Through
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
Resampler.item_type=gr_complex
|
Resampler.item_type=gr_complex
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler.sample_freq_in=80000000
|
Resampler.sample_freq_in=80000000
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=4000000
|
Resampler.sample_freq_out=4000000
|
||||||
;#dump: Dump the resamplered data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=10
|
Channels_1C.count=10
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=0
|
Channels_1B.count=0
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;# "1C" GPS L1 C/A
|
|
||||||
;# "1B" Galileo E1B
|
|
||||||
Channel.signal=1C
|
Channel.signal=1C
|
||||||
|
|
||||||
|
|
||||||
;Galileo FM3 -> PRN 19
|
|
||||||
;Galileo FM4 -> PRN 20
|
|
||||||
;######### CHANNEL 0 CONFIG ############
|
;######### CHANNEL 0 CONFIG ############
|
||||||
|
|
||||||
;Channel0.signal=1B
|
|
||||||
;#satellite: Satellite PRN ID for this channel. Disable this option to random search
|
|
||||||
;Channel0.satellite=20
|
;Channel0.satellite=20
|
||||||
|
|
||||||
;######### CHANNEL 1 CONFIG ############
|
;######### CHANNEL 1 CONFIG ############
|
||||||
;Channel1.signal=1B
|
|
||||||
;Channel1.satellite=12
|
;Channel1.satellite=12
|
||||||
|
|
||||||
;######### CHANNEL 2 CONFIG ############
|
;######### CHANNEL 2 CONFIG ############
|
||||||
;Channel2.signal=1B
|
|
||||||
;#satellite: Satellite PRN ID for this channel. Disable this option to random search
|
|
||||||
;Channel2.satellite=11
|
;Channel2.satellite=11
|
||||||
|
|
||||||
;######### CHANNEL 3 CONFIG ############
|
;######### CHANNEL 3 CONFIG ############
|
||||||
;Channel3.signal=1B
|
|
||||||
;Channel3.satellite=19
|
;Channel3.satellite=19
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.005
|
Acquisition_1C.threshold=0.005
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_min=-10000
|
Acquisition_1C.doppler_min=-10000
|
||||||
;#doppler_step Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#maximum dwells
|
|
||||||
Acquisition_1C.max_dwells=5
|
Acquisition_1C.max_dwells=5
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=20.0;
|
Tracking_1C.pll_bw_hz=20.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1
|
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
@ -225,9 +116,7 @@ TelemetryDecoder_1C.dump=false
|
|||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
;#implementation:
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -237,20 +126,12 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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 1 ms) [ms]
|
|
||||||
PVT.output_rate_ms=500
|
PVT.output_rate_ms=500
|
||||||
;#display_rate_ms: Position console print (std::out) interval [ms]. Notice that output_rate_ms<=display_rate_ms.
|
|
||||||
PVT.display_rate_ms=500
|
PVT.display_rate_ms=500
|
||||||
;# RINEX, KML, and NMEA output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=true;
|
PVT.flag_nmea_tty_port=true;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Configuration file for using USRP X300 as a RF front-end for GPS L1 signals.
|
; Configuration file for using USRP X300 as a RF front-end for GPS L1 signals.
|
||||||
; Set SignalSource.device_address to the IP address of your device
|
; Set SignalSource.device_address to the IP address of your device
|
||||||
; and run:
|
; and run:
|
||||||
@ -26,154 +29,66 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
; # implementation:
|
|
||||||
SignalSource.implementation=UHD_Signal_Source
|
SignalSource.implementation=UHD_Signal_Source
|
||||||
; # When left empty, the device discovery routines will search all vailable transports on the system (ethernet, usb...)
|
|
||||||
SignalSource.device_address=192.168.40.2 ; <- PUT THE IP ADDRESS OF YOUR USRP HERE
|
SignalSource.device_address=192.168.40.2 ; <- PUT THE IP ADDRESS OF YOUR USRP HERE
|
||||||
; # item_type: Type and resolution for each of the signal samples.
|
|
||||||
;SignalSource.item_type=gr_complex
|
|
||||||
SignalSource.item_type=cshort
|
SignalSource.item_type=cshort
|
||||||
; # sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
; # freq: RF front-end center frequency in [Hz]
|
|
||||||
SignalSource.freq=1575420000
|
SignalSource.freq=1575420000
|
||||||
; # gain: Front-end Gain in [dB]
|
|
||||||
SignalSource.gain=40
|
SignalSource.gain=40
|
||||||
; # subdevice: UHD subdevice specification (for USRP1 use A:0 or B:0)
|
|
||||||
SignalSource.subdevice=A:0
|
SignalSource.subdevice=A:0
|
||||||
; # samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
; # repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
; # dump: Dump the Signal source data to a file.
|
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=../data/signal_source.dat
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
;SignalConditioner.implementation=Pass_Through
|
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
DataTypeAdapter.implementation=Pass_Through
|
||||||
DataTypeAdapter.item_type=cshort
|
DataTypeAdapter.item_type=cshort
|
||||||
;DataTypeAdapter.item_type=cbyte
|
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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=Fir_Filter
|
||||||
;InputFilter.implementation=Freq_Xlating_Fir_Filter
|
|
||||||
;InputFilter.implementation=Pass_Through
|
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=cshort
|
InputFilter.input_item_type=cshort
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
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=11
|
InputFilter.number_of_taps=11
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter.number_of_bands=2
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
InputFilter.band1_begin=0.0
|
||||||
InputFilter.band1_end=0.48
|
InputFilter.band1_end=0.48
|
||||||
InputFilter.band2_begin=0.52
|
InputFilter.band2_begin=0.52
|
||||||
InputFilter.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter.ampl1_end=1.0
|
InputFilter.ampl1_end=1.0
|
||||||
InputFilter.ampl2_begin=0.0
|
InputFilter.ampl2_begin=0.0
|
||||||
InputFilter.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter.band2_error=1.0
|
InputFilter.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter.filter_type=bandpass
|
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
|
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.sampling_frequency=4000000
|
||||||
InputFilter.IF=0
|
InputFilter.IF=0
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
InputFilter.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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
|
Resampler.implementation=Pass_Through
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler.item_type=gr_complex
|
Resampler.item_type=gr_complex
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler.sample_freq_in=4000000
|
Resampler.sample_freq_in=4000000
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=4000000
|
Resampler.sample_freq_out=4000000
|
||||||
;#dump: Dump the resampled data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=0
|
Channels_1B.count=0
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
;#system: GPS, GLONASS, GALILEO, SBAS or COMPASS
|
|
||||||
;#if the option is disabled by default is assigned GPS
|
|
||||||
;Channel.system=GPS
|
|
||||||
Channel.signal=1C
|
Channel.signal=1C
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
|
|
||||||
;Channel0.signal=1C
|
;Channel0.signal=1C
|
||||||
;Channel1.signal=1C
|
;Channel1.signal=1C
|
||||||
@ -188,68 +103,28 @@ Channel.signal=1C
|
|||||||
;Channel10.signal=1C
|
;Channel10.signal=1C
|
||||||
;Channel11.signal=1C
|
;Channel11.signal=1C
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
;######### CHANNEL 0 CONFIG ############
|
|
||||||
|
|
||||||
;Channel0.system=GPS
|
|
||||||
;Channel0.signal=1C
|
|
||||||
|
|
||||||
;#satellite: Satellite PRN ID for this channel. Disable this option to random search
|
|
||||||
;Channel0.satellite=11
|
|
||||||
|
|
||||||
;######### CHANNEL 1 CONFIG ############
|
|
||||||
|
|
||||||
;Channel1.system=GPS
|
|
||||||
;Channel1.signal=1C
|
|
||||||
;Channel1.satellite=18
|
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.01
|
Acquisition_1C.threshold=0.01
|
||||||
;#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.00001
|
;Acquisition_1C.pfa=0.00001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=8000
|
Acquisition_1C.doppler_max=8000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition] (should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=30.0;
|
Tracking_1C.pll_bw_hz=30.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=4.0;
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
@ -259,35 +134,23 @@ TelemetryDecoder_1C.dump=false
|
|||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Configuration file for using USRP 1 as a RF front-end for GPS L1 signals.
|
; Configuration file for using USRP 1 as a RF front-end for GPS L1 signals.
|
||||||
; Run:
|
; Run:
|
||||||
; gnss-sdr --config_file=/path/to/gnss-sdr_GPS_L1_USRP_realtime.conf
|
; gnss-sdr --config_file=/path/to/gnss-sdr_GPS_L1_USRP_realtime.conf
|
||||||
@ -25,145 +28,27 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=UHD_Signal_Source
|
SignalSource.implementation=UHD_Signal_Source
|
||||||
;#When left empty, the device discovery routines will search all available transports on the system (ethernet, usb...)
|
|
||||||
;SignalSource.device_address=192.168.40.2 ; <- PUT THE IP ADDRESS OF YOUR USRP HERE
|
;SignalSource.device_address=192.168.40.2 ; <- PUT THE IP ADDRESS OF YOUR USRP HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=2000000
|
SignalSource.sampling_frequency=2000000
|
||||||
;#freq: RF front-end center frequency in [Hz]
|
|
||||||
SignalSource.freq=1575420000
|
SignalSource.freq=1575420000
|
||||||
;#gain: Front-end Gain in [dB]
|
|
||||||
SignalSource.gain=60
|
SignalSource.gain=60
|
||||||
;#subdevice: UHD subdevice specification (for USRP1 use A:0 or B:0)
|
|
||||||
SignalSource.subdevice=A:0
|
SignalSource.subdevice=A:0
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#dump: Dump the Signal source data to a file.
|
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=../data/signal_source.dat
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
|
||||||
SignalConditioner.implementation=Pass_Through
|
SignalConditioner.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
|
||||||
;## Changes the type of input data. Please disable it in this version.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
|
||||||
|
|
||||||
;######### 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
|
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
|
||||||
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=2000000
|
|
||||||
InputFilter.IF=0
|
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### 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
|
|
||||||
;#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=8000000
|
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=2000000
|
|
||||||
;#dump: Dump the resamplered data to a file.
|
|
||||||
Resampler.dump=false
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=6
|
Channels_1C.count=6
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=0
|
Channels_1B.count=0
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
|
|
||||||
@ -175,86 +60,42 @@ Channels.in_acquisition=1
|
|||||||
;# "5X" GALILEO E5a I+Q
|
;# "5X" GALILEO E5a I+Q
|
||||||
;# "L5" GPS L5
|
;# "L5" GPS L5
|
||||||
|
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel.signal=1C
|
Channel.signal=1C
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
;######### CHANNEL 0 CONFIG ############
|
|
||||||
|
|
||||||
;Channel0.system=GPS
|
|
||||||
;Channel0.signal=1C
|
|
||||||
|
|
||||||
;#satellite: Satellite PRN ID for this channel. Disable this option to random search
|
|
||||||
;Channel0.satellite=11
|
|
||||||
|
|
||||||
;######### CHANNEL 1 CONFIG ############
|
|
||||||
|
|
||||||
;Channel1.system=GPS
|
|
||||||
;Channel1.signal=1C
|
|
||||||
;Channel1.satellite=18
|
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.01
|
Acquisition_1C.threshold=0.01
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition] (should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=30.0;
|
Tracking_1C.pll_bw_hz=30.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=4.0;
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -264,21 +105,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -12,233 +14,87 @@ GNSS-SDR.internal_fs_sps=4000000
|
|||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
SignalSource.implementation=File_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
|
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
|
||||||
SignalSource.item_type=ishort
|
SignalSource.item_type=ishort
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: Use [Ishort_To_Complex] or [Pass_Through]
|
|
||||||
DataTypeAdapter.implementation=Ishort_To_Complex
|
DataTypeAdapter.implementation=Ishort_To_Complex
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
DataTypeAdapter.dump=false
|
DataTypeAdapter.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
DataTypeAdapter.dump_filename=../data/data_type_adapter.dat
|
DataTypeAdapter.dump_filename=../data/data_type_adapter.dat
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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
|
InputFilter.implementation=Pass_Through
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
;#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
|
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
InputFilter.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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
|
Resampler.implementation=Pass_Through
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler.item_type=gr_complex
|
Resampler.item_type=gr_complex
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler.sample_freq_in=4000000
|
Resampler.sample_freq_in=4000000
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=4000000
|
Resampler.sample_freq_out=4000000
|
||||||
;#dump: Dump the resamplered data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available satellite channels.
|
|
||||||
Channels_1C.count=5
|
Channels_1C.count=5
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNEL 0 CONFIG ############
|
|
||||||
Channel0.signal=1C
|
|
||||||
Channel0.satellite=1
|
|
||||||
Channel0.repeat_satellite=false
|
|
||||||
|
|
||||||
;######### CHANNEL 1 CONFIG ############
|
|
||||||
Channel1.signal=1C
|
|
||||||
Channel1.satellite=11
|
|
||||||
Channel1.repeat_satellite=false
|
|
||||||
|
|
||||||
;######### CHANNEL 2 CONFIG ############
|
|
||||||
Channel2.signal=1C
|
|
||||||
Channel2.satellite=17
|
|
||||||
Channel2.repeat_satellite=false
|
|
||||||
|
|
||||||
;######### CHANNEL 3 CONFIG ############
|
|
||||||
Channel3.signal=1C
|
|
||||||
Channel3.satellite=20
|
|
||||||
Channel3.repeat_satellite=false
|
|
||||||
|
|
||||||
;######### CHANNEL 4 CONFIG ############
|
|
||||||
Channel4.signal=1C
|
|
||||||
Channel4.satellite=32
|
|
||||||
Channel4.repeat_satellite=false
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############_1C
|
;######### ACQUISITION GLOBAL CONFIG ############_1C
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_QuickSync_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_QuickSync_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent-integration_time_ms=4
|
Acquisition_1C.coherent-integration_time_ms=4
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=true
|
Acquisition_1C.dump=true
|
||||||
;#filename: Log path and filename
|
|
||||||
;Acquisition_1C.dump_filename=./acq_dump.dat
|
;Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION CHANNELS CONFIG ######
|
;######### ACQUISITION CHANNELS CONFIG ######
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_QuickSync_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_QuickSync_Acquisition
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.4
|
Acquisition_1C.threshold=0.4
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#repeat_satellite: Use only jointly with the satellte PRN ID option.
|
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=50.0;
|
Tracking_1C.pll_bw_hz=50.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=4.0;
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5
|
Tracking_1C.early_late_space_chips=0.5
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER CONFIG ############
|
;######### TELEMETRY DECODER CONFIG ############
|
||||||
;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L1 C/A.
|
|
||||||
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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 1 ms) [ms]
|
|
||||||
PVT.output_rate_ms=100;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea
|
||||||
PVT.flag_nmea_tty_port=true
|
PVT.flag_nmea_tty_port=true
|
||||||
@ -246,7 +102,5 @@ PVT.nmea_dump_devname=/dev/pts/4
|
|||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -17,8 +20,7 @@ SignalSource.if_gain=48
|
|||||||
SignalSource.AGC_enabled=false
|
SignalSource.AGC_enabled=false
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;# Next line enables the bladeRF
|
SignalSource.osmosdr_args=bladerf=0 ; This line enables the bladeRF
|
||||||
SignalSource.osmosdr_args=bladerf=0
|
|
||||||
SignalSource.enable_throttle_control=false
|
SignalSource.enable_throttle_control=false
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=./signal_source.dat
|
SignalSource.dump_filename=./signal_source.dat
|
||||||
@ -63,11 +65,9 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.015
|
Acquisition_1C.threshold=0.015
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
Acquisition_1C.doppler_min=-10000
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
Acquisition_1C.max_dwells=15
|
Acquisition_1C.max_dwells=15
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
@ -76,7 +76,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
@ -89,7 +88,6 @@ TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
|||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
#Observables.implementation=GPS_L1_CA_Observables
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -5,9 +8,6 @@
|
|||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [Sps].
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
GNSS-SDR.internal_fs_sps=2000000
|
GNSS-SDR.internal_fs_sps=2000000
|
||||||
|
|
||||||
|
|
||||||
@ -73,10 +73,6 @@ InputFilter.sampling_frequency=2000000
|
|||||||
InputFilter.IF=0; IF deviation due to front-end LO inaccuracies [Hz]
|
InputFilter.IF=0; IF deviation due to front-end LO inaccuracies [Hz]
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### RESAMPLER CONFIG ############
|
||||||
;## Resamples the input data.
|
|
||||||
;# DISABLED IN THE RTL-SDR REALTIME
|
|
||||||
;#implementation: Use [Pass_Through] or [Direct_Resampler]
|
|
||||||
;#[Pass_Through] disables this block
|
|
||||||
Resampler.implementation=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
@ -88,12 +84,10 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.015
|
Acquisition_1C.threshold=0.015
|
||||||
;Acquisition_1C.pfa=0.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
Acquisition_1C.doppler_min=-10000
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
Acquisition_1C.max_dwells=15
|
Acquisition_1C.max_dwells=15
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
@ -103,7 +97,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.dump=false
|
Tracking_1C.dump=false
|
||||||
Tracking_1C.dump_filename=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
@ -115,7 +108,6 @@ Tracking_1C.early_late_space_chips=0.5;
|
|||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### TELEMETRY DECODER GPS CONFIG ############
|
||||||
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
TelemetryDecoder_1C.decimation_factor=1;
|
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
|
@ -1,19 +1,23 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [samples per second].
|
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [samples per second].
|
||||||
GNSS-SDR.internal_fs_sps=2600000
|
GNSS-SDR.internal_fs_sps=4000000
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
SignalSource.filename=/home/javier/gnss/gnss-simulator/build/signal_out.bin ; <- PUT YOUR FILE HERE
|
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
|
||||||
SignalSource.item_type=byte
|
SignalSource.item_type=ishort
|
||||||
SignalSource.sampling_frequency=2600000
|
SignalSource.sampling_frequency=4000000
|
||||||
|
SignalSource.freq=1575420000
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
SignalSource.enable_throttle_control=false
|
SignalSource.enable_throttle_control=false
|
||||||
@ -22,12 +26,8 @@ SignalSource.enable_throttle_control=false
|
|||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### SIGNAL_CONDITIONER CONFIG ############
|
||||||
SignalConditioner.implementation=Signal_Conditioner
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
DataTypeAdapter.implementation=Ishort_To_Complex
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Ibyte_To_Complex
|
|
||||||
DataTypeAdapter.dump=false
|
DataTypeAdapter.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
DataTypeAdapter.dump_filename=../data/DataTypeAdapter.dat
|
DataTypeAdapter.dump_filename=../data/DataTypeAdapter.dat
|
||||||
|
|
||||||
InputFilter.implementation=Pass_Through
|
InputFilter.implementation=Pass_Through
|
||||||
@ -47,9 +47,8 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
Acquisition_1C.threshold=0.008
|
||||||
Acquisition_1C.threshold=0.05
|
|
||||||
;Acquisition_1C.pfa=0.01
|
;Acquisition_1C.pfa=0.01
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
@ -60,9 +59,10 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
Tracking_1C.dump=true
|
||||||
Tracking_1C.pll_bw_hz=25.0;
|
Tracking_1C.dump_filename=epl_tracking_ch_
|
||||||
Tracking_1C.dll_bw_hz=1.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
Tracking_1C.dump=false
|
Tracking_1C.dump=false
|
||||||
Tracking_1C.dump_filename=../data/epl_tracking_c
|
Tracking_1C.dump_filename=../data/epl_tracking_c
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -33,8 +36,7 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.005
|
Acquisition_1C.threshold=0.005
|
||||||
;Acquisition_1C.pfa=0.01
|
;Acquisition_1C.pfa=0.01
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
@ -46,7 +48,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking_GPU
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking_GPU
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.dump=false
|
Tracking_1C.dump=false
|
||||||
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -13,7 +16,7 @@ ControlThread.wait_for_flowgraph=false
|
|||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
SignalSource.filename=/archive/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN.dat ;/datalogger/signals/CTTC/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN.dat ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/archive/2013_04_04_GNSS_SIGNAL_at_CTTC_SPAIN.dat ; <- PUT YOUR FILE HERE
|
||||||
SignalSource.item_type=ishort
|
SignalSource.item_type=ishort
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
@ -26,18 +29,12 @@ SignalSource.enable_throttle_control=false
|
|||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### SIGNAL_CONDITIONER CONFIG ############
|
||||||
SignalConditioner.implementation=Signal_Conditioner
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;DataTypeAdapter.implementation=Ishort_To_Complex
|
|
||||||
DataTypeAdapter.implementation=Ishort_To_Cshort
|
DataTypeAdapter.implementation=Ishort_To_Cshort
|
||||||
InputFilter.implementation=Pass_Through
|
InputFilter.implementation=Pass_Through
|
||||||
;InputFilter.input_item_type=gr_complex
|
|
||||||
;InputFilter.output_item_type=gr_complex
|
|
||||||
InputFilter.item_type=cshort
|
InputFilter.item_type=cshort
|
||||||
;Resampler.implementation=Pass_Through
|
|
||||||
;Resampler.item_type=gr_complex
|
|
||||||
Resampler.implementation=Direct_Resampler
|
Resampler.implementation=Direct_Resampler
|
||||||
Resampler.sample_freq_in=4000000
|
Resampler.sample_freq_in=4000000
|
||||||
Resampler.sample_freq_out=2000000
|
Resampler.sample_freq_out=2000000
|
||||||
;Resampler.item_type=gr_complex
|
|
||||||
Resampler.item_type=cshort
|
Resampler.item_type=cshort
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
@ -49,39 +46,33 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=cshort
|
Acquisition_1C.item_type=cshort
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.008
|
Acquisition_1C.threshold=0.008
|
||||||
;Acquisition_1C.pfa=0.000001
|
;Acquisition_1C.pfa=0.000001
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
Acquisition_1C.tong_init_val=2
|
|
||||||
Acquisition_1C.tong_max_val=10
|
|
||||||
Acquisition_1C.tong_max_dwells=20
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
Acquisition_1C.blocking=false;
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
Tracking_1C.item_type=cshort
|
Tracking_1C.item_type=cshort
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.dump=false
|
|
||||||
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
Tracking_1C.dll_bw_hz=4.0;
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
|
Tracking_1C.dump=false;
|
||||||
|
Tracking_1C.dump_filename=./epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### TELEMETRY DECODER GPS CONFIG ############
|
||||||
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
TelemetryDecoder_1C.decimation_factor=1;
|
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
Observables.dump=false
|
Observables.dump=true
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Sample configuration file for IFEN SX-NSR software receiver front-end
|
; Sample configuration file for IFEN SX-NSR software receiver front-end
|
||||||
; http://www.ifen.com/products/sx-scientific-gnss-solutions/nsr-software-receiver.html
|
; http://www.ifen.com/products/sx-scientific-gnss-solutions/nsr-software-receiver.html
|
||||||
; This sample configuration is able to process directly .sream binary files
|
; This sample configuration is able to process directly .sream binary files
|
||||||
@ -80,18 +83,15 @@ Resampler.item_type=gr_complex
|
|||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=0
|
Channels_1C.count=0
|
||||||
Channels_2S.count=8
|
Channels_2S.count=8
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
#Channel.signal=1C
|
|
||||||
|
|
||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.scoherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.0075
|
Acquisition_1C.threshold=0.0075
|
||||||
;Acquisition_1C.pfa=0.01
|
;Acquisition_1C.pfa=0.01
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
@ -101,7 +101,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
|
|
||||||
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.coherent_integration_time_ms=20
|
Acquisition_2S.coherent_integration_time_ms=20
|
||||||
Acquisition_2S.threshold=0.00045
|
Acquisition_2S.threshold=0.00045
|
||||||
Acquisition_2S.doppler_max=5000
|
Acquisition_2S.doppler_max=5000
|
||||||
@ -115,7 +114,6 @@ Acquisition_2S.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
@ -125,7 +123,6 @@ Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
|||||||
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.pll_bw_hz=1.5;
|
Tracking_2S.pll_bw_hz=1.5;
|
||||||
Tracking_2S.dll_bw_hz=0.4;
|
Tracking_2S.dll_bw_hz=0.4;
|
||||||
Tracking_2S.order=2;
|
Tracking_2S.order=2;
|
||||||
@ -143,11 +140,8 @@ TelemetryDecoder_2S.dump=false
|
|||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Sample configuration file for IFEN SX-NSR software receiver front-end
|
; Sample configuration file for IFEN SX-NSR software receiver front-end
|
||||||
; http://www.ifen.com/products/sx-scientific-gnss-solutions/nsr-software-receiver.html
|
; http://www.ifen.com/products/sx-scientific-gnss-solutions/nsr-software-receiver.html
|
||||||
; This sample configuration is able to process directly .sream binary files
|
; This sample configuration is able to process directly .sream binary files
|
||||||
@ -94,7 +97,6 @@ Resampler.item_type=gr_complex
|
|||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
Channel.signal=1C
|
Channel.signal=1C
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,51 +27,26 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource.filename=/home/javier/signals/signal_source_int.dat
|
SignalSource.filename=/home/javier/signals/signal_source_int.dat
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=2000000
|
SignalSource.sampling_frequency=2000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file. Disable this option in this version
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#dump: Dump the Signal source data to a file. Disable this option in this version
|
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=dump.dat
|
SignalSource.dump_filename=dump.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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### INPUT_FILTER CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
|
|
||||||
;#[Pass_Through] disables this block
|
|
||||||
InputFilter.implementation=Pulse_Blanking_Filter
|
InputFilter.implementation=Pulse_Blanking_Filter
|
||||||
|
|
||||||
InputFilter.Pfa=0.001
|
InputFilter.Pfa=0.001
|
||||||
;#input_item_type: Type and resolution for input signal samples. Use only gr_complex in this version.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
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
|
InputFilter.output_item_type=gr_complex
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
InputFilter.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
@ -81,12 +58,8 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#use_CFAR_algorithm: If enabled, acquisition estimates the input signal power to implement CFAR detection algorithms
|
|
||||||
;#notice that this affects the Acquisition threshold range!
|
|
||||||
Acquisition_1C.use_CFAR_algorithm=false;
|
Acquisition_1C.use_CFAR_algorithm=false;
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=20
|
Acquisition_1C.threshold=20
|
||||||
;Acquisition_1C.pfa=0.01
|
;Acquisition_1C.pfa=0.01
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
@ -97,27 +70,15 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;# Extended correlation after telemetry bit synchronization
|
|
||||||
;# Valid values are: [1,2,4,5,10,20] (integer divisors of the GPS L1 CA bit period (20 ms) )
|
|
||||||
;# Longer integration period require more stable front-end LO
|
|
||||||
Tracking_1C.extend_correlation_ms=10
|
Tracking_1C.extend_correlation_ms=10
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=35;
|
Tracking_1C.pll_bw_hz=35;
|
||||||
Tracking_1C.pll_bw_narrow_hz=30;
|
Tracking_1C.pll_bw_narrow_hz=30;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.dll_bw_narrow_hz=1.5;
|
Tracking_1C.dll_bw_narrow_hz=1.5;
|
||||||
;#fll_bw_hz: FLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.fll_bw_hz=2.0;
|
Tracking_1C.fll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=true
|
Tracking_1C.dump=true
|
||||||
;#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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -29,119 +31,48 @@ GNSS-SDR.SUPL_CI=0x31b0
|
|||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
;#implementation
|
||||||
SignalSource.implementation=RtlTcp_Signal_Source
|
SignalSource.implementation=RtlTcp_Signal_Source
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
SignalSource.sampling_frequency=1200000
|
SignalSource.sampling_frequency=1200000
|
||||||
;#freq: RF front-end center frequency in [Hz]
|
|
||||||
SignalSource.freq=1575420000
|
SignalSource.freq=1575420000
|
||||||
;#gain: Front-end overall gain Gain in [dB]
|
|
||||||
SignalSource.gain=40
|
SignalSource.gain=40
|
||||||
;#rf_gain: Front-end RF stage gain in [dB]
|
|
||||||
SignalSource.rf_gain=40
|
SignalSource.rf_gain=40
|
||||||
;#rf_gain: Front-end IF stage gain in [dB]
|
|
||||||
SignalSource.if_gain=30
|
SignalSource.if_gain=30
|
||||||
;#AGC_enabled: Front-end AGC enabled or disabled
|
|
||||||
SignalSource.AGC_enabled = false
|
SignalSource.AGC_enabled = false
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file. Disable this option in this version
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#dump: Dump the Signal source data to a file. Disable this option in this version
|
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=../data/signal_source.dat
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
;#Address of the rtl_tcp server (IPv6 allowed)
|
|
||||||
SignalSource.address=127.0.0.1
|
SignalSource.address=127.0.0.1
|
||||||
|
|
||||||
;#Port of the rtl_tcp server
|
|
||||||
SignalSource.port=1234
|
SignalSource.port=1234
|
||||||
|
|
||||||
;# Set to true if I/Q samples come swapped
|
|
||||||
SignalSource.swap_iq=false
|
SignalSource.swap_iq=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
DataTypeAdapter.implementation=Pass_Through
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
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
|
InputFilter.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter.number_of_bands=2
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
InputFilter.band1_begin=0.0
|
||||||
InputFilter.band1_end=0.45
|
InputFilter.band1_end=0.45
|
||||||
InputFilter.band2_begin=0.55
|
InputFilter.band2_begin=0.55
|
||||||
InputFilter.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter.ampl1_end=1.0
|
InputFilter.ampl1_end=1.0
|
||||||
InputFilter.ampl2_begin=0.0
|
InputFilter.ampl2_begin=0.0
|
||||||
InputFilter.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter.band2_error=1.0
|
InputFilter.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter.filter_type=bandpass
|
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
|
InputFilter.grid_density=16
|
||||||
|
|
||||||
;#The following options are used only in Freq_Xlating_Fir_Filter implementation.
|
;#The following options are used only in Freq_Xlating_Fir_Filter implementation.
|
||||||
@ -149,22 +80,15 @@ InputFilter.grid_density=16
|
|||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
||||||
InputFilter.sampling_frequency=1200000
|
InputFilter.sampling_frequency=1200000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter.IF=80558
|
InputFilter.IF=80558
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### RESAMPLER CONFIG ############
|
||||||
;## Resamples the input data.
|
|
||||||
;# DISABLED IN THE RTL-SDR REALTIME
|
|
||||||
;#implementation: Use [Pass_Through] or [Direct_Resampler]
|
|
||||||
;#[Pass_Through] disables this block
|
|
||||||
Resampler.implementation=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=4
|
Channels_1C.count=4
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
Channel.signal=1C
|
Channel.signal=1C
|
||||||
|
|
||||||
@ -172,52 +96,30 @@ Channel.signal=1C
|
|||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms =1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.015
|
Acquisition_1C.threshold=0.015
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_min=-10000
|
Acquisition_1C.doppler_min=-10000
|
||||||
;#doppler_step Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#maximum dwells
|
|
||||||
Acquisition_1C.max_dwells=15
|
Acquisition_1C.max_dwells=15
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
@ -225,9 +127,7 @@ TelemetryDecoder_1C.dump=false
|
|||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
;#implementation:
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -237,21 +137,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=true
|
PVT.dump=true
|
||||||
;#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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -88,10 +91,6 @@ InputFilter.sampling_frequency=1999898
|
|||||||
InputFilter.IF=80558 ; IF deviation due to front-end LO inaccuracies [Hz]
|
InputFilter.IF=80558 ; IF deviation due to front-end LO inaccuracies [Hz]
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### RESAMPLER CONFIG ############
|
||||||
;## Resamples the input data.
|
|
||||||
;# DISABLED IN THE RTL-SDR REALTIME
|
|
||||||
;#implementation: Use [Pass_Through] or [Direct_Resampler]
|
|
||||||
;#[Pass_Through] disables this block
|
|
||||||
Resampler.implementation=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
@ -103,8 +102,7 @@ Channel.signal=1C
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.015
|
Acquisition_1C.threshold=0.015
|
||||||
;Acquisition_1C.pfa=0.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
@ -118,7 +116,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.dump=false
|
Tracking_1C.dump=false
|
||||||
Tracking_1C.dump_filename=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
@ -139,7 +136,6 @@ Observables.dump_filename=./observables.dat
|
|||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.iono_model=Broadcast ; options: OFF, Broadcast, SBAS, Iono-Free-LC, Estimate_STEC, IONEX
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -84,8 +87,7 @@ Channel.signal=1C
|
|||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.threshold=0.007
|
Acquisition_1C.threshold=0.007
|
||||||
;Acquisition_1C.pfa=0.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
@ -99,7 +101,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0_
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
Tracking_1C.dll_bw_hz=1.5;
|
Tracking_1C.dll_bw_hz=1.5;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
|
@ -1,7 +1,11 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Configuration file for using USRP1 as a RF front-end for GPS L2C signals
|
; Configuration file for using USRP1 as a RF front-end for GPS L2C signals
|
||||||
; Run:
|
; Run:
|
||||||
; gnss-sdr --config_file=/path/to/gnss-sdr_GPS_L2C_USRP1_realtime.conf
|
; gnss-sdr --config_file=/path/to/gnss-sdr_GPS_L2C_USRP1_realtime.conf
|
||||||
;
|
;
|
||||||
|
|
||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
@ -46,81 +50,29 @@ DataTypeAdapter.item_type=gr_complex
|
|||||||
|
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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.
|
|
||||||
|
|
||||||
InputFilter.implementation=Freq_Xlating_Fir_Filter
|
InputFilter.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
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
|
InputFilter.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter.number_of_bands=2
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
InputFilter.band1_begin=0.0
|
||||||
InputFilter.band1_end=0.45
|
InputFilter.band1_end=0.45
|
||||||
InputFilter.band2_begin=0.55
|
InputFilter.band2_begin=0.55
|
||||||
InputFilter.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter.ampl1_end=1.0
|
InputFilter.ampl1_end=1.0
|
||||||
InputFilter.ampl2_begin=0.0
|
InputFilter.ampl2_begin=0.0
|
||||||
InputFilter.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter.band2_error=1.0
|
InputFilter.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter.filter_type=bandpass
|
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
|
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=20000000
|
InputFilter.sampling_frequency=20000000
|
||||||
|
|
||||||
InputFilter.IF=-1600000
|
InputFilter.IF=-1600000
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter.decimation_factor=1
|
InputFilter.decimation_factor=1
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
InputFilter.dump_filename=../data/input_filter.dat
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### RESAMPLER CONFIG ############
|
||||||
@ -133,9 +85,7 @@ Resampler.sample_freq_out=2000000
|
|||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_2S.count=1
|
Channels_2S.count=1
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
Channel.signal=2S
|
Channel.signal=2S
|
||||||
@ -155,14 +105,11 @@ Channel7.signal=2S
|
|||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
;# GPS L2C M
|
|
||||||
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.threshold=0.0013
|
Acquisition_2S.threshold=0.0013
|
||||||
;Acquisition_2S.pfa=0.001
|
;Acquisition_2S.pfa=0.001
|
||||||
Acquisition_2S.doppler_max=10000
|
Acquisition_2S.doppler_max=10000
|
||||||
Acquisition_2S.doppler_min=-10000
|
|
||||||
Acquisition_2S.doppler_step=100
|
Acquisition_2S.doppler_step=100
|
||||||
Acquisition_2S.max_dwells=1
|
Acquisition_2S.max_dwells=1
|
||||||
Acquisition_2S.dump=false
|
Acquisition_2S.dump=false
|
||||||
@ -172,7 +119,6 @@ Acquisition_2S.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.pll_bw_hz=1.5;
|
Tracking_2S.pll_bw_hz=1.5;
|
||||||
Tracking_2S.dll_bw_hz=0.3;
|
Tracking_2S.dll_bw_hz=0.3;
|
||||||
Tracking_2S.order=3;
|
Tracking_2S.order=3;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; Configuration file for using USRP X300 as a RF front-end for GPS L2C signals
|
; Configuration file for using USRP X300 as a RF front-end for GPS L2C signals
|
||||||
; Set SignalSource.device_address to the IP address of your device
|
; Set SignalSource.device_address to the IP address of your device
|
||||||
; and run:
|
; and run:
|
||||||
@ -87,9 +90,7 @@ Resampler.sample_freq_out=4000000
|
|||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_2S.count=1
|
Channels_2S.count=1
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
Channel.signal=2S
|
Channel.signal=2S
|
||||||
@ -112,7 +113,6 @@ Channel7.signal=2S
|
|||||||
;# GPS L2C M
|
;# GPS L2C M
|
||||||
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.threshold=0.0015
|
Acquisition_2S.threshold=0.0015
|
||||||
;Acquisition_2S.pfa=0.001
|
;Acquisition_2S.pfa=0.001
|
||||||
Acquisition_2S.doppler_max=5000
|
Acquisition_2S.doppler_max=5000
|
||||||
@ -125,7 +125,6 @@ Acquisition_2S.dump_filename=./acq_dump.dat
|
|||||||
|
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.pll_bw_hz=2.0;
|
Tracking_2S.pll_bw_hz=2.0;
|
||||||
Tracking_2S.dll_bw_hz=0.25;
|
Tracking_2S.dll_bw_hz=0.25;
|
||||||
Tracking_2S.order=2;
|
Tracking_2S.order=2;
|
||||||
|
@ -38,8 +38,7 @@ Channel.signal=1B
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
Acquisition_1B.if=0
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;Acquisition_1B.threshold=1
|
;Acquisition_1B.threshold=1
|
||||||
Acquisition_1B.pfa=0.000008
|
Acquisition_1B.pfa=0.000008
|
||||||
Acquisition_1B.doppler_max=6000
|
Acquisition_1B.doppler_max=6000
|
||||||
@ -52,7 +51,6 @@ Acquisition_1B.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1B.implementation=Galileo_E1_DLL_PLL_VEML_Tracking
|
Tracking_1B.implementation=Galileo_E1_DLL_PLL_VEML_Tracking
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
Tracking_1B.if=0
|
|
||||||
Tracking_1B.pll_bw_hz=20.0;
|
Tracking_1B.pll_bw_hz=20.0;
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
Tracking_1B.order=3;
|
Tracking_1B.order=3;
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -10,259 +13,86 @@ GNSS-SDR.internal_fs_sps=4000000
|
|||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation:
|
|
||||||
SignalSource.implementation=File_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
|
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
|
SignalSource.item_type=ishort
|
||||||
|
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
|
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
|
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
|
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: Use [Ishort_To_Complex] or [Pass_Through]
|
|
||||||
DataTypeAdapter.implementation=Ishort_To_Complex
|
DataTypeAdapter.implementation=Ishort_To_Complex
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
DataTypeAdapter.dump=false
|
DataTypeAdapter.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
DataTypeAdapter.dump_filename=../data/data_type_adapter.dat
|
DataTypeAdapter.dump_filename=../data/data_type_adapter.dat
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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
|
InputFilter.implementation=Pass_Through
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
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
|
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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
|
Resampler.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the resamplered data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler.item_type=gr_complex
|
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 ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available satellite channels.
|
|
||||||
Channels_1B.count=4
|
Channels_1B.count=4
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
Channel.signal=1B
|
Channel.signal=1B
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_QuickSync_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_QuickSync_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
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.coherent_integration_time_ms=4
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1B.threshold=0.05
|
Acquisition_1B.threshold=0.05
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
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.coherent_integration_time_ms=8
|
||||||
Acquisition_1B.cboc=false
|
Acquisition_1B.cboc=false
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=20.0;
|
Tracking_1B.pll_bw_hz=20.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
;######### TELEMETRY DECODER CONFIG ############
|
;######### 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.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
|
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation algorithm:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
|
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
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
|
PVT.dump_filename=./PVT
|
||||||
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
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;
|
PVT.flag_nmea_tty_port=true;
|
||||||
|
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
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;
|
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;
|
PVT.flag_rtcm_tty_port=false;
|
||||||
|
|
||||||
;#rtcm_dump_devname: serial device descriptor for RTCM logging
|
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -11,190 +14,65 @@ GNSS-SDR.internal_fs_sps=4000000
|
|||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
SignalSource.implementation=File_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
|
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.
|
|
||||||
SignalSource.item_type=ishort
|
SignalSource.item_type=ishort
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#enable_throttle_control: Enabling this option tells the signal source to keep the delay between samples in post processing.
|
SignalSource.enable_throttle_control=true
|
||||||
; it helps to not overload the CPU, but the processing time will be longer.
|
|
||||||
SignalSource.enable_throttle_control=false
|
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Ishort_To_Complex
|
DataTypeAdapter.implementation=Ishort_To_Complex
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### INPUT_FILTER CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
|
|
||||||
;#implementation:
|
|
||||||
;#[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
|
InputFilter.implementation=Pass_Through
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
|
||||||
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
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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 neighborhood interpolation
|
|
||||||
;Resampler.implementation=Direct_Resampler
|
|
||||||
Resampler.implementation=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler.item_type=gr_complex
|
Resampler.item_type=gr_complex
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler.sample_freq_in=4000000
|
Resampler.sample_freq_in=4000000
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=4000000
|
Resampler.sample_freq_out=4000000
|
||||||
;#dump: Dump the resampled data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=8
|
Channels_1B.count=8
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
Channel.signal=1B
|
Channel.signal=1B
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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.00001
|
||||||
Acquisition_1B.pfa=0.000002
|
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#cboc: Only for [Galileo_E1_PCPS_Ambiguous_Acquisition]. This option allows you to choose between acquiring with CBOC signal [true] or sinboc(1,1) signal [false].
|
|
||||||
;#Use only if GNSS-SDR.internal_fs_sps is greater than or equal to 6138000
|
|
||||||
Acquisition_1B.cboc=false
|
Acquisition_1B.cboc=false
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
Acquisition_1B.blocking=false
|
||||||
|
|
||||||
;######### ACQUISITION CHANNELS CONFIG ######
|
|
||||||
|
|
||||||
;######### ACQUISITION CH 0 CONFIG ############
|
|
||||||
;#repeat_satellite: Use only jointly with the satellite PRN ID option. The default value is false
|
|
||||||
;Acquisition_1B0.repeat_satellite = true
|
|
||||||
;Acquisition_1B1.repeat_satellite = true
|
|
||||||
;Acquisition_1B2.repeat_satellite = true
|
|
||||||
;Acquisition_1B3.repeat_satellite = true
|
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
Tracking_1B.dump=true
|
||||||
Tracking_1B.if=0
|
Tracking_1B.dump_filename=./veml_tracking_ch_
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
Tracking_1B.pll_bw_hz=20.0;
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.dll_bw_hz=3.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
|
||||||
;#fll_bw_hz: FLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.fll_bw_hz=10.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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
Tracking_1B.track_pilot=true
|
Tracking_1B.track_pilot=true
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
@ -205,39 +83,25 @@ TelemetryDecoder_1B.dump=false
|
|||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
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
|
PVT.flag_nmea_tty_port=true
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
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=true;
|
PVT.flag_rtcm_server=true;
|
||||||
PVT.rtcm_tcp_port=2101
|
PVT.rtcm_tcp_port=2101
|
||||||
PVT.rtcm_MT1045_rate_ms=5000
|
PVT.rtcm_MT1045_rate_ms=5000
|
||||||
PVT.rtcm_MSM_rate_ms=1000
|
PVT.rtcm_MSM_rate_ms=1000
|
||||||
;#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;
|
PVT.flag_rtcm_tty_port=false;
|
||||||
;#rtcm_dump_devname: serial device descriptor for RTCM logging
|
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=false
|
PVT.dump=false
|
||||||
;#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
|
PVT.dump_filename=./PVT
|
@ -1,3 +1,6 @@
|
|||||||
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -21,15 +24,10 @@ SignalSource.samples=0 ; 0 means the entire file
|
|||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=../data/signal_source.dat
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### SIGNAL_CONDITIONER CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner.implementation=Signal_Conditioner
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
@ -78,8 +76,7 @@ Channel.signal=1B
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
Acquisition_1B.if=0
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
Acquisition_1B.pfa=0.0000008
|
Acquisition_1B.pfa=0.0000008
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
@ -91,7 +88,6 @@ Acquisition_1B.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1B.implementation=Galileo_E1_DLL_PLL_VEML_Tracking
|
Tracking_1B.implementation=Galileo_E1_DLL_PLL_VEML_Tracking
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
Tracking_1B.if=0
|
|
||||||
Tracking_1B.pll_bw_hz=20.0;
|
Tracking_1B.pll_bw_hz=20.0;
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
Tracking_1B.order=3;
|
Tracking_1B.order=3;
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
; Default configuration file
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,159 +24,33 @@ GNSS-SDR.internal_fs_sps=32000000
|
|||||||
;GNSS-SDR.SUPL_CI=0x31b0
|
;GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource.filename=/datalogger/signals/ifen/32MS_complex.dat ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/datalogger/signals/ifen/32MS_complex.dat ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=32000000
|
SignalSource.sampling_frequency=32000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
|
||||||
SignalConditioner.implementation=Pass_Through
|
SignalConditioner.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
|
|
||||||
;#implementation:
|
|
||||||
;#[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
|
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
|
||||||
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=32000000
|
|
||||||
InputFilter.IF=0
|
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### 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
|
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler.item_type=gr_complex
|
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler.sample_freq_in=8000000
|
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=4000000
|
|
||||||
;#dump: Dump the resamplered data to a file.
|
|
||||||
Resampler.dump=false
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available satellite channels.
|
|
||||||
Channels_5X.count=1
|
Channels_5X.count=1
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
;#system: GPS, GLONASS, Galileo, SBAS or Compass
|
|
||||||
;#if the option is disabled by default is assigned GPS
|
|
||||||
Channel.signal=5X
|
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
;######### SPECIFIC CHANNELS CONFIG ######
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
;#The following options are specific to each channel and overwrite the generic options
|
||||||
|
|
||||||
;######### CHANNEL 0 CONFIG ############
|
;######### CHANNEL 0 CONFIG ############
|
||||||
;Channel0.signal=5X
|
|
||||||
;#satellite: Satellite PRN ID for this channel. Disable this option to random search
|
|
||||||
;Channel0.satellite=19
|
;Channel0.satellite=19
|
||||||
;Channel0.repeat_satellite=true
|
|
||||||
|
|
||||||
;######### CHANNEL 1 CONFIG ############
|
;######### CHANNEL 1 CONFIG ############
|
||||||
|
|
||||||
;Channel1.system=Galileo
|
|
||||||
;Channel1.signal=5Q
|
|
||||||
;Channel1.satellite=12
|
;Channel1.satellite=12
|
||||||
|
|
||||||
;######### CHANNEL 2 CONFIG ############
|
;######### CHANNEL 2 CONFIG ############
|
||||||
|
|
||||||
;Channel2.system=Galileo
|
|
||||||
;Channel2.signal=5Q
|
|
||||||
;Channel2.satellite=11
|
;Channel2.satellite=11
|
||||||
|
|
||||||
;######### CHANNEL 3 CONFIG ############
|
;######### CHANNEL 3 CONFIG ############
|
||||||
@ -188,97 +61,56 @@ Channel.signal=5X
|
|||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_5X.item_type=gr_complex
|
Acquisition_5X.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
|
||||||
Acquisition_5X.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_5X.coherent_integration_time_ms=1
|
Acquisition_5X.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_5X.threshold=0.001
|
Acquisition_5X.threshold=0.001
|
||||||
;#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_5X.pfa=0.0003
|
Acquisition_5X.pfa=0.0003
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_5X.doppler_max=10000
|
Acquisition_5X.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_5X.doppler_step=250
|
Acquisition_5X.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition] (should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_5X.bit_transition_flag=false
|
Acquisition_5X.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_5X.max_dwells=1
|
Acquisition_5X.max_dwells=1
|
||||||
;#CAF filter: **Only for E5a** Resolves doppler ambiguity averaging the specified BW in the winner code delay. If set to 0 CAF filter is desactivated. Recommended value 3000 Hz
|
|
||||||
Acquisition_5X.CAF_window_hz=0
|
Acquisition_5X.CAF_window_hz=0
|
||||||
;#Zero_padding: **Only for E5a** Avoids power loss and doppler ambiguity in bit transitions by correlating one code with twice the input data length, ensuring that at least one full code is present without transitions.
|
|
||||||
;#If set to 1 it is ON, if set to 0 it is OFF.
|
|
||||||
Acquisition_5X.Zero_padding=0
|
Acquisition_5X.Zero_padding=0
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
Acquisition_5X.dump=false
|
||||||
Acquisition_5X.dump=true
|
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_5X.dump_filename=./acq_dump.dat
|
Acquisition_5X.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_5X.item_type=gr_complex
|
Tracking_5X.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_5X.if=0
|
|
||||||
;#dll_ti_ms: **Only for E5a** loop filter integration time after initialization (secondary code delay search)[ms]
|
|
||||||
;Tracking_5X.ti_ms=3;
|
|
||||||
Tracking_5X.ti_ms=1;
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth during initialization [Hz]
|
|
||||||
Tracking_5X.pll_bw_hz=20.0;
|
Tracking_5X.pll_bw_hz=20.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth during initialization [Hz]
|
|
||||||
Tracking_5X.dll_bw_hz=20.0;
|
Tracking_5X.dll_bw_hz=20.0;
|
||||||
Tracking_5X.pll_bw_narrow_hz=2.0;
|
Tracking_5X.pll_bw_narrow_hz=2.0;
|
||||||
Tracking_5X.dll_bw_narrow_hz=5.0;
|
Tracking_5X.dll_bw_narrow_hz=5.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_5X.order=2;
|
Tracking_5X.order=2;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_5X.early_late_space_chips=0.5;
|
Tracking_5X.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
Tracking_5X.dump=false
|
||||||
Tracking_5X.dump=true
|
|
||||||
;#dump_filename: Log path and filename. Notice that the tracking channel will add "x.dat" where x is the channel number.
|
|
||||||
Tracking_5X.dump_filename=./tracking_ch_
|
Tracking_5X.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER CONFIG ############
|
;######### TELEMETRY DECODER CONFIG ############
|
||||||
;#implementation:
|
|
||||||
TelemetryDecoder_5X.implementation=Galileo_E5a_Telemetry_Decoder
|
TelemetryDecoder_5X.implementation=Galileo_E5a_Telemetry_Decoder
|
||||||
TelemetryDecoder_5X.dump=false
|
TelemetryDecoder_5X.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation algorithm:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=Single ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
PVT.positioning_mode=Single ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
||||||
PVT.iono_model=Broadcast ; options: OFF, Broadcast, SBAS, Iono-Free-LC, Estimate_STEC, IONEX
|
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
|
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 [ms]
|
|
||||||
PVT.output_rate_ms=100
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=true;
|
PVT.flag_nmea_tty_port=true;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
; Default configuration file
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -74,7 +73,7 @@ Resampler.dump_filename=../data/resampler.dat
|
|||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
Channels_5X.count=1
|
Channels_5X.count=8
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
Channel.signal=5X
|
Channel.signal=5X
|
||||||
|
|
||||||
@ -83,7 +82,7 @@ Channel.signal=5X
|
|||||||
|
|
||||||
;######### CHANNEL 0 CONFIG ############
|
;######### CHANNEL 0 CONFIG ############
|
||||||
Channel0.signal=5X
|
Channel0.signal=5X
|
||||||
Channel0.satellite=19
|
;Channel0.satellite=19
|
||||||
;Channel0.repeat_satellite=true
|
;Channel0.repeat_satellite=true
|
||||||
|
|
||||||
;######### CHANNEL 1 CONFIG ############
|
;######### CHANNEL 1 CONFIG ############
|
||||||
@ -101,7 +100,6 @@ Channel3.signal=5X
|
|||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
||||||
Acquisition_5X.item_type=gr_complex
|
Acquisition_5X.item_type=gr_complex
|
||||||
Acquisition_5X.if=0
|
|
||||||
Acquisition_5X.coherent_integration_time_ms=1
|
Acquisition_5X.coherent_integration_time_ms=1
|
||||||
Acquisition_5X.threshold=0.002
|
Acquisition_5X.threshold=0.002
|
||||||
Acquisition_5X.doppler_max=10000
|
Acquisition_5X.doppler_max=10000
|
||||||
@ -117,10 +115,8 @@ Acquisition_5X.dump_filename=./acq_dump.dat
|
|||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
||||||
Tracking_5X.item_type=gr_complex
|
Tracking_5X.item_type=gr_complex
|
||||||
Tracking_5X.if=0
|
|
||||||
Tracking_5X.pll_bw_hz=20.0;
|
Tracking_5X.pll_bw_hz=20.0;
|
||||||
Tracking_5X.dll_bw_hz=20.0;
|
Tracking_5X.dll_bw_hz=20.0;
|
||||||
Tracking_5X.ti_ms=1; **Only for E5a** loop filter integration time after initialization (secondary code delay search)[ms]
|
|
||||||
Tracking_5X.pll_bw_narrow_hz=20.0;
|
Tracking_5X.pll_bw_narrow_hz=20.0;
|
||||||
Tracking_5X.dll_bw_narrow_hz=20.0;
|
Tracking_5X.dll_bw_narrow_hz=20.0;
|
||||||
Tracking_5X.order=2;
|
Tracking_5X.order=2;
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -12,129 +14,40 @@ GNSS-SDR.internal_fs_sps=20000000
|
|||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource.filename=/datalogger/signals/Fraunhofer/L125_III1b_210s_L1.bin ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/datalogger/signals/Fraunhofer/L125_III1b_210s_L1.bin ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples..
|
|
||||||
SignalSource.item_type=byte
|
SignalSource.item_type=byte
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=20000000
|
SignalSource.sampling_frequency=20000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Ibyte_To_Complex
|
DataTypeAdapter.implementation=Ibyte_To_Complex
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### INPUT_FILTER CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
;#[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
|
InputFilter.implementation=Pass_Through
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples..
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
|
||||||
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=20000000
|
|
||||||
InputFilter.IF=0
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
InputFilter.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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
|
Resampler.implementation=Pass_Through
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler.item_type=gr_complex
|
Resampler.item_type=gr_complex
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler.sample_freq_in=20000000
|
Resampler.sample_freq_in=20000000
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=20000000
|
Resampler.sample_freq_out=20000000
|
||||||
;#dump: Dump the resamplered data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=8
|
Channels_1B.count=8
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -158,123 +71,75 @@ Channel15.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.0060
|
Acquisition_1C.threshold=0.0060
|
||||||
;#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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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
|
Acquisition_1B.pfa=0.0000008
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=4.0;
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=false
|
PVT.dump=false
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -7,139 +9,48 @@
|
|||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [samples per second].
|
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [samples per second].
|
||||||
;GNSS-SDR.internal_fs_sps=2048000
|
|
||||||
GNSS-SDR.internal_fs_sps=2600000
|
GNSS-SDR.internal_fs_sps=2600000
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
;#SignalSource.filename=/home/javier/Descargas/rtlsdr_tcxo_l1/rtlsdr_tcxo_l1.bin ; <- PUT YOUR FILE HERE
|
|
||||||
SignalSource.filename=/Users/carlesfernandez/git/cttc/build/signal_out.bin ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/Users/carlesfernandez/git/cttc/build/signal_out.bin ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
SignalSource.item_type=byte
|
SignalSource.item_type=byte
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#dump: Dump the Signal source data to a file.
|
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=../data/signal_source.dat
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data. Please disable it in this version.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Ibyte_To_Complex
|
DataTypeAdapter.implementation=Ibyte_To_Complex
|
||||||
DataTypeAdapter.dump=false
|
DataTypeAdapter.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
DataTypeAdapter.dump_filename=../data/DataTypeAdapter.dat
|
DataTypeAdapter.dump_filename=../data/DataTypeAdapter.dat
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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
|
InputFilter.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
|
||||||
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=2600000
|
|
||||||
InputFilter.IF=0
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### RESAMPLER CONFIG ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler.implementation=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
Resampler.item_type = gr_complex;
|
Resampler.item_type = gr_complex;
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=11
|
Channels_1C.count=11
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=0
|
Channels_1B.count=0
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel1.signal=1C
|
Channel1.signal=1C
|
||||||
Channel2.signal=1C
|
Channel2.signal=1C
|
||||||
Channel3.signal=1C
|
Channel3.signal=1C
|
||||||
@ -159,109 +70,63 @@ Channel15.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
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]
|
|
||||||
;#use_CFAR_algorithm: If enabled, acquisition estimates the input signal power to implement CFAR detection algorithms
|
|
||||||
;#notice that this affects the Acquisition threshold range!
|
|
||||||
Acquisition_1C.use_CFAR_algorithm=false;
|
Acquisition_1C.use_CFAR_algorithm=false;
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=15
|
Acquisition_1C.threshold=15
|
||||||
;#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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=6000
|
Acquisition_1C.doppler_max=6000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=100
|
Acquisition_1C.doppler_step=100
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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
|
Acquisition_1B.pfa=0.0000008
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=20.0;
|
Tracking_1C.pll_bw_hz=20.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=1.5;
|
Tracking_1C.dll_bw_hz=1.5;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
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
|
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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -270,14 +135,10 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -10,135 +12,24 @@
|
|||||||
GNSS-SDR.internal_fs_sps=4092000
|
GNSS-SDR.internal_fs_sps=4092000
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource.filename=/datalogger/signals/sim/GPS_sim1.dat ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/datalogger/signals/sim/GPS_sim1.dat ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4092000
|
SignalSource.sampling_frequency=4092000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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=Pass_Through
|
SignalConditioner.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
|
||||||
DataTypeAdapter.item_type=gr_complex
|
|
||||||
|
|
||||||
;######### 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]
|
|
||||||
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation
|
|
||||||
;# that shifts IF down to zero Hz.
|
|
||||||
|
|
||||||
InputFilter.implementation=Pass_Through
|
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
|
||||||
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
|
|
||||||
|
|
||||||
;# Original sampling frequency stored in the signal file
|
|
||||||
InputFilter.sampling_frequency=4092000
|
|
||||||
|
|
||||||
;#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.IF=5499998.47412109
|
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter.decimation_factor=8
|
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### 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=Pass_Through
|
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=1
|
Channels_1C.count=1
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=0
|
Channels_1B.count=0
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;# "1C" GPS L1 C/A
|
|
||||||
;# "2S" GPS L2 L2C (M)
|
|
||||||
;# "1B" GALILEO E1 B (I/NAV OS/CS/SoL)
|
|
||||||
;# "5X" GALILEO E5a I+Q
|
|
||||||
|
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
||||||
Channel0.signal=1C
|
Channel0.signal=1C
|
||||||
Channel1.signal=1B
|
Channel1.signal=1B
|
||||||
@ -160,134 +51,80 @@ Channel15.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.use_CFAR_algorithm=false;
|
Acquisition_1C.use_CFAR_algorithm=false;
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=30
|
Acquisition_1C.threshold=30
|
||||||
;#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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=100
|
Acquisition_1C.doppler_step=100
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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.0000002
|
Acquisition_1B.pfa=0.0000002
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;# Extended correlation after telemetry bit synchronization
|
|
||||||
;# Valid values are: [1,2,4,5,10,20] (integer divisors of the GPS L1 CA bit period (20 ms) )
|
|
||||||
;# Longer integration period require more stable front-end LO
|
|
||||||
Tracking_1C.extend_correlation_ms=10
|
Tracking_1C.extend_correlation_ms=10
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40;
|
Tracking_1C.pll_bw_hz=40;
|
||||||
Tracking_1C.pll_bw_narrow_hz=25;
|
Tracking_1C.pll_bw_narrow_hz=25;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.dll_bw_narrow_hz=2.0;
|
Tracking_1C.dll_bw_narrow_hz=2.0;
|
||||||
;#fll_bw_hz: FLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.fll_bw_hz=2.0;
|
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=true
|
Tracking_1C.dump=true
|
||||||
;#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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#fll_bw_hz: FLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.fll_bw_hz=10.0;
|
Tracking_1B.fll_bw_hz=10.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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=10;
|
PVT.output_rate_ms=10;
|
||||||
;#display_rate_ms: Position console print (std::out) interval [ms]. Notice that output_rate_ms<=display_rate_ms.
|
|
||||||
PVT.display_rate_ms=500;
|
PVT.display_rate_ms=500;
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=false
|
PVT.dump=false
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -28,133 +30,36 @@ GNSS-SDR.SUPL_CI=0x31b0
|
|||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
;#implementation
|
||||||
SignalSource.implementation=File_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
|
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.
|
|
||||||
SignalSource.item_type=ishort
|
SignalSource.item_type=ishort
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Ishort_To_Complex
|
DataTypeAdapter.implementation=Ishort_To_Complex
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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
|
InputFilter.implementation=Pass_Through
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
|
||||||
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
|
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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
|
Resampler.implementation=Pass_Through
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler.item_type=gr_complex
|
Resampler.item_type=gr_complex
|
||||||
;#sample_freq_in: the sample frequency of the input signalq
|
|
||||||
Resampler.sample_freq_in=4000000
|
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler.sample_freq_out=4000000
|
|
||||||
;#dump: Dump the resamplered data to a file.
|
|
||||||
Resampler.dump=false
|
Resampler.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler.dump_filename=../data/resampler.dat
|
Resampler.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=0
|
Channels_1C.count=0
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=5
|
Channels_1B.count=5
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -174,120 +79,73 @@ Channel7.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.0075
|
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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
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:
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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; 0.0000008
|
Acquisition_1B.pfa=0.0000008; 0.0000008
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
Acquisition_1B.cboc=false;
|
Acquisition_1B.cboc=false;
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=50.0;
|
Tracking_1C.pll_bw_hz=50.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=5.0;
|
Tracking_1C.dll_bw_hz=5.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=20.0;
|
Tracking_1B.pll_bw_hz=20.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
@ -297,7 +155,5 @@ PVT.rtcm_MT1045_rate_ms=5000 ; Period (in ms) of Galileo ephemeris messages. 0 m
|
|||||||
PVT.rtcm_MT1045_rate_ms=5000 ; Period (in ms) of GPS ephemeris messages. 0 mutes this message
|
PVT.rtcm_MT1045_rate_ms=5000 ; Period (in ms) of GPS ephemeris messages. 0 mutes this message
|
||||||
PVT.rtcm_MT1097_rate_ms=1000 ; Period (in ms) of Galileo observables. 0 mutes this message
|
PVT.rtcm_MT1097_rate_ms=1000 ; Period (in ms) of Galileo observables. 0 mutes this message
|
||||||
PVT.rtcm_MT1077_rate_ms=1000 ; Period (in ms) of GPS observables. 0 mutes this message
|
PVT.rtcm_MT1077_rate_ms=1000 ; Period (in ms) of GPS observables. 0 mutes this message
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -7,136 +9,60 @@
|
|||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [samples per second].
|
;internal_fs_sps: Internal signal sampling frequency after the signal conditioning stage [samples per second].
|
||||||
;GNSS-SDR.internal_fs_sps=6826700
|
|
||||||
GNSS-SDR.internal_fs_sps=2560000
|
GNSS-SDR.internal_fs_sps=2560000
|
||||||
;GNSS-SDR.internal_fs_sps=4096000
|
|
||||||
;GNSS-SDR.internal_fs_sps=5120000
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Nsr_File_Signal_Source
|
SignalSource.implementation=Nsr_File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource.filename=/media/javier/SISTEMA/signals/ifen/E1L1_FE0_Band0.stream ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/media/javier/SISTEMA/signals/ifen/E1L1_FE0_Band0.stream ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=byte
|
SignalSource.item_type=byte
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=20480000
|
SignalSource.sampling_frequency=20480000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#dump: Dump the Signal source data to a file.
|
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=../data/signal_source.dat
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
DataTypeAdapter.implementation=Pass_Through
|
||||||
DataTypeAdapter.item_type=float
|
DataTypeAdapter.item_type=float
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### 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]
|
|
||||||
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation
|
|
||||||
;# that shifts IF down to zero Hz.
|
|
||||||
|
|
||||||
InputFilter.implementation=Freq_Xlating_Fir_Filter
|
InputFilter.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=float
|
InputFilter.input_item_type=float
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
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
|
InputFilter.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter.number_of_bands=2
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
InputFilter.band1_begin=0.0
|
||||||
InputFilter.band1_end=0.45
|
InputFilter.band1_end=0.45
|
||||||
InputFilter.band2_begin=0.55
|
InputFilter.band2_begin=0.55
|
||||||
InputFilter.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter.ampl1_end=1.0
|
InputFilter.ampl1_end=1.0
|
||||||
InputFilter.ampl2_begin=0.0
|
InputFilter.ampl2_begin=0.0
|
||||||
InputFilter.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter.band2_error=1.0
|
InputFilter.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter.filter_type=bandpass
|
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
|
InputFilter.grid_density=16
|
||||||
|
|
||||||
;# Original sampling frequency stored in the signal file
|
|
||||||
InputFilter.sampling_frequency=20480000
|
InputFilter.sampling_frequency=20480000
|
||||||
|
|
||||||
;#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.IF=5499998.47412109
|
InputFilter.IF=5499998.47412109
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter.decimation_factor=8
|
InputFilter.decimation_factor=8
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
InputFilter.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=0
|
Channels_1B.count=0
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -168,103 +94,59 @@ Channel15.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.0075
|
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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
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]
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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.0000002
|
Acquisition_1B.pfa=0.0000002
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;# Extended correlation after telemetry bit synchronization
|
|
||||||
;# Valid values are: [1,2,4,5,10,20] (integer divisors of the GPS L1 CA bit period (20 ms) )
|
|
||||||
;# Longer integration period require more stable front-end LO
|
|
||||||
Tracking_1C.extend_correlation_ms=1
|
Tracking_1C.extend_correlation_ms=1
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40;
|
Tracking_1C.pll_bw_hz=40;
|
||||||
Tracking_1C.pll_bw_narrow_hz=20;
|
Tracking_1C.pll_bw_narrow_hz=20;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.dll_bw_narrow_hz=1.0;
|
Tracking_1C.dll_bw_narrow_hz=1.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=true
|
Tracking_1C.dump=true
|
||||||
;#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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
@ -272,9 +154,7 @@ TelemetryDecoder_1B.dump=false
|
|||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
;#implementation:
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -283,14 +163,10 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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=10;
|
PVT.output_rate_ms=10;
|
||||||
;#display_rate_ms: Position console print (std::out) interval [ms]. Notice that output_rate_ms<=display_rate_ms.
|
|
||||||
PVT.display_rate_ms=500;
|
PVT.display_rate_ms=500;
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -11,62 +13,34 @@ GNSS-SDR.internal_fs_sps=20000000
|
|||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=File_Signal_Source
|
SignalSource.implementation=File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource.filename=/media/javier/SISTEMA/signals/fraunhofer/L125_III1b_210s_L1.bin ; <- PUT YOUR FILE HERE
|
SignalSource.filename=/media/javier/SISTEMA/signals/fraunhofer/L125_III1b_210s_L1.bin ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
SignalSource.item_type=byte
|
SignalSource.item_type=byte
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=20000000
|
SignalSource.sampling_frequency=20000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Ibyte_To_Complex
|
DataTypeAdapter.implementation=Ibyte_To_Complex
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### INPUT_FILTER CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
|
|
||||||
InputFilter.implementation=Pass_Through
|
InputFilter.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG ############
|
;######### 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 neighborhood interpolation
|
|
||||||
;Resampler.implementation=Direct_Resampler
|
|
||||||
Resampler.implementation=Pass_Through
|
Resampler.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=0
|
Channels_1C.count=0
|
||||||
;#count: Number of available Galileo satellite channels.
|
Channels_1B.count=8
|
||||||
Channels_1B.count=1
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel1.signal=1B
|
Channel1.signal=1B
|
||||||
Channel2.signal=1B
|
Channel2.signal=1B
|
||||||
Channel3.signal=1B
|
Channel3.signal=1B
|
||||||
@ -86,132 +60,83 @@ Channel15.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.scoherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.use_CFAR_algorithm=false;
|
Acquisition_1C.use_CFAR_algorithm=false;
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=18
|
Acquisition_1C.threshold=18
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
Acquisition_1B.acquire_pilot=true
|
Acquisition_1B.acquire_pilot=true
|
||||||
Acquisition_1B.use_CFAR_algorithm=false
|
Acquisition_1B.use_CFAR_algorithm=false
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1B.threshold=21
|
Acquisition_1B.threshold=21
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=5000
|
Acquisition_1B.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
Acquisition_1B.bit_transition_flag=true
|
Acquisition_1B.bit_transition_flag=true
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=../data/acq_dump.dat
|
Acquisition_1B.dump_filename=../data/acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=30.0;
|
Tracking_1C.pll_bw_hz=30.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
Tracking_1B.if=0
|
||||||
Tracking_1B.track_pilot=true
|
Tracking_1B.track_pilot=true
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=4.0;
|
Tracking_1B.pll_bw_hz=4.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=0.5;
|
Tracking_1B.dll_bw_hz=0.5;
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_narrow_hz=2.0;
|
Tracking_1B.pll_bw_narrow_hz=2.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_narrow_hz=0.25;
|
Tracking_1B.dll_bw_narrow_hz=0.25;
|
||||||
Tracking_1B.extend_correlation_symbols=4;
|
Tracking_1B.extend_correlation_symbols=4;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5] for GPS and [0.15] for Galileo
|
|
||||||
Tracking_1B.early_late_space_narrow_chips=0.06;
|
Tracking_1B.early_late_space_narrow_chips=0.06;
|
||||||
;#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_narrow_chips=0.25;
|
Tracking_1B.very_early_late_space_narrow_chips=0.25;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -6,11 +8,9 @@
|
|||||||
[GNSS-SDR]
|
[GNSS-SDR]
|
||||||
|
|
||||||
;######### GLOBAL OPTIONS ##################
|
;######### GLOBAL OPTIONS ##################
|
||||||
;internal_fs_hz: Internal signal sampling frequency after the signal conditioning stage [Hz].
|
|
||||||
GNSS-SDR.internal_fs_sps=5456000
|
GNSS-SDR.internal_fs_sps=5456000
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Labsat_Signal_Source
|
SignalSource.implementation=Labsat_Signal_Source
|
||||||
SignalSource.selected_channel=1
|
SignalSource.selected_channel=1
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
;#filename: path to file with the captured GNSS signal samples to be processed
|
||||||
@ -18,121 +18,58 @@ SignalSource.selected_channel=1
|
|||||||
;# the adapter adds "_0000.LS3" to this base path and filename. Next file will be "_0001.LS3" and so on
|
;# the adapter adds "_0000.LS3" to this base path and filename. Next file will be "_0001.LS3" and so on
|
||||||
;# in this example, the first file complete path will be ../signals/GPS_025_0000.LS3
|
;# in this example, the first file complete path will be ../signals/GPS_025_0000.LS3
|
||||||
SignalSource.filename=../signals/GPS_025 ; <- PUT YOUR FILE HERE
|
SignalSource.filename=../signals/GPS_025 ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource.sampling_frequency=16368000
|
SignalSource.sampling_frequency=16368000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource.samples=0
|
SignalSource.samples=0
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
;#dump: Dump the Signal source data to a file.
|
|
||||||
SignalSource.dump=false
|
SignalSource.dump=false
|
||||||
SignalSource.dump_filename=../data/signal_source.dat
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER CONFIG ############
|
;######### 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
|
SignalConditioner.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER CONFIG ############
|
;######### DATA_TYPE_ADAPTER CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter.implementation=Pass_Through
|
DataTypeAdapter.implementation=Pass_Through
|
||||||
DataTypeAdapter.item_type=gr_complex
|
DataTypeAdapter.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER CONFIG ############
|
;######### INPUT_FILTER CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
|
|
||||||
;#implementation
|
|
||||||
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation
|
|
||||||
;# that shifts IF down to zero Hz.
|
|
||||||
InputFilter.implementation=Freq_Xlating_Fir_Filter
|
InputFilter.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter.dump=false
|
InputFilter.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter.dump_filename=../data/input_filter.dat
|
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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter.input_item_type=gr_complex
|
InputFilter.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter.output_item_type=gr_complex
|
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
|
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
|
InputFilter.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter.number_of_bands=2
|
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
|
|
||||||
|
|
||||||
InputFilter.band1_begin=0.0
|
InputFilter.band1_begin=0.0
|
||||||
InputFilter.band1_end=0.45
|
InputFilter.band1_end=0.45
|
||||||
InputFilter.band2_begin=0.55
|
InputFilter.band2_begin=0.55
|
||||||
InputFilter.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter.ampl1_end=1.0
|
InputFilter.ampl1_end=1.0
|
||||||
InputFilter.ampl2_begin=0.0
|
InputFilter.ampl2_begin=0.0
|
||||||
InputFilter.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter.band2_error=1.0
|
InputFilter.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter.filter_type=bandpass
|
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
|
InputFilter.grid_density=16
|
||||||
|
|
||||||
;# Original sampling frequency stored in the signal file
|
|
||||||
InputFilter.sampling_frequency=16368000
|
InputFilter.sampling_frequency=16368000
|
||||||
|
|
||||||
;#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.IF=0
|
InputFilter.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter.decimation_factor=3
|
InputFilter.decimation_factor=3
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=0
|
Channels_1C.count=0
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=6
|
Channels_1B.count=6
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel0.signal=1B
|
Channel0.signal=1B
|
||||||
Channel1.signal=1B
|
Channel1.signal=1B
|
||||||
Channel2.signal=1B
|
Channel2.signal=1B
|
||||||
@ -153,130 +90,80 @@ Channel15.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
Acquisition_1C.use_CFAR_algorithm=false;
|
Acquisition_1C.use_CFAR_algorithm=false;
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=22
|
Acquisition_1C.threshold=22
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
Acquisition_1B.acquire_pilot=true
|
Acquisition_1B.acquire_pilot=true
|
||||||
Acquisition_1B.use_CFAR_algorithm=false
|
Acquisition_1B.use_CFAR_algorithm=false
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1B.threshold=22
|
Acquisition_1B.threshold=22
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=5000
|
Acquisition_1B.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
Acquisition_1B.bit_transition_flag=true
|
Acquisition_1B.bit_transition_flag=true
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=../data/acq_dump.dat
|
Acquisition_1B.dump_filename=../data/acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
Tracking_1C.dump=false
|
||||||
Tracking_1C.dump=true
|
|
||||||
;#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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
Tracking_1B.track_pilot=true
|
Tracking_1B.track_pilot=true
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=7.5;
|
Tracking_1B.pll_bw_hz=7.5;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=0.5;
|
Tracking_1B.dll_bw_hz=0.5;
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_narrow_hz=2.5;
|
Tracking_1B.pll_bw_narrow_hz=2.5;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_narrow_hz=0.25;
|
Tracking_1B.dll_bw_narrow_hz=0.25;
|
||||||
Tracking_1B.extend_correlation_symbols=4;
|
Tracking_1B.extend_correlation_symbols=4;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5] for GPS and [0.15] for Galileo
|
|
||||||
Tracking_1B.early_late_space_narrow_chips=0.15;
|
Tracking_1B.early_late_space_narrow_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_narrow_chips=0.30;
|
Tracking_1B.very_early_late_space_narrow_chips=0.30;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=Single ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
PVT.positioning_mode=Single ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
||||||
PVT.iono_model=Broadcast ; options: OFF, Broadcast, SBAS, Iono-Free-LC, Estimate_STEC, IONEX
|
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
|
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;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -24,27 +26,20 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
SignalSource.flag_read_file=true
|
SignalSource.flag_read_file=true
|
||||||
SignalSource.signal_file=/datalogger/signals/Fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
SignalSource.signal_file=/datalogger/signals/Fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1b.bit
|
SignalSource.firmware_file=flexiband_III-1b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=1
|
SignalSource.RF_channels=1
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -52,88 +47,34 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=20000000
|
InputFilter0.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter0.IF=0;
|
InputFilter0.IF=0;
|
||||||
;#-205000
|
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
InputFilter0.decimation_factor=8
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Pass_Through
|
SignalConditioner1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -142,25 +83,15 @@ DataTypeAdapter1.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### INPUT_FILTER 1 CONFIG ############
|
||||||
InputFilter1.implementation=Pass_Through
|
InputFilter1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter.dat
|
InputFilter1.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
InputFilter1.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -169,28 +100,17 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;# CHANNEL CONNECTION
|
;# CHANNEL CONNECTION
|
||||||
@ -204,77 +124,46 @@ Channel6.RF_channel_ID=0
|
|||||||
Channel7.RF_channel_ID=0
|
Channel7.RF_channel_ID=0
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel.signal=1C
|
Channel.signal=1C
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.use_CFAR_algorithm=false;
|
Acquisition_1C.use_CFAR_algorithm=false;
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=15
|
Acquisition_1C.threshold=15
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.extend_correlation_ms=10
|
Tracking_1C.extend_correlation_ms=10
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
Tracking_1C.pll_bw_narrow_hz=35;
|
Tracking_1C.pll_bw_narrow_hz=35;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.dll_bw_narrow_hz=2.0;
|
Tracking_1C.dll_bw_narrow_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=true
|
Tracking_1C.dump=true
|
||||||
;#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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -283,22 +172,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,31 +27,18 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
|
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
|
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1a.bit
|
SignalSource.firmware_file=flexiband_III-1a.bit
|
||||||
|
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=1
|
SignalSource.RF_channels=1
|
||||||
|
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
|
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
|
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -57,87 +46,34 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=20000000
|
InputFilter0.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter0.IF=-205000
|
InputFilter0.IF=-205000
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
InputFilter0.decimation_factor=8
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Pass_Through
|
SignalConditioner1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -146,25 +82,15 @@ DataTypeAdapter1.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### INPUT_FILTER 1 CONFIG ############
|
||||||
InputFilter1.implementation=Pass_Through
|
InputFilter1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter.dat
|
InputFilter1.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
InputFilter1.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -173,37 +99,19 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;# "1C" GPS L1 C/A
|
|
||||||
;# "1B" GALILEO E1 B (I/NAV OS/CS/SoL)
|
|
||||||
;# "1G" GLONASS L1 C/A
|
|
||||||
;# "2S" GPS L2 L2C (M)
|
|
||||||
;# "5X" GALILEO E5a I+Q
|
|
||||||
;# "L5" GPS L5
|
|
||||||
|
|
||||||
;# CHANNEL CONNECTION
|
;# CHANNEL CONNECTION
|
||||||
Channel0.RF_channel_ID=0
|
Channel0.RF_channel_ID=0
|
||||||
@ -227,69 +135,39 @@ Channel6.signal=1C
|
|||||||
Channel7.signal=1C
|
Channel7.signal=1C
|
||||||
|
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.012
|
Acquisition_1C.threshold=0.012
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -298,21 +176,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,13 +27,9 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1b.bit
|
SignalSource.firmware_file=flexiband_III-1b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=1
|
SignalSource.RF_channels=1
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
@ -39,11 +37,9 @@ SignalSource.gain2=0
|
|||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
;#frontend channels AGC
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -51,87 +47,33 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=20000000
|
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter0.IF=-205000
|
InputFilter0.IF=-205000
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
InputFilter0.decimation_factor=8
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Pass_Through
|
SignalConditioner1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -140,25 +82,15 @@ DataTypeAdapter1.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### INPUT_FILTER 1 CONFIG ############
|
||||||
InputFilter1.implementation=Pass_Through
|
InputFilter1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter.dat
|
InputFilter1.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
InputFilter1.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -167,36 +99,18 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;# "1C" GPS L1 C/A
|
|
||||||
;# "1B" GALILEO E1 B (I/NAV OS/CS/SoL)
|
|
||||||
;# "1G" GLONASS L1 C/A
|
|
||||||
;# "2S" GPS L2 L2C (M)
|
|
||||||
;# "5X" GALILEO E5a I+Q
|
|
||||||
;# "L5" GPS L5
|
|
||||||
|
|
||||||
;# CHANNEL CONNECTION
|
;# CHANNEL CONNECTION
|
||||||
Channel0.RF_channel_ID=0
|
Channel0.RF_channel_ID=0
|
||||||
@ -222,63 +136,37 @@ Channel7.signal=1C
|
|||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.012
|
Acquisition_1C.threshold=0.012
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -287,21 +175,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,25 +27,18 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_II-3b.bit
|
SignalSource.firmware_file=flexiband_II-3b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=1
|
SignalSource.RF_channels=1
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -51,85 +46,34 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
InputFilter0.output_item_type=gr_complex
|
||||||
|
|
||||||
;#taps_item_type: Type and resolution for the taps of the filter.
|
|
||||||
InputFilter0.taps_item_type=float
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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=40000000
|
InputFilter0.sampling_frequency=40000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter0.IF=-205000
|
InputFilter0.IF=-205000
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=16
|
InputFilter0.decimation_factor=16
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Pass_Through
|
SignalConditioner1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -138,25 +82,15 @@ DataTypeAdapter1.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### INPUT_FILTER 1 CONFIG ############
|
||||||
InputFilter1.implementation=Pass_Through
|
InputFilter1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter.dat
|
InputFilter1.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
InputFilter1.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -165,28 +99,17 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -208,7 +131,6 @@ Channel6.RF_channel_ID=0
|
|||||||
Channel7.RF_channel_ID=0
|
Channel7.RF_channel_ID=0
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel0.signal=1C
|
Channel0.signal=1C
|
||||||
Channel1.signal=1C
|
Channel1.signal=1C
|
||||||
Channel2.signal=1C
|
Channel2.signal=1C
|
||||||
@ -219,91 +141,54 @@ Channel6.signal=1C
|
|||||||
Channel7.signal=1C
|
Channel7.signal=1C
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.012
|
Acquisition_1C.threshold=0.012
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,25 +27,18 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_I-1b.bit
|
SignalSource.firmware_file=flexiband_I-1b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=1
|
SignalSource.RF_channels=1
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -51,87 +46,34 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=40000000
|
InputFilter0.sampling_frequency=40000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter0.IF=-205000
|
InputFilter0.IF=-205000
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
InputFilter0.decimation_factor=8
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Pass_Through
|
SignalConditioner1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -140,25 +82,15 @@ DataTypeAdapter1.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### INPUT_FILTER 1 CONFIG ############
|
||||||
InputFilter1.implementation=Pass_Through
|
InputFilter1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter.dat
|
InputFilter1.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
InputFilter1.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -167,38 +99,19 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=4
|
Channels_1C.count=4
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;# "1C" GPS L1 C/A
|
|
||||||
;# "1B" GALILEO E1 B (I/NAV OS/CS/SoL)
|
|
||||||
;# "1G" GLONASS L1 C/A
|
|
||||||
;# "2S" GPS L2 L2C (M)
|
|
||||||
;# "5X" GALILEO E5a I+Q
|
|
||||||
;# "L5" GPS L5
|
|
||||||
|
|
||||||
;# CHANNEL CONNECTION
|
;# CHANNEL CONNECTION
|
||||||
Channel0.RF_channel_ID=0
|
Channel0.RF_channel_ID=0
|
||||||
Channel1.RF_channel_ID=0
|
Channel1.RF_channel_ID=0
|
||||||
@ -210,7 +123,6 @@ Channel3.RF_channel_ID=0
|
|||||||
;Channel7.RF_channel_ID=0
|
;Channel7.RF_channel_ID=0
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel0.signal=1C
|
Channel0.signal=1C
|
||||||
Channel1.signal=1C
|
Channel1.signal=1C
|
||||||
Channel2.signal=1C
|
Channel2.signal=1C
|
||||||
@ -219,63 +131,37 @@ Channel3.signal=1C
|
|||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.011
|
Acquisition_1C.threshold=0.011
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -284,20 +170,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=false
|
PVT.dump=false
|
||||||
PVT.dump_filename=./PVT
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,21 +27,15 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1b.bit
|
SignalSource.firmware_file=flexiband_III-1b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=2
|
SignalSource.RF_channels=2
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -47,7 +43,6 @@ SignalSource.usb_packet_buffer=128
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -55,85 +50,31 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=20000000
|
InputFilter0.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
;# WARNING: Fraunhofer front-end hardwareconfigurations can difer. Signals available on http://www.iis.fraunhofer.de/de/ff/lok/leist/test/flexiband.html are centered on 0 Hz, ALL BANDS.
|
|
||||||
InputFilter0.IF=-205000
|
InputFilter0.IF=-205000
|
||||||
;#InputFilter0.IF=0
|
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
InputFilter0.decimation_factor=8
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -141,7 +82,6 @@ Resampler0.implementation=Pass_Through
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Signal_Conditioner
|
SignalConditioner1.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -149,90 +89,35 @@ DataTypeAdapter1.implementation=Pass_Through
|
|||||||
DataTypeAdapter1.item_type=gr_complex
|
DataTypeAdapter1.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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.
|
|
||||||
|
|
||||||
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter_ch1.dat
|
InputFilter1.dump_filename=../data/input_filter_ch1.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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
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
|
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
|
InputFilter1.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter1.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter1.band1_end=0.45
|
InputFilter1.band1_end=0.45
|
||||||
InputFilter1.band2_begin=0.55
|
InputFilter1.band2_begin=0.55
|
||||||
InputFilter1.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter1.ampl1_end=1.0
|
InputFilter1.ampl1_end=1.0
|
||||||
InputFilter1.ampl2_begin=0.0
|
InputFilter1.ampl2_begin=0.0
|
||||||
InputFilter1.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter1.band2_error=1.0
|
InputFilter1.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter1.filter_type=bandpass
|
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
|
InputFilter1.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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter1.sampling_frequency=20000000
|
InputFilter1.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
;# WARNING: Fraunhofer front-end hardwareconfigurations can difer. Signals available on http://www.iis.fraunhofer.de/de/ff/lok/leist/test/flexiband.html are centered on 0 Hz, ALL BANDS.
|
|
||||||
InputFilter1.IF=100000
|
InputFilter1.IF=100000
|
||||||
;#InputFilter1.IF=0
|
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter1.decimation_factor=8
|
InputFilter1.decimation_factor=8
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -241,30 +126,17 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
Channels_2S.count=8
|
Channels_2S.count=8
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
;Channels_Galileo.count=0
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -351,40 +223,23 @@ Channel15.RF_channel_ID=1
|
|||||||
Channel15.signal=2S
|
Channel15.signal=2S
|
||||||
|
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.008
|
Acquisition_1C.threshold=0.008
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
@ -396,7 +251,6 @@ Tracking_1C.dump_filename=./tracking_ch_
|
|||||||
;# GPS L2C M
|
;# GPS L2C M
|
||||||
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.threshold=0.0005
|
Acquisition_2S.threshold=0.0005
|
||||||
;Acquisition_2S.pfa=0.001
|
;Acquisition_2S.pfa=0.001
|
||||||
Acquisition_2S.doppler_max=5000
|
Acquisition_2S.doppler_max=5000
|
||||||
@ -408,7 +262,6 @@ Acquisition_2S.dump_filename=./acq_dump.dat
|
|||||||
|
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.pll_bw_hz=1.5;
|
Tracking_2S.pll_bw_hz=1.5;
|
||||||
Tracking_2S.dll_bw_hz=0.3;
|
Tracking_2S.dll_bw_hz=0.3;
|
||||||
Tracking_2S.order=3;
|
Tracking_2S.order=3;
|
||||||
@ -418,22 +271,18 @@ Tracking_2S.dump_filename=./tracking_ch_
|
|||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS L1 CONFIG ############
|
;######### TELEMETRY DECODER GPS L1 CONFIG ############
|
||||||
;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L1 C/A
|
|
||||||
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS L2 CONFIG ############
|
;######### TELEMETRY DECODER GPS L2 CONFIG ############
|
||||||
;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L2 M
|
|
||||||
TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder
|
TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder
|
||||||
TelemetryDecoder_2S.dump=false
|
TelemetryDecoder_2S.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -442,25 +291,14 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
PVT.trop_model=Saastamoinen ; options: OFF, Saastamoinen, SBAS, Estimate_ZTD, Estimate_ZTD_Grad
|
||||||
;#averaging_depth: Number of PVT observations in the moving average algorithm
|
|
||||||
PVT.averaging_depth=10
|
|
||||||
;#flag_average: Enables the PVT averaging between output intervals (arithmetic mean) [true] or [false]
|
|
||||||
PVT.flag_averaging=true
|
PVT.flag_averaging=true
|
||||||
;#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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,30 +27,17 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
|
|
||||||
SignalSource.flag_read_file=true
|
SignalSource.flag_read_file=true
|
||||||
SignalSource.signal_file=/datalogger/signals/Fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
SignalSource.signal_file=/datalogger/signals/Fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
||||||
|
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
|
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1b.bit
|
SignalSource.firmware_file=flexiband_III-1b.bit
|
||||||
|
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=2
|
SignalSource.RF_channels=2
|
||||||
|
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
|
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
|
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -56,7 +45,6 @@ SignalSource.usb_packet_buffer=128
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -64,85 +52,31 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=20000000
|
InputFilter0.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
;# WARNING: Fraunhofer front-end hardwareconfigurations can difer. Signals available on http://www.iis.fraunhofer.de/de/ff/lok/leist/test/flexiband.html are centered on 0 Hz, ALL BANDS.
|
|
||||||
;#InputFilter0.IF=-205000
|
|
||||||
InputFilter0.IF=0
|
InputFilter0.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
InputFilter0.decimation_factor=8
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -150,7 +84,6 @@ Resampler0.implementation=Pass_Through
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Signal_Conditioner
|
SignalConditioner1.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -158,90 +91,35 @@ DataTypeAdapter1.implementation=Pass_Through
|
|||||||
DataTypeAdapter1.item_type=gr_complex
|
DataTypeAdapter1.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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.
|
|
||||||
|
|
||||||
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter_ch1.dat
|
InputFilter1.dump_filename=../data/input_filter_ch1.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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
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
|
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
|
InputFilter1.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter1.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter1.band1_end=0.45
|
InputFilter1.band1_end=0.45
|
||||||
InputFilter1.band2_begin=0.55
|
InputFilter1.band2_begin=0.55
|
||||||
InputFilter1.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter1.ampl1_end=1.0
|
InputFilter1.ampl1_end=1.0
|
||||||
InputFilter1.ampl2_begin=0.0
|
InputFilter1.ampl2_begin=0.0
|
||||||
InputFilter1.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter1.band2_error=1.0
|
InputFilter1.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter1.filter_type=bandpass
|
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
|
InputFilter1.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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter1.sampling_frequency=20000000
|
InputFilter1.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
;# WARNING: Fraunhofer front-end hardware configurations can differ. Signals available at http://www.iis.fraunhofer.de/de/ff/lok/leist/test/flexiband.html are centered on 0 Hz, ALL BANDS.
|
|
||||||
;#InputFilter1.IF=100000
|
|
||||||
InputFilter1.IF=0
|
InputFilter1.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency translating block
|
|
||||||
InputFilter1.decimation_factor=8
|
InputFilter1.decimation_factor=8
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -250,30 +128,19 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############.
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=2
|
Channels_1C.count=2
|
||||||
Channels_1B.count=4
|
Channels_1B.count=4
|
||||||
Channels_2S.count=4
|
Channels_2S.count=4
|
||||||
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -304,33 +171,17 @@ Channel14.RF_channel_ID=1
|
|||||||
Channel15.RF_channel_ID=1
|
Channel15.RF_channel_ID=1
|
||||||
|
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples..
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.008
|
Acquisition_1C.threshold=0.008
|
||||||
;#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.0001
|
;Acquisition_1C.pfa=0.0001
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=250
|
Acquisition_1C.doppler_step=250
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
@ -371,70 +222,44 @@ Tracking_2S.dump_filename=../data/epl_tracking_ch_
|
|||||||
|
|
||||||
;# GALILEO E1B
|
;# GALILEO E1B
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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.0000005
|
Acquisition_1B.pfa=0.0000005
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=5000
|
Acquisition_1B.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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=./veml_tracking_ch_
|
Tracking_1B.dump_filename=./veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS L1 CONFIG ############
|
;######### TELEMETRY DECODER GPS L1 CONFIG ############
|
||||||
;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L1 C/A
|
|
||||||
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS L2 CONFIG ############
|
;######### TELEMETRY DECODER GPS L2 CONFIG ############
|
||||||
;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L2 M
|
|
||||||
TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder
|
TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder
|
||||||
TelemetryDecoder_2S.dump=false
|
TelemetryDecoder_2S.dump=false
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO E1B CONFIG ############
|
;######### TELEMETRY DECODER GALILEO E1B CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -443,22 +268,14 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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=100
|
PVT.display_rate_ms=100
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -27,235 +29,59 @@ GNSS-SDR.SUPL_CI=0x31b0
|
|||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
;#implementation
|
||||||
SignalSource.implementation=UHD_Signal_Source
|
SignalSource.implementation=UHD_Signal_Source
|
||||||
;#When left empty, the device discovery routines will search all vailable transports on the system (ethernet, usb...)
|
|
||||||
SignalSource.device_address=192.168.40.2 ; <- PUT THE IP ADDRESS OF YOUR USRP HERE
|
SignalSource.device_address=192.168.40.2 ; <- PUT THE IP ADDRESS OF YOUR USRP HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;#RF_channels: Number of RF channels present in the frontend device (i.e. USRP with two frontends)
|
|
||||||
SignalSource.RF_channels=2
|
SignalSource.RF_channels=2
|
||||||
;#sampling_frequency: Original Signal sampling frequency in [Hz]
|
|
||||||
SignalSource.sampling_frequency=4000000
|
SignalSource.sampling_frequency=4000000
|
||||||
;#subdevice: UHD subdevice specification (for USRP dual frontend use A:0 or B:0 or A:0 B:0)
|
|
||||||
SignalSource.subdevice=A:0 B:0
|
SignalSource.subdevice=A:0 B:0
|
||||||
|
|
||||||
;######### RF Channels specific settings ######
|
;######### RF Channels specific settings ######
|
||||||
|
|
||||||
;## RF CHANNEL 0 ##
|
;## RF CHANNEL 0 ##
|
||||||
;#freq: RF front-end center frequency in [Hz]
|
|
||||||
SignalSource.freq0=1575420000
|
SignalSource.freq0=1575420000
|
||||||
|
|
||||||
;#gain: Front-end Gain in [dB]
|
|
||||||
SignalSource.gain0=50
|
SignalSource.gain0=50
|
||||||
|
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates no limit
|
|
||||||
SignalSource.samples0=0
|
SignalSource.samples0=0
|
||||||
|
|
||||||
|
|
||||||
;## RF CHANNEL 1 ##
|
;## RF CHANNEL 1 ##
|
||||||
;#freq: RF front-end center frequency in [Hz]
|
|
||||||
SignalSource.freq1=1575420000
|
SignalSource.freq1=1575420000
|
||||||
|
|
||||||
;#gain: Front-end Gain in [dB]
|
|
||||||
SignalSource.gain1=50
|
SignalSource.gain1=50
|
||||||
|
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates no limit
|
|
||||||
SignalSource.samples1=0
|
SignalSource.samples1=0
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### 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=Pass_Through
|
SignalConditioner0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter0.implementation=Pass_Through
|
DataTypeAdapter0.implementation=Pass_Through
|
||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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]
|
|
||||||
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation
|
|
||||||
;# that shifts IF down to zero Hz.
|
|
||||||
|
|
||||||
InputFilter0.implementation=Pass_Through
|
InputFilter0.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
|
||||||
|
|
||||||
;# Original sampling frequency stored in the signal file
|
|
||||||
InputFilter0.sampling_frequency=20480000
|
|
||||||
|
|
||||||
;#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.IF=5499998.47412109
|
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## 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
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
|
|
||||||
;#implementation: Use [Pass_Through] or [Signal_Conditioner]
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;#[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=Pass_Through
|
SignalConditioner1.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### 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]
|
|
||||||
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation
|
|
||||||
;# that shifts IF down to zero Hz.
|
|
||||||
|
|
||||||
InputFilter1.implementation=Pass_Through
|
InputFilter1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
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
|
|
||||||
|
|
||||||
;# Original sampling frequency stored in the signal file
|
|
||||||
InputFilter1.sampling_frequency=20480000
|
|
||||||
|
|
||||||
;#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.IF=5499998.47412109
|
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter1.decimation_factor=8
|
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## 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
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=4
|
Channels_1C.count=4
|
||||||
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -274,75 +100,45 @@ Channel3.RF_channel_ID=1
|
|||||||
|
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
|
||||||
Channel0.signal=1C
|
Channel0.signal=1C
|
||||||
Channel1.signal=1C
|
Channel1.signal=1C
|
||||||
Channel2.signal=1C
|
Channel2.signal=1C
|
||||||
Channel3.signal=1C
|
Channel3.signal=1C
|
||||||
|
|
||||||
;######### SPECIFIC CHANNELS CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
|
|
||||||
;######### ACQUISITION GLOBAL CONFIG ############
|
;######### ACQUISITION GLOBAL CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
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.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
;#threshold: Acquisition threshold. It will be ignored if pfa is defined.
|
|
||||||
Acquisition_1C.threshold=0.01
|
Acquisition_1C.threshold=0.01
|
||||||
;#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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=8000
|
Acquisition_1C.doppler_max=8000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#bit_transition_flag: Enable or disable a strategy to deal with bit transitions in GPS signals: process two dwells and take
|
|
||||||
;#maximum test statistics. Only use with implementation: [GPS_L1_CA_PCPS_Acquisition]
|
|
||||||
;#(should not be used for Galileo_E1_PCPS_Ambiguous_Acquisition])
|
|
||||||
Acquisition_1C.bit_transition_flag=false
|
Acquisition_1C.bit_transition_flag=false
|
||||||
;#max_dwells: Maximum number of consecutive dwells to be processed. It will be ignored if bit_transition_flag=true
|
|
||||||
Acquisition_1C.max_dwells=1
|
Acquisition_1C.max_dwells=1
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GLOBAL CONFIG ############
|
;######### TRACKING GLOBAL CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=4.0;
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#early_late_space_chips: correlator early-late space [chips]. Use [0.5]
|
|
||||||
Tracking_1C.early_late_space_chips=0.5;
|
Tracking_1C.early_late_space_chips=0.5;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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=./tracking_ch_
|
Tracking_1C.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -351,21 +147,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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
|
PVT.display_rate_ms=500
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=true
|
PVT.flag_rtcm_server=true
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,23 +27,17 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
SignalSource.flag_read_file=true
|
SignalSource.flag_read_file=true
|
||||||
SignalSource.signal_file=/media/javier/SISTEMA/signals/fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
SignalSource.signal_file=/media/javier/SISTEMA/signals/fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1b.bit
|
SignalSource.firmware_file=flexiband_III-1b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=1
|
SignalSource.RF_channels=1
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -49,7 +45,6 @@ SignalSource.usb_packet_buffer=128
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -57,80 +52,31 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter_ch0.dat
|
InputFilter0.dump_filename=../data/input_filter_ch0.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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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=20000000
|
InputFilter0.sampling_frequency=20000000
|
||||||
InputFilter0.IF=0
|
InputFilter0.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=4
|
InputFilter0.decimation_factor=4
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -138,7 +84,6 @@ Resampler0.implementation=Pass_Through
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Signal_Conditioner
|
SignalConditioner1.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -146,81 +91,32 @@ DataTypeAdapter1.implementation=Pass_Through
|
|||||||
DataTypeAdapter1.item_type=gr_complex
|
DataTypeAdapter1.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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.
|
|
||||||
|
|
||||||
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter_ch1.dat
|
InputFilter1.dump_filename=../data/input_filter_ch1.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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
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
|
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
|
InputFilter1.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter1.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter1.band1_end=0.45
|
InputFilter1.band1_end=0.45
|
||||||
InputFilter1.band2_begin=0.55
|
InputFilter1.band2_begin=0.55
|
||||||
InputFilter1.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter1.ampl1_end=1.0
|
InputFilter1.ampl1_end=1.0
|
||||||
InputFilter1.ampl2_begin=0.0
|
InputFilter1.ampl2_begin=0.0
|
||||||
InputFilter1.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter1.band2_error=1.0
|
InputFilter1.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter1.filter_type=bandpass
|
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
|
InputFilter1.grid_density=16
|
||||||
|
|
||||||
;#The following options are used only in Freq_Xlating_Fir_Filter implementation.
|
|
||||||
InputFilter1.sampling_frequency=20000000
|
InputFilter1.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter1.IF=0
|
InputFilter1.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter1.decimation_factor=4
|
InputFilter1.decimation_factor=4
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
@ -229,7 +125,6 @@ Resampler1.implementation=Pass_Through
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Signal_Conditioner
|
SignalConditioner2.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -237,84 +132,41 @@ DataTypeAdapter2.implementation=Pass_Through
|
|||||||
DataTypeAdapter2.item_type=gr_complex
|
DataTypeAdapter2.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
|
|
||||||
InputFilter2.implementation=Freq_Xlating_Fir_Filter
|
InputFilter2.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter_ch2.dat
|
InputFilter2.dump_filename=../data/input_filter_ch2.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples..
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;#taps_item_type: Type and resolution for the taps of the filter. Use only float in this version.
|
|
||||||
InputFilter2.taps_item_type=float
|
InputFilter2.taps_item_type=float
|
||||||
|
|
||||||
;#number_of_taps: Number of taps in the filter. Increasing this parameter increases the processing time
|
|
||||||
InputFilter2.number_of_taps=5
|
InputFilter2.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter2.number_of_bands=2
|
InputFilter2.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
|
|
||||||
|
|
||||||
InputFilter2.band1_begin=0.0
|
InputFilter2.band1_begin=0.0
|
||||||
InputFilter2.band1_end=0.45
|
InputFilter2.band1_end=0.45
|
||||||
InputFilter2.band2_begin=0.55
|
InputFilter2.band2_begin=0.55
|
||||||
InputFilter2.band2_end=1.0
|
InputFilter2.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
|
|
||||||
|
|
||||||
InputFilter2.ampl1_begin=1.0
|
InputFilter2.ampl1_begin=1.0
|
||||||
InputFilter2.ampl1_end=1.0
|
InputFilter2.ampl1_end=1.0
|
||||||
InputFilter2.ampl2_begin=0.0
|
InputFilter2.ampl2_begin=0.0
|
||||||
InputFilter2.ampl2_end=0.0
|
InputFilter2.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
|
|
||||||
InputFilter2.band1_error=1.0
|
InputFilter2.band1_error=1.0
|
||||||
InputFilter2.band2_error=1.0
|
InputFilter2.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter2.filter_type=bandpass
|
InputFilter2.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.
|
|
||||||
InputFilter2.grid_density=16
|
InputFilter2.grid_density=16
|
||||||
|
|
||||||
;#The following options are used only in Freq_Xlating_Fir_Filter implementation.
|
|
||||||
InputFilter2.sampling_frequency=40000000
|
InputFilter2.sampling_frequency=40000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter2.IF=0
|
InputFilter2.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter2.decimation_factor=8
|
InputFilter2.decimation_factor=8
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=0
|
Channels_1C.count=0
|
||||||
Channels_1B.count=10
|
Channels_1B.count=10
|
||||||
Channels_2S.count=0
|
Channels_2S.count=0
|
||||||
Channels_5X.count=0
|
Channels_5X.count=0
|
||||||
|
|
||||||
;#GPS.prns=7,8
|
|
||||||
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -369,13 +221,11 @@ Channel37.RF_channel_ID=2
|
|||||||
Channel38.RF_channel_ID=2
|
Channel38.RF_channel_ID=2
|
||||||
Channel39.RF_channel_ID=2
|
Channel39.RF_channel_ID=2
|
||||||
|
|
||||||
;######### ACQUISITION GENERIC CONFIG ######
|
;######### ACQUISITION CONFIG ######
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
;# GPS L1 CA
|
;# GPS L1 CA
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
|
||||||
Acquisition_1C.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.threshold=0.005
|
Acquisition_1C.threshold=0.005
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
@ -387,30 +237,19 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
|
|
||||||
;# Galileo E1
|
;# Galileo E1
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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.0000002
|
Acquisition_1B.pfa=0.0000002
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=5000
|
Acquisition_1B.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;# GPS L2C M
|
;# GPS L2C M
|
||||||
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.threshold=0.00074
|
Acquisition_2S.threshold=0.00074
|
||||||
;Acquisition_2S.pfa=0.001
|
;Acquisition_2S.pfa=0.001
|
||||||
Acquisition_2S.doppler_max=5000
|
Acquisition_2S.doppler_max=5000
|
||||||
@ -424,7 +263,6 @@ Acquisition_2S.dump_filename=./acq_dump.dat
|
|||||||
;# GALILEO E5a
|
;# GALILEO E5a
|
||||||
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
||||||
Acquisition_5X.item_type=gr_complex
|
Acquisition_5X.item_type=gr_complex
|
||||||
Acquisition_5X.if=0
|
|
||||||
Acquisition_5X.coherent_integration_time_ms=1
|
Acquisition_5X.coherent_integration_time_ms=1
|
||||||
Acquisition_5X.threshold=0.009
|
Acquisition_5X.threshold=0.009
|
||||||
Acquisition_5X.doppler_max=5000
|
Acquisition_5X.doppler_max=5000
|
||||||
@ -441,7 +279,6 @@ Acquisition_5X.dump_filename=./acq_dump.dat
|
|||||||
;######### GPS L1 C/A GENERIC TRACKING CONFIG ############
|
;######### GPS L1 C/A GENERIC TRACKING CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
@ -452,30 +289,19 @@ Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
|||||||
|
|
||||||
;######### GALILEO E1 TRK CONFIG ############
|
;######### GALILEO E1 TRK CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.pll_bw_hz=2.0;
|
Tracking_2S.pll_bw_hz=2.0;
|
||||||
Tracking_2S.dll_bw_hz=0.25;
|
Tracking_2S.dll_bw_hz=0.25;
|
||||||
Tracking_2S.order=2;
|
Tracking_2S.order=2;
|
||||||
@ -487,7 +313,6 @@ Tracking_2S.dump_filename=./tracking_ch_
|
|||||||
;######### GALILEO E5 TRK CONFIG ############
|
;######### GALILEO E5 TRK CONFIG ############
|
||||||
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
||||||
Tracking_5X.item_type=gr_complex
|
Tracking_5X.item_type=gr_complex
|
||||||
Tracking_5X.if=0
|
|
||||||
Tracking_5X.pll_bw_hz_init=20.0; **Only for E5a** PLL loop filter bandwidth during initialization [Hz]
|
Tracking_5X.pll_bw_hz_init=20.0; **Only for E5a** PLL loop filter bandwidth during initialization [Hz]
|
||||||
Tracking_5X.dll_bw_hz_init=20.0; **Only for E5a** DLL loop filter bandwidth during initialization [Hz]
|
Tracking_5X.dll_bw_hz_init=20.0; **Only for E5a** DLL loop filter bandwidth during initialization [Hz]
|
||||||
Tracking_5X.ti_ms=1; **Only for E5a** loop filter integration time after initialization (secondary code delay search)[ms]
|
Tracking_5X.ti_ms=1; **Only for E5a** loop filter integration time after initialization (secondary code delay search)[ms]
|
||||||
@ -515,9 +340,7 @@ TelemetryDecoder_5X.dump=false
|
|||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
@ -526,21 +349,13 @@ PVT.implementation=RTKLIB_PVT
|
|||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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
|
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=100
|
PVT.display_rate_ms=100
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,23 +27,17 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
SignalSource.flag_read_file=true
|
SignalSource.flag_read_file=true
|
||||||
SignalSource.signal_file=/home/javier/signals/20140923_20-24-17_L125_roof_210s.usb ; <- PUT YOUR FILE HERE
|
SignalSource.signal_file=/home/javier/signals/20140923_20-24-17_L125_roof_210s.usb ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1b.bit
|
SignalSource.firmware_file=flexiband_III-1b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=2
|
SignalSource.RF_channels=2
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -49,7 +45,6 @@ SignalSource.usb_packet_buffer=128
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -57,83 +52,30 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter_ch0.dat
|
InputFilter0.dump_filename=../data/input_filter_ch0.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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=20000000
|
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter0.IF=0
|
InputFilter0.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=4
|
InputFilter0.decimation_factor=4
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -141,7 +83,6 @@ Resampler0.implementation=Pass_Through
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Signal_Conditioner
|
SignalConditioner1.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
@ -149,88 +90,35 @@ DataTypeAdapter1.implementation=Pass_Through
|
|||||||
DataTypeAdapter1.item_type=gr_complex
|
DataTypeAdapter1.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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.
|
|
||||||
|
|
||||||
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter_ch1.dat
|
InputFilter1.dump_filename=../data/input_filter_ch1.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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
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
|
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
|
InputFilter1.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter1.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter1.band1_end=0.45
|
InputFilter1.band1_end=0.45
|
||||||
InputFilter1.band2_begin=0.55
|
InputFilter1.band2_begin=0.55
|
||||||
InputFilter1.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter1.ampl1_end=1.0
|
InputFilter1.ampl1_end=1.0
|
||||||
InputFilter1.ampl2_begin=0.0
|
InputFilter1.ampl2_begin=0.0
|
||||||
InputFilter1.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter1.band2_error=1.0
|
InputFilter1.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter1.filter_type=bandpass
|
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
|
InputFilter1.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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter1.sampling_frequency=20000000
|
InputFilter1.sampling_frequency=20000000
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter1.IF=0
|
InputFilter1.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter1.decimation_factor=4
|
InputFilter1.decimation_factor=4
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Pass_Through
|
SignalConditioner2.implementation=Pass_Through
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -239,32 +127,21 @@ DataTypeAdapter2.item_type=gr_complex
|
|||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
InputFilter2.implementation=Pass_Through
|
InputFilter2.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter.dat
|
InputFilter2.dump_filename=../data/input_filter.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 2 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=10
|
Channels_1C.count=10
|
||||||
Channels_2S.count=4
|
Channels_2S.count=4
|
||||||
|
|
||||||
;#GPS.prns=7,8
|
;#GPS.prns=7,8
|
||||||
|
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
;#signal:
|
||||||
@ -301,7 +178,6 @@ Channel19.RF_channel_ID=1
|
|||||||
|
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
|
||||||
Acquisition_1C.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.threshold=0.005
|
Acquisition_1C.threshold=0.005
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
@ -315,7 +191,6 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
;# GPS L2C M
|
;# GPS L2C M
|
||||||
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.threshold=0.00074
|
Acquisition_2S.threshold=0.00074
|
||||||
;Acquisition_2S.pfa=0.001
|
;Acquisition_2S.pfa=0.001
|
||||||
Acquisition_2S.doppler_max=5000
|
Acquisition_2S.doppler_max=5000
|
||||||
@ -330,7 +205,6 @@ Acquisition_2S.dump_filename=./acq_dump.dat
|
|||||||
;######### GPS L1 C/A GENERIC TRACKING CONFIG ############
|
;######### GPS L1 C/A GENERIC TRACKING CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.pll_bw_hz=40.0;
|
Tracking_1C.pll_bw_hz=40.0;
|
||||||
Tracking_1C.dll_bw_hz=3.0;
|
Tracking_1C.dll_bw_hz=3.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
@ -342,7 +216,6 @@ Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
|||||||
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.pll_bw_hz=2.0;
|
Tracking_2S.pll_bw_hz=2.0;
|
||||||
Tracking_2S.dll_bw_hz=0.25;
|
Tracking_2S.dll_bw_hz=0.25;
|
||||||
Tracking_2S.order=2;
|
Tracking_2S.order=2;
|
||||||
@ -362,29 +235,22 @@ TelemetryDecoder_2S.dump=false
|
|||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=true
|
Observables.dump=true
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
PVT.implementation=RTKLIB_PVT
|
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.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
|
||||||
PVT.output_rate_ms=100
|
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=100
|
PVT.display_rate_ms=100
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -25,23 +27,17 @@ GNSS-SDR.SUPL_LAC=0x59e2
|
|||||||
GNSS-SDR.SUPL_CI=0x31b0
|
GNSS-SDR.SUPL_CI=0x31b0
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE CONFIG ############
|
;######### SIGNAL_SOURCE CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource.implementation=Flexiband_Signal_Source
|
SignalSource.implementation=Flexiband_Signal_Source
|
||||||
SignalSource.flag_read_file=true
|
SignalSource.flag_read_file=true
|
||||||
SignalSource.signal_file=/media/javier/SISTEMA/signals/fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
SignalSource.signal_file=/media/javier/SISTEMA/signals/fraunhofer/L125_III1b_210s.usb ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource.item_type=gr_complex
|
SignalSource.item_type=gr_complex
|
||||||
;# FPGA firmware file
|
|
||||||
SignalSource.firmware_file=flexiband_III-1b.bit
|
SignalSource.firmware_file=flexiband_III-1b.bit
|
||||||
;#RF_channels: Number of RF channels present in the frontend device, must agree the FPGA firmware file
|
|
||||||
SignalSource.RF_channels=3
|
SignalSource.RF_channels=3
|
||||||
;#frontend channels gain. Not usable yet!
|
;#frontend channels gain. Not usable yet!
|
||||||
SignalSource.gain1=0
|
SignalSource.gain1=0
|
||||||
SignalSource.gain2=0
|
SignalSource.gain2=0
|
||||||
SignalSource.gain3=0
|
SignalSource.gain3=0
|
||||||
;#frontend channels AGC
|
|
||||||
SignalSource.AGC=true
|
SignalSource.AGC=true
|
||||||
;# USB 3.0 packet buffer size (number of SuperSpeed packets)
|
|
||||||
SignalSource.usb_packet_buffer=128
|
SignalSource.usb_packet_buffer=128
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
@ -49,7 +45,6 @@ SignalSource.usb_packet_buffer=128
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner0.implementation=Signal_Conditioner
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
@ -57,177 +52,69 @@ DataTypeAdapter0.implementation=Pass_Through
|
|||||||
DataTypeAdapter0.item_type=gr_complex
|
DataTypeAdapter0.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter_ch0.dat
|
InputFilter0.dump_filename=../data/input_filter_ch0.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 impulse reaponse given a set of band edges,
|
|
||||||
;#the desired reaponse on those bands, and the weight given to the error in those bands.
|
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter0.sampling_frequency=20000000
|
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
;#InputFilter0.IF=-205000
|
|
||||||
InputFilter0.IF=0
|
InputFilter0.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=4
|
InputFilter0.decimation_factor=4
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######################################################
|
;######################################################
|
||||||
;######### RF CHANNEL 1 SIGNAL CONDITIONER ############
|
;######### RF CHANNEL 1 SIGNAL CONDITIONER ############
|
||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner1.implementation=Signal_Conditioner
|
SignalConditioner1.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
DataTypeAdapter1.implementation=Pass_Through
|
DataTypeAdapter1.implementation=Pass_Through
|
||||||
DataTypeAdapter1.item_type=gr_complex
|
DataTypeAdapter1.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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=Freq_Xlating_Fir_Filter
|
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter_ch1.dat
|
InputFilter1.dump_filename=../data/input_filter_ch1.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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
InputFilter1.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
InputFilter1.output_item_type=gr_complex
|
||||||
|
|
||||||
;#taps_item_type: Type and resolution for the taps of the filter.
|
|
||||||
InputFilter1.taps_item_type=float
|
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
|
InputFilter1.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter1.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter1.band1_end=0.45
|
InputFilter1.band1_end=0.45
|
||||||
InputFilter1.band2_begin=0.55
|
InputFilter1.band2_begin=0.55
|
||||||
InputFilter1.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter1.ampl1_end=1.0
|
InputFilter1.ampl1_end=1.0
|
||||||
InputFilter1.ampl2_begin=0.0
|
InputFilter1.ampl2_begin=0.0
|
||||||
InputFilter1.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter1.band2_error=1.0
|
InputFilter1.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter1.filter_type=bandpass
|
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
|
InputFilter1.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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter1.sampling_frequency=20000000
|
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter1.IF=0
|
InputFilter1.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter1.decimation_factor=4
|
InputFilter1.decimation_factor=4
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
@ -236,7 +123,6 @@ Resampler1.implementation=Pass_Through
|
|||||||
;######################################################
|
;######################################################
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
;######### SIGNAL_CONDITIONER 2 CONFIG ############
|
||||||
;## It holds blocks to change data type, filter and resample input data.
|
|
||||||
SignalConditioner2.implementation=Signal_Conditioner
|
SignalConditioner2.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 2 CONFIG ############
|
||||||
@ -244,96 +130,43 @@ DataTypeAdapter2.implementation=Pass_Through
|
|||||||
DataTypeAdapter2.item_type=gr_complex
|
DataTypeAdapter2.item_type=gr_complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 2 CONFIG ############
|
;######### INPUT_FILTER 2 CONFIG ############
|
||||||
;## Filter the input data. Can be combined with frequency translation for IF signals
|
|
||||||
|
|
||||||
InputFilter2.implementation=Freq_Xlating_Fir_Filter
|
InputFilter2.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter2.dump=false
|
InputFilter2.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter2.dump_filename=../data/input_filter_ch2.dat
|
InputFilter2.dump_filename=../data/input_filter_ch2.dat
|
||||||
|
|
||||||
;#input_item_type: Type and resolution for input signal samples.
|
|
||||||
InputFilter2.input_item_type=gr_complex
|
InputFilter2.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter2.output_item_type=gr_complex
|
InputFilter2.output_item_type=gr_complex
|
||||||
|
|
||||||
;#taps_item_type: Type and resolution for the taps of the filter. Use only float in this version.
|
|
||||||
InputFilter2.taps_item_type=float
|
InputFilter2.taps_item_type=float
|
||||||
|
|
||||||
;#number_of_taps: Number of taps in the filter. Increasing this parameter increases the processing time
|
|
||||||
InputFilter2.number_of_taps=5
|
InputFilter2.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter2.number_of_bands=2
|
InputFilter2.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
|
|
||||||
|
|
||||||
InputFilter2.band1_begin=0.0
|
InputFilter2.band1_begin=0.0
|
||||||
InputFilter2.band1_end=0.45
|
InputFilter2.band1_end=0.45
|
||||||
InputFilter2.band2_begin=0.55
|
InputFilter2.band2_begin=0.55
|
||||||
InputFilter2.band2_end=1.0
|
InputFilter2.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
|
|
||||||
|
|
||||||
InputFilter2.ampl1_begin=1.0
|
InputFilter2.ampl1_begin=1.0
|
||||||
InputFilter2.ampl1_end=1.0
|
InputFilter2.ampl1_end=1.0
|
||||||
InputFilter2.ampl2_begin=0.0
|
InputFilter2.ampl2_begin=0.0
|
||||||
InputFilter2.ampl2_end=0.0
|
InputFilter2.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
|
|
||||||
InputFilter2.band1_error=1.0
|
InputFilter2.band1_error=1.0
|
||||||
InputFilter2.band2_error=1.0
|
InputFilter2.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter2.filter_type=bandpass
|
InputFilter2.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.
|
|
||||||
InputFilter2.grid_density=16
|
InputFilter2.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
|
|
||||||
;FOR USE GNSS-SDR WITH RTLSDR DONGLES USER MUST SET THE CALIBRATED SAMPLE RATE HERE
|
|
||||||
; i.e. using front-end-cal as reported here:http://www.cttc.es/publication/turning-a-television-into-a-gnss-receiver/
|
|
||||||
InputFilter2.sampling_frequency=40000000
|
|
||||||
;# IF deviation due to front-end LO inaccuracies [HZ]
|
|
||||||
InputFilter2.IF=0
|
InputFilter2.IF=0
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter2.decimation_factor=8
|
InputFilter2.decimation_factor=8
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 2 ############
|
||||||
;## Resamples the input data.
|
|
||||||
Resampler2.implementation=Pass_Through
|
Resampler2.implementation=Pass_Through
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=10
|
Channels_1C.count=10
|
||||||
Channels_1B.count=10
|
Channels_1B.count=10
|
||||||
Channels_2S.count=10
|
Channels_2S.count=10
|
||||||
Channels_5X.count=10
|
Channels_5X.count=2
|
||||||
|
Channels_L5.count=2
|
||||||
|
|
||||||
;#GPS.prns=7,8
|
;#GPS.prns=7,8
|
||||||
|
;Channels.in_acquisition=2
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;# "1C" GPS L1 C/A
|
|
||||||
;# "1B" GALILEO E1 B (I/NAV OS/CS/SoL)
|
|
||||||
;# "1G" GLONASS L1 C/A
|
|
||||||
;# "2S" GPS L2 L2C (M)
|
|
||||||
;# "5X" GALILEO E5a I+Q
|
|
||||||
;# "L5" GPS L5
|
|
||||||
|
|
||||||
;# CHANNEL CONNECTION
|
;# CHANNEL CONNECTION
|
||||||
|
|
||||||
@ -377,14 +210,16 @@ Channel36.RF_channel_ID=2
|
|||||||
Channel37.RF_channel_ID=2
|
Channel37.RF_channel_ID=2
|
||||||
Channel38.RF_channel_ID=2
|
Channel38.RF_channel_ID=2
|
||||||
Channel39.RF_channel_ID=2
|
Channel39.RF_channel_ID=2
|
||||||
|
Channel40.RF_channel_ID=2
|
||||||
|
Channel41.RF_channel_ID=2
|
||||||
|
Channel42.RF_channel_ID=2
|
||||||
|
|
||||||
|
;Channel20.satellite=7
|
||||||
|
|
||||||
;######### ACQUISITION GENERIC CONFIG ######
|
|
||||||
;#The following options are specific to each channel and overwrite the generic options
|
|
||||||
|
|
||||||
;# GPS L1 CA
|
;# GPS L1 CA
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
Acquisition_1C.if=0
|
|
||||||
Acquisition_1C.coherent_integration_time_ms=1
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.threshold=0.005
|
Acquisition_1C.threshold=0.005
|
||||||
Acquisition_1C.doppler_max=5000
|
Acquisition_1C.doppler_max=5000
|
||||||
@ -397,30 +232,18 @@ Acquisition_1C.dump_filename=./acq_dump.dat
|
|||||||
|
|
||||||
;# Galileo E1
|
;# Galileo E1
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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.0000002
|
Acquisition_1B.pfa=0.0000002
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=5000
|
Acquisition_1B.doppler_max=5000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#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
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;# GPS L2C M
|
;# GPS L2C M
|
||||||
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
Acquisition_2S.implementation=GPS_L2_M_PCPS_Acquisition
|
||||||
Acquisition_2S.item_type=gr_complex
|
Acquisition_2S.item_type=gr_complex
|
||||||
Acquisition_2S.if=0
|
|
||||||
Acquisition_2S.threshold=0.00074
|
Acquisition_2S.threshold=0.00074
|
||||||
;Acquisition_2S.pfa=0.001
|
;Acquisition_2S.pfa=0.001
|
||||||
Acquisition_2S.doppler_max=5000
|
Acquisition_2S.doppler_max=5000
|
||||||
@ -434,7 +257,6 @@ Acquisition_2S.dump_filename=./acq_dump.dat
|
|||||||
;# GALILEO E5a
|
;# GALILEO E5a
|
||||||
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
Acquisition_5X.implementation=Galileo_E5a_Noncoherent_IQ_Acquisition_CAF
|
||||||
Acquisition_5X.item_type=gr_complex
|
Acquisition_5X.item_type=gr_complex
|
||||||
Acquisition_5X.if=0
|
|
||||||
Acquisition_5X.coherent_integration_time_ms=1
|
Acquisition_5X.coherent_integration_time_ms=1
|
||||||
Acquisition_5X.threshold=0.009
|
Acquisition_5X.threshold=0.009
|
||||||
Acquisition_5X.doppler_max=5000
|
Acquisition_5X.doppler_max=5000
|
||||||
@ -447,11 +269,23 @@ Acquisition_5X.dump=false
|
|||||||
Acquisition_5X.dump_filename=./acq_dump.dat
|
Acquisition_5X.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
|
;# GPS L5
|
||||||
|
Acquisition_L5.implementation=GPS_L5i_PCPS_Acquisition
|
||||||
|
Acquisition_L5.item_type=gr_complex
|
||||||
|
Acquisition_L5.threshold=0.00074
|
||||||
|
;Acquisition_L5.pfa=0.001
|
||||||
|
Acquisition_L5.doppler_max=5000
|
||||||
|
Acquisition_L5.doppler_min=-5000
|
||||||
|
Acquisition_L5.doppler_step=125
|
||||||
|
Acquisition_L5.max_dwells=1
|
||||||
|
Acquisition_L5.dump=false
|
||||||
|
Acquisition_L5.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING CONFIG ############
|
;######### TRACKING CONFIG ############
|
||||||
;######### GPS L1 C/A GENERIC TRACKING CONFIG ############
|
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
Tracking_1C.if=0
|
|
||||||
Tracking_1C.pll_bw_hz=35.0;
|
Tracking_1C.pll_bw_hz=35.0;
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
@ -461,30 +295,19 @@ Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
|||||||
|
|
||||||
;######### GALILEO E1 TRK CONFIG ############
|
;######### GALILEO E1 TRK CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
;######### GPS L2C GENERIC TRACKING CONFIG ############
|
||||||
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
Tracking_2S.implementation=GPS_L2_M_DLL_PLL_Tracking
|
||||||
Tracking_2S.item_type=gr_complex
|
Tracking_2S.item_type=gr_complex
|
||||||
Tracking_2S.if=0
|
|
||||||
Tracking_2S.pll_bw_hz=2.0;
|
Tracking_2S.pll_bw_hz=2.0;
|
||||||
Tracking_2S.dll_bw_hz=0.25;
|
Tracking_2S.dll_bw_hz=0.25;
|
||||||
Tracking_2S.order=2;
|
Tracking_2S.order=2;
|
||||||
@ -492,21 +315,32 @@ Tracking_2S.early_late_space_chips=0.5;
|
|||||||
Tracking_2S.dump=false
|
Tracking_2S.dump=false
|
||||||
Tracking_2S.dump_filename=./tracking_ch_
|
Tracking_2S.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO E5 TRK CONFIG ############
|
;######### GALILEO E5 TRK CONFIG ############
|
||||||
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
Tracking_5X.implementation=Galileo_E5a_DLL_PLL_Tracking
|
||||||
Tracking_5X.item_type=gr_complex
|
Tracking_5X.item_type=gr_complex
|
||||||
Tracking_5X.if=0
|
Tracking_5X.track_pilot=true
|
||||||
Tracking_5X.pll_bw_hz_init=20.0; **Only for E5a** PLL loop filter bandwidth during initialization [Hz]
|
Tracking_5X.pll_bw_hz=15.0;
|
||||||
Tracking_5X.dll_bw_hz_init=20.0; **Only for E5a** DLL loop filter bandwidth during initialization [Hz]
|
Tracking_5X.dll_bw_hz=2.0;
|
||||||
Tracking_5X.ti_ms=1; **Only for E5a** loop filter integration time after initialization (secondary code delay search)[ms]
|
Tracking_5X.pll_bw_narrow_hz=5.0;
|
||||||
Tracking_5X.pll_bw_hz=20.0;
|
Tracking_5X.dll_bw_narrow_hz=1.0;
|
||||||
Tracking_5X.dll_bw_hz=20.0;
|
|
||||||
Tracking_5X.order=2;
|
Tracking_5X.order=2;
|
||||||
Tracking_5X.early_late_space_chips=0.5;
|
Tracking_5X.early_late_space_chips=0.5;
|
||||||
Tracking_5X.dump=false
|
Tracking_5X.dump=false
|
||||||
Tracking_5X.dump_filename=./tracking_ch_
|
Tracking_5X.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
;######### GALILEO E5 TRK CONFIG ############
|
||||||
|
Tracking_L5.implementation=GPS_L5_DLL_PLL_Tracking
|
||||||
|
Tracking_L5.item_type=gr_complex
|
||||||
|
Tracking_L5.track_pilot=true
|
||||||
|
Tracking_L5.pll_bw_hz=15.0;
|
||||||
|
Tracking_L5.dll_bw_hz=2.0;
|
||||||
|
Tracking_L5.pll_bw_narrow_hz=4.0;
|
||||||
|
Tracking_L5.dll_bw_narrow_hz=1.0;
|
||||||
|
Tracking_L5.order=2;
|
||||||
|
Tracking_L5.early_late_space_chips=0.5;
|
||||||
|
Tracking_L5.dump=false
|
||||||
|
Tracking_L5.dump_filename=./tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER CONFIG ############
|
;######### TELEMETRY DECODER CONFIG ############
|
||||||
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
@ -521,37 +355,28 @@ TelemetryDecoder_2S.dump=false
|
|||||||
TelemetryDecoder_5X.implementation=Galileo_E5a_Telemetry_Decoder
|
TelemetryDecoder_5X.implementation=Galileo_E5a_Telemetry_Decoder
|
||||||
TelemetryDecoder_5X.dump=false
|
TelemetryDecoder_5X.dump=false
|
||||||
|
|
||||||
|
TelemetryDecoder_L5.implementation=GPS_L5_Telemetry_Decoder
|
||||||
|
TelemetryDecoder_L5.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
PVT.implementation=RTKLIB_PVT
|
||||||
PVT.positioning_mode=PPP_Static ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
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.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
|
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=10
|
PVT.output_rate_ms=10
|
||||||
;#display_rate_ms: Position console print (std::out) interval [ms]. Notice that output_rate_ms<=display_rate_ms.
|
|
||||||
PVT.display_rate_ms=100
|
PVT.display_rate_ms=100
|
||||||
;# KML, GeoJSON, NMEA and RTCM output configuration
|
|
||||||
;#nmea_dump_filename: NMEA log path and filename
|
|
||||||
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
;#flag_nmea_tty_port: Enable or disable the NMEA log to a serial TTY port (Can be used with real hardware or virtual one)
|
|
||||||
PVT.flag_nmea_tty_port=false;
|
PVT.flag_nmea_tty_port=false;
|
||||||
;#nmea_dump_devname: serial device descriptor for NMEA logging
|
|
||||||
PVT.nmea_dump_devname=/dev/pts/4
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
PVT.rtcm_dump_devname=/dev/pts/1
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=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
|
PVT.dump_filename=./PVT
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
; Default configuration file
|
; This is a GNSS-SDR configuration file
|
||||||
|
; The configuration API is described at http://gnss-sdr.org/docs/sp-blocks/
|
||||||
|
|
||||||
; You can define your own receiver and invoke it by doing
|
; You can define your own receiver and invoke it by doing
|
||||||
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
; gnss-sdr --config_file=my_GNSS_SDR_configuration.conf
|
||||||
;
|
;
|
||||||
@ -11,260 +13,73 @@ GNSS-SDR.internal_fs_sps=4000000
|
|||||||
|
|
||||||
Receiver.sources_count=2
|
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
|
SignalSource.enable_throttle_control=false
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE 0 CONFIG ############
|
;######### SIGNAL_SOURCE 0 CONFIG ############
|
||||||
SignalSource0.implementation=File_Signal_Source
|
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
|
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
|
SignalSource0.item_type=ishort
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource0.sampling_frequency=4000000
|
SignalSource0.sampling_frequency=4000000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource0.samples=0
|
SignalSource0.samples=0
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE 1 CONFIG ############
|
;######### SIGNAL_SOURCE 1 CONFIG ############
|
||||||
SignalSource1.implementation=File_Signal_Source
|
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
|
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
|
SignalSource1.item_type=ishort
|
||||||
;#sampling_frequency: Original Signal sampling frequency in [Hz]
|
|
||||||
SignalSource1.sampling_frequency=4000000
|
SignalSource1.sampling_frequency=4000000
|
||||||
;#freq: RF front-end center frequency in [Hz]
|
|
||||||
SignalSource1.freq=1575420000
|
SignalSource1.freq=1575420000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource1.samples=0
|
SignalSource1.samples=0
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### 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
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter0.implementation=Ishort_To_Complex
|
DataTypeAdapter0.implementation=Ishort_To_Complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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
|
InputFilter0.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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.
|
|
||||||
;;#This 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.
|
|
||||||
InputFilter0.input_item_type=gr_complex
|
InputFilter0.input_item_type=gr_complex
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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 ############
|
;######### 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
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the resampled data to a file.
|
|
||||||
Resampler1.dump=false
|
Resampler1.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Resampler1.dump_filename=../data/resampler.dat
|
Resampler1.dump_filename=../data/resampler.dat
|
||||||
|
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler1.item_type=gr_complex
|
Resampler1.item_type=gr_complex
|
||||||
|
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler1.sample_freq_in=4000000
|
Resampler1.sample_freq_in=4000000
|
||||||
|
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler1.sample_freq_out=4000000
|
Resampler1.sample_freq_out=4000000
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### 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
|
SignalConditioner1.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter1.implementation=Ishort_To_Complex
|
DataTypeAdapter1.implementation=Ishort_To_Complex
|
||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### 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
|
InputFilter1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
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.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=gr_complex
|
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
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 ############
|
;######### 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
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;#dump: Dump the resampled data to a file.
|
|
||||||
Resampler1.dump=false
|
Resampler1.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
Resampler1.dump_filename=../data/resampler.dat.
|
||||||
Resampler1.dump_filename=../data/resampler.dat
|
|
||||||
|
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Resampler1.item_type=gr_complex
|
Resampler1.item_type=gr_complex
|
||||||
|
|
||||||
;#sample_freq_in: the sample frequency of the input signal
|
|
||||||
Resampler1.sample_freq_in=4000000
|
Resampler1.sample_freq_in=4000000
|
||||||
|
|
||||||
;#sample_freq_out: the desired sample frequency of the output signal
|
|
||||||
Resampler1.sample_freq_out=4000000
|
Resampler1.sample_freq_out=4000000
|
||||||
|
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=2
|
Channels_1C.count=2
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=2
|
Channels_1B.count=2
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
|
|
||||||
@ -280,120 +95,73 @@ Channel.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.coherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.0075
|
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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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
|
Acquisition_1B.pfa=0.0000008
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=4.0;
|
Tracking_1C.dll_bw_hz=4.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
TelemetryDecoder_1B.dump=false
|
TelemetryDecoder_1B.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
;#implementation:
|
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
;#implementation: Position Velocity and Time (PVT) implementation:
|
|
||||||
PVT.implementation=RTKLIB_PVT
|
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.positioning_mode=Single ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
||||||
PVT.output_rate_ms=100;
|
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;
|
PVT.display_rate_ms=500;
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
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
|
PVT.dump_filename=./PVT
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=false
|
PVT.dump=false
|
||||||
|
@ -14,250 +14,102 @@ GNSS-SDR.internal_fs_sps=2560000
|
|||||||
;GNSS-SDR.internal_fs_sps=4096000
|
;GNSS-SDR.internal_fs_sps=4096000
|
||||||
;GNSS-SDR.internal_fs_sps=5120000
|
;GNSS-SDR.internal_fs_sps=5120000
|
||||||
|
|
||||||
;#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
|
SignalSource.enable_throttle_control=false
|
||||||
;#repeat: Repeat the processing file.
|
|
||||||
SignalSource.repeat=false
|
SignalSource.repeat=false
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE 0 CONFIG ############
|
;######### SIGNAL_SOURCE 0 CONFIG ############
|
||||||
;#implementation
|
|
||||||
SignalSource0.implementation=Nsr_File_Signal_Source
|
SignalSource0.implementation=Nsr_File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource0.filename=/datalogger/signals/ifen/E1L1_FE0_Band0.stream ; <- PUT YOUR FILE HERE
|
SignalSource0.filename=/datalogger/signals/ifen/E1L1_FE0_Band0.stream ; <- PUT YOUR FILE HERE
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource0.item_type=byte
|
SignalSource0.item_type=byte
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource0.sampling_frequency=20480000
|
SignalSource0.sampling_frequency=20480000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource0.samples=0
|
SignalSource0.samples=0
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_SOURCE 1 CONFIG ############
|
;######### SIGNAL_SOURCE 1 CONFIG ############
|
||||||
;#implementation: Use [File_Signal_Source] [Nsr_File_Signal_Source] or [UHD_Signal_Source] or [GN3S_Signal_Source] (experimental)
|
|
||||||
SignalSource1.implementation=Nsr_File_Signal_Source
|
SignalSource1.implementation=Nsr_File_Signal_Source
|
||||||
;#filename: path to file with the captured GNSS signal samples to be processed
|
|
||||||
SignalSource1.filename=/datalogger/signals/ifen/E1L1_FE0_Band0.stream
|
SignalSource1.filename=/datalogger/signals/ifen/E1L1_FE0_Band0.stream
|
||||||
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
|
|
||||||
SignalSource1.item_type=byte
|
SignalSource1.item_type=byte
|
||||||
;#sampling_frequency: Original Signal sampling frequency in samples per second
|
|
||||||
SignalSource1.sampling_frequency=20480000
|
SignalSource1.sampling_frequency=20480000
|
||||||
;#samples: Number of samples to be processed. Notice that 0 indicates the entire file.
|
|
||||||
SignalSource1.samples=0
|
SignalSource1.samples=0
|
||||||
|
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 0 CONFIG ############
|
;######### 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
|
SignalConditioner0.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 0 CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter0.implementation=Pass_Through
|
DataTypeAdapter0.implementation=Pass_Through
|
||||||
DataTypeAdapter0.item_type=float
|
DataTypeAdapter0.item_type=float
|
||||||
|
|
||||||
;######### INPUT_FILTER 0 CONFIG ############
|
;######### 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]
|
|
||||||
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation
|
|
||||||
;# that shifts IF down to zero Hz.
|
|
||||||
|
|
||||||
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
InputFilter0.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter0.dump=false
|
InputFilter0.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter0.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter0.input_item_type=float
|
InputFilter0.input_item_type=float
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter0.output_item_type=gr_complex
|
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
|
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
|
InputFilter0.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter0.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter0.band1_end=0.45
|
InputFilter0.band1_end=0.45
|
||||||
InputFilter0.band2_begin=0.55
|
InputFilter0.band2_begin=0.55
|
||||||
InputFilter0.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter0.ampl1_end=1.0
|
InputFilter0.ampl1_end=1.0
|
||||||
InputFilter0.ampl2_begin=0.0
|
InputFilter0.ampl2_begin=0.0
|
||||||
InputFilter0.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter0.band2_error=1.0
|
InputFilter0.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter0.filter_type=bandpass
|
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
|
InputFilter0.grid_density=16
|
||||||
|
|
||||||
;# Original sampling frequency stored in the signal file
|
|
||||||
InputFilter0.sampling_frequency=20480000
|
InputFilter0.sampling_frequency=20480000
|
||||||
|
|
||||||
;#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.IF=5499998.47412109
|
InputFilter0.IF=5499998.47412109
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter0.decimation_factor=8
|
InputFilter0.decimation_factor=8
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 0 ############
|
;######### RESAMPLER CONFIG 0 ############
|
||||||
;## 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
|
|
||||||
Resampler0.implementation=Pass_Through
|
Resampler0.implementation=Pass_Through
|
||||||
|
|
||||||
;######### SIGNAL_CONDITIONER 1 CONFIG ############
|
;######### 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
|
SignalConditioner1.implementation=Signal_Conditioner
|
||||||
|
|
||||||
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
;######### DATA_TYPE_ADAPTER 1 CONFIG ############
|
||||||
;## Changes the type of input data.
|
|
||||||
;#implementation: [Pass_Through] disables this block
|
|
||||||
DataTypeAdapter1.implementation=Pass_Through
|
DataTypeAdapter1.implementation=Pass_Through
|
||||||
DataTypeAdapter1.item_type=float
|
DataTypeAdapter1.item_type=float
|
||||||
|
|
||||||
;######### INPUT_FILTER 1 CONFIG ############
|
;######### 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]
|
|
||||||
;#[Freq_Xlating_Fir_Filter] enables FIR filter and a composite frequency translation
|
|
||||||
;# that shifts IF down to zero Hz.
|
|
||||||
|
|
||||||
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
InputFilter1.implementation=Freq_Xlating_Fir_Filter
|
||||||
|
|
||||||
;#dump: Dump the filtered data to a file.
|
|
||||||
InputFilter1.dump=false
|
InputFilter1.dump=false
|
||||||
|
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
InputFilter1.dump_filename=../data/input_filter.dat
|
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 gnuradio's function: gr_remez.
|
|
||||||
;#This 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.
|
|
||||||
InputFilter1.input_item_type=float
|
InputFilter1.input_item_type=float
|
||||||
|
|
||||||
;#outut_item_type: Type and resolution for output filtered signal samples.
|
|
||||||
InputFilter1.output_item_type=gr_complex
|
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
|
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
|
InputFilter1.number_of_taps=5
|
||||||
|
|
||||||
;#number_of _bands: Number of frequency bands in the filter.
|
|
||||||
InputFilter1.number_of_bands=2
|
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_begin=0.0
|
||||||
InputFilter1.band1_end=0.45
|
InputFilter1.band1_end=0.45
|
||||||
InputFilter1.band2_begin=0.55
|
InputFilter1.band2_begin=0.55
|
||||||
InputFilter1.band2_end=1.0
|
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_begin=1.0
|
||||||
InputFilter1.ampl1_end=1.0
|
InputFilter1.ampl1_end=1.0
|
||||||
InputFilter1.ampl2_begin=0.0
|
InputFilter1.ampl2_begin=0.0
|
||||||
InputFilter1.ampl2_end=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.band1_error=1.0
|
||||||
InputFilter1.band2_error=1.0
|
InputFilter1.band2_error=1.0
|
||||||
|
|
||||||
;#filter_type: one of "bandpass", "hilbert" or "differentiator"
|
|
||||||
InputFilter1.filter_type=bandpass
|
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
|
InputFilter1.grid_density=16
|
||||||
|
|
||||||
;# Original sampling frequency stored in the signal file
|
|
||||||
InputFilter1.sampling_frequency=20480000
|
InputFilter1.sampling_frequency=20480000
|
||||||
|
|
||||||
;#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.IF=5499998.47412109
|
InputFilter1.IF=5499998.47412109
|
||||||
|
|
||||||
;# Decimation factor after the frequency tranaslating block
|
|
||||||
InputFilter1.decimation_factor=8
|
InputFilter1.decimation_factor=8
|
||||||
|
|
||||||
|
|
||||||
;######### RESAMPLER CONFIG 1 ############
|
;######### RESAMPLER CONFIG 1 ############
|
||||||
;## 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
|
|
||||||
Resampler1.implementation=Pass_Through
|
Resampler1.implementation=Pass_Through
|
||||||
|
|
||||||
;######### CHANNELS GLOBAL CONFIG ############
|
;######### CHANNELS GLOBAL CONFIG ############
|
||||||
;#count: Number of available GPS satellite channels.
|
|
||||||
Channels_1C.count=8
|
Channels_1C.count=8
|
||||||
;#count: Number of available Galileo satellite channels.
|
|
||||||
Channels_1B.count=8
|
Channels_1B.count=8
|
||||||
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
|
|
||||||
Channels.in_acquisition=1
|
Channels.in_acquisition=1
|
||||||
|
|
||||||
;#signal:
|
|
||||||
;# "1C" GPS L1 C/A
|
|
||||||
;# "1B" GALILEO E1 B (I/NAV OS/CS/SoL)
|
|
||||||
;# "1G" GLONASS L1 C/A
|
|
||||||
;# "2S" GPS L2 L2C (M)
|
|
||||||
;# "5X" GALILEO E5a I+Q
|
|
||||||
;# "L5" GPS L5
|
|
||||||
|
|
||||||
;# SOURCE CONNECTION
|
;# SOURCE CONNECTION
|
||||||
Channel0.RF_channel_ID=0
|
Channel0.RF_channel_ID=0
|
||||||
Channel1.RF_channel_ID=0
|
Channel1.RF_channel_ID=0
|
||||||
@ -299,117 +151,77 @@ Channel15.signal=1B
|
|||||||
|
|
||||||
;######### GPS ACQUISITION CONFIG ############
|
;######### GPS ACQUISITION CONFIG ############
|
||||||
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1C.item_type=gr_complex
|
Acquisition_1C.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1C.scoherent_integration_time_ms=1
|
||||||
Acquisition_1C.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1C.sampled_ms=1
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
Acquisition_1C.threshold=0.0075
|
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
|
;Acquisition_1C.pfa=0.01
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1C.doppler_max=10000
|
Acquisition_1C.doppler_max=10000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1C.doppler_step=500
|
Acquisition_1C.doppler_step=500
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1C.dump=false
|
Acquisition_1C.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1C.dump_filename=./acq_dump.dat
|
Acquisition_1C.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### GALILEO ACQUISITION CONFIG ############
|
;######### GALILEO ACQUISITION CONFIG ############
|
||||||
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
Acquisition_1B.implementation=Galileo_E1_PCPS_Ambiguous_Acquisition
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Acquisition_1B.item_type=gr_complex
|
Acquisition_1B.item_type=gr_complex
|
||||||
;#if: Signal intermediate frequency in [Hz]
|
Acquisition_1B.coherent_integration_time_ms=4
|
||||||
Acquisition_1B.if=0
|
|
||||||
;#sampled_ms: Signal block duration for the acquisition signal detection [ms]
|
|
||||||
Acquisition_1B.sampled_ms=4
|
|
||||||
;#threshold: Acquisition threshold
|
|
||||||
;Acquisition_1B.threshold=0
|
;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.0000002
|
Acquisition_1B.pfa=0.0000002
|
||||||
;#doppler_max: Maximum expected Doppler shift [Hz]
|
|
||||||
Acquisition_1B.doppler_max=15000
|
Acquisition_1B.doppler_max=15000
|
||||||
;#doppler_max: Doppler step in the grid search [Hz]
|
|
||||||
Acquisition_1B.doppler_step=125
|
Acquisition_1B.doppler_step=125
|
||||||
;#dump: Enable or disable the acquisition internal data file logging [true] or [false]
|
|
||||||
Acquisition_1B.dump=false
|
Acquisition_1B.dump=false
|
||||||
;#filename: Log path and filename
|
|
||||||
Acquisition_1B.dump_filename=./acq_dump.dat
|
Acquisition_1B.dump_filename=./acq_dump.dat
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GPS CONFIG ############
|
;######### TRACKING GPS CONFIG ############
|
||||||
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
|
||||||
;#item_type: Type and resolution for each of the signal samples.
|
|
||||||
Tracking_1C.item_type=gr_complex
|
Tracking_1C.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1C.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.pll_bw_hz=45.0;
|
Tracking_1C.pll_bw_hz=45.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1C.dll_bw_hz=2.0;
|
Tracking_1C.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1C.order=3;
|
Tracking_1C.order=3;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1C.dump=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_
|
Tracking_1C.dump_filename=../data/epl_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TRACKING GALILEO CONFIG ############
|
;######### TRACKING GALILEO CONFIG ############
|
||||||
Tracking_1B.implementation=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.
|
|
||||||
Tracking_1B.item_type=gr_complex
|
Tracking_1B.item_type=gr_complex
|
||||||
;#sampling_frequency: Signal Intermediate Frequency in [Hz]
|
|
||||||
Tracking_1B.if=0
|
|
||||||
;#pll_bw_hz: PLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.pll_bw_hz=15.0;
|
Tracking_1B.pll_bw_hz=15.0;
|
||||||
;#dll_bw_hz: DLL loop filter bandwidth [Hz]
|
|
||||||
Tracking_1B.dll_bw_hz=2.0;
|
Tracking_1B.dll_bw_hz=2.0;
|
||||||
;#order: PLL/DLL loop filter order [2] or [3]
|
|
||||||
Tracking_1B.order=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;
|
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;
|
Tracking_1B.very_early_late_space_chips=0.6;
|
||||||
;#dump: Enable or disable the Tracking internal binary data file logging [true] or [false]
|
|
||||||
Tracking_1B.dump=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_
|
Tracking_1B.dump_filename=../data/veml_tracking_ch_
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GPS CONFIG ############
|
;######### 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.implementation=GPS_L1_CA_Telemetry_Decoder
|
||||||
TelemetryDecoder_1C.dump=false
|
TelemetryDecoder_1C.dump=false
|
||||||
|
|
||||||
|
|
||||||
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
;######### TELEMETRY DECODER GALILEO CONFIG ############
|
||||||
;#implementation: Use [Galileo_E1B_Telemetry_Decoder] for Galileo E1B
|
|
||||||
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
TelemetryDecoder_1B.implementation=Galileo_E1B_Telemetry_Decoder
|
||||||
|
|
||||||
|
|
||||||
;######### OBSERVABLES CONFIG ############
|
;######### OBSERVABLES CONFIG ############
|
||||||
Observables.implementation=Hybrid_Observables
|
Observables.implementation=Hybrid_Observables
|
||||||
;#dump: Enable or disable the Observables internal binary data file logging [true] or [false]
|
|
||||||
Observables.dump=false
|
Observables.dump=false
|
||||||
;#dump_filename: Log path and filename.
|
|
||||||
Observables.dump_filename=./observables.dat
|
Observables.dump_filename=./observables.dat
|
||||||
|
|
||||||
|
|
||||||
;######### PVT CONFIG ############
|
;######### PVT CONFIG ############
|
||||||
PVT.implementation=RTKLIB_PVT
|
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.positioning_mode=Single ; options: Single, Static, Kinematic, PPP_Static, PPP_Kinematic
|
||||||
PVT.output_rate_ms=10;
|
PVT.iono_model=Broadcast ; options: OFF, Broadcast, SBAS, Iono-Free-LC, Estimate_STEC, IONEX
|
||||||
;#display_rate_ms: Position console print (std::out) interval [ms]. Notice that output_rate_ms<=display_rate_ms.
|
PVT.trop_model=Saastamoinen ; options: OFF, Saastamoinen, SBAS, Estimate_ZTD, Estimate_ZTD_Grad
|
||||||
PVT.display_rate_ms=500;
|
PVT.output_rate_ms=100
|
||||||
|
PVT.display_rate_ms=500
|
||||||
|
PVT.nmea_dump_filename=./gnss_sdr_pvt.nmea;
|
||||||
|
PVT.flag_nmea_tty_port=true;
|
||||||
|
PVT.nmea_dump_devname=/dev/pts/4
|
||||||
PVT.flag_rtcm_server=false
|
PVT.flag_rtcm_server=false
|
||||||
PVT.flag_rtcm_tty_port=false
|
PVT.flag_rtcm_tty_port=false
|
||||||
PVT.rtcm_dump_devname=/dev/pts/1
|
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
|
|
||||||
;#dump: Enable or disable the PVT internal binary data file logging [true] or [false]
|
|
||||||
PVT.dump=false
|
PVT.dump=false
|
||||||
|
PVT.dump_filename=./PVT
|
||||||
|
@ -261,6 +261,12 @@ rtklib_pvt_cc::rtklib_pvt_cc(unsigned int nchannels, bool dump, std::string dump
|
|||||||
d_kml_dump = std::make_shared<Kml_Printer>();
|
d_kml_dump = std::make_shared<Kml_Printer>();
|
||||||
d_kml_dump->set_headers(kml_dump_filename);
|
d_kml_dump->set_headers(kml_dump_filename);
|
||||||
|
|
||||||
|
//initialize gpx_printer
|
||||||
|
std::string gpx_dump_filename;
|
||||||
|
gpx_dump_filename = d_dump_filename;
|
||||||
|
d_gpx_dump = std::make_shared<Gpx_Printer>();
|
||||||
|
d_gpx_dump->set_headers(gpx_dump_filename);
|
||||||
|
|
||||||
//initialize geojson_printer
|
//initialize geojson_printer
|
||||||
std::string geojson_dump_filename;
|
std::string geojson_dump_filename;
|
||||||
geojson_dump_filename = d_dump_filename;
|
geojson_dump_filename = d_dump_filename;
|
||||||
@ -678,6 +684,7 @@ int rtklib_pvt_cc::work(int noutput_items, gr_vector_const_void_star& input_item
|
|||||||
first_fix = false;
|
first_fix = false;
|
||||||
}
|
}
|
||||||
d_kml_dump->print_position(d_ls_pvt, false);
|
d_kml_dump->print_position(d_ls_pvt, false);
|
||||||
|
d_gpx_dump->print_position(d_ls_pvt, false);
|
||||||
d_geojson_printer->print_position(d_ls_pvt, false);
|
d_geojson_printer->print_position(d_ls_pvt, false);
|
||||||
d_nmea_printer->Print_Nmea_Line(d_ls_pvt, false);
|
d_nmea_printer->Print_Nmea_Line(d_ls_pvt, false);
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
|
|
||||||
#include "nmea_printer.h"
|
#include "nmea_printer.h"
|
||||||
#include "kml_printer.h"
|
#include "kml_printer.h"
|
||||||
|
#include "gpx_printer.h"
|
||||||
#include "geojson_printer.h"
|
#include "geojson_printer.h"
|
||||||
#include "rinex_printer.h"
|
#include "rinex_printer.h"
|
||||||
#include "rtcm_printer.h"
|
#include "rtcm_printer.h"
|
||||||
@ -120,6 +121,7 @@ private:
|
|||||||
|
|
||||||
std::shared_ptr<Rinex_Printer> rp;
|
std::shared_ptr<Rinex_Printer> rp;
|
||||||
std::shared_ptr<Kml_Printer> d_kml_dump;
|
std::shared_ptr<Kml_Printer> d_kml_dump;
|
||||||
|
std::shared_ptr<Gpx_Printer> d_gpx_dump;
|
||||||
std::shared_ptr<Nmea_Printer> d_nmea_printer;
|
std::shared_ptr<Nmea_Printer> d_nmea_printer;
|
||||||
std::shared_ptr<GeoJSON_Printer> d_geojson_printer;
|
std::shared_ptr<GeoJSON_Printer> d_geojson_printer;
|
||||||
std::shared_ptr<Rtcm_Printer> d_rtcm_printer;
|
std::shared_ptr<Rtcm_Printer> d_rtcm_printer;
|
||||||
|
@ -23,6 +23,7 @@ set(PVT_LIB_SOURCES
|
|||||||
ls_pvt.cc
|
ls_pvt.cc
|
||||||
hybrid_ls_pvt.cc
|
hybrid_ls_pvt.cc
|
||||||
kml_printer.cc
|
kml_printer.cc
|
||||||
|
gpx_printer.cc
|
||||||
rinex_printer.cc
|
rinex_printer.cc
|
||||||
nmea_printer.cc
|
nmea_printer.cc
|
||||||
rtcm_printer.cc
|
rtcm_printer.cc
|
||||||
|
176
src/algorithms/PVT/libs/gpx_printer.cc
Normal file
176
src/algorithms/PVT/libs/gpx_printer.cc
Normal file
@ -0,0 +1,176 @@
|
|||||||
|
/*!
|
||||||
|
* \file gpx_printer.cc
|
||||||
|
* \brief Interface of a class that prints PVT information to a gpx file
|
||||||
|
* \author Álvaro Cebrián Juan, 2018. acebrianjuan(at)gmail.com
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* -------------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* Copyright (C) 2010-2018 (see AUTHORS file for a list of contributors)
|
||||||
|
*
|
||||||
|
* GNSS-SDR is a software defined Global Navigation
|
||||||
|
* Satellite Systems receiver
|
||||||
|
*
|
||||||
|
* This file is part of GNSS-SDR.
|
||||||
|
*
|
||||||
|
* GNSS-SDR 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 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* GNSS-SDR 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 GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
* -------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include "gpx_printer.h"
|
||||||
|
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||||
|
#include <glog/logging.h>
|
||||||
|
#include <sstream>
|
||||||
|
|
||||||
|
using google::LogMessage;
|
||||||
|
|
||||||
|
bool Gpx_Printer::set_headers(std::string filename, bool time_tag_name)
|
||||||
|
{
|
||||||
|
boost::posix_time::ptime pt = boost::posix_time::second_clock::local_time();
|
||||||
|
tm timeinfo = boost::posix_time::to_tm(pt);
|
||||||
|
|
||||||
|
if (time_tag_name)
|
||||||
|
{
|
||||||
|
std::stringstream strm0;
|
||||||
|
const int year = timeinfo.tm_year - 100;
|
||||||
|
strm0 << year;
|
||||||
|
const int month = timeinfo.tm_mon + 1;
|
||||||
|
if (month < 10)
|
||||||
|
{
|
||||||
|
strm0 << "0";
|
||||||
|
}
|
||||||
|
strm0 << month;
|
||||||
|
const int day = timeinfo.tm_mday;
|
||||||
|
if (day < 10)
|
||||||
|
{
|
||||||
|
strm0 << "0";
|
||||||
|
}
|
||||||
|
strm0 << day << "_";
|
||||||
|
const int hour = timeinfo.tm_hour;
|
||||||
|
if (hour < 10)
|
||||||
|
{
|
||||||
|
strm0 << "0";
|
||||||
|
}
|
||||||
|
strm0 << hour;
|
||||||
|
const int min = timeinfo.tm_min;
|
||||||
|
if (min < 10)
|
||||||
|
{
|
||||||
|
strm0 << "0";
|
||||||
|
}
|
||||||
|
strm0 << min;
|
||||||
|
const int sec = timeinfo.tm_sec;
|
||||||
|
if (sec < 10)
|
||||||
|
{
|
||||||
|
strm0 << "0";
|
||||||
|
}
|
||||||
|
strm0 << sec;
|
||||||
|
|
||||||
|
gpx_filename = filename + "_" + strm0.str() + ".gpx";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
gpx_filename = filename + ".gpx";
|
||||||
|
}
|
||||||
|
gpx_file.open(gpx_filename.c_str());
|
||||||
|
|
||||||
|
if (gpx_file.is_open())
|
||||||
|
{
|
||||||
|
DLOG(INFO) << "GPX printer writing on " << filename.c_str();
|
||||||
|
// Set iostream numeric format and precision
|
||||||
|
gpx_file.setf(gpx_file.fixed, gpx_file.floatfield);
|
||||||
|
gpx_file << std::setprecision(14);
|
||||||
|
gpx_file << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" << std::endl
|
||||||
|
<< "<gpx version=\"1.1\" creator=\"GNSS-SDR\"" << std::endl
|
||||||
|
<< "xsi:schemaLocation=\"http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd\"" << std::endl
|
||||||
|
<< "xmlns=\"http://www.topografix.com/GPX/1/1\"" << std::endl
|
||||||
|
<< "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" << std::endl
|
||||||
|
<< "<trk>" << std::endl
|
||||||
|
<< "<trkseg>" << std::endl;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool Gpx_Printer::print_position(const std::shared_ptr<Pvt_Solution>& position, bool print_average_values)
|
||||||
|
{
|
||||||
|
double latitude;
|
||||||
|
double longitude;
|
||||||
|
double height;
|
||||||
|
|
||||||
|
positions_printed = true;
|
||||||
|
|
||||||
|
std::shared_ptr<Pvt_Solution> position_ = position;
|
||||||
|
|
||||||
|
if (print_average_values == false)
|
||||||
|
{
|
||||||
|
latitude = position_->get_latitude();
|
||||||
|
longitude = position_->get_longitude();
|
||||||
|
height = position_->get_height();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
latitude = position_->get_avg_latitude();
|
||||||
|
longitude = position_->get_avg_longitude();
|
||||||
|
height = position_->get_avg_height();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (gpx_file.is_open())
|
||||||
|
{
|
||||||
|
gpx_file << "<trkpt lon=\"" << longitude << "\" lat=\"" << latitude << "\"><ele>" << height << "</ele></trkpt>" << std::endl;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool Gpx_Printer::close_file()
|
||||||
|
{
|
||||||
|
if (gpx_file.is_open())
|
||||||
|
{
|
||||||
|
gpx_file << "</trkseg>" << std::endl
|
||||||
|
<< "</trk>" << std::endl
|
||||||
|
<< "</gpx>";
|
||||||
|
gpx_file.close();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Gpx_Printer::Gpx_Printer()
|
||||||
|
{
|
||||||
|
positions_printed = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Gpx_Printer::~Gpx_Printer()
|
||||||
|
{
|
||||||
|
close_file();
|
||||||
|
if (!positions_printed)
|
||||||
|
{
|
||||||
|
if (remove(gpx_filename.c_str()) != 0) LOG(INFO) << "Error deleting temporary GPX file";
|
||||||
|
}
|
||||||
|
}
|
62
src/algorithms/PVT/libs/gpx_printer.h
Normal file
62
src/algorithms/PVT/libs/gpx_printer.h
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
/*!
|
||||||
|
* \file gpx_printer.h
|
||||||
|
* \brief Interface of a class that prints PVT information to a gpx file
|
||||||
|
* \author Álvaro Cebrián Juan, 2018. acebrianjuan(at)gmail.com
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* -------------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* Copyright (C) 2010-2018 (see AUTHORS file for a list of contributors)
|
||||||
|
*
|
||||||
|
* GNSS-SDR is a software defined Global Navigation
|
||||||
|
* Satellite Systems receiver
|
||||||
|
*
|
||||||
|
* This file is part of GNSS-SDR.
|
||||||
|
*
|
||||||
|
* GNSS-SDR 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 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* GNSS-SDR 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 GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
* -------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef GNSS_SDR_GPX_PRINTER_H_
|
||||||
|
#define GNSS_SDR_GPX_PRINTER_H_
|
||||||
|
|
||||||
|
#include "pvt_solution.h"
|
||||||
|
#include <fstream>
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Prints PVT information to GPX format file
|
||||||
|
*
|
||||||
|
* See http://www.topografix.com/gpx.asp
|
||||||
|
*/
|
||||||
|
class Gpx_Printer
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
std::ofstream gpx_file;
|
||||||
|
bool positions_printed;
|
||||||
|
std::string gpx_filename;
|
||||||
|
|
||||||
|
public:
|
||||||
|
Gpx_Printer();
|
||||||
|
~Gpx_Printer();
|
||||||
|
bool set_headers(std::string filename, bool time_tag_name = true);
|
||||||
|
bool print_position(const std::shared_ptr<Pvt_Solution>& position, bool print_average_values);
|
||||||
|
bool close_file();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@ -154,7 +154,10 @@ rtl_tcp_signal_source_c::rtl_tcp_signal_source_c(const std::string &address,
|
|||||||
|
|
||||||
rtl_tcp_signal_source_c::~rtl_tcp_signal_source_c()
|
rtl_tcp_signal_source_c::~rtl_tcp_signal_source_c()
|
||||||
{
|
{
|
||||||
|
boost::mutex::scoped_lock lock(mutex_);
|
||||||
io_service_.stop();
|
io_service_.stop();
|
||||||
|
not_empty_.notify_one();
|
||||||
|
not_full_.notify_one();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user