1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-07-14 23:54:21 +00:00
Commit Graph

228 Commits

Author SHA1 Message Date
Antonio Ramos
bbf8587970 Clean code 2018-01-04 12:16:12 +01:00
Antonio Ramos
b28c244df5 Debug log lines 2018-01-03 11:40:17 +01:00
Damian Miralles
d75857db91 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into glonass_dec 2017-11-20 08:31:32 -07:00
Unknown
9ff4d8d880 Fix Galileo E5a deadlock 2017-11-16 16:33:24 +01: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
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
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
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
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
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
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
Gastd
45c2351223 Remove redefinition 2017-08-23 14:13:19 -03:00
Gastd
296942ff23 Solve conflicts 2017-08-23 14:12:55 -03:00
Gastd
239d15bfc7 Add glonass signal acquisition 2017-08-23 13:34:37 -03:00
Gastd
88fa602505 Add unit-test for glonass pcps acquisition 2017-08-23 13:30:05 -03:00
Gastd
2c495ec014 Fix wipeoff bug 2017-08-23 13:15:42 -03:00
Gastd
72ff71450b Add FDMA protocol to pcps algorithm 2017-08-23 13:15:42 -03:00
Gastd
1864f78d9a Change the if frequency to the FDMA channel to be searched 2017-08-23 13:15:42 -03:00
Gastd
88a0976f96 Add FDMA protocol to pcps algorithm 2017-08-23 13:15:42 -03:00
Gastd
f9845ae3a2 Change the if frequency to the FDMA channel to be searched 2017-08-23 13:13:15 -03:00
Gastd
c3ca053664 Update info 2017-08-23 13:09:28 -03:00
Gastd
3719da9853 Reset acquisition 2017-08-23 13:09:28 -03:00
Gastd
52140c85f2 Add glonass signal acquisition 2017-08-23 13:09:28 -03:00
Gastd
80d232158e Fix wipeoff bug 2017-08-23 13:09:28 -03:00
Gastd
6525c57e8e Add FDMA protocol to pcps algorithm 2017-08-23 13:09:28 -03:00
Gastd
26b58fa759 Change the if frequency to the FDMA channel to be searched 2017-08-23 13:08:46 -03:00
Gastd
4a74e30890 Add FDMA protocol to pcps algorithm 2017-08-23 13:05:33 -03:00
Gastd
e3cba491c1 Change the if frequency to the FDMA channel to be searched 2017-08-23 13:00:54 -03:00
Gastd
f7092b68b6 Add Glonass_L1_CA.h with Glonass L1 CA parameters 2017-08-23 13:00:54 -03:00
Gastd
c256378707 Update info 2017-08-23 00:52:45 -03:00
Gastd
2dbab56c6c Reset acquisition 2017-08-23 00:52:45 -03:00
Gastd
ce68bbf069 Add glonass signal acquisition 2017-08-23 00:52:45 -03:00
Gastd
feddc615dd Fix wipeoff bug 2017-08-23 00:52:45 -03:00
Gastd
6307ac2880 Add FDMA protocol to pcps algorithm 2017-08-23 00:52:45 -03:00
Gastd
53e7e75392 Change the if frequency to the FDMA channel to be searched 2017-08-23 00:52:08 -03:00
Gastd
2091ac354a Add FDMA protocol to pcps algorithm 2017-08-23 00:47:09 -03:00
Gastd
b9c53c038f Change the if frequency to the FDMA channel to be searched 2017-08-23 00:34:16 -03:00
Gastd
a02cf31b1f Add Glonass_L1_CA.h with Glonass L1 CA parameters 2017-08-23 00:34:16 -03:00
Carles Fernandez
122ec19626 Make use of the inline keyword where appropriate 2017-08-21 11:45:12 +02:00
Carles Fernandez
e7246d4565 Replace C-style casts by C++ casts 2017-08-19 11:27:22 +02: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
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
7b4f65476c Remove/add blank lines 2017-06-13 11:25:37 +02:00
mmajoral
9a7bd7ffb4 adopted code style + did some code refactoring 2017-06-08 17:29:45 +02:00
mmajoral
b89f718f20 updated checklists and removed a debug printout 2017-05-31 10:08:34 +02:00
mmajoral
08c777968a Revert "Revert "removed non used parameter Flag_preamble""
This reverts commit f668f415d6.
2017-05-24 15:12:52 +02:00
mmajoral
f668f415d6 Revert "removed non used parameter Flag_preamble"
This reverts commit 2f9885c5bd.
2017-05-24 15:11:27 +02:00
mmajoral
2a0b874a02 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into next_fpga 2017-05-24 12:26:27 +02:00
mmajoral
2f9885c5bd removed non used parameter Flag_preamble 2017-05-24 12:20:04 +02:00
mmajoral
cbe20c0920 refactoring code 2017-05-18 17:10:28 +02:00
Carles Fernandez
0253f4ba05 Merge remote-tracking branch 'upstream/common_solver' into next
This commit Integrates RTKLIB positioning libraries in a universal PVT
block implementation called RTKLIB_PVT. This results in an improved
positioning accuracy and precision with a wide range of options
(including Precise Point Positioning and ionospheric/troposphreic
models).

