### Spectrum Browser Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/39 Examples of how to use the `osmocom_fft` application. ```APIDOC ## Spectrum Browser Usage Examples ### Examples ``` osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15 osmocom_fft -a hackrf -v osmocom_fft -a uhd -v ``` ``` -------------------------------- ### osmocom_siggen Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/86 Command-line examples for generating signals using the signal generator tool. ```bash osmocom_siggen -a hackrf -f 100e6 --sine osmocom_siggen -a hackrf -f 100e6 --sweep -x 2M -y 1 -c34 osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v ``` -------------------------------- ### Spectrum Browser Usage Example (RFSPACE) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/81 Example command to run the spectrum browser with an RFSPACE device. ```bash osmocom_fft -a rfspace -v ``` -------------------------------- ### Spectrum Browser Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/36 Examples for launching the Spectrum Browser application with different hardware sources. Ensure the correct device index and parameters are specified. ```bash osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15 ``` ```bash osmocom_fft -a hackrf -v ``` ```bash osmocom_fft -a uhd -v ``` -------------------------------- ### CMake Build Summary Example Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/100/annotate This is an example output from the cmake configuration step, showing enabled components for gr-osmosdr. Verify that your desired device support is listed. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker ``` -------------------------------- ### Signal Generator Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/39 Examples of how to use the `osmocom_siggen` and `osmocom_siggen_nogui` applications. ```APIDOC ## Signal Generator Usage Examples ### Examples ``` osmocom_siggen -a hackrf=0 -s 5e6 -f 100e6 --sine osmocom_siggen -a hackrf=0 -s 5e6 -f 100e6 --sweep -x 2M -y 1 -c34 osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v ``` ``` -------------------------------- ### Spectrum Browser Usage Example (bladeRF) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/81 Example command to run the spectrum browser with a bladeRF device. ```bash osmocom_fft -a bladerf -v ``` -------------------------------- ### CMake Build Summary Example Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/70 Example output from CMake configuration, showing enabled and disabled components for gr-osmosdr. Verify that your desired device support is listed as enabled. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- * nuand bladeRF -- * RFSPACE Receivers -- -- ###################################################### -- # gr-osmosdr disabled components -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` -------------------------------- ### Spectrum Browser Usage Example (AirSpy) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/81 Example command to run the spectrum browser with an AirSpy device. ```bash osmocom_fft -a airspy -v ``` -------------------------------- ### Signal Generator Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/42 Command-line examples for generating signals using osmocom_siggen and osmocom_siggen_nogui. ```bash osmocom_siggen -a hackrf -s 5e6 -f 100e6 --sine osmocom_siggen -a hackrf -s 5e6 -f 100e6 --sweep -x 2M -y 1 -c34 osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v ``` -------------------------------- ### osmocom_siggen Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/47 Example command-line usages for the Signal generator application. ```APIDOC ## osmocom_siggen Usage Examples ### Description Examples demonstrating how to use the `osmocom_siggen` and `osmocom_siggen_nogui` applications for signal generation with different hardware sources. ### Usage Examples - HackRF sine wave generation: `osmocom_siggen -a hackrf -s 5e6 -f 100e6 --sine` - HackRF sweep generation: `osmocom_siggen -a hackrf -s 5e6 -f 100e6 --sweep -x 2M -y 1 -c34` - HackRF sweep generation (no GUI): `osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 1 -v` - UHD sweep generation (no GUI): `osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 1 -s 4e6 -v` ``` -------------------------------- ### Signal Generator Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/51 Command-line examples for generating signals using GUI and non-GUI tools with various hardware configurations. ```bash osmocom_siggen -a hackrf -f 100e6 --sine osmocom_siggen -a hackrf -f 100e6 --sweep -x 2M -y 1 -c34 osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v ``` -------------------------------- ### Compile and install gr-osmosdr Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/31 Standard commands to compile the source code and install the binaries to the system. ```bash make sudo make install sudo ldconfig ``` -------------------------------- ### Run Spectrum Browser with osmocom_fft Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/100 Examples for launching the spectrum visualization tool with various hardware backends. ```bash osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15 osmocom_fft -a rfspace -v osmocom_fft -a bladerf -v osmocom_fft -a hackrf -v osmocom_fft -a uhd -v osmocom_fft -a airspy -v ``` -------------------------------- ### osmocom_fft Usage Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/47 Example command-line usages for the Spectrum Browser application. ```APIDOC ## osmocom_fft Usage Examples ### Description Examples demonstrating how to use the `osmocom_fft` application for spectrum analysis with different hardware sources. ### Usage Examples - Using RTL-SDR: `osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15` - Using HackRF: `osmocom_fft -a hackrf -v` - Using UHD: `osmocom_fft -a uhd -v` ``` -------------------------------- ### Spectrum Browser Usage Example (UHD) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/35 Example usage of the osmocom_fft application with a UHD device. ```bash osmocom_fft -a uhd -v ``` -------------------------------- ### Command Line Tools Usage Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/76 Usage examples for osmocom_fft and osmocom_siggen tools. ```APIDOC ## Command Line Tools ### Description Examples for running spectrum visualization and signal generation tools. ### Usage Examples - **osmocom_fft**: `osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15` - **osmocom_siggen**: `osmocom_siggen -a hackrf -f 100e6 --sine` - **osmocom_siggen_nogui**: `osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v` ``` -------------------------------- ### Signal Generator GUI Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/36 Usage examples for the Signal Generator GUI application. These demonstrate generating sine waves and sweeps with specified frequencies, sample rates, and sweep parameters. ```bash osmocom_siggen_gui -a "hackrf=0" -s 5e6 -f 100e6 --sine ``` ```bash osmocom_siggen_gui -a "hackrf=0" -s 5e6 -f 100e6 --sweep -x 2M -y 1 -c34 ``` -------------------------------- ### Build and Install gr-osmosdr Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/14 Standard sequence of commands to clone, build, and install the gr-osmosdr source from the official repository. ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ mkdir build cd build/ cmake ../ make sudo make install sudo ldconfig ``` -------------------------------- ### Spectrum Browser Usage Example (RTL-SDR) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/35 Example usage of the osmocom_fft application with an RTL-SDR device, specifying frequency, sample rate, and gain. ```bash osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15 ``` -------------------------------- ### Spectrum Browser Usage Example (HackRF) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/35 Example usage of the osmocom_fft application with a HackRF device. ```bash osmocom_fft -a hackrf -v ``` -------------------------------- ### Build Process Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/98 Instructions for cloning, configuring, building, and installing the gr-osmosdr library using CMake. ```APIDOC ## Build Process *The Gnu Radio block requires gnuradio v3.9 if building master branch. Before building the block you have to make sure that all the dependencies (see list of supported devices above) you are intend to work with are properly installed. The build system of gr-osmosdr will recognize them and enable specific source/sink components thereafter. Please note: prior pulling a new version from git and compiling it, please do a "make uninstall" first to properly remove the previous version. Building with cmake: ``` git clone https://git.osmocom.org/sdr/gr-osmosdr.git cd gr-osmosdr/ ``` then continue with ``` mkdir build cd build/ cmake ../ ``` Now cmake should print out a summary of enabled/disabled components. You may disable certain components by following guidelines shown by cmake. Make sure the device of your interest is listed here. Check your dependencies and retry otherwise. ``` -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- * nuand bladeRF -- * RFSPACE Receivers -- -- ###################################################### -- # gr-osmosdr disabled components -- ###################################################### -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` Now build & install ``` make sudo make install sudo ldconfig ``` NOTE: The osmocom source/sink blocks will appear under 'Sources' and 'Sinks' categories in GRC menu. To build the API documentation: ``` cd build/ cmake ../ -DENABLE_DOXYGEN=1 make -C docs ``` ``` -------------------------------- ### CMake Configuration Output Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/100 Example output from the CMake configuration step showing enabled and disabled components. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- * nuand bladeRF -- * RFSPACE Receivers -- -- ###################################################### -- # gr-osmosdr disabled components -- ###################################################### -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` -------------------------------- ### Utility Applications Usage Source: https://osmocom.org/projects/gr-osmosdr/wiki Command line usage examples for Spectrum Browser and Signal Generator tools. ```APIDOC ## Included Apps ### Spectrum Browser (osmocom_fft) Usage: `osmocom_fft -a -v -f -s -g ` ### Signal Generator (osmocom_siggen) Usage: `osmocom_siggen -a -f --sine` Usage: `osmocom_siggen -a -f --sweep -x -y ` ``` -------------------------------- ### Generate signals with osmocom_siggen utilities Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/86 Command line examples for generating signals using specific SDR hardware backends. ```bash osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v ``` ```bash osmocom_siggen -a bladerf -f 1G --sweep -x 4M -y 1 -s 4M ``` -------------------------------- ### CMake Component Summary Output Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/60 Example output showing enabled and disabled components after running CMake. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- * nuand bladeRF -- * RFSPACE NetSDR -- -- ###################################################### -- # gr-osmosdr disabled components -- ###################################################### -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` -------------------------------- ### CMake Summary Output Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/49 Example output from CMake during the gr-osmosdr build configuration, showing enabled and disabled components. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FunCube Dongle -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- -- ###################################################### -- # gr-osmosdr disabled components -- -- Building for version: 4c101ea4 / 0.0.1git -- Using install prefix: /usr/local ``` -------------------------------- ### CMake Enabled Components Output Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/51 Example output showing detected and enabled hardware components during the CMake configuration phase. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- * nuand bladeRF -- -- ###################################################### -- # gr-osmosdr disabled components -- ###################################################### -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` -------------------------------- ### Run Signal Generator with osmocom_siggen Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/100 Examples for generating signals using different hardware backends and sweep configurations. ```bash osmocom_siggen -a hackrf -f 100e6 --sine osmocom_siggen -a hackrf -f 100e6 --sweep -x 2M -y 1 -c34 osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v osmocom_siggen -a bladerf -f 1G --sweep -x 4M -y 1 -s 4M ``` -------------------------------- ### Build gr-osmosdr from source Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/4 Standard sequence of commands to clone, configure, and install the gr-osmosdr project using CMake. ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ checkout multisrc mkdir build cd build/ cmake ../ -Wno-dev make sudo make install sudo ldconfig ``` -------------------------------- ### Build gr-osmosdr from source Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/12 Standard sequence of commands to clone, configure, and install the gr-osmosdr library using CMake. ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ mkdir build cd build/ cmake ../ -Wno-dev make sudo make install sudo ldconfig ``` -------------------------------- ### GrOsmoSDR Build Process Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/78 Instructions on how to clone, build, and install the gr-osmosdr library, including dependency checks and Doxygen API documentation generation. ```APIDOC ## Build Process The Gnu Radio block requires a recent gnuradio (>= v3.7 if building master branch or 3.6.5 when building gr3.6 branch) to be installed. Before building the block, ensure all intended dependencies (supported devices) are installed. The build system will recognize them and enable specific source/sink components. To build: 1. Clone the repository: ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ ``` 2. If building for gnuradio 3.6 series, checkout the branch: ```bash git checkout gr3.6 ``` 3. Create a build directory and navigate into it: ```bash mkdir build cd build/ ``` 4. Configure the build with CMake: ```bash cmake ../ ``` CMake will output a summary of enabled/disabled components. Ensure your desired devices are listed. Adjust dependencies or retry if necessary. 5. Build and install: ```bash make sudo make install sudo ldconfig ``` To build API documentation (Doxygen): ```bash cd build/ cmake ../ -DENABLE_DOXYGEN=1 make -C docs ``` **Note:** The osmocom source/sink blocks will appear under 'Sources' and 'Sinks' in the GRC menu. ``` -------------------------------- ### Build and Install GrOsmoSDR Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/32 After configuring with CMake, use 'make' to build and 'make install' to install. 'sudo ldconfig' updates the shared library cache. ```bash make sudo make install sudo ldconfig ``` -------------------------------- ### Clone and Prepare gr-osmosdr Source Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/100 Initial steps to download the repository and prepare the build directory. ```bash git clone https://gitea.osmocom.org/sdr/gr-osmosdr.git cd gr-osmosdr/ ``` ```bash mkdir build cd build/ cmake ../ ``` -------------------------------- ### Run Spectrum Browser with different sources Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/90 Examples of launching osmocom_fft with various SDR sources. Requires OpenCL/OpenGL compatible graphics card. ```bash osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15 ``` ```bash osmocom_fft -a rfspace -v ``` ```bash osmocom_fft -a bladerf -v ``` ```bash osmocom_fft -a hackrf -v ``` ```bash osmocom_fft -a uhd -v ``` ```bash osmocom_fft -a airspy -v ``` -------------------------------- ### Configure Build with CMake Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/92 Prepare the build environment using CMake. This step analyzes dependencies and enables components. Review the output to ensure desired devices are supported. ```bash mkdir build cd build/ cmake ../ ``` -------------------------------- ### Configure Build with CMake Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/51 Commands to initialize the build directory and run CMake configuration. ```bash mkdir build cd build/ cmake ../ ``` -------------------------------- ### CMake Configuration Summary Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/63 Example output from CMake showing enabled and disabled components for gr-osmosdr. This helps verify that all desired hardware support is included. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- * nuand bladeRF -- * RFSPACE Receivers -- -- ###################################################### -- # gr-osmosdr disabled components -- ###################################################### -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` -------------------------------- ### Build and Install gr-osmosdr Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/92 Compile and install the gr-osmosdr blocks after successful CMake configuration. Ensure to run ldconfig to update the shared library cache. ```bash make sudo make install sudo ldconfig ``` -------------------------------- ### Build GrOsmoSDR with CMake Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/50 Configure, build, and install the gr-osmosdr project using CMake. This process enables specific hardware components based on installed dependencies. ```bash mkdir build cd build/ cmake ../ make sudo make install sudo ldconfig ``` -------------------------------- ### CMake Build Summary Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/94 Example output from the CMake configuration step, showing enabled and disabled components for gr-osmosdr. Verify that your target hardware is listed under 'enabled components'. ```text -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom OsmoSDR -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom MiriSDR -- * HackRF Jawbreaker -- * nuand bladeRF -- * RFSPACE Receivers -- -- ###################################################### -- # gr-osmosdr disabled components -- ###################################################### -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` -------------------------------- ### Build GrOsmoSDR with CMake Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/5 Follow these steps to clone, configure, build, and install GrOsmoSDR using CMake. Ensure a recent version of GNU Radio is installed. ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ git checkout multisrc mkdir build cd build/ cmake ../ -Wno-dev make sudo make install sudo ldconfig ``` -------------------------------- ### Signal Generator Command-Line Examples Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/36 Command-line usage examples for the Signal Generator application, including sweep functionality. Note the different argument formats for HackRF and UHD devices. ```bash osmocom_siggen -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v ``` ```bash osmocom_siggen -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v ``` -------------------------------- ### Build gr-osmosdr from Source Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/17 Use these commands to clone the gr-osmosdr repository, create a build directory, configure with CMake, compile, and install the software. Ensure 'make uninstall' is run before pulling new versions. ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ mkdir build cd build/ cmake ../ make sudo make install sudo ldconfig ``` -------------------------------- ### IQ File Source Arguments Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/94 Configure the IQ File Source with arguments like file path, center frequency, and sampling rate. 'rate' is mandatory, and 'repeat' defaults to true. ```text file= | freq= | Center frequency in Hz, accepts scientific notation rate= | Mandatory, in samples/s, accepts scientific notation repeat=true|false | Default is true throttle=true|false | Throttle flow of samples, default is true ``` -------------------------------- ### Build GrOsmoSDR with CMake Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/1 Use this command sequence to clone, build, and install GrOsmoSDR using CMake. Ensure a recent Gnuradio version (>= v3.5.3) is installed prior to building. A 'make uninstall' is recommended before pulling new versions. ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ mkdir build cd build/ cmake ../ -Wno-dev make sudo make install sudo ldconfig ``` -------------------------------- ### Signal Generator Usage Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/59 Example usage for the Signal Generator application. ```APIDOC ## Signal Generator ### Description Examples for using the signal generator applications. ### Usage Examples ```bash osmocom_siggen -a hackrf -f 100e6 --sine osmocom_siggen -a hackrf -f 100e6 --sweep -x 2M -y 1 -c34 osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v ``` ``` -------------------------------- ### Signal Generator Application Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/52 Usage examples for the Signal Generator application. ```APIDOC ## Signal Generator Application ### Description Usage examples for the Signal Generator application, which generates RF signals. ### Usage Examples - `osmocom_siggen -a hackrf -f 100e6 --sine` - `osmocom_siggen -a hackrf -f 100e6 --sweep -x 2M -y 1 -c34` - `osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v` - `osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v` ``` -------------------------------- ### Spectrum Browser Application Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/52 Usage examples for the Spectrum Browser application. ```APIDOC ## Spectrum Browser Application ### Description Usage examples for the Spectrum Browser application, which visualizes the RF spectrum. ### Usage Examples - `osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15` - `osmocom_fft -a hackrf -v` - `osmocom_fft -a uhd -v` ``` -------------------------------- ### Build API Documentation Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/14 Commands to generate the project's API documentation using Doxygen. ```bash cd build/ cmake ../ -DENABLE_DOXYGEN=1 make -C docs ``` -------------------------------- ### Spectrum Browser (osmocom_fft) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/77 Usage examples for the osmocom_fft application for spectrum visualization. ```APIDOC ## Spectrum Browser (osmocom_fft) RTSA-like spectrum visualization is available through the fosphor component. Call osmocom_fft with the -F switch to enable it (requires a graphics card supporting OpenCL/OpenGL interop). ### Usage Examples ``` osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15 osmocom_fft -a rfspace -v osmocom_fft -a bladerf -v osmocom_fft -a hackrf -v osmocom_fft -a uhd -v osmocom_fft -a airspy -v ``` DC offset and IQ imbalance correction can be enabled using `--dc-offset-mode=0` and `--iq-balance-mode=0` command line switches, respectively. ``` -------------------------------- ### Spectrum Browser Usage Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/40 Usage examples for the `osmocom_fft` application (Spectrum Browser). ```APIDOC ## Spectrum Browser Usage ### Description Examples demonstrating how to use the `osmocom_fft` application to visualize the spectrum. ### Usage Examples - **RTL-SDR:** ``` osmocom_fft -a rtl=0 -v -f 100e6 -s 2.4e6 -g 15 ``` - **HackRF:** ``` osmocom_fft -a hackrf -v ``` - **UHD:** ``` osmocom_fft -a uhd -v ``` ``` -------------------------------- ### IQ File Source Configuration Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/35 Configure an IQ file as a source. Specify the file path, center frequency, sampling rate, and repeat/throttle options. ```bash file= ``` ```bash freq= ``` ```bash rate= ``` ```bash repeat=true ``` ```bash repeat=false ``` ```bash throttle=true ``` ```bash throttle=false ``` -------------------------------- ### GrOsmoSDR Build Process Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/53 Instructions for cloning the repository, checking out branches, configuring with CMake, and building the project. ```APIDOC ## Build Process ### Prerequisites - A recent version of gnuradio (>= v3.7 for master branch, or 3.6.5 for gr3.6 branch). - All necessary dependencies for the intended SDR hardware must be installed. ### Cloning the Repository ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ ``` ### Branch Selection (Optional) For gnuradio 3.6 series: ```bash git checkout gr3.6 ``` ### Configuration and Build ```bash mkdir build cd build/ cmake ../ ``` ### CMake Summary CMake will output a summary of enabled and disabled components. Ensure your desired devices are listed under 'enabled components'. ### Compilation and Installation ```bash make sudo make install sudo ldconfig ``` ### API Documentation Build To build the API documentation using Doxygen: ```bash cd build/ cmake ../ -DENABLE_DOXYGEN=1 make -C docs ``` ``` -------------------------------- ### Clone gr-osmosdr Repository Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/100/annotate Clone the gr-osmosdr repository from Gitea. Ensure you have git installed. ```bash git clone https://gitea.osmocom.org/sdr/gr-osmosdr.git ``` -------------------------------- ### CMake Build Summary Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/92 Example output from the CMake configuration step, showing enabled and disabled components for gr-osmosdr. Verify that your target hardware is listed under enabled components. ```cmake -- ###################################################### -- # gr-osmosdr enabled components -- ###################################################### -- * Python support -- * Osmocom IQ Imbalance Correction -- * sysmocom [[OsmoSDR]] -- * FUNcube Dongle -- * FUNcube Dongle Pro+ -- * IQ File Source -- * Osmocom RTLSDR -- * RTLSDR TCP Client -- * Ettus USRP Devices -- * Osmocom [[MiriSDR]] -- * [[HackRF]] Jawbreaker -- * nuand bladeRF -- * RFSPACE Receivers -- -- ###################################################### -- # gr-osmosdr disabled components -- ###################################################### -- -- Building for version: v0.1.0-4-g37aba331 / 0.1.1git -- Using install prefix: /usr/local ``` -------------------------------- ### Signal Generator (osmocom_siggen) Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/77 Usage examples for the osmocom_siggen and osmocom_siggen_nogui applications for signal generation. ```APIDOC ## Signal Generator (osmocom_siggen) ### Usage Examples ``` osmocom_siggen -a hackrf -f 100e6 --sine osmocom_siggen -a hackrf -f 100e6 --sweep -x 2M -y 1 -c34 osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v osmocom_siggen -a bladerf -f 1G --sweep -x 4M -y 1 -s 4M ``` ``` -------------------------------- ### Clone and Build gr-osmosdr Source: https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR/51 Initial steps to clone the repository and prepare the build directory. ```bash git clone git://git.osmocom.org/gr-osmosdr cd gr-osmosdr/ ```