Link to this headingGPS

  • GPS frequencies are 1.575420 GHz,

GPS Frequencies
GPS Jamming Information

Link to this headingGNSS SDR

This is to receive the GPS signals and compute the corresponding location.
Source

Configuration:

>>> cat limesdr_GPS_L1.conf [GNSS-SDR] ;######### GLOBAL OPTIONS ################## GNSS-SDR.internal_fs_sps=2000000 ;######### SIGNAL_SOURCE CONFIG ############ SignalSource.implementation=Osmosdr_Signal_Source SignalSource.item_type=gr_complex SignalSource.sampling_frequency=2000000 SignalSource.freq=1575420000 SignalSource.gain=40 SignalSource.rf_gain=40 SignalSource.if_gain=40 SignalSource.AGC_enabled=false SignalSource.samples=0 SignalSource.repeat=false ;# Next line enables the internal HackRF One bias (3.3 VDC) ;#SignalSource.osmosdr_args=hackrf,bias=1 ;# Next line enables the LimeSDR SignalSource.osmosdr_args=driver=lime,soapy=0 SignalSource.enable_throttle_control=false SignalSource.dump=false SignalSource.dump_filename=./signal_source.dat ;######### SIGNAL_CONDITIONER CONFIG ############ SignalConditioner.implementation=Signal_Conditioner ;######### DATA_TYPE_ADAPTER CONFIG ############ DataTypeAdapter.implementation=Pass_Through ;######### INPUT_FILTER CONFIG ############ InputFilter.implementation=Freq_Xlating_Fir_Filter InputFilter.decimation_factor=1 InputFilter.input_item_type=gr_complex InputFilter.output_item_type=gr_complex InputFilter.taps_item_type=float InputFilter.number_of_taps=5 InputFilter.number_of_bands=2 InputFilter.band1_begin=0.0 InputFilter.band1_end=0.85 InputFilter.band2_begin=0.9 InputFilter.band2_end=1.0 InputFilter.ampl1_begin=1.0 InputFilter.ampl1_end=1.0 InputFilter.ampl2_begin=0.0 InputFilter.ampl2_end=0.0 InputFilter.band1_error=1.0 InputFilter.band2_error=1.0 InputFilter.filter_type=bandpass InputFilter.grid_density=16 InputFilter.dump=false InputFilter.dump_filename=../data/input_filter.dat ;######### RESAMPLER CONFIG ############ Resampler.implementation=Pass_Through ;######### CHANNELS GLOBAL CONFIG ############ Channels_1C.count=8 Channels.in_acquisition=1 ;######### ACQUISITION GLOBAL CONFIG ############ Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition Acquisition_1C.item_type=gr_complex Acquisition_1C.coherent_integration_time_ms=1 Acquisition_1C.pfa=0.01 Acquisition_1C.doppler_max=5000 Acquisition_1C.doppler_step=250 Acquisition_1C.max_dwells=1 Acquisition_1C.dump=false Acquisition_1C.sampled_ms=2 Acquisition_1C.dump_filename=./acq_dump.dat ;######### TRACKING GLOBAL CONFIG ############ Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking Tracking_1C.item_type=gr_complex Tracking_1C.extend_correlation_symbols=10 Tracking_1C.early_late_space_chips=0.5 Tracking_1C.early_late_space_narrow_chips=0.15 Tracking_1C.pll_bw_hz=40 Tracking_1C.dll_bw_hz=2.0 Tracking_1C.pll_bw_narrow_hz=5.0 Tracking_1C.dll_bw_narrow_hz=1.50 Tracking_1C.fll_bw_hz=10 Tracking_1C.enable_fll_pull_in=true Tracking_1C.enable_fll_steady_state=false Tracking_1C.dump=false Tracking_1C.dump_filename=tracking_ch_ ;######### TELEMETRY DECODER GPS CONFIG ############ TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder TelemetryDecoder_1C.dump=false ;######### OBSERVABLES CONFIG ############ Observables.implementation=Hybrid_Observables Observables.dump=false Observables.dump_filename=./observables.dat ;######### PVT CONFIG ############ PVT.implementation=RTKLIB_PVT PVT.positioning_mode=Single PVT.output_rate_ms=100 PVT.display_rate_ms=500 PVT.iono_model=Broadcast PVT.trop_model=Saastamoinen PVT.flag_rtcm_server=true PVT.flag_rtcm_tty_port=false PVT.rtcm_dump_devname=/dev/pts/1 PVT.rtcm_tcp_port=2101 PVT.rtcm_MT1019_rate_ms=5000 PVT.rtcm_MT1077_rate_ms=1000 PVT.rinex_version=2

Setting it up:

#Install stuff yay gnss yay mako #Check LimeSDR SoapySDRUtil --find LimeUtil --find #Run Profiling/Tests volk_profile volk_gnsssdr_profile

Running it:

sudo gnss-sdr --config_file=hackrf_GPS_L1.conf

Link to this headingLimeGPS

Real-time GPS signal simulator for LimeSDR

Link to this headingTransmit GPS

Source

Install the software:

sudo pacman -S base-devel hackrf gnuradio gnuradio-osmosdr

Make the software:

mkdir gps-spoof cd gps-spoof git clone https://github.com/osqzss/gps-sdr-sim.git cd gps-sdr-sim make

Download the current Satellite position information:

  1. Download from https://cddis.nasa.gov/archive/gnss/data/daily/
  2. Select current year and largest day number (current day).
  3. Download the latest file starting with “brdc” into the gps-sdr-sim directory.
  4. Unzip the file gunzip brdc<VARIES>n.gz

Generate and Transmit the Spoofing file:

#Generate the GPS File ./gps-sdr-sim -e brdc2260.21n -b 8 -l 36.16598363988784,-86.78167782570753,100 #Transmit the GPS File limeplayer -s 1000000 -b 1 -d 2047 -g 0.1 < ../circle.1b.1M.bin