1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-11-09 19:40:04 +00:00
Commit Graph

355 Commits

Author SHA1 Message Date
Javier Arribas
203e998efc Adding __attribute__((unused)) in tracking GNURadio work functions to
disable unused variable warnings without wasting any extra CPU cycle
2016-04-06 15:04:52 +02:00
Javier Arribas
9db0990adc Deleted obsolete DLL_FLL_PLL GPS tracking. Deleted obsolete correlator.h
and migrated all tracking in order to use the newer and optimized
cpu_multicorrelator. Code simplification and code cleaning
2016-04-06 14:58:18 +02:00
Javier Arribas
eac888067f Deleted obsolete DLL_FLL_PLL GPS tracking. Deleted obsolete correlator.h and migrated all tracking in order to use the newer and optimized cpu_multicorrelator. Code simplification and code cleaning 2016-04-06 14:57:44 +02:00
Carles Fernandez
970ba3feb8 fix typo 2016-04-03 09:42:39 +02:00
Carles Fernandez
3d733a5140 initializing all members in the constructor 2016-03-31 00:27:33 +02:00
Carles Fernandez
60cc057eb6 Fix defects detected by Coverity scan 2016-03-30 23:49:53 +02:00
Carles Fernandez
806fdcdade code cleaning 2016-03-30 22:28:13 +02:00
Carles Fernandez
4f3273f296 code cleaning, removing tabs 2016-03-30 22:27:12 +02:00
Carles Fernandez
70a2c5837c code cleaning 2016-03-30 21:09:38 +02:00
Javier Arribas
b2034896e1 Merge branch next_gps_20ms_corr with next. Removing obsolete code and code cleaning 2016-03-30 15:03:25 +02:00
Javier Arribas
d15066fda6 Bug fix in Hybrid PVT date/time computation. Removed the obsolete GPS L1 Optim tracking block 2016-03-29 18:40:00 +02:00
Javier Arribas
500dc59516 Release candidate of the GPS L1 C/A telemetry decoder supporting variable tracking correlation length 2016-03-22 18:07:12 +01:00
Carles Fernandez
1703be7612 Removing optim_tracking 2016-03-18 20:28:27 +01:00
Javier Arribas
083350bd61 Refactoring of GPS L1 CA telemetry decoder. PVT is not yet fully tested 2016-03-18 17:36:29 +01:00
Javier Arribas
840bb1b9a3 Work on the telemetry decoder to support the variable-length correlator in GPS L1 CA tracking 2016-03-17 18:54:41 +01:00
Javier Arribas
2f61ad7c64 Added configuration option to customize the extension of the GPS L1 CA correlation length after bit synchronization (options are: [1,2,4,5,10,20] ms). Increasing resolution in CN0 estimator internal variables. 2016-03-16 17:32:20 +01:00
Javier Arribas
6c2f3d8f43 Bug fixes in GPS CA L1 20 extended correlator 2016-03-15 17:58:58 +01:00
Carles Fernandez
754e4436ee Revert "Experimental extended correlation for GPS L1 CA C_Aid tracking"
This reverts commit d664dc63b3.
2016-03-15 10:01:08 +01:00
Javier Arribas
6e076e8143 Fixing bugs in extended correlator for GPS L1 2016-03-11 18:32:56 +01:00
Carles Fernandez
1e9a9d1a55 reverting wrong commit 2016-03-09 15:56:07 +01:00
Javier Arribas
14e109983a Added confguration option to set DLL and PLL bandwidth for 20 ms
extended correlation in C_Aid GPS L1 CA tracking (dll_bw_narrow_hz and
pll_bw_narrow_hz)
2016-03-09 15:29:00 +01:00
Javier Arribas
d664dc63b3 Experimental extended correlation for GPS L1 CA C_Aid tracking 2016-03-08 18:30:56 +01:00
Javier Arribas
36c8db4143 Code cleaning and removing deprecated tracking modules 2016-03-01 16:45:46 +01:00
Javier Arribas
1bafa1e447 Migration of Galileo E1 DLL PLL VEML tracking to use the optimized
cpu_multicorrelator class
2016-02-26 11:14:45 +01:00
Javier Arribas
5a716840ab tracking dll pll cAid can work now with gr_complex and cshort just
setting the data imput type in config file. All the internal receiver
signal chain can work in complex short for the first time. Speed
improvement using custom gnss-sdr volk kernels for cshort data input
types.
2016-01-19 18:37:30 +01:00
Carles Fernandez
601dc7a85c Merge branch 'new_next' of git://github.com/Arribas/gnss-sdr into
new_volk_module
2016-01-12 20:57:06 +01:00
Carles Fernandez
24909510e7 Updating volk_gnsssdr to the new volk scheme 2016-01-12 20:15:16 +01:00
Javier Arribas
5ba12c6fdb Added 16 bits short int complex ultra-fast resampler,
carrier wipe-off and correlator kernels (250% faster than
gr_complex) enabled in tracking GPS_L1_CA_DLL_PLL_C_Aid_Tracking_16sc
tracking
2016-01-11 16:49:37 +01:00
Carles Fernandez
2697fb6198 Cleaning includes 2016-01-10 22:21:31 +01:00
Carles Fernandez
1c3a9f98ee cleaning includes 2016-01-04 23:52:21 +01:00
Carles Fernandez
d0ac06d71d Cleaning includes 2016-01-04 22:56:52 +01:00
Carles Fernandez
972c86c1ea cleaning the use of includes 2016-01-04 18:06:54 +01:00
Javier Arribas
847716428e Updated GPU tracking implementation. Bug fixed in cuda correlator and
performance improvements
2015-12-11 13:53:43 +01:00
Javier Arribas
9bcea5b9cb Merge branch 'next-gnss-sdr' into new_next
Conflicts:
	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_gpu_cc.cc
