1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-07-01 17:33:15 +00:00
Commit Graph

298 Commits

Author SHA1 Message Date
Antonio Ramos
58dd5428a8 debug 2018-02-22 11:39:38 +01:00
Antonio Ramos
9533662a0e Minor change 2018-02-22 11:18:37 +01:00
Antonio Ramos
ca9a551a86 Avoid extrapolation 2018-02-22 11:14:57 +01:00
Antonio Ramos
df5f51ba91 Dump incoming Gnss Synchros in observables 2018-02-21 16:10:03 +01:00
Antonio Ramos
a2eaf403ff Avoid acces to a out of range value 2018-02-21 13:12:45 +01:00
Antonio Ramos
98cde65832 Improved find_closest algorithm in observables 2018-02-21 12:56:44 +01:00
Antonio Ramos
5da7a83eeb Correct interpolation indexes 2018-02-21 11:28:35 +01:00
Antonio Ramos
281687615a Set observables history to 100 ms 2018-02-21 10:59:53 +01:00
Antonio Ramos
c793b47181 Interpolate TOW_at_current_symbol in observables block 2018-02-21 10:41:33 +01:00
Antonio Ramos
cc178495c9 Modify authors 2018-02-20 11:28:34 +01:00
Antonio Ramos
832f828d52 Clean code 2018-02-20 11:17:41 +01:00
Antonio Ramos
3508218307 Check PRN coherency in observables 2018-02-20 10:58:56 +01:00
Antonio Ramos
82084dd867 Minor changes 2018-02-19 17:20:34 +01:00
Antonio Ramos
c3657f3251 Modify hybrid observables 2018-02-19 10:29:12 +01:00
Antonio Ramos
756fd1904e Modify observables algorithm 2018-02-16 18:10:48 +01:00
Antonio Ramos
ab6e62af72 Return WORK_DONE when throwing an exception 2018-02-14 16:24:29 +01:00
Antonio Ramos
28cc4a1a05 Add try-catch block to hybrid observables 2018-02-14 11:56:22 +01:00
Antonio Ramos
8885333aa7 Modify sample counter 2018-02-13 19:22:23 +01:00
Javier Arribas
a5d65f3424 Bug fix: adding exception control to std::map access in observables block 2018-01-23 17:33:06 +01:00
Carles Fernandez
bc92240443 Replace C-style cast by C++ casts 2018-01-17 19:11:42 +01:00
Carles Fernandez
59c153846c Remove blank line 2018-01-17 19:06:39 +01:00
Carles Fernandez
7e97d00a4f Apply project's coding style 2018-01-17 19:02:52 +01:00
Javier Arribas
184bd0d1de A smarter way of handling the multirrate input of observables block 2018-01-10 18:13:46 +01:00
Javier Arribas
81179a9f38 Removing gnuradio output buffer request on observables and disabling the gnss_synchro output for all trackings that are not tracking any satellite. This is a bug fix to avoid gnuradio flowgraph deadlocks when different GNSS integration times are used in satellite channels 2018-01-10 16:26:05 +01:00
Antonio Ramos
d7acf4ecf5 Merge remote-tracking branch 'gnss-sdr/next' into fix_pvt_E5a 2017-11-29 12:13:40 +01:00
Antonio Ramos
140b388066 Modify RTKLIB PVT band selection and Tel. Dec. E5a 2017-11-29 12:00:05 +01:00
Carles Fernandez
59d1067d59 Fix parallel building when MATIO is not present.
Fix building with Ninja

