mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2026-10-13 19:21:50 +00:00
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>