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

505 Commits

Author SHA1 Message Date
Carles Fernandez
ba815abcde
Merge branch 'two-bit-sample-size' of https://github.com/jwmelto/gnss-sdr into jwmelto-two-bit-sample-size 2021-09-27 12:04:14 +02:00
Carles Fernandez
48b62e9585
If dump_filename points to a non-existing folder, try to create it 2021-09-24 16:52:13 +02:00
Jim Melton
530684d241
make clang-tidy happy 2021-09-22 20:02:36 -06:00
Jim Melton
06d1d2773b
change the packets per sample calculation for 2-bit files.
This is complicated and I botched it before.
Hopefully someone with access to 2-bit samples can test this
2021-08-24 15:03:48 -06:00
Javier Arribas
a694033755 LimeSDR source is now operative 2021-06-22 16:15:03 +02:00
Javier Arribas
514bb331ce Merging next branch 2021-06-21 17:00:27 +02:00
Carles Fernandez
27d0419f79
Remove abandoned Gn3s_Signal_Source and ENABLE_GN3S building option 2021-06-15 14:19:40 +02:00
Carles Fernandez
e966006d35
Fix usage of GNU Radio GR-IIO module API 2021-06-05 01:21:53 +02:00
Javier Arribas
bf7c52d510 Adding timestamp_source command line switch to change the timestamp file from command line 2021-05-04 16:00:38 +02:00
Javier Arribas
9802ac8af0 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into pps_lime 2021-04-28 11:05:10 +02:00
Carles Fernandez
16233d78cc
Apply minor cosmetic changes
Two blank lines within methods, for consistency with other files
2021-04-20 09:11:59 +02:00
Lenhart
595733bf67
moved logging output from template fct in header to source file to not have to include logging in header. Added maybe_unused to constructor argument which is unused to fix warning 2021-04-19 16:05:53 +02:00
Lenhart
dbc8ea18bf addressing feedback by @jwmelto
- documentation file name mismatch
- removed unnecc. headers
- changed std::cout to GLOG
- simlified read process for gr_complex data types
- seperated fifo end of file check from fail/other types (also added default case for unforseen events)
- changed vector to array for interleaved read fct

