1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-12-17 05:30:34 +00:00
Commit Graph

325 Commits

Author SHA1 Message Date
Carles Fernandez
47c9ad0160
Save results for all executions, not just the last one 2018-06-21 08:05:33 +02:00
Carles Fernandez
c0337528f5
Store results also when using the refinement stage 2018-06-20 20:48:43 +02:00
Carles Fernandez
f133392a8c
Fix bug in matio usage 2018-06-20 20:16:19 +02:00
Carles Fernandez
423176de7b Replace acq configuration struct by a class 2018-06-19 12:59:54 +02:00
Carles Fernandez
ebd8b46e51 Remove if parameter from Acquisition and Tracking blocks 2018-06-06 17:25:03 +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
Carles Fernandez
7754fc66a6 Code cleaning 2018-05-09 13:09:26 +02:00
mmajoral
0b9b9f4c39 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga.
Use a generic tracking radio block class for the tracking code that uses the FPGA HW accelerators.
2018-05-09 11:11:12 +02:00
mmajoral
4fa5648aa4 Currently creating a generic tracking class for the FPGA in the same way as it is done in the SW. 2018-05-03 10:38:21 +02:00
Carles Fernandez
0494d9b5a8
Avoid claah between volk and volk_gnsssdr defines 2018-04-30 20:58:53 +02:00
Carles Fernandez
6d6b583169
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into mmajoral-fpga 2018-04-30 19:23:35 +02:00
mmajoral
4433c0c6be Minor code cleaning. 2018-04-30 11:59:56 +02:00
Carles Fernandez
a2eb5d5344
Improve readability, reorder includes 2018-04-29 13:26:21 +02:00
Carles Fernandez
01429132bd
Avoid clash of redefined macros with Volk 2018-04-29 02:51:50 +02:00
mmajoral
512bf3f4cf Created a generic gnuradio block acquisition class for the FPGA. 2018-04-27 20:00:50 +02:00
Carles Fernandez
31e634635c
Move general_work to the bottom of the file 2018-04-13 11:07:58 +02:00
Javier Arribas
8e59a42ae2 Merge Next with FPGA. Adding software-defined emulation of the sample counter 2018-04-06 17:03:20 +02:00
Antonio Ramos
e42149c9e5 Add number of doppler bins and doppler step in two step acquisition 2018-04-05 12:42:28 +02:00
Antonio Ramos
44635a41b3 Add two step acquisition funcionality 2018-04-04 14:59:28 +02:00
Carles Fernandez
97e5d88623 Minor fixes: typos, includes 2018-03-26 15:06:14 +02:00
Carles Fernandez
6de9c728f9 Merge branch 'glonass_l2_ca' of https://github.com/dmiralles2009/gnss-sdr into dmiralles2009-glonass_l2_ca 2018-03-26 10:30:56 +02:00
Carles Fernandez
0400034d14 Fix typos detected by codespell 2018-03-25 19:47:28 +02:00
Damian Miralles
287d38dea2 GLONASS L2 CA Signal Addition
Adds GLONASS L2 C/A signal processing to GNSS-SDR based on previous
work developed for the L1 signal. All code have been added in a single
commit with the idea to illustrate the process of signal addition for
future work
2018-03-24 12:44:26 -06:00
Javier Arribas
7c406bb6eb Merging fpga with next 2018-03-05 11:03:59 +01:00
Carles Fernandez
07b25ebb06 Apply clang-format to the whole source tree 2018-03-04 02:04:27 +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
Carles Fernandez
c9ac8c78af Move OpenCL-related files to a folder 2018-03-02 15:48:38 +01:00
Javier Arribas
288dd481e7 Updating FPGA acquisition modules 2018-03-02 12:23:10 +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
Carles Fernandez
5c77a394d7 Replace memset by std::fill_n 2018-02-25 13:34:13 +01:00
Carles Fernandez
946d3dae9f Replace memset by std::fill_n. This fix warnings in GCC 8.0.1 (Fedora
Rawhide). The warnings were:

 warning: 'void* memset(void*, int, size_t)' clearing an object of
non-trivial type 'struct std::complex<float>'; use assignment or
value-initialization instead [-Wclass-memaccess]
2018-02-25 13:27:27 +01:00
Carles Fernandez
4c408f5239 Fix building in ArchLinux 2018-02-23 17:57:53 +01:00
Gastd
300604eb85 Fix memory leak 2018-02-12 03:04:27 -02:00
Carles Fernandez
c945ddcacd Initialize all members in the constructor 2018-02-08 12:49:53 +01:00
Carles Fernandez
413ab8c8cf Rename pcps_acquisition_cc to pcps_acquisition 2018-02-07 08:43:44 +01:00
Antonio Ramos
25634963cc Remove pcps_acq_sc
Integrate cshort into pcps_acq_cc
2018-02-06 16:55:09 +01:00
Antonio Ramos
41712e4722 Migrate pcps_acq_sc to new grid 2018-02-06 13:11:15 +01:00
Carles Fernandez
fd8fcc0f8f Remove unrequired includes 2018-02-05 07:31:34 +01:00
Antonio Ramos
f8e5b0e705 Set matio min ver. 2018-01-30 16:48:58 +01:00
Antonio Ramos
42dc14b2bb Merge branch 'next' into new_acq_grid 2018-01-30 15:36:05 +01:00
Antonio Ramos
f6aa86f60c Adapt tests to .mat dump files 2018-01-26 13:34:02 +01:00
Antonio Ramos
2153e24169 Handle errors when opening acquisition dump files 2018-01-24 10:17:26 +01:00
Carles Fernandez
b301ed19c6 Merge remote-tracking branch 'upstream/next' into glonass 2018-01-24 00:52:09 +01:00
Antonio Ramos
ba38f8286d Modify dump file pcps acquisition 2018-01-23 16:56:31 +01:00
Antonio Ramos
5ebb060ba1 Merge branch 'next' into new_fsm 2018-01-10 16:27:56 +01:00
Antonio Ramos
2749d2518b Fix sample counting 2018-01-10 11:08:06 +01:00
Antonio Ramos
188df6c5b8 Clean pcps acquisition 2018-01-09 17:55:32 +01:00
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
Carles Fernandez
877192ed76 ensuring that members are initialized at the constructor 2015-05-29 20:23:13 +02:00
Carles Fernandez
4fe35f760b ensure that all members are initialized at the constructor 2015-05-26 20:36:20 +02:00
Carles Fernandez
75a09fc08f set a non-zero doppler step if not set 2015-05-24 20:20:04 +02:00