1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-11-18 15:54:59 +00:00
Commit Graph

128 Commits

Author SHA1 Message Date
Damian Miralles
3f87223f35 bugfix: Fix compile errors, code style and documentation
Fixes compilation errors after the RTCM package addition in the PVT
block. It also adds a series of class members documentation in the code
using the Doxygen standard while fixing code style errors
2017-08-31 09:55:35 -06:00
Damian Miralles
6669482e91 rtcm: Starting coding of RTCM standard
Starting to add GLONASS support for RTCM v3 messages while fixing bugs
with the RINEX parser. In addition, adding more unit tests in the code
2017-08-31 09:55:35 -06: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
Carles Fernandez
85cc7802be Fix const correctness when catching exceptions
See https://stackoverflow.com/questions/7581654/about-catching-exception-good-practices
Unneeded includes unistd.h removed
Close dump files in destructor
2017-08-14 13:59:00 +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
Carles Fernandez
d8b0830b46 Fix wrong comparison 2017-06-06 15:29:32 +02:00
Carles Fernandez
9f7e9f9a86 Expose Earth tide correction to user configuration 2017-05-24 15:43:32 +02:00
Carles Fernandez
20592f29a9 Expose reject_GPS_IIA parameter to user configuration 2017-05-24 12:14:52 +02:00
Carles Fernandez
6e179decde Expose RAIM algorithm to user configuration 2017-05-24 09:55:45 +02:00
Carles Fernandez
35c2b0248a Expose more RTKLIB configuration parameters 2017-05-23 09:44:48 +02:00
Carles Fernandez
b780abf563 Free rtk struct in the destructor 2017-05-15 14:38:01 +02:00
Carles Fernandez
f07259e31f Fix rtk initialization 2017-05-15 13:01:48 +02:00
Carles Fernandez
111ad3b221 Remove Hybrid_PVT implementation, it is replaced by RTKLIB_PVT 2017-05-10 16:42:22 +02:00
Carles Fernandez
4e435bc28a Fix initialization with older gcc 2017-05-10 11:26:17 +02:00
Carles Fernandez
bb9346441c Better handling of RTKLIB options 2017-05-08 21:26:12 +02:00
Carles Fernandez
afa9edf848 Enables PPP positioning mode by resorting to functions in RTKLIB 2.4.2 2017-05-06 14:25:36 +02:00
Carles Fernandez
1cb4425cde Fix PPP configuration 2017-05-06 10:45:33 +02:00
Carles Fernandez
4f6ba053ef Get PPP working 2017-05-06 10:01:54 +02:00
Carles Fernandez
4c1f3f1de9 Fix size of covariance matrices 2017-05-04 09:39:35 +02:00
Carles Fernandez
0a4f6cf499 Avoid crashing when PPP is invoked 2017-05-04 09:19:57 +02:00
Carles Fernandez
5581b2f888 Expose more RTKLIB parameters 2017-05-02 07:28:54 +02:00
Carles Fernandez
29efbd895b Expose more RTKLIB parameters to user configuration 2017-05-01 20:39:42 +02:00
Carles Fernandez
44883b2f4d Remove misplaced initializations 2017-05-01 00:00:55 +02:00
Carles Fernandez
d127f6adb8 Pass rtk struct to PVT block instead of opt_t 2017-04-30 16:06:01 +02:00
Carles Fernandez
6f89f89bf2 Make PVT a sink block and add RINEX printer configuration 2017-04-29 18:21:44 +02:00
Carles Fernandez
0b6affe38b Re-enable RTCM and RINEX writing, average parameters removed 2017-04-29 09:25:05 +02:00
Carles Fernandez
c0c1838deb Expose more RTKLIB conf options and add smart guesses for some defaults 2017-04-27 23:02:52 +02:00
Carles Fernandez
04a2ee9c34 Expose some RTKLIB options to user configuration 2017-04-27 20:23:25 +02:00
Javier Arribas
4df575aadb Fix compilation error in gcc 2017-04-26 16:32:00 +02:00
Carles Fernandez
18d2ba5e51 Pass configuration by reference 2017-04-26 16:09:30 +02:00
Carles Fernandez
7c6b18a00c Move RTKLIB configuration options struct to the adapter 2017-04-26 15:20:15 +02:00
Javier Arribas
e90a9aa2bf Migration of the internal LS PVT solver to RTKLIB solver in progress. First working version for GPS L1. Removing SBAS duplicated code. 2017-04-20 16:10:12 +02: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
Carles Fernandez
2744a26344 Configure RINEX version via configuration
This supersedes the value passed by the --RINEX_version flag. Useful for system testing
2016-12-21 15:43:00 +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
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
94855ffa06 Attempt to generate hybrid GPS L1 / Galileo E1 RTCM messages 2016-05-10 22:16:50 +02:00
Carles Fernandez
b1188e9c92 Set configuration of RTCM messages rate 2016-05-09 19:28:02 +02:00
Carles Fernandez
af56520798 Fix Galileo MSM message numbers 2016-05-09 19:24:29 +02:00
Carles Fernandez
cdbba89996 Expose Galileo RTCM messages rate to the PVT configuration 2016-05-07 23:15:17 +02:00
Carles Fernandez
818e09536b Exposing RTCM message rate to the configuration 2016-05-07 12:22:40 +02:00
Carles Fernandez
9cbb88bc9f TCP port and RTCM station ID are now configured by the printer
Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next
2016-05-06 21:00:08 +02:00
Carles Fernandez
a09f3e138f Remove unused variable 2016-05-04 20:29:34 +02:00
Javier Arribas
3d2e72c790 Re-enabling the GPS L1 warm start ephemeris assistance stored in XML file 2016-05-03 12:34:38 +02:00
Carles Fernandez
2b7175083f Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next 2016-04-13 18:26:19 +02:00
Javier Arribas
638fbf7bd8 Removing unused queues in PVT 2016-04-13 16:55:14 +02:00
Carles Fernandez
972c86c1ea cleaning the use of includes 2016-01-04 18:06:54 +01:00
Carles Fernandez
f70df3e581 Integrating the RTCM message printer
Now the GPS L1 receiver generates 1002 and 1019 messages. Bugs in the
Rtcm class fixed.
2015-12-24 20:56:41 +01:00
Carles Fernandez
4850944e00 fixing coverity issues 2015-05-15 03:02:45 +02: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
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
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
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
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
f4f22dffcd Mara Branzanti GSoC commit: Galileo PVT block skeleton. Not usable yet!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@419 64b25241-fba3-4117-9849-534c7e92360d
2013-09-10 08:44:02 +00:00
Carles Fernandez
41f12a3f16 some small changes required by Pybombs
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@378 64b25241-fba3-4117-9849-534c7e92360d
2013-07-06 11:11:23 +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
d7b014e373 Experimental GPS assistence using Secure User Plane Protocol (SUPL) initial tests. Not usable yet!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@348 64b25241-fba3-4117-9849-534c7e92360d
2013-03-15 18:05:37 +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
e0f577fe98 If Armadillo is not installed in the system, now CMake will download it, patch it in order to make a static library, build it, and link it with the rest of GNSS-SDR.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@306 64b25241-fba3-4117-9849-534c7e92360d
2013-01-03 01:48:34 +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
3b489d0107 Code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@276 64b25241-fba3-4117-9849-534c7e92360d
2012-11-01 17:07:25 +00:00
Javier Arribas
cee0dd320d Added TTY serial device NMEA output (Linux only)
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@236 64b25241-fba3-4117-9849-534c7e92360d
2012-08-29 15:32:00 +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
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
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
3ceef64d27 Minor documentation fixes, changes of #defines by const
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@106 64b25241-fba3-4117-9849-534c7e92360d
2012-01-03 07:31:32 +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