1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-07-02 09:53:15 +00:00
Commit Graph

401 Commits

Author SHA1 Message Date
Antonio Ramos
e4bada8176 Handle RTCM printer exceptions 2018-03-13 11:16:30 +01:00
Antonio Ramos
ab7cabc8e8 code style 2018-03-08 18:32:55 +01:00
Antonio Ramos
93d2fdaf14 debug 9 2018-03-08 18:05:22 +01:00
Antonio Ramos
be5139e5f7 Merge branch 'next' into debug 2018-03-06 16:19:52 +01:00
Carles Fernandez
34f24562cf Apply automated code formatting
Documented at .clang-format
See http://clang.llvm.org/docs/ClangFormat.html and http://clang.llvm.org/docs/ClangFormatStyleOptions.html
2018-03-03 02:03:39 +01:00
Antonio Ramos
4d6aaf43af Merge branch 'next' into fix_observables 2018-02-26 10:12:47 +01:00
Carles Fernandez
658e677fc3 Reorder includes: local headers first, then 3rd-party library headers, and finally standard headers 2018-02-26 03:15:53 +01:00
Antonio Ramos
5cba843eaa Add colors to display 2018-02-23 16:17:51 +01:00
Antonio Ramos
e2c2da67c4 debug3 2018-02-22 16:15:07 +01:00
Antonio Ramos
592d50af79 debug 2 2018-02-22 12:42:09 +01:00
Carles Fernandez
c62e7a683d Fix warning of unused parameters 2018-01-24 18:16:01 +01:00
Carles Fernandez
b301ed19c6 Merge remote-tracking branch 'upstream/next' into glonass 2018-01-24 00:52:09 +01:00
Carles Fernandez
5acef7a9bc Remove warnings of unused variables 2018-01-20 12:24:38 +01:00
Damian Miralles
1cc72b8102 glonass: Adding RINEX support for rcv type 28 (GPS L2C + GLO L1 C/A)
Adds RINEX support for receiver type 28 which combines GPS L2C and
GLONASS L2C. Fixes a couple of bugs in RINEX file generation and adds
new configuration files for L2C processing
2017-12-27 19:10:08 -07:00
Damian Miralles
78eaa76a60 glonass rinex: Bug fixes in RINEX formats 2.11 and 3.02
Fixes a couple of bugs for RINEX file generation depending on the
active version to be use.
2017-12-27 11:57:25 -07:00
Damian Miralles
ad07c8940b glonass_rinex: Fixes bugs in RINEX files for GLONASS processing
Fixes bugs with observation and navigation header time logs. It forces
the log to be in UTC time as the dault when in GLONASS.
2017-12-25 17:05:35 -07:00
Antonio Ramos
52aabf05c1 Fix GPS L5 2017-12-15 10:57:12 +01:00
Antonio Ramos
6395f0e5fc Add GPS L5 Channel 2017-11-30 18:16:49 +01:00
Damian Miralles
5eab353132 bugfixes: Add RTCM header creation for GLONASS satellites
Added code to enable RTCM header generation when in GLONASS. Also fixes
bug to allow combined observations from GPS and GLONASS. Fix some code
compilation warnings and unit tests.
2017-11-13 22:50:16 -07:00
Damian Miralles
a1b9b092f5 Debugging GLONASS code to obtain position solution 2017-10-19 13:22:55 -06:00
Damian Miralles
ea675b4baa bugfix: Fixes signal identifier for GLONASS GNAV
Signal identifier for GLONASS L1 C/A was changed internally to be `1G`
instead of the '1C' originally conceived from the navigation software.
Also, forces PRN number update from decoding interface
2017-10-10 08:40:05 -06:00
Damian Miralles
081a78f603 bugfix: Fix computation of TOW value for GLONASS GNAV
Fixes the TOW computation mapping from GLONASS Time to UTC time and then
conversion to TOW and WN. The logic of the conversion considers time
offsets but  may need to be reviewed.
2017-09-22 12:16:26 -06:00
Carles Fernandez
e60c93da72 Remove extraneous parentheses warnings 2017-09-10 11:04:53 +02:00
Damian Miralles
bf9345ebd2 Fixes error after rebase operation from upstream/next 2017-08-31 09:55:35 -06:00
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
f720ddf208 Adding RTCM messages for GLONASS support
Adds code for RTCM in GLONASS processing. The commit includes legacy
messages (MS1009-MS1012) and integrated messages for GNSS fields.
A couple of bug fixes are included and addition of ephemeris fields
is completed.
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
Damian Miralles
d34ec96ad2 bugfix: Fixing bugs with RINEX support
Fixes compilation errors. Modifies GLONASS GNAV Ephemeris object to
contain fields relative to GPS time using the boost posix time object.
Adds unit tests to check existent and recently added code
2017-08-31 09:55:35 -06:00
Damian Miralles
2d40780689 Adding RINEX support for GLONASS GNAV processing
Adds RINEX v2 and v3 support for GLONASS satellites processing including
observation and navigation data records. Also adds conversion of
ephemeris records in GNSS-SDR format to RTKLib format
2017-08-31 09:55:35 -06:00
Damian Miralles
c445ac261b Developing interface code for RINEX printer 2017-08-31 09:55:35 -06:00
Damian Miralles
fbd6b211eb Adding code for pvt computation 2017-08-31 09:55:35 -06:00
Carles Fernandez
0a42fe8ab5 Replace some C-style casts by C++ casts 2017-08-19 09:16:10 +02:00
Carles Fernandez
7ac3f282fa Replace C-style cast by C++ casts 2017-08-19 02:33:54 +02:00
Carles Fernandez
61f8df3586 Replace some C-style cast by static_cast<>()
See https://stackoverflow.com/questions/1609163/what-is-the-difference-between-static-cast-and-c-style-casting
2017-08-18 12:45:47 +02:00
Carles Fernandez
2b18ae14fe Replace iterators by const iterators 2017-08-17 11:03:02 +02:00
Carles Fernandez
6a2fe514d0 Revert "Declare more data members private"
This reverts commit 73b6613a3d.
2017-08-16 17:33:29 +02:00
Carles Fernandez
73b6613a3d Declare more data members private 2017-08-16 13:44:31 +02:00
Carles Fernandez
c1bbdd74d4 Declare all Pvt_Solution data members private 2017-08-16 12:45:00 +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
18cd7daa09 Eliminate ctime library. Replaced by chrono or boost::date_time 2017-08-11 05:18:38 +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
f3a41d4569 Fix indentation 2017-05-14 19:59:55 +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
111ad3b221 Remove Hybrid_PVT implementation, it is replaced by RTKLIB_PVT 2017-05-10 16:42:22 +02:00
Carles Fernandez
2abd9b248b Fix bitset bug 2017-05-10 15:56:20 +02:00
Carles Fernandez
97bb5906aa Replace fabs by std::fabs 2017-05-10 11:13:02 +02:00
Carles Fernandez
a97e9cfda8 Revert "Comment unused variables"
This reverts commit 75b4ecb91c.
2017-05-02 20:08:16 +02:00
Carles Fernandez
75b4ecb91c Comment unused variables 2017-05-02 20:04:25 +02:00
Carles Fernandez
902da19194 Use rtkpos instead of pntpos in rtklib_solver
so more positioning modes are available
2017-05-02 19:31:51 +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
6f140b67d1 Re-enable TTFF test 2017-04-29 19:14:59 +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
Javier Arribas
44f748cb41 Fix the bug fix 2017-04-28 15:38:31 +02:00
Carles Fernandez
560164711b Add work on the PVT block 2017-04-27 15:07:44 +02:00
Carles Fernandez
e16631ef89 Make the PVT block to consume all items it can 2017-04-27 08:29:44 +02:00
Carles Fernandez
18d2ba5e51 Pass configuration by reference 2017-04-26 16:09:30 +02:00
Carles Fernandez
54f9108f15 Fix segmentation fault 2017-04-26 16:01:47 +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
807ca24fc2 Refactoring code. Adding new experimental tests and new common TX time observables algorithm 2017-04-12 17:04:51 +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
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
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
3fd7639b6d Initialize all class members 2016-11-05 08:49:57 +01:00
Carles Fernandez
19d212065b Add generation of RTCM messages for more receiver configurations 2016-11-04 09:19:31 +01:00
Carles Fernandez
6ed6234170 Improve variable naming, some code cleaning 2016-11-03 16:58:54 +01:00
Carles Fernandez
035cc8c52a Make indentation clearer 2016-11-03 16:47:34 +01:00
Carles Fernandez
09f9e667c5 Add RTCM printer to some receiver configurations 2016-11-03 15:30:24 +01:00
Carles Fernandez
1c975313b7 Use L2C observables for positioning 2016-11-03 14:33:20 +01:00
Carles Fernandez
9a3d5950ba Add work on Galileo observables RINEX printer 2016-11-03 10:49:10 +01:00
Carles Fernandez
abc2139ca6 Add work on the generation of RINEX files for more receiver configs 2016-11-03 08:20:31 +01:00
Carles Fernandez
ea8e605fb5 Add work on the hybrid receiver 2016-11-03 00:07:05 +01:00
Carles Fernandez
08f0a36075 Improve queue management gnss-sdr and in TTFF tests.
Always destroy queues when exiting
2016-10-03 17:43:06 +02:00
Carles Fernandez
3a10f3c26b Inform about TTFF 2016-10-02 01:55:48 +02:00
Carles Fernandez
db71c74898 Small fixes 2016-10-01 19:09:55 +02:00
Carles Fernandez
a2eaab884e Add sysV queue to the GPS PVT block 2016-10-01 11:03:40 +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
94855ffa06 Attempt to generate hybrid GPS L1 / Galileo E1 RTCM messages 2016-05-10 22:16:50 +02:00
Carles Fernandez
fda0b93d83 Fix bug in hybrid PVT
The block was not correctly handling satellites from the two constellations, causing problems when receiving two satellites (one GPS and one Galileo) with the same PRN number
2016-05-10 11:18:41 +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
97f4f24c88 Enable RTCM messages in Galileo E1 receiver 2016-05-04 19:53:53 +02:00
Carles Fernandez
8fe691dc76 Fix computation of lock time
LLI still not implemented, values will be incorrect upon first loss of
lock.
2016-05-04 19:18:34 +02:00
Carles Fernandez
95f75d407e Fix phase range rate computation in RTCM messages 2016-05-03 14:35:43 +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
eb8539a725 fix TOW formatting in RTCM messages 2016-05-03 11:01:10 +02:00
Carles Fernandez
b1740460fd print ephemeris of all tracked satellites in RTCM messages 2016-05-03 00:56:08 +02:00
Carles Fernandez
831cc75153 Remove tabs from the source code 2016-05-02 23:46:30 +02:00
Carles Fernandez
ad16c5ab35 some test fixes 2016-05-01 12:39:40 +02:00
Carles Fernandez
ad9dd71359 code cleaning 2016-04-25 20:34:56 +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
Carles Fernandez
4a1812197b Deleting unnecessary contructors when posting messages
and some code formatting
2016-04-13 17:50:16 +02:00
Javier Arribas
638fbf7bd8 Removing unused queues in PVT 2016-04-13 16:55:14 +02:00
Javier Arribas
7560a158f0 More telemetry global queues migration to GNURadio asynchronous messages
and
some
code cleaning
2016-04-13 16:19:15 +02:00
Javier Arribas
b56183f93b Replacing Galileo E1, SBAS, and GPS L2C telemetry shared queues and maps
with GNURadio asynchronous messages (TLM -> PVT)
2016-04-12 17:29:16 +02:00
Javier Arribas
588864e19e Replacing GPS telemetry shared queues and maps with GNURadio
asynchronous messages (TLM -> PVT)
2016-04-12 15:28:58 +02:00
Javier Arribas
150aceb404 Process optimization: Moved the receiver stdout status output
(a.k.a seconds counter) from the tracking blocks to PVT block
2016-04-06 17:33:52 +02:00
Javier Arribas
98bfb7d801 Removing more unused parameters warnings using
the __attribute__((unused)) pre-compiler directive
2016-04-06 16:27:47 +02:00
Javier Arribas
b4e8966691 Removing the unused Output_filter block from the gnss_sdr flowgraph 2016-04-06 16:12:06 +02:00
Carles Fernandez
7d0e3126aa 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.
2016-02-09 19:43:07 +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
Carles Fernandez
286ee3b561 Integrating the RTCM printer
Now the Galileo E1 receiver generates RTCM messages 1045 (ephemeris) and
MSM7 / 1097 (observables). Parameters related to RTCM included in conf
files. The TCP/IP server can be activated by setting flag_rtcm_server to
true.
2015-12-25 10:25:22 +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
450728dfeb fix defect detected by coverity scan: rinex observables are printed if
both GPS and Galileo observables are available. This avoids
dereferencing an iterator though it is already past the end of its
container (in case only one of them were available)
2015-12-08 21:10:17 +01:00
Carles Fernandez
6c9a90abe4 fixing defects detected by coverity scan 2015-12-08 20:24:36 +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
0c57c6b6f7 working on the printers: added time tag to KML and GeoJSON names, some
fixes of CRC computation and check, more tests
2015-11-22 14:43:52 +01:00
Carles Fernandez
6336556163 Some cleaning 2015-11-15 23:31:27 +01:00
Carles Fernandez
f68a1fe9bc Refactoring PVT solution library and adding a GeoJSON format printer 2015-11-14 20:41:28 +01:00
Carles Fernandez
d52c3e36e3 Refactoring least squares computation 2015-11-14 14:17:02 +01:00
Carles Fernandez
4850944e00 fixing coverity issues 2015-05-15 03:02:45 +02:00
Carles Fernandez
ec7c514a84 adding missing end of line in terminal output 2015-05-06 12:40:21 +02:00
Carles Fernandez
b052f7ace6 Fixing bug in UTC time computation 2015-03-20 20:17:41 +01:00
Carles Fernandez
37884afd0d Code cleaning 2015-03-04 21:22:35 +01:00
Carles Fernandez
fde51c453b Fixing reading of UTC and IONO data in Galileo 2015-03-04 17:12:42 +01:00
Carles Fernandez
d72d853843 Fixing reading of UTC and IONO data in Galileo 2015-03-04 16:15:59 +01:00
Carles Fernandez
a4e48eac4d Removing warning 2015-03-03 21:56:17 +01:00
Carles Fernandez
42ea31b677 Fixing utc and iono info reading when channel 0 is out of lock 2015-03-03 20:40:14 +01:00
Carles Fernandez
8b84847a5a Updating RINEX obs header when leap second is available (version 3.02) 2015-03-03 19:56:40 +01:00
Carles Fernandez
0b47f2e719 Updating RINEX obs header when leap second is received (version 2.11) 2015-03-03 18:01:53 +01:00
Carles Fernandez
bf85e1fbe1 Updating RINEX nav file when IONO and UTC data are available (version
3.02)
2015-03-03 17:35:26 +01:00
Carles Fernandez
d3f669cebe remove undesired terminal output 2015-03-03 15:57:16 +01:00
Carles Fernandez
db7b746297 Updating the nav RINEX printer when IONO and UTC data are received
(v2.11)
2015-03-03 14:56:22 +01:00
Carles Fernandez
7303f3c3fd hook for updating rinex headers 2015-03-01 21:16:29 +01:00
Carles Fernandez
6620e7d43c Updating copyright year 2015-01-08 19:49:59 +01:00
Javier Arribas
a2cad4c147 Added support for Fraunhofer / TeleOrbit Flexiband front-end
demultiplexed signal files (interleaved I/Q byte-size files,
post-process only).