other changes:
- harmonized FIFO capitalization in docs
- changed gr_complex constructor. Real/Imaginary parts were swapped in upd source class used for reference. Not intuitive there though (swap= false will call constructor w/ (imag, real). Swapping should introduce just a phase shift, so it didn't break functionality for me either way.
2021-04-18 13:29:37 +02:00
Lenhart
2072197f0f header cleanup, added documentation comments 2021-04-17 22:51:34 +02:00
Lenhart
170e4666d1 overlooked one tab in a comment section which clang-tidy does not fix
this should fix the failing clang-tidy check
2021-04-17 19:40:57 +02:00
Lenhart
de57a26312 renamed is_complex to is_interleaved to better describe behavior, modernized c-style cast, fixed typo 2021-04-17 18:55:20 +02:00
Lenhart
4f66603464 Implemented a custom FIFO reading gnu radio block + adapter.
Reads samples from unix fifo into gnss-sdr.

Use cases:
- multiplex signal streams outside of gnss-sdr
- another program holds access to the SDR
- the SDR is not supported by gnss-sdr but can dump the signal to a fifo
2021-04-17 18:55:20 +02:00
Javier Arribas
c1880d1ece Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into pps_lime 2021-04-07 14:52:59 +02:00
Carles Fernandez
13a83092da
Fix warning -Wunused-private-field raised by clang 2021-04-04 11:01:14 +02:00
Carles Fernandez
9e1ee33cd2
Add multiple RF output capability to LabSat 3 Wideband format 2021-03-14 20:00:18 +01:00
Marc Majoral
4141164fac fixed FPGA dual-band post-processing mode. 2021-03-12 18:01:25 +01:00
Javier Arribas
02f3e0c3ed Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into pps_lime 2021-03-12 10:10:00 +01:00
Carles Fernandez
32c699befc
Add LabSat 3 Wideband format to Labsat_Signal_Source 2021-03-11 22:13:23 +01:00
Javier Arribas
42bece2dd4 Added experimental FileTimestampSignalSource to generate timestamp information using stream tags 2021-03-11 16:31:02 +01:00
Javier Arribas
933d3b3228 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into pps_lime 2021-03-11 10:07:05 +01:00
Marc Majoral
27470787a0 proper initialization of samples_to_skip_. Change samples_ from uint64_t to int64_t for the proper checking of the number of samples to process. 2021-03-05 19:02:40 +01:00
Carles Fernandez
a669ecbfa3
Include UHD path in the public interface of signal_source_adapters (fixes: #481) 2021-02-27 11:12:33 +01:00
Carles Fernandez
2e1e3b6308
Silence clang-tidy check 2021-02-24 12:09:13 +01:00
Carles Fernandez
5d78b87dbb
Apply clang tidy checks: readability-isolate-declaration, readability-inconsistent-declaration-parameter-name 2021-02-24 12:08:10 +01:00
Javier Arribas
ccc41b3851 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into pps_lime 2021-02-24 11:41:34 +01:00
Javier Arribas
56943fc12d Merge with next and enabling KF VTL experimental tracking 2021-02-24 11:41:27 +01:00
Carles Fernandez
07b401e3bc
Improve error messages in case of wrong configuration for the FPGA offloading flowgraph 2021-02-23 21:40:53 +01:00
Marc Majoral
79c968f279 modified some comments 2021-02-19 16:34:49 +01:00
Marc Majoral
f85a653285 stop the receiver in a controlled way on EOF or error condition.
+ add support for the following signal source configuration options: samples, repeat, seconds_to_skip, header_size
+ remove unused header files
2021-02-19 13:03:22 +01:00
Marc Majoral
e4de9c54de do not stop the receiver when buffer overflow is detected. 2021-02-18 12:32:44 +01:00
Carles Fernandez
73a728b3f6
Merge branch 'feature/signal_source_interface' of https://github.com/jwmelto/gnss-sdr into jwmelto-feature/signal_source_interface 2021-02-18 09:03:03 +01:00
Carles Fernandez
9403560427
Return back init() to connect() 2021-02-17 22:13:20 +01:00
Carles Fernandez
03e53477c7
Apply some mostly cosmetic changes
This is not so cosmetic: Moved init() chores from connect() to the constructor for consistency with other implementations. Not relevant here since files are not processed in real-time, but is it common practice in other blocks to set everything needed (and get all the resources) in the constructor, before connect()

Moved the constructor code to the top of the file, also for consistency with other files. This is an opinionated practice, I know, since one could expect the same order than in the header file.

Improved comment formatting for Doxygen

Added and removed some blank lines to match the style of other files (two blank lines within method implementations, no two consecutive blank lines inside the method. Again opinionated, but for the sake of consistency.

Included the <tuple> library (include what you use)
2021-02-17 22:07:22 +01:00
Jim Melton
704b99e633
another MacOS property ambiguity ... ARRRGGGHHH 2021-02-17 13:40:04 -07:00
Jim Melton
c221fd1c87
update copyright and move risky initializer into ctor body 2021-02-17 12:54:10 -07:00
Carles Fernandez
6d41fc8fb2
Fix Multichannel_File_Signal_Source
The constructor was not getting right the SignalSource.RF_channels value (role was moved before, so it was unusable)
2021-02-17 13:50:45 +01:00
Carles Fernandez
f703990a09
Fix building when using C++11
Update changelog
2021-02-17 09:43:05 +01:00
Jim Melton
ec7b4cc537
clang-tidy : change '1u' to '1U' 2021-02-16 00:34:49 -07:00
Jim Melton
a8959bdd87
more clang-tidy cleanup/suppression 2021-02-15 22:56:30 -07:00
Jim Melton
c67f23c913
fix clang-tidy complaints
some of these are ridiculous and so have been silenced. I'm a huge fan
of static code analysis but I have a hard time believing that writing
"0U" is a qualitative improvement over "0u".
2021-02-15 21:30:50 -07:00
Jim Melton
35f07b76a0
the Mac compiler is really annoying (and not that arguably correct...) 2021-02-15 18:37:38 -07:00
Jim Melton
957a13e6ef
fix MacOS ambiguity error 2021-02-15 17:51:42 -07:00
Jim Melton
6e04a42c8a
clang-format
This was much worse than I thought. I had run clang-format at some point, but
apparently I subsequently made some non-compliant changes in pretty much every
file I touched.
2021-02-15 15:34:48 -07:00
Jim Melton
41c7a7ad7d
fix whitespace 2021-02-15 13:46:12 -07:00
Marc Majoral
b279c3bcbd replace exception by receiver stop command 2021-02-15 21:44:05 +01:00
Jim Melton
75483e1d2d
refactor two_bit_packed_file_signal_source
(signed for DCO)
2021-02-15 13:15:50 -07:00
Jim Melton
353680bc99 add 2bit_cpx file source 2021-02-15 11:47:13 -07:00
Jim Melton
4399aa5d10 next round of abstraction. Add nsr_file_signal_source 2021-02-15 11:47:13 -07:00
Jim Melton
c8ecc907c9 save before checkin 2021-02-15 11:47:13 -07:00
Jim Melton
1854cec106 first subclass of file_source_base
Refactored the base implementation to add appropriate virtual hooks so subclasses
can easily extend without duplicating a lot of code.
2021-02-15 11:47:13 -07:00
Jim Melton
a3c9dd4325 remove commented code 2021-02-15 11:47:13 -07:00
Jim Melton
4282386a30 simplify get_right_block() 2021-02-15 11:47:13 -07:00
Jim Melton
e0eb4bd769 initial implementation of common file source base class
Only the file_signal_source uses it at this time; changing multi-channel
to use it can be done with a little work
2021-02-15 11:47:13 -07:00
Jim Melton
78362e7cba add signal_source_interface
also adds a base implementation that most signal sources should inherit from.
The gen_signal_source is inexplicably different (probably as a test fixture,
commonality was not valued).

Only the file_signal_source has been tested; all the sources are modified in the same
way, but we all know the only proof of correctness is testing.

The block factory was simplified a bit. Handling for legacy config files was pulled out
of the flowgraph; now when the "0" instance of a component (Foo0) is created, if there is
no config for it, then the legacy version (Foo) will be tried. This is different from
passing -1 for the item number (which is still supported). Theoretically, all existing
config files should still work.
2021-02-15 11:47:13 -07:00
Jim Melton
8407acb7a7 WIP: initial commit for collaboration 2021-02-15 11:47:13 -07:00
Marc Majoral
c0e4b2aee5 dump the buffer monitor results to a file 2021-02-15 11:53:16 +01:00
Marc Majoral
03e8f97d2e real-time FPGA receiver buffer monitoring 2021-02-13 17:10:43 +01:00
Javier Arribas
7183618079 Fix config parameter names 2021-02-05 10:19:53 +01:00
Javier Arribas
5dd34b5e1b Merge with next 2021-01-27 10:21:16 +01:00
Carles Fernandez
2f627581ef
Fix error handling issues detected by Coverity Scan 2020.09 2021-01-25 13:35:47 +01:00
Javier Arribas
253b4b9a97 Adding LimeSDR signal source adapter, not usable yet 2021-01-22 17:45:26 +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
8b3a77cdb4
Fix building if ENABLE_AD9361=ON bu ENABLE_FPGA=OFF 2020-11-29 10:18:35 +01:00
Carles Fernandez
9523ebdffd
Add override keyword 2020-11-29 10:15:28 +01:00
Marc Majoral
44fa6c6851 fixed the link to core_libs 2020-11-27 16:45:14 +01:00
Marc Majoral
5114d91ffc replaced tabs with spaces 2020-11-27 13:49:14 +01:00
Marc Majoral
312e8c6c9c cleaned comments 2020-11-27 12:21:10 +01:00
Marc Majoral
3047051835 The dynamic bit selector modules determine the uio device file that is assigned to them using the hardware accelerator device name in the FPGA. The Switch device name is not configurable. 2020-11-27 11:24:44 +01:00
Marc Majoral
a53109c718 The sample counter, the Acquisition and the Switch determine the uio device file that is assigned to them using the hardware accelerator device name in the FPGA 2020-11-26 17:07:15 +01:00
Carles Fernandez
f0e1ef6f9a
Add a common shared pointer definition
Makes transition to GNU Radio 3.9 API less verbose
2020-11-03 20:51:57 +01:00
Carles Fernandez
287284261c
Make use of Doxygen grouping feature
Improve Modules page in generated HTML documentation
2020-11-01 13:37:19 +01:00
Marc Majoral
beddfb6f73 close the DMA descriptor properly. 2020-10-16 09:05:10 +02:00
Marc Majoral
933873c265 When using the FPGA in post-processing mode, start the DMA after instantiating the complete flowgraph, not before. 2020-09-10 10:08:25 +02:00
Carles Fernandez
a9472dea30
Remove redundant void (clang-tidy modernize-redundant-void-arg) 2020-08-27 12:48:20 +02:00
Carles Fernandez
cd91722d2f
Parameter renaming to throttle_frequency_sps 2020-08-27 12:14:00 +02:00
Javier Arribas
845385861d Adding throttle support in LabSat file signal source 2020-08-22 16:46:21 +02:00
Carles Fernandez
7221044db3
Remove unused includes 2020-08-09 13:01:01 +02:00
Carles Fernandez
0b1befd128
hotfix: fix Uhd_Signal_Source building with GCC 10
Fix out-of-bound access in debug mode
2020-07-29 13:47:00 +02:00
Carles Fernandez
499de7a9f1
Update file headers 2020-07-28 16:57:15 +02:00
Carles Fernandez
8633c03cf9
Remove unused lines
Some more const correctness
2020-07-28 01:33:26 +02:00
Carles Fernandez
76cce022ac
Fix building in Ubuntu 20.10 2020-07-27 09:53:01 +02:00
Carles Fernandez
7bececeef6
Improve const correctness
Remove all buprone conversions from signal_generator module
2020-07-17 09:11:42 +02:00
Carles Fernandez
9b029ec027
Merge branch 'dynamic_bit_selection' of https://github.com/mmajoral/gnss-sdr into mmajoral-dynamic_bit_selection 2020-07-16 18:56:13 +02:00
Marc Majoral
98f1287f0e dynamic bit selection based on the estimated power of the received signal. 2020-07-16 15:42:55 +02:00
Carles Fernandez
71a0b07e09
Stopping the uhd source saves a crash on exit 2020-07-16 12:43:46 +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
09bcd1981c Replace std::endl by \n character. There is no need to always flush the stream. 2020-07-07 18:53:50 +02:00
Carles Fernandez
7d34866717
Add Rodrigo Muñoz to the list of Contributors 2020-07-03 23:55:01 +02:00
Carles Fernandez
fcf1b97c30
Fix call to overloded property in GCC 2020-07-03 21:52:40 +02:00
Carles Fernandez
cec63d3aad
Fix call to overloded property 2020-07-03 21:37:57 +02:00
Carles Fernandez
fb8e5e5c47
Fix a bug in signal sources that made the number of samples parameter ignored when too large (Fixes: #396) 2020-07-03 20:18:42 +02:00
Carles Fernandez
c412d0a3f5
Fix clang warning: equality comparison with extraneous parentheses 2020-07-02 10:53:51 +02:00
Marc Majoral
6ae4ddb3b8 init nread_elements to prevent compiler warning. 2020-07-02 10:33:36 +02:00
Carles Fernandez
7634934995
Fix ccplint job 2020-07-01 20:04:40 +02:00
Marc Majoral
975f22f53d fixed program termination when using the FPGA in post-processing mode: the DMA process was not properly checking enable_DMA. 2020-07-01 17:42:40 +02:00
Carles Fernandez
2b3d4b321d
Make the adapters take the configuration pointer as const 2020-06-29 09:07:41 +02:00
Carles Fernandez
a01dfa4052
Fix clang-format and clang-tidy jobs 2020-06-27 11:52:59 +02:00
Carles Fernandez
1569f238ac
Fix clang-format jbb 2020-06-27 10:56:51 +02:00
Carles Fernandez
03d350551f
Sort private members in headers 2020-06-26 22:07:41 +02:00
Carles Fernandez
5a3db5a53d
Add debug internal logging for destructors. Sort destructor order 2020-06-25 02:50:07 +02:00
Carles Fernandez
df7c466de0
Sort data members in headers 2020-06-24 22:27:51 +02:00
Carles Fernandez
81af1a531b
Redesign of pointer management
Avoid indirection caused by passing shared_ptr by reference

The block factory does not have responsability on the lifetime of their inputs

Define std::make_unique when using C++11 and make use of it

Printers are turned into unique_ptr to express ownership

Printers do not participate on the lifelime of the data, so they take const raw pointers

Modernize tests code
2020-06-18 11:49:28 +02:00
Carles Fernandez
0df4277d36
Unify criteria in target definitions, more informative names 2020-06-13 00:32:40 +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
27f6b0c290
Fixes for GNU Radio 3.9 2020-04-03 00:41:51 +02:00
Carles Fernandez
865a54ddff
Apply clang-format 2020-04-03 00:17:22 +02:00
Carles Fernandez
3519107131
Add compatibility with the new GNU Radio 3.9 API that uses C++11 standard smart pointers instead of Boost smart pointers 2020-04-02 23:59:35 +02:00
Carles Fernandez
5f974a8f17
Replace boost::shared_ptr by std::shared_ptr 2020-04-02 13:23:20 +02:00
Carles Fernandez
2df45a2d06
Remove tabs 2020-03-31 00:34:26 +02:00
Marc Majoral
0a14a1aa42 fixed DMA input file configuration options 2020-03-30 17:43:09 +02:00
Carles Fernandez
52b2b8b9d8
Use variable instead of function in constructor 2020-03-12 19:15:11 +01:00
Carles Fernandez
299cb1a2ee
Remove usage of uninitialized variables in CMake scripts
Remove all warnings emitted by cmake --warn-uninitialized ..
2020-02-29 14:33:09 +01:00
Carles Fernandez
2ded19342f
Improve headers 2020-02-12 00:04:29 +01:00
Carles Fernandez
955348b080
Remove trailing underscore in header guards 2020-02-08 10:10:46 +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
Carles Fernandez
d6ec2a7b2c
Update links (mainly from http to https, fix broken links) 2020-02-05 21:24:46 +01:00
Carles Fernandez
37f427844d Apply clang-format 2019-10-28 13:00:18 +01:00
Marc Majoral
f3485bb39b Throttle the DMA to give more time to other signal processing tasks. 2019-10-28 12:51:11 +01:00
Carles Fernandez
a9b0ff184d
Add energy-saving options for AD9361
New flag rf_shutdown, true by default, allows setting the RX and TX streams ON when set to false.
New parameters rx1_enable and rx2_enable, true by default, allow to disable the secondary RX channel when not used
2019-10-13 23:38:06 +02:00
Carles Fernandez
61c22ed53b
Set default freq_dds_tx_hz parameter to 10 kHz 2019-10-11 12:02:53 +02:00
Carles Fernandez
3307edc1c9 Add Gnuradio::analog target for old gr-iio versions 2019-10-10 12:26:19 +02:00
Carles Fernandez
3f21367587 Fix building in some configurations 2019-10-10 10:40:37 +02:00
Carles Fernandez
cb99011de8
Fix building 2019-10-10 08:12:25 +02:00
Carles Fernandez
94bef678af
Set definition to PRIVATE 2019-10-09 22:24:29 +02:00
Carles Fernandez
7e823123a2
Improve doc provided in terminal 2019-10-09 22:17:44 +02:00
Carles Fernandez
e4a39188f5
Implement FIR filter configuration 2019-10-09 20:50:06 +02:00
Carles Fernandez
0dbba0500d Add more parameter guards 2019-10-08 16:38:30 +02:00
Carles Fernandez
daa30c992c Remove unused parameters 2019-10-08 14:47:28 +02:00
Carles Fernandez
bdabbf7f85 Implement phase_dds_deg parameter, fix guard for tx_bandwidth 2019-10-08 12:57:37 +02:00
Carles Fernandez
48a62594eb
Add work on RF configuration parameters for AD9361 2019-10-07 22:45:09 +02:00
Carles Fernandez
b5c253fd8f
Implement more configuration options for AD9361 2019-10-06 19:07:24 +02:00
Carles Fernandez
1e0c789c84
Prepare for gr-iio integration into GNU Radio 2019-10-05 21:12:54 +02:00
Marc Majoral
d20284fbc0 removed unused parameters 2019-10-02 15:25:46 +02:00
Marc Majoral
3a9e48c31c applied clang-format 2019-10-01 23:44:07 +02:00
Marc Majoral
e9470f566e fixed L1 and L2/L5 frequency band selection. 2019-10-01 23:13:28 +02:00
Marc Majoral
b932c5ef98 added the enable_DMA_ flag, which is used to stop the DMA when the user quits gnss-sdr, and the receiver is using the FPGA and the receiver is working in post-processing mode. 2019-10-01 22:26:30 +02:00
Marc Majoral
03cc2698bd removed the assert() function, which did not work properly. 2019-10-01 15:53:45 +02:00
Carles Fernandez
453c0cd249
Inject file(s) via DMA if switch_position=0 in Ad9361_Fpga_Signal_Source 2019-09-28 21:59:05 +02:00
Carles Fernandez
4dc30da649 Remove unused variables 2019-09-23 14:34:44 +02:00
Carles Fernandez
d137fda820
Apply clang-tidy 2019-09-13 13:35:26 +02:00
Carles Fernandez
e80122f4ff
Apply clang tidy checks and clang-format 2019-09-13 08:56:37 +02:00
Carles Fernandez
0520d400b3 Apply clang-tidy 2019-09-11 22:31:34 +00:00
Carles Fernandez
24872c02dc
Uniformize header guards 2019-09-07 16:42:22 +02:00
Carles Fernandez
9eb294209a
Allow packaging when gr-iio is not present 2019-09-07 16:41:27 +02:00
Carles Fernandez
38a987607e
Make use of the new Boost::headers target introduced in CMake 3.15 2019-09-07 12:36:19 +02:00