muccc / gr-iridium

Iridium burst detector and demodulator.
350 stars 78 forks source link

Uisng bb60 signalhound sdr #138

Open alphapats opened 2 years ago

alphapats commented 2 years ago

Can somebody help me how one can use bb60c signalhound sdr with gr-iridium instead of RTL or HACKRF SDR? Manual of sdr can be found at https://signalhound.com/sigdownloads/BB60C/BB60C-User-Manual.pdf

schneider42 commented 2 years ago

You could install https://github.com/SignalHound/soapy-bb60 and try to use it using a Soapy source as outlined here: https://github.com/muccc/gr-iridium#soapy-source-section

First step would be to install the software mentioned above and post the output of SoapySDRUtil --info.

alphafox02 commented 2 years ago

I was just testing the bb60c on DragonOS (20.04) and found it to work with SoapySDR and GQRX, SDR++ via Soapy, etc.. however I only had it for a day and didn’t get to throughly test with GR. The directions above should work.

Edit: the SDK part and doing the symlink was slightly confusing and I recall having to tweak the directions some.

alphapats commented 2 years ago

The output of SoapySDRUtil --info:

`## Soapy SDR -- the SDR abstraction library ## ######################################################

Lib Version: v0.7.1-myriadrf1~ubuntu18.04 API Version: v0.7.1 ABI Version: v0.7 Install root: /usr Search path: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7 Search path: /usr/local/lib/x86_64-linux-gnu/SoapySDR/modules0.7 (missing) Search path: /usr/local/lib/SoapySDR/modules0.7 (missing) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/libHackRFSupport.so (0.3.3) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/libairspySupport.so (0.1.2) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/libbladeRFSupport.so (0.4.1) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/libmiriSupport.so (0.2.6) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/libosmosdrSupport.so (0.2.6) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/libremoteSupport.so (0.5.1) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/librfspaceSupport.so (0.2.6) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/librtlsdrSupport.so (0.3.0) Module found: /usr/lib/x86_64-linux-gnu/SoapySDR/modules0.7/libuhdSupport.solinux; GNU C++ version 7.3.0; Boost_106501; UHD_003.010.003.000-0-unknown

 (0.3.5)

Available factories... airspy, bladerf, hackrf, miri, osmosdr, remote, rfspace, rtlsdr, uhd Available converters...

alphafox02 commented 2 years ago

Download DragonOS Focal here,

https://sourceforge.net/projects/dragonos-focal/

Grab this zip here, unzip and sudo cp the contents of the 18.04 folder into /usr/local/lib https://drive.google.com/file/d/1LgG2amaWEDduA9A_NANNhNKB7AcVeElc/view?usp=sharing

Grab the sh_usb.rules from here and place in /etc/udev/rules.d/ https://drive.google.com/file/d/1Wu103Rg4FDbEmYeXxK7zvz_rEI1dIuWj/view?usp=sharing

Then follow the BB60C Soapy install steps https://github.com/SignalHound/soapy-bb60#installation

This should get you support (but I've also only tested it on my install), gr-iridium is also built in already located in /usr/src/

This is part of my output from SoapySDRUtil. It's possible the files above will work on your 18.04 install.

Module found: /usr/local/lib/SoapySDR/modules0.7/libPlutoSDRSupport.so           (0.2.0-472e9a0)
Module found: /usr/local/lib/SoapySDR/modules0.7/libXTRXSupport.so
Module found: /usr/local/lib/SoapySDR/modules0.7/libairspyhfSupport.so           (0.1.1)
Module found: /usr/local/lib/SoapySDR/modules0.7/libbb60Support.so
Module found: /usr/local/lib/SoapySDR/modules0.7/libsdrPlaySupport.so            (0.3.0-208f95d)
Available factories... airspy, airspyhf, bb60c, bladerf, hackrf, lime, miri, osmosdr, plutosdr, redpitaya, remote, rtlsdr, sdrplay, uhd, xtrx
Available converters...
 -  CF32 -> [CF32, CS16, CS8, CU16, CU8]
 -  CS16 -> [CF32, CS16, CS8, CU16, CU8]
 -  CS32 -> [CS32]
 -   CS8 -> [CF32, CS16, CS8, CU16, CU8]
 -  CU16 -> [CF32, CS16, CS8]
 -   CU8 -> [CF32, CS16, CS8]
 -   F32 -> [F32, S16, S8, U16, U8]
 -   S16 -> [F32, S16, S8, U16, U8]
 -   S32 -> [S32]
 -    S8 -> [F32, S16, S8, U16, U8]
 -   U16 -> [F32, S16, S8]
 -    U8 -> [F32, S16, S8]
alphapats commented 2 years ago

Issue still not resolved. Getting following error while running this cmake ../

`-- The CXX compiler identification is GNU 7.5.0 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done CMake Error at CMakeLists.txt:9 (find_package): Could not find a package configuration file provided by "SoapySDR" (requested version 0.4.0) with any of the following names:

SoapySDRConfig.cmake
soapysdr-config.cmake

Add the installation prefix of "SoapySDR" to CMAKE_PREFIX_PATH or set "SoapySDR_DIR" to a directory containing one of the above files. If "SoapySDR" provides a separate development package or SDK, be sure it has been installed.

-- Configuring incomplete, errors occurred! See also "/home/lenevo/Documents/soapy-bb60/SoapyBB60C/build/CMakeFiles/CMakeOutput.log". make: No targets specified and no makefile found. Stop. make: No rule to make target 'install'. Stop.

`

schneider42 commented 2 years ago

Looks like the BB60's Soapy driver is based on an outdated version of SoapySDR (0.4 is at least 6 years old). I think you need to talk to Signalhound to update their driver.

The other option for you might be to record raw IQ data to disk and process it offline. I don't know the tools for the BB60, but I assume the offer something like that. gr-iridium is able to process most formats.

alphapats commented 2 years ago

$ SoapySDRUtil -info ######################################################

Soapy SDR -- the SDR abstraction library

######################################################

Lib Version: v0.8.1-g9cbaa3cf API Version: v0.8.0 ABI Version: v0.8 Install root: /usr/local Search path: /usr/local/lib/SoapySDR/modules0.8 Module found: /usr/local/lib/SoapySDR/modules0.8/libbb60Support.so Available factories... bb60c Available converters...

schneider42 commented 2 years ago

Looks like you managed to get support. What happens if you try this:

[soapy-source]
driver=bb60

sample_rate=10000000
center_freq=1622000000
bandwidth=9000000

# Might need to be adjusted
gain=40