2015-12-10 13:07:33 +01:00
Carles Fernandez
7b0285ba60 initializing members (defects detected by coverity scan) 2015-12-02 23:44:07 +01:00
Javier Arribas
424e7abe68 Migrating cuda tracking internal DLL/PLL vars from float to double 2015-12-02 19:00:29 +01:00
Carles Fernandez
45195917c1 fixing some gnuradio-related warnings reported by gcc, so others can be spotted easier 2015-12-02 18:25:06 +01:00
Carles Fernandez
3a56e09772 fixes from wrong merge 2015-11-30 14:39:29 +01:00
Carles Fernandez
6f87e3fc17 fixing some compilation errors 2015-11-30 14:16:41 +01:00
Carles Fernandez
23ce240483 Merge branch 'carrier_phase_bug_fix' of
git+ssh://github.com/gnss-sdr/gnss-sdr into odrisci-contrib

# Conflicts:
#	conf/gnss-sdr_Hybrid_byte_sim.conf
#	src/algorithms/observables/gnuradio_blocks/gps_l1_ca_observables_cc.cc
#	src/algorithms/telemetry_decoder/gnuradio_blocks/gps_l1_ca_telemetry_decoder_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/galileo_e1_dll_pll_veml_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/galileo_e5a_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/galileo_volk_e1_dll_pll_veml_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_c_aid_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_optim_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_gpu_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l2_m_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/libs/cpu_multicorrelator.cc
#	src/algorithms/tracking/libs/cpu_multicorrelator.h
#	src/algorithms/tracking/libs/cuda_multicorrelator.h
#	src/algorithms/tracking/libs/tracking_discriminators.cc
#	src/core/receiver/gnss_block_factory.cc
#	src/core/system_parameters/GPS_L1_CA.h
2015-11-30 13:59:31 +01:00
Javier Arribas
8c22e5846d Carrier phase observable bug fix for GPS L1 CA trackings, new GPS L1 carrier aided tracking using nex multitap correlator library, and some CUDA multitap correlator performance improvements 2015-11-30 11:43:37 +01:00
Carles Fernandez
0450e174a6 fixing wrong merge 2015-11-30 10:46:07 +01:00
Carles Fernandez
74d42250d8 Merge branch 'contrib' of https://github.com/odrisci/gnss-sdr into
odrisci-contrib

# Conflicts:
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/libs/tracking_discriminators.cc
2015-11-30 10:18:09 +01:00
Carles Fernandez
e6cf773a2b removing tabs and tailing whitespaces 2015-11-27 17:37:21 +01:00
Carles Fernandez
bfbea68c8f Merge branch 'next' of git://github.com/Arribas/gnss-sdr into
tracking_arribas

# Conflicts:
#	src/algorithms/tracking/gnuradio_blocks/CMakeLists.txt
#	src/core/receiver/gnss_block_factory.cc
2015-11-27 14:53:33 +01:00
Carles Fernandez
2a6381c6fa Merging branch 'next' of git://github.com/Arribas/gnss-sdr 2015-11-27 13:32:21 +01:00
Javier Arribas
38e8feefa8 Name change in new DLL PLL algorithm implementation. We introduce DLL
PLL Carrier Aided Tracking.
2015-11-27 12:53:27 +01:00
Javier Arribas
c8f7e08127 Updated all GPS and Galileo trackings for double floating point internal
computations and bug fixes in the carrier phase accumulator.
(all, except Matlab-Simulink linked trackings)
2015-11-26 18:44:04 +01:00
Cillian O'Driscoll
518deb501a Added IF handling to acq and tracking
Only GPS L1 CA DLL PLL tracking for now. Still experimental.
2015-11-26 15:12:26 +00:00
Javier Arribas
aed688f3b4 DLL/PLL and phase accumulator bug correction and verification almost
done. Still some outliers detected in PPP using RTKLIB but the
positioning performande is good.
2015-11-25 18:32:32 +01:00
Javier Arribas
15c4882af9 Linear regressor implemented in observables 2015-11-24 13:37:01 +01:00
Javier Arribas
411c8cedb0 experimental interpolator in observables 2015-11-23 23:05:52 +01:00
Javier Arribas
6b340696ed Code cleaning and new cpu multicorrelator library 2015-11-17 19:14:55 +01:00
Javier Arribas
27588fa83b Artemisa tracking is almost working. Code cleaning, refactoring and renaming is in progress! 2015-11-16 19:23:25 +01:00
Javier
c2e254debc New DLL PLL Artemisa tracking block skeleton. Not usable yet! 2015-11-15 22:26:42 +01:00
Javier Arribas
2039e998ff Pinned memory (Zero copy) huge improvement for GPU tracking. 2015-10-15 19:09:09 +02:00
Javier Arribas
a4655e2b03 Merged with github next 2015-10-08 14:37:51 +02:00
Carles Fernandez
a84b4baef0 Removing cudahelpers library and usage by a copyright issue. It does not
affect functionality.
2015-09-10 17:46:38 +02:00
Javier Arribas
6aef3478cf Removed CheckCudaErrors function and the cuda helpers dependencies in
CUDA accelerators
2015-09-10 15:15:01 +02:00
Carles Fernandez
0821216970 Moving cudahelpers headers so other blocks can use it more easily. 2015-08-25 20:49:37 +02:00
Carles Fernandez
ef136e5c74 Some CUDA cleaning and documentation 2015-08-25 19:01:02 +02:00
Carles Fernandez
429e4e8776 Fixing compilation when CUDA is not present 2015-08-25 17:07:36 +02:00
Javier Arribas
1aa84cd1c4 Updated CUDA kernels and several GPU tracking optimizations.
Bug fix in GPS_L1_CA_DLL_PLL binary dump
2015-08-06 17:05:15 +02:00
Javier Arribas
26cf90cdd4 First working version of the GPU GPS tracking block (it requires NVIDIA
CUDA
3.0 GPU hardware)
2015-07-24 17:21:25 +02:00
Javier Arribas
f722f5f8f7 Added GPU tracking block for GPS L1 CA. Not activable yet... 2015-07-23 18:07:52 +02:00
Javier
69a76990fc Adding Galileo E5 CN0 tracking debug print on std::cout
Adding more configuration sample files:

