1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-12-16 13:10:35 +00:00
Commit Graph

2248 Commits

Author SHA1 Message Date
Carles Fernandez
e944aad824 Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into next 2017-10-19 19:26:40 +02:00
Carles Fernandez
54a0070a33 Remove unrequired and repeated includes 2017-10-19 19:26:08 +02:00
Unknown
c114d38975 Notch filters FFT improved
FFT migrated from Armadillo to GNU Radio
2017-10-18 12:36:12 +02:00
Unknown
52a072b2fe Merge branch 'testing' into next
New unit tests for arithmetic (FFT) and input filters
2017-10-18 11:21:22 +02:00
Unknown
d5590eefe4 Added FFT speed test
Unit test comparing GNU Radio and Armadillo FFT implementations
2017-10-18 11:04:17 +02:00
Carles Fernandez
511675a97e Apply project's coding style 2017-10-18 09:08:13 +02:00
Unknown
2c739a26bf Added Armadillo VS GNU Radio FFT speed test
Unit test comparing the two FFT implementations
2017-10-17 14:17:11 +02:00
Unknown
9a74120e7c Added Notch Filter Lite tests
Unit tests for Notch Lite input filter
2017-10-17 11:44:41 +02:00
Unknown
117329c1fc Avoiding copying input buffers
Improving performances of Notch and Notch Lite input filters
2017-10-17 11:29:30 +02:00
Unknown
0aa178b3ab Merge branch 'next' into testing 2017-10-17 11:10:00 +02:00
Unknown
93cd6a1713 Avoiding copying input buffers
Improving performances of Notch and Notch Lite input filters
2017-10-17 10:40:45 +02:00
Unknown
a1d432f9e8 Added Notch Filter tests
Unit test fot Notch input filter
2017-10-17 09:38:16 +02:00
Carles Fernandez
66a585bfeb Replace C-style casts by C++-style casts 2017-10-16 20:35:06 +02:00
Carles Fernandez
8ef49734db Avoid writing in the input buffer
This was uncovered when replacing C-style casts to C++-style casts.

Apply project's indentation style
2017-10-16 20:17:32 +02:00
Unknown
d8481d927b Added Pulse Blanking unit tests
New unit tests for the pulse blanking input filter
2017-10-16 16:36:51 +02:00
Carles Fernandez
732597860f Fix building 2017-10-16 11:39:22 +02:00
Carles Fernandez
b42ddeb524 Merge branch 'next' of https://github.com/antonioramosdet/gnss-sdr into antonioramosdet-next 2017-10-16 10:14:58 +02: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
Unknown
0f45e7d211 Block Factory filter instantiation tests
Added test cases for Pulse_Blanking, Notch and Notch_Lite filters
2017-10-13 16:21:26 +02:00
Carles Fernandez
76e6adf3ad Include some files that were not getting installed 2017-10-13 11:35:12 +02:00
Carles Fernandez
0be23787d7 Use __VOLK_ASM and __VOLK_VOLATILE keywords 2017-10-13 11:32:00 +02:00
Carles Fernandez
c94a0dcd61 Added __VOLK_ASM and __VOLK_VOLATILE 2017-10-13 11:27:15 +02:00
Carles Fernandez
9b1ae85904 Fix identical code for different branches 2017-10-13 11:26:39 +02:00
Carles Fernandez
bda1f15594 Fix compilation problem with Xcode 9
The following error appeared when working with the latest macOS Xcode 9
SDK:

error: unknown type name 'mach_port_t' mach_port_t
__libcpp_thread_get_port();

Added:

#ifdef __APPLE__
#define _DARWIN_C_SOURCE
#endif