Not all the RTKLIB features have been ported. Some of them will be
progressively added. The ported options and how to configure them have
been documented in the website, see
http://gnss-sdr.org/docs/sp-blocks/pvt/

This commit also introduces a multi-band, multi system Observables block
implementation.

Relevant architectural changes that reduce latency and makes
multi-system, multi band signal handling easier.

Redundant blocks have been deleted. Old configurations are automatically
redirected to the new blocks for Observables and PVT, so the commit does
not break any existing configuration. The user should just notice a
relevant improvement in positioning performance.

# Conflicts:
#	src/core/receiver/gnss_flowgraph.cc
2017-05-10 22:16:18 +02:00
Carles Fernandez
3463d5437e Deactivate compilation of acquisition_lib until fix 2017-05-10 21:01:23 +02:00
mmajoral
de2043ca00 cleaned the acquisition code that runs in the Zynq SoC, cleaned some tracking files that run in the Zynq SoC as well. 2017-05-08 17:03:27 +02:00
mmajoral
eccbd0f97a acquisition gps unit test for the FPGA. The code is currently being cleaned 2017-05-05 16:15:27 +02:00
mmajoral
9195740d8a acquisition gps unit test for the FPGA. The code is currently being cleaned 2017-05-05 16:14:27 +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
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
438ba45c16 Fix acquisition with rata rates higher than 16 Msps in 4ms code periods
while not requiring a very recent version of VOLK
2016-09-19 09:06:40 +02:00
Cillian O'Driscoll
8d8249247f Alternative fix for issue #31
Rather than changing the index type to uint16_t, I think it would be
better to use the volk_32f_index_max32* functions instead of the 16 bit
counterparts. This ensures backwards compatibility (the index was
previously 32 bit, even if the function name indicated that it was 16
bit) and also, for FFT acquisition we may encounter large FFTs with more
than 65 535 points
2016-09-18 19:00:57 +02:00
Carles Fernandez
24e62c4e4e Make use of volk_gnsssdr_malloc, volk_gnsssdr_free
instead of volk_malloc, volk_free (which are missing from the volk
version distributed by ubuntu 14.04). Fix the include guard in
volk_gnsssdr_malloc.h 
Thanks to @hoernchen
2016-08-18 14:17:02 +02:00
Carles Fernandez
04a16055ff Revert wrong commit 2016-08-16 21:18:24 +02:00
Carles Fernandez
838e643d51 Consume all samples in each iteration 2016-08-13 18:28:05 +02:00
Carles Fernandez
2a2344d501 Add maximum number of dwells in the Tong algorithm 2016-08-11 13:13:30 +02:00
Carles Fernandez
0aa980a9a1 Merge branch 'michaelld-fix_volk_max_API_index_uint16_t' into next
Fix issue related to the change in the VOLK API
2016-05-29 21:26:04 +02:00
Carles Fernandez
a826215778 Fix issue about the change in the VOLK API 2016-05-29 21:18:41 +02:00
Michael Dickens
99abf76dd4 Fix usage of volk_32f_index_max*, first argument, to be uint16_t* as required by the Volk API. 2016-05-27 22:51:34 -04: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
Luis Esteve
7ea560f3f7 Fix bug un pcps_acquisition_cc::set_local_code
Assign the length of the code correctly to the FFT

Resolves: #25
2016-05-13 05:16:59 +02:00
Luis Esteve
fd5cd42b9a Correct minor bug in pcps acquisition blocks
Change the initialization of max_dwells in pcps acquisition adpaters
due its value is forced to be 1 in gr_block constructor if boolean
"bit_transition_flag" is set to TRUE