Matio is no longer optional but mandatory
2017-11-26 10:49:42 +01:00
Carles Fernandez
d8c924a2ca Fix warning 2017-11-20 08:22:04 +01:00
Carles Fernandez
f719b4a22a Add .mat storing capability to Observables block 2017-11-19 20:45:52 +01:00
Carles Fernandez
3ad5a99d0a Use const iterators instead of iterators 2017-10-31 07:24:23 +01:00
Carles Fernandez
acfd4cc0c9 Replace C-style casts by C++ casts
Apply code styling
Fix a GCC warning (unused variable)
2017-10-14 12:30:03 +02:00
Carles Fernandez
122ec19626 Make use of the inline keyword where appropriate 2017-08-21 11:45:12 +02:00
Carles Fernandez
07113fd89d Use the override special identifier when overriding a virtual function 2017-08-16 00:58:10 +02:00
Javier Arribas
d4c9d378c9 Adjusting observable block default buffer history 2017-08-03 17:52:42 +02:00
Javier Arribas
1bcbe87676 Fix code style 2017-08-02 14:43:38 +02:00
Javier Arribas
2f1eff026d Fix code style 2017-08-02 14:32:16 +02:00
Javier Arribas
1574e277d7 Temporary bug fix related to the GPS L1 C/A symbol TOW assignation. Position accuracy improvement confirmed. In-deep review is being done 2017-08-01 17:03:31 +02:00
Carles Fernandez
94a4a0fdcf Improve destructors 2017-07-29 00:25:43 +02:00
Javier Arribas
ceef915de7 Improving observables binary dump 2017-07-28 18:24:36 +02:00
Carles Fernandez
9bfef0e05a Fix CMake scripts to use Ninja https://ninja-build.org/
cmake -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -GNinja .. && ninja
2017-06-21 08:54:47 +02:00
Javier Arribas
641b2cd53b Temporary bug fix in observables (fixes some glitches in GPS L1 CA position) 2017-05-16 18:56:05 +02:00
Javier Arribas
7a2a15b37d Adding the path of Galileo E5 observations to RTKLIB solver. Some bug fixes. Work with Galileo in progress 2017-05-12 17:58:04 +02:00
Carles Fernandez
e82799d687 Code indentation 2017-05-11 06:15:06 +02:00
Javier Arribas
9eee209f40 Removing unused code 2017-05-02 15:31:31 +02:00
Carles Fernandez
f4cc6addc6 Re-enable observables system test 2017-04-29 18:23:32 +02:00
Javier Arribas
44f748cb41 Fix the bug fix 2017-04-28 15:38:31 +02:00
Javier Arribas
e26ddf07bc Bug fixes for duplicated observable time 2017-04-27 15:28:30 +02:00
Javier Arribas
ddcf1b1dee New observables generation algorithm that accepts multirate inputs from different GNSS systems 2017-04-27 12:20:24 +02:00
Javier Arribas
807ca24fc2 Refactoring code. Adding new experimental tests and new common TX time observables algorithm 2017-04-12 17:04:51 +02:00
Javier Arribas
e0b0605545 Removing unused code, improving ref satellite selection in observables and partial correction of the gps L2 TOW offset bug 2017-03-30 19:25:46 +02:00
Javier Arribas
73d07b4f1a Code cleaning. Removing unused variables 2017-03-24 16:43:35 +01:00
Javier Arribas
d42696bfd3 Consolidation of all the observables and PVT algorithms in hybrid observables and hybrid PVT supporting multi-signals and multi-system operations 2017-03-24 15:25:17 +01:00
Javier Arribas
b96d1707a9 GPS L2CM telemetry decoder rewrite, borrowed from the Swift navigator open source libraries 2017-03-23 15:45:41 +01:00
Javier Arribas
d6e5c2c329 Improving robustness of the GPS L1 telemetry decoder. This change prevents the random position fix losses due to an incorrect TOW update. Some log mesages cleaning 2017-02-15 10:56:41 +01:00
Carles Fernandez
004d724175 Fix glog usage 2017-02-13 21:57:58 +01:00
Javier Arribas
fc7ff7ba0b Upgrading Galileo PVT and Hybrid PVT chains with the latest bug fixes for GPS 2017-02-03 13:00:50 +01:00
Carles Fernandez
4438ffe916 Code cleaning 2017-01-28 15:31:04 +01:00
Javier Arribas
d2c7bb62a1 Adding Bancroft's algorithm implementation for PVT initialization 2017-01-27 19:21:51 +01:00
Javier Arribas
3da0807044 PVT receiver time feedback to observables to account for the receiver clock offset. Prototype of observables unit test enabled 2017-01-25 17:15:32 +01:00
Carles Fernandez
2e1e7aaec7 Fix doc 2016-11-04 09:26:19 +01:00
Carles Fernandez
e918da7785 Change name of L2C observables block 2016-11-03 19:03:17 +01:00
Carles Fernandez
866bb1537f Add Galileo E5a observables block 2016-11-03 12:18:56 +01:00
Carles Fernandez
779ab48feb Add observables block for GPS L2C 2016-11-03 12:02:25 +01:00
Carles Fernandez
ea8e605fb5 Add work on the hybrid receiver 2016-11-03 00:07:05 +01:00
Carles Fernandez
fe6b2387f4 Add moving average parameter in observables 2016-11-02 17:35:40 +01:00
Carles Fernandez
ce16f25296 Remove unused parameters 2016-08-05 18:47:34 +02:00
Carles Fernandez
5a73b4e047 Improve package reproducibility
Packages using CMake often use file(GLOB ...) to retrieve a list of
source files. As this is based on readdir(), the resulting file list
is unsorted. A common use case is to pass this list directly to
add_executable or add_library. But as the order is unpredictable, the
binaries are not reproducible (because the order in which the objects
are linked will vary).

