Commit Graph
388 Commits
Author SHA1 Message Date
Oleksandr Suvorov a5a6b9359b signal_source: add native BladeRF support via libbladeRF
Add a Bladerf_Signal_Source that streams RX samples directly from
bladeRF front-ends (bladeRF x40, x115, and bladeRF 2.0 Micro xA4/xA9)
through libbladeRF, instead of going through the generic gr-osmosdr
wrapper. gr-osmosdr's bladerf backend does not expose usable per-stage
gain control on bladeRF2 hardware and has no support for the RX bias
tee used to power an active antenna on the 2.0 Micro.

The new gr::sync_block (bladerf_source) talks to libbladeRF's
synchronous streaming API directly; the adapter (BladerfSignalSource)
follows the existing SignalSourceBase pattern used by the other signal
sources, with valve and dump support wired the same way. Building it
is gated behind -DENABLE_BLADERF=ON, degrades gracefully when
libbladeRF is absent, and requires libbladeRF v2.6.0 or newer,
enforced at configure time.

Verified against a physical bladeRF 2.0 Micro: the receiver opens the
device, streams live samples, and acquires and tracks real GPS
satellites end to end using the new sample configuration file.

Only single-channel (SISO) reception is supported for now; the second
RX channel is not yet exposed.

Signed-off-by: Oleksandr Suvorov <cryosay@gmail.com>
2026-08-27 11:06:11 +03:00
Carles Fernandez c60c1a3c53 Update local matio to v1.6.0 2026-08-24 08:59:22 +02:00
Carles Fernandez 9accccdbaa Add BeiDou B1C signals to RTK 2026-08-18 08:07:20 +02:00
Carles Fernandez e368102bfb Add single-frequency RTK 2026-08-17 20:29:25 +02:00
Carles Fernandez 032cfa8e8d Update documentation 2026-08-17 14:02:01 +02:00
Carles Fernandez 0e7f02db46 Tolerate non-GPS NTRIP messages 2026-08-17 10:48:09 +02:00
Carles Fernandez f5337b8fc9 Merge branch 'next' into add-rtk 2026-08-15 13:23:31 +02:00
Carles Fernandez 65df1752b4 Bump local version of Googletest to 1.18.0 2026-08-15 13:06:30 +02:00
Carles Fernandez 51d0994b2d Update README.md file 2026-08-15 11:45:12 +02:00
Carles Fernandez 1f9afe4431 Implement SBAS/EGNOS correction path 2026-08-09 07:55:04 +02:00
Carles Fernandez f0e75ce558 Improve SBAS L1 telemetry decoder and simplify SBAS adapters
Compensate the Viterbi traceback delay when timestamping decoded SBAS
messages by carrying per-sample reception timestamps through the sample
and symbol aligners (removes a ~140 ms bias), with a deterministic unit
test covering the FIFO pairing.
Protect decoder state with d_setlock in reset(), set_satellite(),
set_channel() and general_work(), following the convention of the other
telemetry decoders.
Share per-PRN EMS dump files through a per-run dump session: the first
open in a run truncates stale data, later opens append, so channel
reassignments no longer wipe previously decoded messages.
2026-08-08 12:10:10 +02:00
Carles Fernandez d89529b537 Document addition of the BeiDou B1C signal and add Ou Wenhao to the list of authors 2026-08-07 14:45:53 +02:00
Carles Fernandez 1c9fe3346f Bump local GFlags version to v2.3.1 2026-07-28 17:58:50 +02:00
Carles Fernandez 028ebe433d QZSS: refine L1 C/B support
- Restore true chip semantics for L1: QZSS_L1_CHIP_RATE is 1.023 Mcps and
  QZSS_L1_CODE_LENGTH is 1023 chips again. The replica carries
  QZSS_L1_SAMPLES_PER_CHIP = 2 samples per chip (L1 C/A chips duplicated,
  L1 C/B sinBOC(1,1) subchips), following the Galileo E1 approach. The
  generated waveform is unchanged, but Tracking_1J.early_late_space_chips
  is expressed in chips again, consistently with all other signals.
- Normalize the DLL discriminator with the sinBOC(1,1) correlation
  function when the tracked PRN broadcasts L1 C/B, selected per PRN in
  start_tracking(); warn if the configured correlator spacing falls
  outside the BOC(1,1) correlation main peak (> 0.33 chips).
- Attribute L1 C/B observables and ephemerides (PRN 203-206) to the PRN
  of the satellite's nominal PNT signals (RINEX 4.00, Table 6), so RINEX,
  RTCM and rtklib identify the transmitting satellite correctly and
  multi-frequency observations of the same satellite are paired instead
  of counted twice.
- Do not search QZSS L5 signals for PRNs above 202, which have no L5
  PRN code assigned in IS-QZSS-PNT.
- Remove reserved, non-operational PRNs 198 and 202 from the default
  QZSS search list; they remain selectable via the QZSS.prns option.
- Fix a potential std::out_of_range in
  GNSSFlowgraph::priorize_satellites() when assisted acquisition
  prioritizes satellites of a constellation with only a subset of its
  signals configured.
