Commit Graph

65 Commits

Author SHA1 Message Date
Carles Fernandez 95596b8f91
Soft transition from Gflags and Glog to Abseil. Some CI fixes 2024-04-29 08:27:33 +02:00
Carles Fernandez 6ec452a7c0
Allow the CMake project to be a sub-project 2022-07-28 10:37:36 +02:00
Carles Fernandez 9a91fb3192
Add Doppler prediction in almanacs 2022-03-20 10:44:26 +01:00
Carles Fernandez a42c66ec29
Add utilities to galileo_has_data class, improve HAS message printer 2021-09-23 10:20:10 +02:00
Carles Fernandez dde6f8f44a
Move HAS decoding out from CNAV page content retrieval 2021-06-02 16:30:26 +02:00
Carles Fernandez 3bc2c738c8
Implement FEC2 Erasure Correction in Galileo E1B INAV message
This feature is configurable, disabled by default.

Added a benchmark for the Reed Solomon decoder.

Make the RS decoder to accept both shortened or unshortened codes
2021-04-19 13:26:46 +02:00
Carles Fernandez d4a9b6f316
Implement reading of reduced CED data in Galileo E1B INAV message. Used if found 2021-04-09 15:00:58 +02:00
Carles Fernandez aeb6a0cd84
Add Reed Solomon encoder and decoder class 2021-03-25 14:53:18 +01:00
Carles Fernandez c2223e3dad
Create a base class for Gnss almanacs, unify parameter names 2021-02-23 11:57:24 +01:00
Carles Fernandez 7971565a0d
Give more natural, consistent names to ephemeris / iono / utc parameters exposed outside the receiver via XML files
Create a base class for GPS, Galileo and BeiDou ephemeris, allowing to remove some duplicated code

Use BOOST_SERIALIZATION_NVP macro, less error prone than boost::serialization::make_nvp