(solution found at https://github.com/arvidn/libtorrent/issues/2364 )
2017-10-13 11:18:19 +02:00
Unknown
4dd128f633 Merge remote-tracking branch 'gnss-sdr/next' into next 2017-10-13 11:14:36 +02:00
Carles Fernandez
173b6c7d8a Pass Gnns_Satellite object by reference instead of by value 2017-10-12 19:15:44 +02:00
Carles Fernandez
f2aaf0c851 Pass GNSS_Satellite objects by reference instead of by value
Added override keyworkd
2017-10-12 18:32:49 +02:00
Carles Fernandez
9cec205132 Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into glonass 2017-10-12 18:21:21 +02:00
Carles Fernandez
cf39e77396 Pass Gnss_Satellite object by reference instead of by value 2017-10-12 18:15:35 +02:00
Carles Fernandez
8a43414933 Merge branch 'glonass_dec' of https://github.com/dmiralles2009/gnss-sdr into dmiralles2009-glonass_dec 2017-10-11 18:22:56 +02:00
Damian Miralles
93640ffd46 GLONASS bugfix: Fixes settings with rtklib obs_t and nav_t members
Adds settings in rtklib code to parse GLONASS measurements in `obs_t`
and 'nav_t' structures. It also adds the time of day field in gnav eph
to keep track as of when ephemeris are reported.
2017-10-11 08:22:45 -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
Carles Fernandez
0532017857 Add blocking parameter to Glonass acquisition 2017-10-04 01:38:00 +02:00
Carles Fernandez
35620b8c57 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into glonass 2017-10-04 01:27:03 +02:00
Damian Miralles
c5a690cf1e GLONASS Observables: Fixes bug in TOW updating
Fixes bug in TOW update when a new value has been computed. This adds a
new flag to keep track of TOW update given the tk component. The code
fix improves the pseudorange measurement for code
2017-10-03 15:26:02 +02:00
Damian Miralles
e5e9cc97ad bugfix: Fixes accumulation length for carrier lock detectors
Based on reference [2] of the lock_detectors file the accumulation
length for GLONASS satellite should be reduced to 10 ms instead of the
default value of 20. Because of the meander sequence of GLONASS system
the effective data bit is of length 10 ms as seen by tracking modules
2017-10-03 15:26:02 +02:00
Damian Miralles
cd0d65ecc0 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-10-03 15:26:02 +02:00
Damian Miralles
d8f697401e bugfix: Fixes bugs with units in GNAV Almanac decoding
Forces conversion of semicircles to radians units  in some GNAV Almanac
parameters. In addition, adds safeguards in code to avoid invalid
slot number identification.
2017-10-03 15:26:02 +02:00
Damian Miralles
c4c90dcad2 feature: Remove satellite position computation from GNAV Almanac
Removes the satellite position computation from the GNAV Almanac object
since it does not seems to be a great usage at the moment. Possible
addition of the fields should be added to the RTKLib API
2017-10-03 15:26:02 +02:00
Damian Miralles
529da490c3 bugfix: Fixes reporting for new almanac data
Adds code to update the almanac information for satellites when decoded
by reducing the flags for the update. Almanac update is now reported
when the 2 required strings are decoded.
2017-10-03 15:26:02 +02:00
Damian Miralles
4d844cfa43 bugfix: Adds conversion from relative code to data bits
Adds conversion from relative code to data bits while decoding GLONASS
GNAV data. It also fixes bugs with CRC computation and extraction of
data from navigation message
2017-10-03 15:26:02 +02:00
Carles Fernandez
e352978777 Implement the non-blocking option for complex shorts
Apply GNU-style indentation
Add Cillian to files copyright
Delete multithread_acquisition block
2017-10-03 13:47:55 +02:00
Damian Miralles
e0dfd90916 GLONASS Observables: Fixes bug in TOW updating
Fixes bug in TOW update when a new value has been computed. This adds a
new flag to keep track of TOW update given the tk component. The code
fix improves the pseudorange measurement for code
2017-10-02 23:00:45 -06:00
Damian Miralles
7cc27df082 bugfix: Fixes accumulation length for carrier lock detectors
Based on reference [2] of the lock_detectors file the accumulation
length for GLONASS satellite should be reduced to 10 ms instead of the
default value of 20. Because of the meander sequence of GLONASS system
the effective data bit is of length 10 ms as seen by tracking modules
2017-09-30 12:54:08 -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
Damian Miralles
c22cc63f31 Merge branch 'glonass_dec' of github.com:dmiralles2009/gnss-sdr into glonass_dec 2017-09-20 08:44:36 -06:00
Damian Miralles
2ab93f2599 bugfix: Fixes bugs with units in GNAV Almanac decoding
Forces conversion of semicircles to radians units  in some GNAV Almanac
parameters. In addition, adds safeguards in code to avoid invalid
slot number identification.
2017-09-20 08:42:01 -06:00
Damian Miralles
fa235e29a4 feature: Remove satellite position computation from GNAV Almanac
Removes the satellite position computation from the GNAV Almanac object
since it does not seems to be a great usage at the moment. Possible
addition of the fields should be added to the RTKLib API
2017-09-18 15:52:09 -06:00
Damian Miralles
c1df56b7e3 bugfix: Fixes reporting for new almanac data
Adds code to update the almanac information for satellites when decoded
by reducing the flags for the update. Almanac update is now reported
when the 2 required strings are decoded.
2017-09-16 13:07:34 -06:00
Cillian O'Driscoll
b90da8e1f5 Merge remote-tracking branch 'carles/odrisci-non_blocking_acq-test' into non_blocking_acq 2017-09-16 15:08:54 +01:00
Cillian O'Driscoll
aaf4ca94e8 Fixed logic in pcps_acquisition_cc
Previously didn't actually check for positive or negative acquisition
until the call to general_work *after* the one in which the detection
statistics were generated
2017-09-16 14:57:50 +01:00
Cillian O'Driscoll
94f0df8ebe Make use of start() and stop() in pcps_acquisition_cc
This is a more natural place to start and stop threads in gnuradio
blocks
2017-09-16 14:55:56 +01:00
Damian Miralles
0c65a4eb7c bugfix: Adds conversion from relative code to data bits
Adds conversion from relative code to data bits while decoding GLONASS
GNAV data. It also fixes bugs with CRC computation and extraction of
data from navigation message
2017-09-15 22:25:37 -06:00
Carles Fernandez
0857892ded Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into odrisci-non_blocking_acq-test 2017-09-16 01:52:46 +02:00
Carles Fernandez
00ba4ff96e Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into glonass 2017-09-16 01:45:53 +02:00
Carles Fernandez
94dfef74c1 Add cpu_multicorrelator_real_codes_test
and minor cosmetics
2017-09-16 01:14:15 +02:00
Carles Fernandez
3cf1fdfd92 Test waits for the block message to emit a message 2017-09-15 16:12:52 +02:00
Carles Fernandez
ba1a143094 Minor fixes
Avoid C-syle casts
Always terminate case with break
Consume ninput_items[0] if case=1
2017-09-15 16:09:02 +02:00
Gastd
385661bf59 Add carrier frequency variable 2017-09-14 20:39:15 +02:00
Gastd
7273c227e4 Add missing headers 2017-09-14 20:39:15 +02:00
Cillian O'Driscoll
ba3d7bfcd8 Added 'blocking' option to pcps_acquisition_cc
Using C++ 11 threading routines to create a worker thread that can
perform the FFT for acquisition in a non-blocking manner. By default
'blocking' is set to true, which is identical to the previous behaviour
(with the added overhead of an extra thread). When 'blocking' is set to
false, then the main thread does not wait for the worker, thereby
letting the receiver continue even when the FFT thread is working. This
is very useful for using FFT acquisition at higher sampling rates, where
the FFT cannot be performed in real-time.

The aim is to replace the separate pcps_multithread_acquisition_cc.

TODO: implement the same thing for the pcps_acquisition_sc
2017-09-11 16:37:14 +01:00
Cillian O'Driscoll
9ec5558143 Use cpu_multicorrelator_real_codes
For galileo_e1_dll_pll_veml_tracking_cc and gps_l1_ca_dll_pll_tracking_cc

Note this gives some significant performance improvement for higher
sampling rates
2017-09-11 15:22:32 +01:00
Cillian O'Driscoll
e87522880e Added ability to generate real valued codes
Only done for GPS L1 C/A and Galileo E1 OS for now. Also added a
cpu_multicorrelator_real_codes class that performs code correlation
using real-valued local codes
2017-09-11 15:21:05 +01:00
Cillian O'Driscoll
676c1506da Updated volk_gnsssdr_module for real codes
Added 16i and 32f resamplers and 32fc_32f and 16ic_16i rotator dot product to
enable use of real (rather than complex) local code replicas
2017-09-11 15:15:27 +01:00
Carles Fernandez
667fbd58ff Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into glonass 2017-09-10 11:24:51 +02:00
Carles Fernandez
e60c93da72 Remove extraneous parentheses warnings 2017-09-10 11:04:53 +02:00
Carles Fernandez
047d9af6a3 Merge branch 'glonass_dec' of https://github.com/dmiralles2009/gnss-sdr into dmiralles2009-glonass_dec 2017-09-10 10:51:17 +02:00
Damian Miralles
2946d36f84 bugfix: Solves shared freq channel ambiguity and carr freq in plots
Adds code to solve the shared frequency channels for GLONASS satellites
during acq and trk, it is now decode responsability to fix the identifier
when decoding of ephemeris happens. It also adds more details in tracking
plotting and fixes silly bug that created false alarm.
2017-09-09 13:44:35 -06:00
Damian Miralles
778fa4f5f8 bugfix: Fixes bug for carrier frequency in pcps_acq for GLONASS
The code fixes the computation of the carrier frequency for pcps
acquisition of GLONASS satellites by making it relative to the IF. Also
new plotting features are added to visualize results
2017-09-07 21:59:27 -06:00
Carles Fernandez
3f557eeb41 Warn the user about the change in parameter name 2017-09-03 23:56:41 +02:00
Carles Fernandez
0ac2f7bd74 The global parameter name GNSS-SDR.internal_fs_hz has been replaced by
GNSS-SDR.internal_fs_sps
2017-09-02 11:36:19 +02:00
Carles Fernandez
c474ea31d5 Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into glonass 2017-09-02 11:27:18 +02:00
Carles Fernandez
dc18980194 The global parameter name GNSS-SDR.internal_fs_hz has been replaced by
GNSS-SDR.internal_fs_sps

The old name was misleading, since the units are samples per second and
not Hertz. 

Backward compatibility is kept, so this change does not break any
existing configuration.
2017-09-02 11:24:44 +02:00
Damian Miralles
a3d2c563c9 Fixing bugs and adding plotting tool for GLONASS measurements
Adds tracking results plot for GLONASS processing following code for
GPS. Also fix a couple of bugs in the code and address bugs from
acq and trk modules
2017-08-31 20:51:40 -06:00
Damian Miralles
6b8973efe2 Fixing bugs in telemetry decoder code 2017-08-31 16:51:50 -06:00
Damian Miralles
e5ffc2b46c Adding proper TOW computation for GLONASS processing 2017-08-31 09:57:30 -06:00
Damian Miralles
0caa7fff15 Fixes ineficiencies in the code, remove unused variables 2017-08-31 09:57:30 -06:00
Damian Miralles
6331ebd8b5 Fixes issues detected during merge procedure 2017-08-31 09:57:30 -06:00
Damian Miralles
4e78bcf446 Merge in GLONASS acquisition and tracking code 2017-08-31 09:57:30 -06:00
Damian Miralles
19f4da0aa6 merging: Starts merge procedure for glonass branch from upstream
Starts merging process of the acquisition and tracking code for GLONASS
processing developed by Gabriel Araujo. Fixes compile warnings and
errors introduced during rebase operation
2017-08-31 09:55:35 -06:00
Damian Miralles
bf9345ebd2 Fixes error after rebase operation from upstream/next 2017-08-31 09:55:35 -06:00
Damian Miralles
85f7e333bb bug_fix: Fixes bugs in telemetry decoding interface
Fixes several bugs with the telemetry decoder interface and clean up the
code with unused methods and members of the ephemeris object
2017-08-31 09:55:35 -06:00
Damian Miralles
305a81a413 tel_dec: Fixing GLONASS GNAV Telemetry Decoder
Fixes GLONASS L1 CA telemetry decoder and creating connections with
observables blocks before PVT computation. Fixes documentation and code
style in the block
2017-08-31 09:55:35 -06:00
Damian Miralles
e1d8a7b23a unit-test: Testing RTCM MS1020 Message generation
Tests MS1020 message and fixes several bugs that show up while
debugging the code. Major changes were introduced due to the bug
correction process
2017-08-31 09:55:35 -06:00
Damian Miralles
eb33715cb9 unit-test: Adds and fixes unit test for system-parameters block
Adding unit test for system-parameters block, testing string decoding
logic for GLONASS GNAV messages. Bug fixes the code after several errors
were detected while debugging
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
bc8d0bbe64 Adds unit test for RINEX and RTCM messages printer
Adds set of unit test to check functionality of GLONASS processing for
RINEX and RTCM messages. It also fixes a couple of bug fixes with
formatting in existing code.
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
e58cd5450d Adding RTCM Data Fields for GLONASS processing
Adds GLONASS related data fields (DFxxx) for RTCM messages including
MS1020, MS1087 and general MSM message types
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
Damian Miralles
8a0689fbb1 Fixing compile warnings and adding work on unit test 2017-08-31 09:55:35 -06:00
Damian Miralles
50f133e960 Fixing compilation warnings 2017-08-31 09:55:35 -06:00
Damian Miralles
b34a82a949 Adding code for telemetry decoder algorithms 2017-08-31 09:55:35 -06:00
Damian Miralles
6c8a29d3d4 writing code for crc computation in GLONASS processing 2017-08-31 09:55:35 -06: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
Damian Miralles
f8f3574090 gnav: Adding GLONASS GNAV Ephemeris, Almanac and UTC Model
Generates code for GLONASS GNAV Ephemeris, Almanac and UTC Model with
their respective decoding position indexes for string decoding and
message parsing. Starts developing of satellite position computation
based on its ephemeris and almanac information
2017-08-31 09:55:35 -06:00