Use sample configuration file gnss-sdr_Hybrid_byte.conf to try it!

Go to http://www.iis.fraunhofer.de/de/ff/lok/leist/test/flexiband.html
to obtain free captures from Fraunhofer
2014-10-27 13:00:10 +01:00
Carles Fernandez
5ef26ab7ce Deleting duplicated line resulting from a merge 2014-09-06 02:10:56 +02:00
Carles Fernandez
da6a15e637 Adding Mixed GPS/Galileo observations. 2014-09-05 16:38:44 +02:00
Carles Fernandez
286cad820f Adding mixed navigation RINEX file data 2014-09-05 13:28:13 +02:00
Carles Fernandez
0d0c603420 Working towards a RINEX printer for multiconstellation data. Code
cleaning
2014-09-05 12:44:51 +02:00
Carles Fernandez
a57c5ccf8a Changing some raw pointers by smart pointers. Commenting out some custom
code
2014-09-04 19:35:55 +02:00
Javier Arribas
b2cd611b6e Merge remote-tracking branch 'origin/next' into gps_galileo_hybrid
Conflicts:
	src/algorithms/PVT/gnuradio_blocks/galileo_e1_pvt_cc.cc
	src/core/receiver/control_thread.cc
2014-09-04 10:50:12 +02:00
Carles Fernandez
358f29f305 Some fixes in the RINEX 3.01 printer 2014-09-03 07:58:57 +02:00
Carles Fernandez
5c867e084e Added Galileo almanac management (credits to Javier Arribas) 2014-09-02 19:04:03 +02:00
Javier Arribas
e3c2de18a6 Added Galileo Almanac management 2014-09-02 18:17:09 +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
12f2b73d44 Adding RINEX observation file for Galileo 2014-09-01 13:03:24 +02:00
Carles Fernandez
8e70de41ed Adding RINEX observable header file for Galileo 2014-09-01 11:42:51 +02:00
Carles Fernandez
f6a55955ae Introducing RINEX Galileo navigation data file. 2014-08-31 15:58:09 +02:00
Carles Fernandez
14970bf2c3 Changing raw pointers by smart pointers 2014-08-31 11:42:00 +02:00
marabra
2bc779b3b5 activated IFEN reference coordinates 2014-07-22 09:36:53 +02:00
marabra
0303ac536a Added GNSS-SDR statistics over PVT and gnuplot scripts 2014-07-22 09:30:27 +02: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
e7c4b35238 PVT block enabled to find ephemeris and observables from both GPS and Galileo 2014-06-19 17:07:27 +02:00
marabra
25934c477e Added hybrid TOW (expressed in GPS reference time) and time debug output in PVT block 2014-06-18 11:04:26 +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
4edd485cd0 Tidying up includes: own .h, C libraries, C++ libraries, other libraries' .h, project's .h. Some old time.h and stdlib.h have been replaced by ctime and cstdlib
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@477 64b25241-fba3-4117-9849-534c7e92360d
2014-01-14 23:22:54 +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
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
Carles Fernandez
0c758aa5a3 Including SBAS output in rinex printer
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@438 64b25241-fba3-4117-9849-534c7e92360d
2013-11-10 00:42:15 +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
Carles Fernandez
2972272b3e Fixes compilation issues on Mac OS X. Now it builds successfully against gnuradio installed by Macports and using gcc 4.8. Upgrade version of Gtest. Some fixes and updates in documentation and code cleaning.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@423 64b25241-fba3-4117-9849-534c7e92360d
2013-10-18 18:26:06 +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
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
Javier Arribas
31f73ed40d Bug correction in the Dilution of Precision (DOP) computation of Least Squares PVT solver: Missing transformation from ECEF to ENU in the covariance matrix.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@414 64b25241-fba3-4117-9849-534c7e92360d
2013-09-02 15:43:00 +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
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
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
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
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
Javier Arribas
22254b05fd Partial bug correction in RINEX generation. Fotmat issues and UTC computation.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@286 64b25241-fba3-4117-9849-534c7e92360d
2012-12-11 18:29:20 +00:00
Carles Fernandez
9b62455366 Code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@263 64b25241-fba3-4117-9849-534c7e92360d
2012-10-28 11:38:50 +00:00
Carles Fernandez
10a4ac60df Cleaning code and comments
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@238 64b25241-fba3-4117-9849-534c7e92360d
2012-09-02 16:53:59 +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
Javier Arribas
598512529f Added NMEA 2.1 protocol for PVT dump.
This is an experimental release that only supports FILE dump operations.