Update .xsd files
2021-02-21 00:01:56 +01:00
Carles Fernandez 7308745f05
Apply more concise file header format
Re-license CMake scripts with BSD-3-Clause
2020-12-30 13:35:06 +01:00
Carles Fernandez d1b23ae3fd
Add logic for HAS message retrieval 2020-11-10 21:20:13 +01:00
Carles Fernandez 76bbd3c3bb
Add work on the Galileo E6 message decoding up to HAS page CRC check 2020-11-08 14:10:43 +01:00
Carles Fernandez bcd7c25cd1
Add Galileo E6 signal structure based on E6-B/C Codes Technical Note, Issue 1, Jan 2019.
Add Acquisition, Tracking and TLM blocks for Galileo E6 B/C. The decoder does nothing
2020-11-07 21:33:26 +01:00
Carles Fernandez 89c7598be4
Rename the Galileo_Navigation_Mesaage class to Galileo_Inav_Message for consistency 2020-07-28 21:27:46 +02:00
Carles Fernandez 945c86a4c4
Avoid code duplication 2020-07-21 13:56:01 +02:00
Carles Fernandez c04948fd02
Reduce number of warnings raised by bugprone-* clang-tidy checks 2020-07-10 00:37:55 +02:00
Carles Fernandez d3b7557dcf
Sort constants
no more GPS_L1_PI, GPS_L2_PI, etc. Values are written in a single point.
2020-07-05 20:20:02 +02:00
Carles Fernandez 1e742afbc4
Sort constants, avoid duplication of Galileo physical constants 2020-07-04 19:13:42 +02:00
Carles Fernandez 0df4277d36
Unify criteria in target definitions, more informative names 2020-06-13 00:32:40 +02:00
Carles Fernandez 34a250246a
Simplify initializations in system_parameters library 2020-06-10 10:15:59 +02:00
Carles Fernandez 2a3d682f1f
Make use of target_sources(), make use of target propagation to reduce redundancy in dependencies, some fixes for Clang and CMake < 3.11. Use generic lambdas with auto 2020-06-08 20:04:01 +02:00
Carles Fernandez 4635b307d8
Add Galileo_E5b.h to the headers list 2020-05-30 08:48:54 +02:00
Carles Fernandez 2ded19342f
Improve headers 2020-02-12 00:04:29 +01:00
Carles Fernandez 4d0d263280
Make the software package compliant with the REUSE Specification v3.0 (see https://reuse.software/spec/)
Update license headers to SPDX format (see https://spdx.org/)
Add license to all files
Add CI job in GitHub Actions to ensure compliance
2020-02-08 01:20:02 +01:00
Damian Miralles 8782fcba69 bds_b3i: merging new changes, fixing small bugs 2019-03-01 13:28:21 -06:00
Carles Fernandez 9bc771bed6
Deploy a new option -DENABLE_CLANG_TIDY to integrate clang-tidy checks and fixes into the compilation process, if found. It defaults to OFF 2019-02-21 09:59:06 +01:00
Carles Fernandez 75bd492d96
Change CMake target names to more meaningful ones, reflecting the code tree 2019-02-10 18:34:28 +01:00
Carles Fernandez ce051e040f
Improve target design 2019-02-10 01:13:02 +01:00
Damian Miralles 1b7d4edf51 bds_b31: Getting new changes from upstream 2019-02-05 17:25:16 -06:00
Carles Fernandez 708b288e61
Clean CMake scripts 2019-02-04 22:44:45 +01:00
Carles Fernandez 9b94a4dec0 Add more imported targets to CMake scripts 2019-02-04 16:07:29 +01:00
Carles Fernandez 8ae72fe458
Update to modern CMake usage 2019-02-03 19:24:44 +01:00
Carles Fernandez c561d7e799
Applying code formatting rules 2019-01-28 02:29:43 +01:00
Damian Miralles e78ba653e6 bds b3i: Adding code to process BeiDou B3I signals
Adds code to perform acq and trk in BeiDou B3I signals. Stages of
telemetry decoding, observables computation and pvt use existing
code on the platform. Some further testing is required
2019-01-25 15:43:00 -06:00
Damian Miralles 8db3f21070 bds b11: Get latest changes and add bds functions in rtk module
Merge branch 'next' into bds_b1i. Also fixes multiple bugs with the
addition of bds b1i signals into code. Major changes where fixed and
code to support RINEX and RTCM is needed
2018-11-29 09:56:54 -06:00
Carles Fernandez 87d1413447
Make cmakelint happier 2018-11-24 18:40:34 +01:00
Carles Fernandez b0ba246934
Apply some style rules to CMake scripts 2018-11-22 00:35:21 +01:00
Carles Fernandez ea59abee77
Add work on warm start 2018-11-20 09:28:47 +01:00
Carles Fernandez 07d1a74f6b Decode and store Galileo almanac 2018-10-24 17:28:12 +02:00
Damian Miralles 8c16d945f8 beidou b1i: Merging new changes and adding bug fixes to code 2018-10-22 14:16:38 -05:00
Carles Fernandez 78c0b76cb9
Avoid use of GLOB for source and header files 2018-10-04 22:35:44 +02:00
Sergi Segura e4a86173fa tracking working 2018-08-06 13:52:08 +02:00
Carles Fernandez d40094e6e2
Clean CMake scripts 2018-05-25 20:49:45 +02:00
Carles Fernandez 0d60d97c24
Use https instead of http in links when available
Update copyright year in headers
2018-05-13 22:49:11 +02:00
Damian Miralles c24710c585 gnav: Adding GLONASS GNAV Navigation Message Operations
Adding code for navigation message computation for GLONASS GNAV code.
Continues to fix the almanac position computation and fixes bugs in code
due to compilation errors, coding style and Doxygen documentation
2017-08-31 09:55:35 -06: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 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
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 60dd9b4f28 working on the RTCM printer 2015-11-21 13:01:50 +01:00