See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=824263
2016-05-23 19:51:59 +02:00
Carles Fernandez
19f46c2cd9 Bump version number to v0.0.7
preparing v0.0.7 release and minor code cleaning
2016-05-13 19:17:56 +02:00
Carles Fernandez
831cc75153 Remove tabs from the source code 2016-05-02 23:46:30 +02:00
Javier Arribas
0a5573f666 several receiver configuration mechanism simplifications and several bug fixes. Work in progress 2016-04-21 18:54:08 +02:00
Javier Arribas
6b45d4019c removed unused queues in observables blocks 2016-04-13 17:02:33 +02:00
Javier Arribas
1c2f897655 Refactoring the gnss_synchro member initializations and minor bug fixes. 2016-04-07 18:25:45 +02: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
Carles Fernandez
9cdfc5e8c2 fixing a warning (unused variable) 2016-01-04 10:29:29 +01:00
Carles Fernandez
70706cb87e removed unused variable 2016-01-03 15:11:57 +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
2a6381c6fa Merging branch 'next' of git://github.com/Arribas/gnss-sdr 2015-11-27 13:32:21 +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
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
6c0377ed06 Added new file source adapter:
2 bits complex file source for GNSS-SDR GSoC 2015 signal sampler
designed by Ajith Peter
2015-07-02 17:59:43 +02:00
Carles Fernandez
7e04308a67 code cleaning 2015-06-06 01:21:00 +02:00
Javier
8630cf2fbe Added missing files 2015-06-06 00:36:47 +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
4e2c95d5f5 fixing coverity issues 2015-05-15 04:41:32 +02:00
Carles Fernandez
76843781f7 fixing coverity issues 2015-05-14 11:20:02 +02:00
Carles Fernandez
cb1fd9e727 code cleaning 2015-03-17 00:22:20 +01:00
Carles Fernandez
078260d83f Code cleaning 2015-03-16 21:43:19 +01:00
Carles Fernandez
f10ba2fb1d Removing compilation warnings 2015-02-27 13:11:06 +01:00
Carles Fernandez
6620e7d43c Updating copyright year 2015-01-08 19:49:59 +01:00
Javier Arribas
cefd2de5af Merge remote-tracking branch 'origin/next' into gps_galileo_hybrid 2014-07-20 16:53:52 +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
marabra
bf03c7a374 Enabled hybrid pseudorange generation 2014-06-13 18:38:16 +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
Carles Fernandez
43e94fe681 Cleaning the terminal output and dumping information to the log file.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@489 64b25241-fba3-4117-9849-534c7e92360d
2014-03-16 23:25:52 +00:00
Carles Fernandez
32b3eb816b 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'.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@487 64b25241-fba3-4117-9849-534c7e92360d
2014-03-16 20:01:11 +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
a6eaff8a65 Fix dependencies order when using 'make -jX'
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@467 64b25241-fba3-4117-9849-534c7e92360d
2013-12-20 01:20:39 +00:00
Carles Fernandez
7fac9f9507 Fix dependency name for multithreaded built
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@466 64b25241-fba3-4117-9849-534c7e92360d
2013-12-20 00:31:09 +00:00
Carles Fernandez
71fcd899a4 Change in cmake scripts that allows 'make' to spawn the provided amount of threads when armadillo, gflags or glog are downloaded and built 'on-the-fly'. Ideally each thread is executed on its own core/CPU, so a multi-core/CPU environment is used to its fullest. This fix allows compilation with e.g. 'make -j4"
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@465 64b25241-fba3-4117-9849-534c7e92360d
2013-12-20 00:11:14 +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
Carles Fernandez
de9415571d Minor documentation improvements
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@449 64b25241-fba3-4117-9849-534c7e92360d
2013-11-24 23:55:32 +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
Javier Arribas
806af3e98f GSoC 2013 commit from Mara Branzanti: Galileo E1 observables under construction!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@422 64b25241-fba3-4117-9849-534c7e92360d
2013-10-18 09:38:43 +00:00
Javier Arribas
5fddaae79d Mara Branzanti GSoC commit: Galileo observables block skeleton. Not usable yet!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@418 64b25241-fba3-4117-9849-534c7e92360d
2013-09-09 14:32:48 +00:00
Carles Fernandez
5b13435332 small fixes to cmake scripts
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@374 64b25241-fba3-4117-9849-534c7e92360d
2013-07-06 02:15:09 +00:00
Carles Fernandez
b0cefd151f cmake scriptfix: added missing gflags include
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@373 64b25241-fba3-4117-9849-534c7e92360d
2013-07-06 00:42:40 +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
3e87d1f204 Major update:
- The GNSS-SDR code-based Observable generation algorithm for GPS L1 C/A was migrated from common TX time to common RX time. One of the main reasons is that the common TX algorithm was incompatible with the standard RINEX observables, wich requires the oservables at the same time of reception.
- Using common Rx time, the code was simplified and now requires less memory due to the lack of symbol buffer

