1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-11-15 06:14:58 +00:00
Commit Graph

9728 Commits

Author SHA1 Message Date
Carles Fernandez
2e1a96a7c4
Fix merge conflict 2024-09-25 18:29:21 +02:00
Carles Fernandez
67cc301408
Merge branch 'osnma-cesare' of https://github.com/cesaaargm/osnma into cesaaargm-osnma-cesare 2024-09-25 18:21:19 +02:00
Carles Fernandez
44344e1371
Merge branch 'osnma-cesare' of https://github.com/cesaaargm/osnma into osnma-cesare 2024-09-23 09:21:53 +02:00
Carles Fernandez
abc07e414b
Merging next, solving conflicts (#28)
* Decouple the FPGA DMA signal source from the AD9361 FPGA signal source.

* Add the MAX2771_EVKIT FPGA signal source and the ENABLE_FPGA_MAX2771_EVKIT flag to enable it.

* Adjust cross-compilation flags to properly support FPGA signal sources

* fix signal source names for consistency

* Detect if the spidev driver is installed when the ENABLE_MAX2771 flag is set. Detect if the DMA proxy driver is installed when the ENABLE_DMA_PROXY flag is set. Check if ENABLE_FPGA is set when either ENABLE_MAX2771 or ENABLE_DMA_PROXY is set.

* fix FPGA signal source names for consistency

* Fix FPGA-related CMakefile flags

* make cpplint happy

* make cpplint happy

* make cmakelint happy

* make clang-format happy

* Replaced the AD9361 FPGA signal source with the ADRV9361_Z7035 FPGA and the FMCOMMS5 FPGA signal sources.

* Bump local version of GoogleTest to 1.15.2 and Protocol Buffers to 27.3

* Avoid code duplication in CMake modules

* Update clang-tidy job

* Clang Tidy fixes

* Improve efficiency of Concurrent_Map and Concurrent_Queue classes

* Fix segmentation fault if the SignalSource implementation is not available

* Moved decimation factor count variable to the class

* Avoid possible runtime error when PVT.enable_rx_clock_correction=true

* Fix formatting

* Fix clang-tidy job

* Capitalize FPGA in class implementation names

* Capitalize acronyms in FPGA-related class names

* Instantiate sources only once

* Update changelog

* Bump version of google benchmark to 1.9.0

* Fix CMakeLists header file list in signal source libs

Header file paths were being appended to the source files list.

This is not that important since, in general, you don't need to add the header files to the cmake target.

* Added ION GNSS SDR Metadata Standard signal source

* Only specify outputs for the requested streams

* Fixed block iteration withing a file

The `File` object only holds a shallow reference to its `Lane` (without the list of blocks). So we must retrieve the full reference manually.

* Treat data file paths as relative to the metadata file

The data file paths are actually not native paths but URLs, this covers most cases but not all of them.

* Fixed decoding errors and refactored each class into its own file

* Fixed sample count error & refactored

* Bufferef IO & propagate configuration inside ION source

* Reset sample value before writing new one

Sample values are ORed into the output buffer because they may need a few read/write operations depending on alignment.
So, if we don't set the value to 0 before doing this, all samples quickly become 0xFF after a few cycles of the output buffer.

* Simpler handling of simpler bit formats

If a sample is the same size as a word, it is much easier to read.

* Less callback shenanigans

* Fix wrong buffer size

* Fixed conditional compilation issues

And added a comment

* Linting fixes

* Fixed arithmetic operations on pointers

* Fix formatting

* Use lock_guard instead of unique_lock

* Create a CMake target for the ION dependency for consistency

* Improve formatting, add missing include

* Fixes for C++ standards older than 20. Avoid C++20-specific lambda templates

* Update changelog

* Add Victor to the list of authors

* Fix CMake error

* Fix building error

* Fix building

* Add -DENABLE_ION=ON to CI jobs

* Fix CMake lists

* Catch all exceptions

* Fix building for -DENABLE_PLUTOSDR=ON

* Removed unused member fields and function parameters

* Use std::ifstream instead of FILE for reading sample data

* Fixed includes and code style

* Simplified disconnect() function

We can disconnect the sources directly instead of disconnecting each of their outputs.

* Implemented range check in `IONGSMSSignalSource::get_right_block(int)`

* Moved ION GSMS file source to `gnuradio_blocks/` directory

Also fixed some header guards.

* Fixed ION GNSS Metadata Standard dependency version

* Simplified by removing a very shallow class

`ion_gnss_metadata_handler` was only reading the metadata file, which can easily be done in `ion_gsms_signal_source`.

* Added valves to properly handle end of samples

* Cleaner exit if the data file is not found

* Fix uninitialized warning

* Remove unused configuration parameter. Uniformize guard names

* Fix for CMake < 3.14

* fix configuration options for the FPGA-based AD9361-based boards

* Put the global function into an anonymous namespace

Use emplace_back instead of push_back

* Make private member metadata_ a std::shared_pointer

* Simplify code

* Remove ION source from CI

* Apply clang-tidy fixes

* Initialize the receiver local oscillator frequency to GPS_L5_FREQ_HZ by default in the ADRV9361Z7035 FPGA signal source and remove unnecessary include files.

* Sort out building flags and improve their reporting

* Allow building Ad936x_Custom_Signal_Source when gnuradio-iio is not available

* Bump local version of Protocol Buffers to v28.0

* Update AArch64 features to Linux 6.10.6

* Update AArch64 features to Linux 6.10.6

* Fix: Windows does not define __ARM_NEON

* Improve detection of the dma_proxy module and the spidev driver

* Add missing include (fixes building with modern GCC)

* Adapted udp_port to multiple ports

* Fixed typo

* Fixed clang format

* Update changelog

* Add Xavier Guerrero to the authors list

* Update changelog

* Bump local version of Protocol Buffers to 28.1

* Add install and uninstall targets to nav_msg_listener

* Add Cesare to the authors list

* Add OSNMA to changelog

* Leave OSNMA files in the same folder for consistency

* Fix conflict

---------

Co-authored-by: Marc Majoral <majoralmarc@gmail.com>
Co-authored-by: cesaaargm <cesare.martinez@proton.me>
Co-authored-by: Xavier Guerrero-Pau <xguerrero@cttc.es>
Co-authored-by: Victor Castillo <victorcastilloaguero@gmail.com>
2024-09-21 11:40:17 +02:00
Carles Fernandez
d40e3427d4
Add install and uninstall targets to nav_msg_listener 2024-09-16 18:13:12 +02:00
Carles Fernandez
c61d69b627
Bump local version of Protocol Buffers to 28.1 2024-09-12 21:24:01 +02:00
Carles Fernandez
fe58ba563c
Update changelog 2024-09-12 21:22:54 +02:00
Carles Fernandez
3bd38a1ca0
Add Xavier Guerrero to the authors list 2024-09-09 17:12:27 +02:00
Carles Fernandez
d449465a25
Update changelog 2024-09-09 17:10:24 +02:00
Xavier Guerrero-Pau
c9277539ff Fixed clang format 2024-09-09 16:44:37 +02:00
Xavier Guerrero-Pau
fdc4e4078e Fixed typo 2024-09-09 16:44:37 +02:00
Xavier Guerrero-Pau
94ab8a7006 Adapted udp_port to multiple ports 2024-09-09 16:44:37 +02:00
Carles Fernandez
34ddbb80f1
Merge branch 'osnma-cesare' of https://github.com/cesaaargm/osnma into osnma-cesare 2024-09-08 10:39:51 +02:00
Carles Fernandez
b981f8065e
Add missing include (fixes building with modern GCC) 2024-09-08 09:41:36 +02:00
Carles Fernandez
85f935afe9
Improve detection of the dma_proxy module and the spidev driver 2024-09-06 15:46:23 +02:00
Carles Fernandez
951520f581
Fix: Windows does not define __ARM_NEON 2024-09-05 16:38:04 +02:00
Carles Fernandez
3ec25f2347
Merge from upstream next (#27)
* Decouple the FPGA DMA signal source from the AD9361 FPGA signal source.

* Add the MAX2771_EVKIT FPGA signal source and the ENABLE_FPGA_MAX2771_EVKIT flag to enable it.

* Adjust cross-compilation flags to properly support FPGA signal sources

* fix signal source names for consistency

* Detect if the spidev driver is installed when the ENABLE_MAX2771 flag is set. Detect if the DMA proxy driver is installed when the ENABLE_DMA_PROXY flag is set. Check if ENABLE_FPGA is set when either ENABLE_MAX2771 or ENABLE_DMA_PROXY is set.

* fix FPGA signal source names for consistency

* Fix FPGA-related CMakefile flags

* make cpplint happy

* make cpplint happy

* make cmakelint happy

* make clang-format happy

* Replaced the AD9361 FPGA signal source with the ADRV9361_Z7035 FPGA and the FMCOMMS5 FPGA signal sources.

* Bump local version of GoogleTest to 1.15.2 and Protocol Buffers to 27.3

* Avoid code duplication in CMake modules

* Update clang-tidy job

* Clang Tidy fixes

* Improve efficiency of Concurrent_Map and Concurrent_Queue classes

* Fix segmentation fault if the SignalSource implementation is not available

* Moved decimation factor count variable to the class

* Avoid possible runtime error when PVT.enable_rx_clock_correction=true

* Fix formatting

* Fix clang-tidy job

* Capitalize FPGA in class implementation names

* Capitalize acronyms in FPGA-related class names

* Instantiate sources only once

* Update changelog

* Bump version of google benchmark to 1.9.0

* Fix CMakeLists header file list in signal source libs

Header file paths were being appended to the source files list.

This is not that important since, in general, you don't need to add the header files to the cmake target.

* Added ION GNSS SDR Metadata Standard signal source

* Only specify outputs for the requested streams

* Fixed block iteration withing a file

The `File` object only holds a shallow reference to its `Lane` (without the list of blocks). So we must retrieve the full reference manually.

* Treat data file paths as relative to the metadata file

The data file paths are actually not native paths but URLs, this covers most cases but not all of them.

* Fixed decoding errors and refactored each class into its own file

* Fixed sample count error & refactored

* Bufferef IO & propagate configuration inside ION source

* Reset sample value before writing new one

Sample values are ORed into the output buffer because they may need a few read/write operations depending on alignment.
So, if we don't set the value to 0 before doing this, all samples quickly become 0xFF after a few cycles of the output buffer.

* Simpler handling of simpler bit formats

If a sample is the same size as a word, it is much easier to read.

* Less callback shenanigans

* Fix wrong buffer size

* Fixed conditional compilation issues

And added a comment

* Linting fixes

* Fixed arithmetic operations on pointers

* Fix formatting

* Use lock_guard instead of unique_lock

* Create a CMake target for the ION dependency for consistency

* Improve formatting, add missing include

* Fixes for C++ standards older than 20. Avoid C++20-specific lambda templates

* Update changelog

* Add Victor to the list of authors

* Fix CMake error

* Fix building error

* Fix building

* Add -DENABLE_ION=ON to CI jobs

* Fix CMake lists

* Catch all exceptions

* Fix building for -DENABLE_PLUTOSDR=ON

* Removed unused member fields and function parameters

* Use std::ifstream instead of FILE for reading sample data

* Fixed includes and code style

* Simplified disconnect() function

We can disconnect the sources directly instead of disconnecting each of their outputs.

* Implemented range check in `IONGSMSSignalSource::get_right_block(int)`

* Moved ION GSMS file source to `gnuradio_blocks/` directory

Also fixed some header guards.

* Fixed ION GNSS Metadata Standard dependency version

* Simplified by removing a very shallow class

`ion_gnss_metadata_handler` was only reading the metadata file, which can easily be done in `ion_gsms_signal_source`.

* Added valves to properly handle end of samples

* Cleaner exit if the data file is not found

* Fix uninitialized warning

* Remove unused configuration parameter. Uniformize guard names

* Fix for CMake < 3.14

* fix configuration options for the FPGA-based AD9361-based boards

* Put the global function into an anonymous namespace

Use emplace_back instead of push_back

* Make private member metadata_ a std::shared_pointer

* Simplify code

* Remove ION source from CI

* Apply clang-tidy fixes

* Initialize the receiver local oscillator frequency to GPS_L5_FREQ_HZ by default in the ADRV9361Z7035 FPGA signal source and remove unnecessary include files.

* Sort out building flags and improve their reporting

* Allow building Ad936x_Custom_Signal_Source when gnuradio-iio is not available

* Bump local version of Protocol Buffers to v28.0

* Update AArch64 features to Linux 6.10.6

* Update AArch64 features to Linux 6.10.6

* Fix merging

---------

Co-authored-by: Marc Majoral <majoralmarc@gmail.com>
Co-authored-by: cesaaargm <cesare.martinez@proton.me>
Co-authored-by: Xavier Guerrero-Pau <xguerrero@cttc.es>
Co-authored-by: Victor Castillo <victorcastilloaguero@gmail.com>
2024-08-31 10:07:44 +02:00
Carles Fernandez
1088387f75
Update AArch64 features to Linux 6.10.6 2024-08-30 07:52:37 +02:00
Carles Fernandez
792ec38989
Update AArch64 features to Linux 6.10.6 2024-08-29 20:30:54 +02:00
Carles Fernandez
89dfadb535
Bump local version of Protocol Buffers to v28.0 2024-08-29 08:53:39 +02:00
Carles Fernandez
310685cd20
Allow building Ad936x_Custom_Signal_Source when gnuradio-iio is not available 2024-08-28 11:09:56 +02:00
Carles Fernandez
3f3321f5a7
Sort out building flags and improve their reporting 2024-08-27 15:14:01 +02:00
Carles Fernandez
98a8a0ac64
Merge branch 'mmajoral-init_freq_config_param' into next 2024-08-26 10:19:23 +02:00
Marc Majoral
1384ebef55
Initialize the receiver local oscillator frequency to GPS_L5_FREQ_HZ by default in the ADRV9361Z7035 FPGA signal source and remove unnecessary include files. 2024-08-26 09:03:56 +02:00
Carles Fernandez
c4e84ffcfc
Apply clang-tidy fixes 2024-08-23 07:02:56 +02:00
Carles Fernandez
4dee92ddf5
Remove ION source from CI 2024-08-22 15:44:10 +02:00
Carles Fernandez
cd35ff75db
Merge branch 'castle055-ft/ion-metadata-standard-signal-source' into next 2024-08-22 15:42:02 +02:00
Carles Fernandez
d5122c4e5a
Simplify code 2024-08-22 14:50:40 +02:00
Carles Fernandez
d7885036b6
Make private member metadata_ a std::shared_pointer 2024-08-22 14:49:33 +02:00
Carles Fernandez
8702f9dfc7
Put the global function into an anonymous namespace
Use emplace_back instead of push_back
2024-08-22 13:26:17 +02:00
Carles Fernandez
52c91fd1ca
Merge branch 'ft/ion-metadata-standard-signal-source' of https://github.com/castle055/gnss-sdr into castle055-ft/ion-metadata-standard-signal-source 2024-08-22 12:10:57 +02:00
Victor Castillo
1c2fbb74fa
Merge remote-tracking branch 'carlesfernandez/castle055-ft/ion-metadata-standard-signal-source' into ft/ion-metadata-standard-signal-source 2024-08-21 17:10:07 +02:00
Carles Fernandez
159143d23c
Merge branch 'mmajoral-fix_ad9361_config_params' into next 2024-08-21 16:19:56 +02:00
Marc Majoral
1ac7e0ca1f
fix configuration options for the FPGA-based AD9361-based boards 2024-08-21 14:48:37 +02:00
Carles Fernandez
7f5704917f
Fix for CMake < 3.14 2024-08-20 15:21:39 +02:00
Carles Fernandez
ca150572d1
Remove unused configuration parameter. Uniformize guard names 2024-08-20 15:12:38 +02:00
Carles Fernandez
4929d87759
Fix uninitialized warning 2024-08-20 14:58:01 +02:00
Carles Fernandez
9bf3f457c3
Cleaner exit if the data file is not found 2024-08-20 14:54:15 +02:00
Carles Fernandez
94e49fb2ec
Merge branch 'ft/ion-metadata-standard-signal-source' of https://github.com/castle055/gnss-sdr into castle055-ft/ion-metadata-standard-signal-source 2024-08-20 08:03:22 +02:00
Victor Castillo
89d73174a8
Added valves to properly handle end of samples 2024-08-19 18:24:18 +02:00
Victor Castillo
92dcec67e0
Simplified by removing a very shallow class
`ion_gnss_metadata_handler` was only reading the metadata file, which can easily be done in `ion_gsms_signal_source`.
2024-08-19 17:43:18 +02:00
Victor Castillo
54e18adb61
Fixed ION GNSS Metadata Standard dependency version 2024-08-19 17:39:33 +02:00
Victor Castillo
c10eceb973
Moved ION GSMS file source to gnuradio_blocks/ directory
Also fixed some header guards.
2024-08-19 15:58:37 +02:00
Victor Castillo
174364af31
Implemented range check in IONGSMSSignalSource::get_right_block(int) 2024-08-19 15:56:29 +02:00
Victor Castillo
7cdda8e0dc
Simplified disconnect() function
We can disconnect the sources directly instead of disconnecting each of their outputs.
2024-08-19 15:42:26 +02:00
Victor Castillo
3bdc7b9f21
Fixed includes and code style 2024-08-19 15:39:17 +02:00
Victor Castillo
f1957476b8
Use std::ifstream instead of FILE for reading sample data 2024-08-19 15:38:32 +02:00
Victor Castillo
4d1540181d
Removed unused member fields and function parameters 2024-08-19 15:36:03 +02:00
Carles Fernandez
6836ac44fb
Fix building for -DENABLE_PLUTOSDR=ON 2024-08-19 14:21:59 +02:00
Victor Castillo
f7cd58a5a5
Merge remote-tracking branch 'carlesfernandez/castle055-ft/ion-metadata-standard-signal-source' into ft/ion-metadata-standard-signal-source 2024-08-19 13:21:52 +02:00