2026-07-04 15:31:03 +02:00
Carles Fernandez c29d4d7c9e CMake: bump local version of Armadillo to 15.4.x and PugiXML to 1.16 2026-06-28 01:35:00 +02:00
Carles Fernandez a8d1e1eaf3 Remove references to old adapters 2026-04-24 11:47:27 +02:00
Carles Fernandez bd77acd4ea Merge branch 'refactor/remove-telemetry-adapters' of https://github.com/MathieuFavreau/gnss-sdr into MathieuFavreau-refactor/remove-telemetry-adapters 2026-04-22 21:21:42 +02:00
Carles Fernandez 19dd599ba5 Remove leftovers of old Tracking adapters 2026-04-22 18:39:13 +02:00
Carles Fernandez d9673c693c Replace plain Unicode instead of emojis, fix rendering 2026-04-09 18:02:22 +02:00
Carles Fernandez f330d2d343 Update dependency packages lists, order alphabetically for improved readability and maintainability 2026-04-05 13:32:28 +02:00
Carles Fernandez 546b0de73a Add QZSS in README and changelog files 2026-03-09 16:29:36 +01:00
Carles Fernandez fda9ceca53 Update Contributor Covenant to version 3.0 2026-02-22 15:19:28 +01:00
Carles Fernandez db4e7203a0 Bump local Matio version to 1.5.30 2026-01-06 22:30:49 +01:00
Carles Fernandez b527850bdb Update local Protocol Buffers to v33.2 and Armadillo to the 15.2.x branch 2025-12-06 09:17:53 +01:00
Carles Fernandez f33c3889fd Bump local version of Matio to 1.5.29 2025-11-10 23:32:41 +01:00
Carles Fernandez 74b0b4ff1b Bump max CMake version to 4.1 and local Armadillo version to the 15.0.x branch 2025-08-24 14:00:20 +02:00
Carles Fernandez ce8d27e7d3 Update instructions for Rocky Linux 2025-07-28 19:01:35 +02:00
Carles Fernandez dac1e8be14 Update Homebrew instructions 2025-07-24 09:33:31 +02:00
Carles Fernandez 18a7bbd648 Bump local Armadillo version to 14.6 2025-07-20 09:38:32 +02:00
Carles Fernandez 42d9ff9abb Bump Googletest version to 1.17.0 2025-05-01 08:23:24 +02:00
Carles Fernandez 2e1f24ee7c Remove references to PyBOMBS. Building still supported 2025-04-10 22:44:20 +02:00
Carles Fernandez d2f737df85 Update local Armadillo version to 14.4.x branch 2025-03-28 16:49:01 +01:00
Carles Fernandez b0b41b194f Replace apt-get by apt 2025-03-15 09:41:05 +01:00
Carles Fernandez b9fe78cf0a Fix formatting 2025-02-16 22:15:08 +01:00
Carles Fernandez fa1e9209c5 CMake: centralize find paths in a single file
Improve Macports/Homebrew detection. Do not hardcode /opt/local or /opt/homebrew
2025-02-16 22:10:20 +01:00
Carles Fernandez a6daa5ad7e Fix typo 2025-02-13 13:19:00 +01:00
Carles Fernandez 3355f810c6 Update README.md file 2025-02-08 09:13:58 +01:00
Carles Fernandez 9158447892 Fix linking against Boost 1.87
CI: add boost in homebrew dependencies
2024-12-20 22:09:52 +01:00
Carles Fernandez 2a98217f25 Remove references to the data folder 2024-10-04 19:43:07 +02:00
Carles Fernandez 825037592a Remove build and data folders, move tests and utils to the base of the source tree 2024-10-04 11:55:09 +02:00
Carles Fernandez eefa3b3aa7 Update CMake scripts (#15)
* Report GMP version if found

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

* Avoid code duplication in CMake modules

* Update CMake modules

* Update clang-tidy job
2024-08-01 12:46:14 +02:00
Carles Fernandez 0e6e39da44 Merge branch 'next' of github.com:carlesfernandez/gnss-sdr into osnma-cesare-fix9 2024-07-20 21:37:43 +02:00
Carles Fernandez f46ceb0fa7 CentOS 7 reached EOL, remove from README. Fix for CentOS 9 Stream 2024-07-09 14:39:38 +02:00
Carles Fernandez 619c7aeed3 Bump local Armadillo version to 14.0.x and Protocol Buffers to 27.2 2024-06-29 15:33:52 +02:00
Carles Fernandez a530981d5b Update README.md with openssl 2024-06-29 11:41:28 +02:00
Carles Fernandez d62e2e0de5 Bump local version of google/glog to 0.7.1 2024-06-08 19:50:43 +02:00
Carles Fernandez 95596b8f91 Soft transition from Gflags and Glog to Abseil. Some CI fixes 2024-04-29 08:27:33 +02:00
Carles Fernandez 1a8fc61479 Fix for OpenSUSE/leap 2024-04-16 14:29:19 +02:00
Carles Fernandez 4d934017c6 CI: Fix macos-based jobs 2024-03-29 22:57:49 +01:00
Carles Fernandez f03608ac82 Update links 2024-03-29 14:39:32 +01:00