- Now it is possible to use standard RINEX post processing software (gpstk and rtklib for instance) to get PVT and the obtained precision is comparable to the internal Least Squares solver. It is possible to use also the carrier phase observable, but is still experimental.

- The default RINEX version output was set to 2.11 in this revision.  RINEX 3.00 is under verification now.


git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@364 64b25241-fba3-4117-9849-534c7e92360d
2013-06-12 15:19:32 +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
Javier Arribas
8b2d21c1c9 Major changes:
- Gps telemetry decoder and PVT now uses independent queues for ephemeris, iono, utc_model and almanac. The old gps_navigation_queue is now deprecated and it is removed from the implementation. This affect almost all the PVT and Rinex printer classes.
- Rinex printer class updated to use the new ephemeris, iono, utc_model objects
Bug fixes and correction:
- The pseudorange generation now is based on the computed TOW for each received symbol. The History_Shift computation become simplier in this way. This modification is also a solution for a bug where the pseudoranges became temporally invalid when the TOW is updated (that happen every 6 secons!) 

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@343 64b25241-fba3-4117-9849-534c7e92360d
2013-03-14 12:52:32 +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
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
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
Carles Fernandez
5662d021d5 Code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@278 64b25241-fba3-4117-9849-534c7e92360d
2012-11-01 18:26:58 +00:00
Carles Fernandez
0edaeb028e Code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@275 64b25241-fba3-4117-9849-534c7e92360d
2012-11-01 17:03:51 +00:00
Carles Fernandez
25a30e3851 Code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@267 64b25241-fba3-4117-9849-534c7e92360d
2012-10-28 13:20:55 +00:00
Carles Fernandez
fb287c0de3 remove weird symbol
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@207 64b25241-fba3-4117-9849-534c7e92360d
2012-07-02 20:00:16 +00:00
Carles Fernandez
ec6952d356 revert changes
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@206 64b25241-fba3-4117-9849-534c7e92360d
2012-07-02 19:58:08 +00:00
Carles Fernandez
0d8b26de30 Revert changes of bits_slices struct since it was not decoding the navigation message properly
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@205 64b25241-fba3-4117-9849-534c7e92360d
2012-07-02 19:53:52 +00:00
Carles Fernandez
f6892a8bf3 It seems that definitions such as
const bits_slice INTEGRITY_STATUS_FLAG = {{23,1}};

used in GPS_L1_CA.h are not allowed in the C++11 standard since they do not correspond to any valid constructor. This is accepted by the current version of gcc (probably due to backward compatibility with C and earlier versions of C++), but it *could* not be accepted in future versions. This can be fixed by putting the struct into a std::vector. I don't know if this is the best way but it seems to work well and does not implies major changes in the code.

There is another issue with the Gnss_Synchro class. Since it had a constructor and a destructor, it could not be considered a POD (Plain Old Data) structure and this has some limitations: while gcc and the C99 standard allowed an array's size to be determined at run time, this extension is not permitted in standard C++. This issue has implications when passing Gnss_Synchro through memory between signal processing blocks. In order to fix this, I have removed the Gnss_Synchro.cc implementation and now this is a header-only class where the array size can be determined at compile time


git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@204 64b25241-fba3-4117-9849-534c7e92360d
2012-07-02 12:45:20 +00:00
Luis Esteve
950765180f Restructuring the src/tests directory. Deleted old tests. Added new test cases. Added signal sample for the tests.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@198 64b25241-fba3-4117-9849-534c7e92360d
2012-06-22 14:17:28 +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
Javier Arribas
0046d9169c Completed the migration to Gnss_Synchro as a common object to exchange signal synchronization data between gnss-sdr GNURadio blocks
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@155 64b25241-fba3-4117-9849-534c7e92360d
2012-02-03 16:13:52 +00:00
Javier Arribas
16a1797c6d Telemetry decoder module now uses the Gnss_Synchro class to communicate the block with the observables block
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@154 64b25241-fba3-4117-9849-534c7e92360d
2012-02-03 11:50:51 +00:00
Carles Fernandez
63377a4ece The class gps_navigation_message is now Gps_Navigation_Message, following the coding style.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@122 64b25241-fba3-4117-9849-534c7e92360d
2012-01-12 00:47:32 +00:00
Carles Fernandez
76b33f232e Now the Rinex_Printer prints all the satellites' nav data available in the channels.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@121 64b25241-fba3-4117-9849-534c7e92360d
2012-01-12 00:21:29 +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
31faaa7722 Minor documentation fixes
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@118 64b25241-fba3-4117-9849-534c7e92360d
2012-01-10 09:49:09 +00:00
Carles Fernandez
ca960b96e9 Now the software recognizes the satellite block to which the SV belongs.
Experimental storage of ephemeris in RINEX NAV file.