Resolves: #24
2016-05-11 01:39:11 +02:00
Carles Fernandez
3bd59ec83e Remove unused queue from acquisition blocks
Now replaced by GNU Radio's message passing system
2016-05-09 16:44:54 +02:00
Carles Fernandez
50c16c9129 Remove unused variables 2016-05-08 08:31:38 +02:00
Luis Esteve
bfd86f8792 Changes initialization of acquisition variables
Rename "shift_resolution_" variable in some Acquisition adapters to
"doppler_max_" according to its meaning and change "ifreq" to "if"
because the value was not properly read. Delete unused variables.

Resolves: #23
2016-05-06 19:04:55 +02:00
Carles Fernandez
831cc75153 Remove tabs from the source code 2016-05-02 23:46:30 +02:00
Carles Fernandez
59e2e61cae Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next 2016-04-26 18:54:32 +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
0f80ce0159 Channel internal message queue is replaced by the asynchronous GNURadio
message system. Removing the deprecated channel internal queue and its
references. Some tests that are using the old channel queue are disabled
in this version
2016-04-15 16:33:41 +02:00
Javier Arribas
6ba8cea5f4 removed unused queue from PCPS acquisition constructors 2016-04-13 16:45:17 +02:00
Carles Fernandez
4d072833c5 minor cleaning 2016-04-10 10:29:25 +02:00
Carles Fernandez
ad5d509250 deleting unrequired include 2016-04-08 18:26:53 +02:00
Carles Fernandez
045d384061 small fixes and cleaning 2016-04-08 15:10:46 +02:00
Javier Arribas
1c2f897655 Refactoring the gnss_synchro member initializations and minor bug fixes. 2016-04-07 18:25:45 +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
Carles Fernandez
1983562496 The sincos kernel now accepts an initial phase 2016-03-21 00:38:08 +01:00
Carles Fernandez
9c8fc9436e Adding and integrating sincos kernel 2016-03-20 01:45:01 +01:00
Javier Arribas
b94253cb10 Bug fix and ammend last commit message: If DISABLED
(.Acquisition_1C.use_CFAR_algorithm=false) as an option in the
acquisition configuration, it allows setting more stable thresholds in
the presence of non-gaussian front-end noise (which is the usual
behavior of front-ends....)
2016-02-25 18:59:26 +01:00
Javier Arribas
4480c12d94 Added a non CFAR PCPS acquisition algorithm based on the estimation of
the post correlation noise floor. If enabled
(.Acquisition_1C.use_CFAR_algorithm=true) as an option in the
acquisition configuration, it allows setting more stable thresholds in
the presence of non-gaussian front-end noise (which is the usual
behavior of front-ends....)
2016-02-25 18:21:30 +01:00
Carles Fernandez
1f3554384d fix parallel building 2016-01-20 20:39:27 +01:00
Javier Arribas
ea35f33c83 Added native input sample interface support for 16 bits integer complex
in PCPS_Acquisition (added the _sc variant). Now the PCPS acquisiton
adapter requires no conversion when the receiver works with 16 bits
integer complex samples.
2016-01-20 18:24:03 +01:00
Carles Fernandez
2697fb6198 Cleaning includes 2016-01-10 22:21:31 +01:00
Carles Fernandez
0a1aa50c4a Cleaning includes
plus some code cleaning
2016-01-05 10:59:37 +01:00
Carles Fernandez
d0ac06d71d Cleaning includes 2016-01-04 22:56:52 +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
Cillian O'Driscoll
518deb501a Added IF handling to acq and tracking
Only GPS L1 CA DLL PLL tracking for now. Still experimental.
2015-11-26 15:12:26 +00:00
Cillian O'Driscoll
5b9683baad Multiple changes pcps acquisition: including linear corr.
Reduced zero_padding_factor in pcps acquisition

This was 16, I'm processing data at about 16MHz, this oversampling
factor caused memory allocation issues

Previously dump file name was not being read from the configuration

Added fix for non-zero IF in pcps_acquisition_cc

Added linear correlation to pcps acquisition.
2015-11-26 15:09:24 +00:00
Carles Fernandez
d3418ceeb5 Fix typo 2015-09-18 15:00:47 +02:00