git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@235 64b25241-fba3-4117-9849-534c7e92360d
2012-08-28 17:14:18 +00:00
Javier Arribas
c6c5decf9c Added Dilution Of Precision (DOP) values computation in the Least Squares PVT solver.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@232 64b25241-fba3-4117-9849-534c7e92360d
2012-08-24 10:18:21 +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
Carles Fernandez
69f9d8f902 Class kml_printer is now Kml_Printer, following the coding style.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@124 64b25241-fba3-4117-9849-534c7e92360d
2012-01-13 00:22:47 +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
dab517aff0 Advances with the rinex printer.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@119 64b25241-fba3-4117-9849-534c7e92360d
2012-01-11 07:05:09 +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
9a2d4c8a09 Improvements in RINEX headers
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@115 64b25241-fba3-4117-9849-534c7e92360d
2012-01-09 09:58:54 +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
03d6999225 - Removed d_TGD from clock correction computation (bug fix)
- Advances with the RINEX printer

- Standard output is less verbose (partial info stored in log)

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@111 64b25241-fba3-4117-9849-534c7e92360d
2012-01-04 07:52: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
Carles Fernandez
0cee2be18f Now you can change the default /tmp directory with the flag --log_dir
$ ./gnss-sdr --log_dir=./log

Added some documentation and comments

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@101 64b25241-fba3-4117-9849-534c7e92360d
2011-12-27 21:21:12 +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