Some double variables are now int.

The nav message header and data Rinex printer handles both versions 2.11 and 3.01.

Change of filename: rinex_2_1_printer is now rinex_printer.

Class rinex_printer is now Rinex_Printer.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@117 64b25241-fba3-4117-9849-534c7e92360d
2012-01-10 08:43:58 +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
d61d86900b Added more decodification of the NAV data message
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@110 64b25241-fba3-4117-9849-534c7e92360d
2012-01-03 19:35:56 +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
Javier Arribas
69b8ac00dc - Major changes:
- The executable file and the default configuration file is now changed from "./install/mercurio" and "./conf/mercurio.conf" to "./install/gnss-sdr" and "./conf/gnss-sdr.conf", respectively.
        - Configuration file structure changed to define in a single entry the internal sampling frequency (after the signal conditioner). NOTICE that this change affects the all the adapters (acquisition, tracking, telemetry_decoder, observables, and PVT). All the adapters are now modified to work with this feature.
        - Moved several in-line GPS L1 CA parameters (a.k.a magic numbers..) to ./src/core/system_parameters/GPS_L1_CA.h definition file.
        - Tracking blocks now uses DOUBLE values in their outputs.
        - Observables and PVT now are separated. PVT and their associated libraries are moved to ./src/algorithms/PVT
        - Temporarily disabled the RINEX output (I am working on that!)
        - GNSS-SDR screen output now gives extended debug information of the receiver status and events. In the future, this output will be redirected to a log file.

- Bug fixes:
        - FILE_SIGNAL_SOURCE now works correctly when the user configures GNSS-SDR to process the entire file.
        - GPS_L1_CA_DLL_PLL now computes correctly the PRN start values.
        - GPS_L1_CA_DLL_FLL_PLL now computes correctly the PRN start values.
        - Several modifications in GPS_L1_CA_Telemetry_Decoder, GPS_L1_CA_Observables, and GPS_L1_CA_PVT modules to fix the GPS position computation.

- New features
        - Tracking blocks perform a signal integrity check against NaN outliers before the correlation process.
        - Tracking and PVT binary dump options are now documented and we provide MATLAB libraries and sample files to read it. Available in ./utils/matlab" and "./utils/matlab/libs"
        - Observables output rate can be configured. This option enables the GPS L1 CA PVT computation at a maximum rate of 1ms.
        - GPS_L1_CA_PVT now can perform a moving average Latitude, Longitude, and Altitude output for each of the Observables output. It is configurable using the configuration file.
        - Added Google Earth compatible Keyhole Markup Language (KML) output writer class (./src/algorithms/PVT/libs/kml_printer.h and ./src/algorithms/PVT/libs/kml_printer.cc ). You can see the receiver position directly using Google Earth.
        - We provide a master configuration file which includes an in-line documentation with all the new (and old) options. It can be found in ./conf/master.conf

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@84 64b25241-fba3-4117-9849-534c7e92360d
2011-12-07 17:59:34 +00:00
Javier Arribas
57f7a128a5 Removed namespace arma in PVT. Now Armadillo is called using arma::xxxx
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@83 64b25241-fba3-4117-9849-534c7e92360d
2011-11-28 10:52:52 +00:00
Javier Arribas
40754e6256 Linear Algebra Library replacement: ITPP is now replaced by Armadillo
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@82 64b25241-fba3-4117-9849-534c7e92360d
2011-11-28 10:19:41 +00:00
Javier Arribas
1040e6865d Added J.Arribas contributions: PVT with basic least squares and rinex 2.1 output is now enabled, tracking channels now estimate the CN0 and performs a basic carrier lock detector and returns to acquisition if the tracking loss the lock.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@75 64b25241-fba3-4117-9849-534c7e92360d
2011-10-28 15:01:46 +00:00
Carles Fernandez
228fa3b797 moving things to trunk
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@72 64b25241-fba3-4117-9849-534c7e92360d
2011-10-01 18:45:20 +00:00