- GPS L1 + GPS L2CM realtime tracking for Flexiband
frontend
- GPS L1 + GPS L2CM + Galileo E1 realtime tracking for Flexiband
frontend
- GPS L2CM realtime tracking on USRP1 (requieres stable sample clock)
2015-06-22 16:12:53 +02:00
Javier
df48bf7342 - Small adjustments in GPS L2M tracking lock detector static thresholds.
- Added sample configuration file for dual frequency GPS L1 + L2
realtime operation for Teleorbit Flexiband Frontends (requires a
external hardware driver installed)
2015-06-16 17:16:20 +02:00
Javier
26a6bbd37a bug found in PRN resampler code. Disabled optimization 2015-06-12 19:28:56 +02:00
Javier
adf73e0610 Work in progress for GPS L2C support:
- Patched GPS L2CM tracking pull-in code.
- Workaround for ViterbiDecoder bug
2015-06-12 15:49:25 +02:00
Javier
b8d3f293f1 GPS L2C bug fixes. Added skeleton for a Mixed (multi-frequency and
multi-system) observables block.
2015-06-05 18:46:00 +02:00
Carles Fernandez
0b34eee48c initialize members in the constructor 2015-05-24 11:15:27 +02:00
Carles Fernandez
3a98f0765e initialize variable 2015-05-22 20:25:23 +02:00
Carles Fernandez
4ca6e5b749 Initializing member in the constructor 2015-05-22 20:17:37 +02:00
Carles Fernandez
4d34af4f40 initializing member in the constructor 2015-05-22 20:14:25 +02:00
Javier
61c7ab8eed Added GPS L2 Ephemeris and Clock parameters CNAV frame bit structure
definitions
2015-05-20 18:24:53 +02:00
Carles Fernandez
64a81d8c48 initializing members in the constructor 2015-05-19 22:45:16 +02:00
Carles Fernandez
ed06936992 Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2015-05-19 07:58:23 +02:00
Carles Fernandez
7dcffd3401 Initializing class members in the constructor 2015-05-17 11:02:27 +02:00
Javier
c23654f7a2 Updates in the GPS L2C CNAV telemetry decoder. Migrating code from SBAS
decoder. Viterbi is working now and CRC check detects good frames. Still
work to do.
2015-05-14 18:53:12 +02:00
Carles Fernandez
d1a1815083 fixing coverity issues 2015-05-13 16:40:46 +02:00
Javier
37a346f3f6 Merge branch 'next' into arribas_next
Conflicts:
	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_cc.cc
