.. _blade:
BladeRF
=======
The BladeRF is a versatile software-defined radio (SDR) platform developed by Nuand. It is designed for a wide
range of applications, from wireless communication research to field deployments. BladeRF devices are known
for their high performance, flexibility, and extensive open-source support, making them suitable for both
hobbyists and professionals. The BladeRF is based on the Analog Devices AD9361 RF transceiver, which provides
wide frequency coverage and high bandwidth.
Supported Models
----------------
- **BladeRF 2.0 Micro xA4:** A compact model with a 49 kLE FPGA, ideal for portable applications.
- **BladeRF 2.0 Micro xA9:** A higher-end version of the Micro with a 115 kLE FPGA, offering more processing power in a small form factor.
Key Features
------------
- **Frequency Range:** Typically from 47 MHz to 6 GHz, covering a wide range of wireless communication bands.
- **Bandwidth:** Up to 56 MHz, allowing for wideband signal processing.
- **FPGA:** Integrated FPGA (varies by model) for real-time processing and custom logic development.
- **Connectivity:** USB 3.0 interface for high-speed data transfer, with options for GPIO, SPI, and other I/O.
Hackability
-----------
- **Expansion:** The BladeRF features GPIO, expansion headers, and add-on boards, allowing users to extend the
functionality of the device for specific applications, such as additional RF front ends.
- **Frequency and Bandwidth Modification:** Advanced users can modify the BladeRF's settings and firmware to
explore different frequency bands and optimize the bandwidth for their specific use cases.
Limitations
-----------
- The complexity of FPGA development may present a steep learning curve for users unfamiliar with hardware
description languages (HDL).
- Bandwidth is capped at 56 MHz, which might not be sufficient for ultra-wideband applications.
- USB 3.0 connectivity is required for optimal performance; using USB 2.0 will significantly limit data
transfer rates.
Set up instructions (Linux)
---------------------------
Step 1: Install the base dependencies and drivers ('Easy method')
.. code-block:: bash
sudo add-apt-repository ppa:nuandllc/bladerf
sudo apt-get update
sudo apt-get install bladerf
sudo apt-get install libbladerf-dev
sudo apt-get install bladerf-fpga-hostedxa4 # Necessary for installation of bladeRF 2.0 Micro A4.
Step 2: Create and/or activate your virtual environment
.. code-block:: bash
python3 -m venv venv
pip install -r requirements.txt # If relevant
source venv/bin/activate
Step 3: from within the virtual environment, clone the bladerf host repo, then build and install the wheel for
bladerf python bindings.
.. code-block:: bash
cd ~
mkdir workarea
cd workarea
git clone --depth 1 https://github.com/Nuand/bladeRF.git
cd bladeRF/host
cd libraries/libbladeRF_bindings/python
sudo python3 setup.py bdist_wheel
pip install dist/*.whl
Further Information
-------------------
- `Official Website `_
- `BladeRF Documentation `_
- `GitHub Repository `_