2015-05-06 16:49:11 +02:00
Javier
d8d5daa5d8 GPS L2C M acquisition and tracking ready. Old configuration file format.
Bug fix on GPS L1 DLL PLL that prevented the output of gnss_synchro
during the acqusition to tracking transition.
2015-05-06 16:33:51 +02:00
Javier
4c5efd1e8b GPS L1 C/A + GPS L2C M dual frequency offline acquisition and tracking
READY. Issues on PRN numbering are being investigated...
2015-05-05 18:30:57 +02:00
Carles Fernandez
e354b1ce53 less verbose logging in Release 2015-05-04 22:16:26 +02:00
Carles Fernandez
c9300c45a0 adding missing include 2015-05-03 13:17:21 +02:00
Carles Fernandez
1011bb0863 Faster local carrier update (25% of improvement) 2015-05-03 13:15:17 +02:00
Carles Fernandez
caa10a583f adding missing include 2015-05-03 12:35:37 +02:00
Carles Fernandez
09e86c2750 faster update 2015-05-03 12:33:51 +02:00
Javier
60b7fe8e08 Added GPS L2M Tracking and its unit test. Still experimental! 2015-04-30 17:48:21 +02:00
Anthony Arnold
9ecf17a602 Link dependencies 2015-04-30 17:18:15 +10:00
Carles Fernandez
6cf4b35988 All the tracking blocks set valid pseudoranges to false 2015-03-04 10:47:54 +01:00
Carles Fernandez
6620e7d43c Updating copyright year 2015-01-08 19:49:59 +01:00
Carles Fernandez
5fb0183267 Fix compilation error if volk_gnsssdr was already installed 2014-12-24 11:51:30 +01:00
Carles Fernandez
d1d1d9e36f add volk_gnsssdr_module target dependency 2014-12-23 22:42:39 +01:00
Carles Fernandez
3c89c1c5f6 Making it work for Xcode, credits to Andres Cecilia 2014-11-17 20:42:50 +01:00
Carles Fernandez
87adf631e0 some fixes 2014-11-07 18:25:35 +01:00
andres
db738c7ea9 Added cmake version check. Deleted original volk
Added cmake version checks.
Deleted original volk protokernels.
Fixes.
2014-10-27 05:19:26 +01:00
andres
61f6e125ea Updated GALILEO_VOLK_E1_DLL_PLL_VEML_TRACKING 2014-10-18 04:40:23 +02:00
andres
5a498207c4 Merge branch 'volk_tracking_performance' into volk_merge_with_next 2014-10-18 02:42:01 +02:00
andres
0f7c23bd7e Commenting the code 2014-10-17 02:56:15 +02:00
andres
2fefe9f21c Created individual gnurdio tracking block for volk
Created individual gnuradio tracking block for volk:
galileo_volk_e1_dll_pll_veml_tracking_cc

the galileo_volk_e1_dll_pll_veml_tracking_cc gnuradio block is now the
original one.
2014-10-17 02:24:54 +02:00
andres
8badd81dbe Added AVX to s32f_x2_update_local_carrier_32fc 2014-10-17 01:56:13 +02:00
Andrés Cecilia Luque
313cb1c544 volk_gnsssdr_s32f_x2_update_local_carrier_32fc
Added new protokernel volk_gnsssdr_s32f_x2_update_local_carrier_32fc,
with volk implementation 4x quicker than generic implementation.
2014-10-03 01:30:04 +02:00
Andrés Cecilia Luque
da4288d502 Added 32fc_s32f_x4_update_local_code_32fc kernel
Added a new protokernel to substitute update_local_code function,
inside tracking: volk_gnsssdr_32fc_s32f_x4_update_local_code_32fc
Volk implementation is 7x times faster than generic implementation.
2014-10-01 13:39:07 +02:00
Andrés Cecilia Luque
b2dab27cdb Modified tracking in order to test the protokernel
Modified tracking in order to test the new 8 bits protokernels’
performance.
2014-09-27 01:44:49 +02:00
Andrés Cecilia Luque
6aa338e582 Fixed the name of some protokernels 2014-09-26 22:34:02 +02:00
Andrés Cecilia Luque
c55be47565 Created macros for 8ic_cw_epl_corr_32fc
Created macros for 8ic_cw_epl_corr_32fc proto-kernels
2014-09-22 18:18:20 +02:00
Andrés Cecilia Luque
d71ae159dc Modified galileo_e1_dll_pll_veml_tracking_cc
Modified galileo_e1_dll_pll_veml_tracking_cc for testing the new volk
tracking-specific protokernels
2014-09-22 14:56:17 +02:00
Anthony Arnold
77b635e8c0 Merge with next 2014-09-18 02:10:56 +10:00
Anthony Arnold
4c2b0fbc45 Testing for ARM and SSE to compile for armhf 2014-09-18 00:50:44 +10:00
Carles Fernandez
60fea64b5e Code cleaning 2014-09-14 18:53:51 +02:00
Carles Fernandez
478d22f973 Changing C-styled cast by C++ style 2014-09-12 20:31:42 +02:00
Carles Fernandez
bb62dae014 Changing C-styled cast by C++ static_cast<>() 2014-09-12 13:34:43 +02:00
Carles Fernandez
35f9f30441 Some fixes and code cleaning 2014-09-12 10:56:04 +02:00
Carles Fernandez
59c503d38a Some fixes 2014-09-10 03:49:58 +02:00
Carles Fernandez
9106f147ef Better VOLK usage. Memory alignment, using dispatcher instead of
aligned/unaligned versions. Code cleaning.
2014-09-10 03:15:01 +02:00
Carles Fernandez
fd6a8e3cff Better VOLK usage. Memory alignment, calling dispatchers instead of
aligned/unaligned versions. Code cleaning.
2014-09-10 00:23:18 +02:00
Andrés Cecilia Luque
d205d5640d Modifications to use volk_gnsssdr in tracking 2014-09-08 01:56:34 +02:00
Carles Fernandez
1183c73b09 Merge branch 'next' of ssh://carlesfernandez@git.code.sf.net/p/gnss-sdr/cttc into next 2014-09-07 19:51:36 +02:00
Carles Fernandez
322550e0c6 Adding an option to build the binary without detecting the SIMD
instruction set present in the compiling machine, so it can be executed
in other machines without those specific sets.
2014-09-07 19:35:41 +02:00
Javier Arribas
072d0cad67 Important bug found and fixed:
Volk memory alignement for signal vectors was using a hardcoded 16 bytes
value. This parameter is machine-dependant and thus, in modern machines
caused memory exceptions if the parameter not match.

All posix_memalign functions are now replaced by the GNU Radio
volk_malloc(vector_size (bytes), volk_get_alignement());

volk_get_alignement() returns the number of bytes to align the memory
blocks in the current processor.

The memory bug showed up when the receiver is configured with higher
sample rates (>4 Msps!)
2014-09-07 19:11:37 +02:00
Carles Fernandez
dfd9be34a9 Merge branch 'galileo_e5a' of https://github.com/marc-sales/gnss-sdr
into next

Conflicts:
	src/core/receiver/gnss_block_factory.cc
	src/core/receiver/gnss_flowgraph.cc
2014-09-05 18:51:08 +02:00
Carles Fernandez
bcd90ca9cf Removing unused code that could prevent binaries to run on machines
where the set of SIMD instructions is not the same than the machine that
compiled them.
2014-09-04 19:33:17 +02:00
Javier Arribas
54147b519a Merge remote-tracking branch 'origin/next' into gps_galileo_hybrid
Conflicts:
	src/algorithms/PVT/libs/kml_printer.h
	src/algorithms/telemetry_decoder/gnuradio_blocks/galileo_e1b_telemetry_decoder_cc.cc
2014-09-01 22:57:40 +02:00
Carles Fernandez
ad5fd36719 Adding Galileo-GPS system time parameters. Fixes in tracking 2014-08-31 13:21:41 +02:00
Javier Arribas
32a66b8a41 Merge remote-tracking branch 'origin/next' into gps_galileo_hybrid 2014-08-28 15:47:04 +02:00
marc-sales
1d3d40cefd final version 2014-08-20 10:59:47 +02:00
marc-sales
3b3c809dab Unified acquisition 2014-08-05 02:01:37 +02:00
Javier Arribas
cefd2de5af Merge remote-tracking branch 'origin/next' into gps_galileo_hybrid 2014-07-20 16:53:52 +02:00
Carles Fernandez
6967fc833e Fixes rounding errors in frequency to period conversion that were
causing tracking losses. Bug spotted by Marc Sales.
2014-07-19 19:29:27 +02:00
marc-sales
7d6ec42f24 coherent 2or3 ms adding noncoherently I+Q acquisition,
dll+pll tracking still diverges
2014-07-07 21:06:26 +02:00
Javier Arribas
abe9ca9450 Hybrid PVT working!! It was a problem with the timestamp account in the
correlators due to the differences in the correlation time (PRN length).
Only corrected on GPS_DLL_PLL and Galileo veml correlator.
2014-06-30 17:48:01 +02:00
Carles Fernandez
8531a758ea Includes header files at add_libraries(...), which makes IDEs such as
Xcode to display them
2014-06-28 03:55:57 +02:00
marc-sales
841ae59d6a Added two acquisition strategies. Flowgraph is changed to produce
default signal when doing sky search.
2014-06-26 00:11:44 +02:00
marc-sales
4b5526ec7e E5a Dll/Pll tracking + tracking test + Secondary code delay generator
+ PCPS acquisition of 1ms code 1ms filled with zeros (to avoid sec code
ambiguity)
2014-06-20 18:23:44 +02:00
Javier Arribas
b0d33328d5 Simultaneous multi-GNSS system acquisition, tracking and telemetry
decoding: Changes in the flowgraph and in the configuration files to mix
channels from different GNSS systems in the same receiver. Hybrid
observables and PVT under construction.

The changes in the configuration file parameter names are NOT backward
compatible. The receiver can still work as usual in single GNSS system
mode but some modification on configuration files are required. Use the
example provided of Hybrid configuration file.
2014-06-10 18:58:17 +02:00
marc-sales
8c1adf8aad small changes, just for backup 2014-06-05 12:00:24 +02:00
marc-sales
9b5c055bfd Tracking adapted blocks + Telemetry decoder 2014-06-01 13:22:26 +02:00
Carles Fernandez
7db1180d0a Fix wrong casting (thanks to Leonardo Tonetto for spotting this error) 2014-04-23 21:51:46 +02:00
Carles Fernandez
312ddfbce3 Applying patch by Leonardo Tonetto <tonetto.dev at gmail.com> fixing
wrong casting.
2014-04-23 21:36:22 +02:00
Javier Arribas
885c5f364c Small bug fix and new configuration file ready to receive GPS signals in real-time with USRP devices and appropiate front-ends. Remember to tune the front-end gain (source section in config file) and, in some particular antenna and LNA setups, tune also the acquisition threshold (acquisition section). The configuration is tested on USRP v1 + DBSRX, USRP 2 + DBSRX and USRP B100 + WBX.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@491 64b25241-fba3-4117-9849-534c7e92360d
2014-03-17 19:41:14 +00:00
Carles Fernandez
39f8754217 Cleaning the terminal output and dumping most of the information in the log file. Better use of the glog library, logging can be seen also in Release, in real time by doing './gnss-sdr --logtostderr=1'. Update to latest version of Armadillo.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@486 64b25241-fba3-4117-9849-534c7e92360d
2014-03-16 19:58:29 +00:00
Carles Fernandez
05accfb1d7 Tidying up includes: : C library, C++ library, other libraries' .h, project's .h.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@476 64b25241-fba3-4117-9849-534c7e92360d
2014-01-12 20:07:38 +00:00
Carles Fernandez
004495507d Fixing detection of GNU Radio when installed in non-usual locations (e.g. /home/user/target). Now the user can tell cmake where GNU Radio is by 'cmake ../ -DGNURADIO_INSTALL_PREFIX=/home/user/target'
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@462 64b25241-fba3-4117-9849-534c7e92360d
2013-12-14 10:23:33 +00:00
Carles Fernandez
abd02e34a8 Code cleaning and improving documentation
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@455 64b25241-fba3-4117-9849-534c7e92360d
2013-11-29 08:38:22 +00:00
Javier Arribas
87c5c212a4 FIRST GALILEO STANDALONE PVT FIX!!
- Bug fixes at Galileo telemetry decoder state machine
- Bug fixes at Galileo Ephemeris decoder (two complement's data interpreted as unsigned, mismatch at the LSB weights)

Galileo KML output is avalable!!

Galileo RINEX is still under construction

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@433 64b25241-fba3-4117-9849-534c7e92360d
2013-11-06 20:14:40 +00:00
Javier Arribas
83a9d41b05 Progress in Galileo E1:
Bug fix in galileo tracking
Several improvements in Galileo telemetry decoder.
Code cleaning in observables
Galileo PVT is able to decode Galileo time and get satellite ECEF positions

Galileo PVT soluton is still under development


git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@432 64b25241-fba3-4117-9849-534c7e92360d
2013-10-30 18:08:25 +00:00
Javier Arribas
4d66f6c6ab - Galileo channels now supports all the published PRN IDs in acquisition and tracking
- Changes in Galileo telemetry decoding (still under construction)
- Bug correction in tracking blocks that could cause random segmentation faults on some configurations

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@431 64b25241-fba3-4117-9849-534c7e92360d
2013-10-25 16:07:24 +00:00
Carles Fernandez
10318d6b7d Patch submitted by Daniel Fehr: Enabling EGNOS tracking and minor bugfixes
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@392 64b25241-fba3-4117-9849-534c7e92360d
2013-07-20 07:58:59 +00:00
Carles Fernandez
5ef7ca03b0 some small changes required by Pybombs
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@380 64b25241-fba3-4117-9849-534c7e92360d
2013-07-06 11:34:44 +00:00
Javier Arribas
58b280afb6 Switch to GNU Radio 3.7.x API
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@368 64b25241-fba3-4117-9849-534c7e92360d
2013-07-04 13:47:40 +00:00
Javier Arribas
e728450192 New feature (FE01): RINEX v 2.11 now outputs the following observables:
PSEUDORANGE
CARRIER PHASE
CARRIER DOPPLER
SIGNAL STRENGTH (dB-Hz)

thus, it enables the realtime kinematics and PPP positioning for first time in an open source GNSS SDR. Enjoy!

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@359 64b25241-fba3-4117-9849-534c7e92360d
2013-05-24 16:11:48 +00:00
Javier Arribas
cfeae47a29 Acquisition assistance is now working!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@353 64b25241-fba3-4117-9849-534c7e92360d
2013-04-02 14:02:55 +00:00
Javier Arribas
12003ffa94 GNSS-SDR now uses CMAKE as the only build system. Goodbye BJAM!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@347 64b25241-fba3-4117-9849-534c7e92360d
2013-03-15 18:03:01 +00:00
Carles Fernandez
ae1cb212de improving documentation
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@335 64b25241-fba3-4117-9849-534c7e92360d
2013-01-28 23:50:09 +00:00
Carles Fernandez
00a8007dc3 Adding Mac OS X support. Tested in Mountain Lion.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@333 64b25241-fba3-4117-9849-534c7e92360d
2013-01-27 20:50:38 +00:00
Carles Fernandez
c6e974ab21 Starting CMake support. In the root directory of gnss-sdr, type:
$ mkdir build && cd build && cmake ../ && make && make install

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@290 64b25241-fba3-4117-9849-534c7e92360d
2012-12-24 02:33:50 +00:00
Javier Arribas
080305cee8 New ultra-fast All-In-One Carrier wipe-off and Early-Prompt-Late correlator using Intel AVX SSE3 intrinsics.
Try it using the GPS_L1_CA_DLL_PLL_Optim_Tracking implementatioin for tracking operation!




git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@283 64b25241-fba3-4117-9849-534c7e92360d
2012-11-25 19:37:31 +00:00
Carles Fernandez
818d9e14b5 Start migration to GNU Radio 3.7 new C++ API. This commit replaces some components of gnuradio-core by the new components gr-blocks, gr-fft and gr-filter.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@282 64b25241-fba3-4117-9849-534c7e92360d
2012-11-25 11:15:11 +00:00
Javier Arribas
0760fa0f3e - New NCO library for carrier signal generation: Provides a fixed point optimized wrapper for GNU Radio fxp CORDIC and SSE2 floating point implementation ( sse_mathfunc.h implementation). The library is available as nco_lib.h
- Updated Unit Test to benchmark all the current NCO implementations (./run_tests --gtest_filter=Cordic_Test.StandardCIsFasterThanCordic)

-Gps_L1_Ca_Dll_Pll_Optim_Tracking algorithm updated with new NCO library for carrier wipeoff and some other optimizations.



git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@281 64b25241-fba3-4117-9849-534c7e92360d
2012-11-22 17:43:24 +00:00
Javier Arribas
54df5928ab GPS DLL PLL Tracking code rearrange to match the Galileo DLL PLL algorithm and code cleaning.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@280 64b25241-fba3-4117-9849-534c7e92360d
2012-11-18 18:20:34 +00:00
Javier Arribas
b86d611314 TCP connector for Galileo tracking improved. Code cleaning in Galileo tracking
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@259 64b25241-fba3-4117-9849-534c7e92360d
2012-10-27 11:50:35 +00:00
Javier Arribas
d85f65ed4c Galileo E1b/c tracking improvement and code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@255 64b25241-fba3-4117-9849-534c7e92360d
2012-10-24 08:02:51 +00:00
Carles Fernandez
1aea9db69f Changed the "CN_estimators" library name by the more informative "lock_detectors". The CN0 estimators for GPS L1 C/A and Galileo E1 have been unified
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@254 64b25241-fba3-4117-9849-534c7e92360d
2012-10-21 09:54:37 +00:00
Javier Arribas
3628453c52 - Bug in carrier lock detector algorithm corrected
- Code cleaning and DLL/PLL variable renaming in galileo_e1_dll_pll_veml tracking

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@253 64b25241-fba3-4117-9849-534c7e92360d
2012-10-20 16:11:31 +00:00
David Pubill
c241b7b1d6 - Added TCP connector for Galileo E1 simulink tracking
- Added simulink-based Galileo_E1_DLL_PLL_VEML_Tracking

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@250 64b25241-fba3-4117-9849-534c7e92360d
2012-10-19 13:38:25 +00:00
Javier Arribas
a25e712be6 Bug correction for acquisition and tracking: acquisition Doppler sign were inverted and this issue caused several wrong interpretations in tracking algorithms, resulting in a swap in I/Q components. Now the bug was corrected in all tracking algorithms.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@249 64b25241-fba3-4117-9849-534c7e92360d
2012-10-18 10:24:41 +00:00
Carles Fernandez
5b5f165d7b Some comments added, code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@246 64b25241-fba3-4117-9849-534c7e92360d
2012-10-16 23:02:02 +00:00
Luis Esteve
f0a0f94007 Added documentation to the code
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@245 64b25241-fba3-4117-9849-534c7e92360d
2012-09-12 15:03:38 +00:00
Javier Arribas
02ab6ce7d7 New GPS L1 CA tracking module GpsL1CaDllPllOptimTracking optimized for speed:
- The local code replica is pre-initialized and resampled to the nominal PRN code sample rate (no code Doppler correction)

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@242 64b25241-fba3-4117-9849-534c7e92360d
2012-09-04 15:57:30 +00:00
Luis Esteve
45d7220dae First version of Galileo E1 DLL PLL Very Early Minus Late Tracking. Added some functions in Matlab to analyze the results.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@234 64b25241-fba3-4117-9849-534c7e92360d
2012-08-28 13:38:33 +00:00
Javier Arribas
690d7c66e7 About 40% of tracking speed improvement by extending the early local code replica and using memcpy to generate prompt and late replicas.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@219 64b25241-fba3-4117-9849-534c7e92360d
2012-07-31 15:10:20 +00:00
Javier Arribas
fb82c2246d Correlator class now takes profit of the GNU Radio memory alignment, used by Volk SIMD functions
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@218 64b25241-fba3-4117-9849-534c7e92360d
2012-07-31 12:35:07 +00:00
Luis Esteve
c9a06f702a Major update:
1) Galileo E1 Acquisition adapter block added (Gnuradio block modification to use the same block with the 2 systems with 2 adapters)
2) Tests and signal samples for Galileo E1 Acquisition signal block
3) Library for Galileo E1 signal processing
4) Galileo_E1.h with constant variables for this system

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@209 64b25241-fba3-4117-9849-534c7e92360d
2012-07-12 21:17:37 +00:00
David Pubill
aab40c963d Simulink tracking block updated: generation of the Simulink model from a script MATLAB and improvement of the tracking algorithm (both PLL and DLL). Added multi-threading support for MATLAB.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@208 64b25241-fba3-4117-9849-534c7e92360d
2012-07-03 12:52:12 +00:00
Javier Arribas
d467874a40 Bug correction in tracking lock detector threshold comparison algorithm.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@196 64b25241-fba3-4117-9849-534c7e92360d
2012-04-19 18:18:53 +00:00
Javier Arribas
9d34147e0f Major update to improve the GNSS-SDR pseudorange precision and correct some PVT bugs:
- Updated all available trackings to generate the tracking_timestamp_secs taking into account the remainder code phase.
- Updated the telemetry decoder to track the number of symbol shifted from the preamble start symbol (to be used in observables).
- Updated observables to align the reference channel symbol with the corresponding symbols in the other channels and compute pseudorranges using the common transmission time algorithm.
- Updated PVT to independize the display output rate from the RINEX and KML log files. New options available in config file!
- Some minor improvements and code cleaning.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@193 64b25241-fba3-4117-9849-534c7e92360d
2012-04-11 10:43:35 +00:00
David Pubill
984b782660 Added a new tracking algorithm that uses TCP sockets to move the work of a processing block to a remote machine executing MATLAB Simulink.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@185 64b25241-fba3-4117-9849-534c7e92360d
2012-03-16 10:55:58 +00:00
Luis Esteve
c428fe21c5 Changes in flowgraph and channel_fsm. Now the number of channels in acquisition mode can be controlled from the config file.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@179 64b25241-fba3-4117-9849-534c7e92360d
2012-03-02 17:17:51 +00:00
Javier Arribas
2406a7772a Updated tracking to use cmath round which is faster than boost::math::round
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@161 64b25241-fba3-4117-9849-534c7e92360d
2012-02-16 17:28:56 +00:00
Javier Arribas
b7bb79a058 Code cleaning: deleted old dependences with Gregory GPS-SDR files
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@160 64b25241-fba3-4117-9849-534c7e92360d
2012-02-16 16:13:45 +00:00
Javier Arribas
0a62725445 - Improved speed for samples inconsistency check in tracking modules, and
- Added a total elapsed run time counter in main: now it is possible to compare the post-processing time with the signal duration. The elapsed time is reported in STD::COUT when GNSS-SDR finish the main thread.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@156 64b25241-fba3-4117-9849-534c7e92360d
2012-02-08 19:50:16 +00:00
Carles Fernandez
9625070ea9 Pretty-printing of satellites is back again
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@150 64b25241-fba3-4117-9849-534c7e92360d
2012-01-30 23:14:57 +00:00
Javier Arribas
9f3fbeb52d Code cleaning and few optimizations in tracking modules.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@148 64b25241-fba3-4117-9849-534c7e92360d
2012-01-29 18:03:56 +00:00
Javier Arribas
dd01b83bc3 GNSS SDR now uses the unified Gnss_Synchro class to exchange signal synchronization data between Acquisition, Tracking and Telemetry decoder blocks.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@147 64b25241-fba3-4117-9849-534c7e92360d
2012-01-27 18:01:17 +00:00
Carles Fernandez
0d598a7188 Added implementation of plain cordic class in tracking/libs. Added a corresponding test. The implementation is slower than standard sin and cos implementations, so it is not used in the receiver. The test will fail otherwise, indicating that this should be used instead of standard functions.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@142 64b25241-fba3-4117-9849-534c7e92360d
2012-01-25 01:57:28 +00:00
Carles Fernandez
3bff16b5d1 Code cleaning.
Test infrastructure reactivated. Now a run_tests executable is created and runs some tests.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@138 64b25241-fba3-4117-9849-534c7e92360d
2012-01-23 00:52:05 +00:00
Carles Fernandez
80af09f91f Acquisition, Tracking and TelemetryDecoder blocks now use Gnss_Satellite class and have access to know what parameters have to use. Algorithms are not system-related anymore.
Some code cleaning and and enhancements in the output screen messages.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@135 64b25241-fba3-4117-9849-534c7e92360d
2012-01-20 23:28:11 +00:00
Javier Arribas
b72802a51f Added experimental SIMD-accelerated correlator for tracking, using GNURadio volk libraries.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@134 64b25241-fba3-4117-9849-534c7e92360d
2012-01-20 16:37:16 +00:00
Carles Fernandez
305d9f14c1 Class Gnss_Satellite extended to tracking
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@133 64b25241-fba3-4117-9849-534c7e92360d
2012-01-19 19:30:05 +00:00
Carles Fernandez
60da2f4336 Code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@128 64b25241-fba3-4117-9849-534c7e92360d
2012-01-16 18:27:31 +00:00
Carles Fernandez
276f7dd2dc cleaning code
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@127 64b25241-fba3-4117-9849-534c7e92360d
2012-01-13 01:28:42 +00:00
Carles Fernandez
82c17438b5 code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@126 64b25241-fba3-4117-9849-534c7e92360d
2012-01-13 01:06:28 +00:00
Carles Fernandez
32690a7d59 Tracking Classes are now upper case.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@125 64b25241-fba3-4117-9849-534c7e92360d
2012-01-13 00:49:24 +00:00
Carles Fernandez
bc62d8d5be Some code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@120 64b25241-fba3-4117-9849-534c7e92360d
2012-01-11 09:01:24 +00:00
Carles Fernandez
8738498691 Added a method in gps_navigation message that computes UTC time.
Experimental creation of RINEX headers.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@112 64b25241-fba3-4117-9849-534c7e92360d
2012-01-07 05:21:11 +00:00
Carles Fernandez
fc4d8cc7bf Recovering compatibility with the Boost version that comes with Ubuntu 10.10.
boost::filesystem::temp_directory_path() is only available from Boost 1.45, while Ubuntu 10.10 comes with Boost 1.42. 

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@104 64b25241-fba3-4117-9849-534c7e92360d
2011-12-28 21:55:11 +00:00
Carles Fernandez
2ce62706af Adding documentation and improving code formatting.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@103 64b25241-fba3-4117-9849-534c7e92360d
2011-12-28 21:36:45 +00:00
Carles Fernandez
48719c3075 Improving documentation
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@102 64b25241-fba3-4117-9849-534c7e92360d
2011-12-28 03:05:37 +00:00
Carles Fernandez
7aa58ef590 Fixing the round problem
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@96 64b25241-fba3-4117-9849-534c7e92360d
2011-12-24 22:45:14 +00:00