Added RTL and ThinkRF documentation
Some checks failed
Build Sphinx Docs Set / Build Docs (pull_request) Successful in 15s
Test with tox / Test with tox (3.11) (pull_request) Failing after 13s
Test with tox / Test with tox (3.12) (pull_request) Failing after 13s
Test with tox / Test with tox (3.10) (pull_request) Failing after 24s
Build Project / Build Project (3.10) (pull_request) Successful in 45s
Build Project / Build Project (3.11) (pull_request) Successful in 44s
Build Project / Build Project (3.12) (pull_request) Successful in 44s

This commit is contained in:
M madrigal 2025-10-17 16:35:23 -04:00
parent e84cb16e77
commit 79aa1fc0a4
3 changed files with 150 additions and 2 deletions

View File

@ -10,7 +10,9 @@ their key capabilities and limitations, as well as additional information needed
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 2
USRP <usrp>
BladeRF <blade> BladeRF <blade>
PlutoSDR <pluto>
HackRF <hackrf> HackRF <hackrf>
PlutoSDR <pluto>
RTL-SDR <rtlsdr>
ThinkRF <thinkrf>
USRP <usrp>

View File

@ -0,0 +1,87 @@
.. _rtl:
RTLSDR
======
RTL-SDR (RTL2832U Software Defined Radio) is a low-cost USB dongle originally designed for digital TV reception
that has been repurposed as a wideband software-defined radio. RTL-SDR devices are popular for hobbyist use due to
their affordability and wide range of applications.
The RTL-SDR is based on the Realtek RTL2832U chipset, which features direct sampling and demodulation of RF
signals. These devices are commonly used for tasks such as listening to FM radio, monitoring aircraft traffic
(ADS-B), receiving weather satellite images, and more.
Supported Models
----------------
- Generic RTL-SDR Dongle: The most common variant, usually featuring an R820T or R820T2 tuner.
- RTL-SDR Blog V3: An enhanced version with additional features like direct sampling mode and a bias tee for
powering external devices.
Key Features
------------
- Frequency Range: Typically from 24 MHz to 1.7 GHz, depending on the tuner chip.
- Bandwidth: Limited to about 2.4 MHz, making it suitable for narrowband applications.
- Connectivity: USB 2.0 interface, plug-and-play on most platforms.
- Software Support: Compatible with SDR software like SDR#, GQRX, and GNU Radio.
Limitations
-----------
- Narrow bandwidth compared to more expensive SDRs, which may limit some applications.
- Sensitivity and performance can vary depending on the specific model and components.
- Requires external software for signal processing and analysis.
Set up instructions (Linux, Radioconda)
---------------------------------------
1. Activate your Radioconda environment:
.. code-block:: bash
conda activate <your-env-name>
2. Purge drivers:
If you already have other drivers installed, purge them from your system.
.. code-block:: bash
sudo apt purge ^librtlsdr
sudo rm -rvf /usr/lib/librtlsdr*
sudo rm -rvf /usr/include/rtl-sdr*
sudo rm -rvf /usr/local/lib/librtlsdr*
sudo rm -rvf /usr/local/include/rtl-sdr*
sudo rm -rvf /usr/local/include/rtl_*
sudo rm -rvf /usr/local/bin/rtl_*
3. Install RTL-SDR Blog drivers:
.. code-block:: bash
sudo apt-get install libusb-1.0-0-dev git cmake pkg-config build-essential
git clone https://github.com/osmocom/rtl-sdr
cd rtl-sdr
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
sudo make install
sudo cp ../rtl-sdr.rules /etc/udev/rules.d/
sudo ldconfig
4. Blacklist the DVB-T modules that would otherwise claim the device:
.. code-block:: bash
sudo ln -s $CONDA_PREFIX/etc/modprobe.d/rtl-sdr-blacklist.conf /etc/modprobe.d/radioconda-rtl-sdr-blacklist.conf
sudo modprobe -r $(cat $CONDA_PREFIX/etc/modprobe.d/rtl-sdr-blacklist.conf | sed -n -e 's/^blacklist //p')
5. Install a udev rule by creating a link into your radioconda installation:
.. code-block:: bash
sudo ln -s $CONDA_PREFIX/lib/udev/rules.d/rtl-sdr.rules /etc/udev/rules.d/radioconda-rtl-sdr.rules
sudo udevadm control --reload
sudo udevadm trigger
Further Information
-------------------
- `RTL-SDR Official Website <https://www.rtl-sdr.com/>`_
- `RTL-SDR Documentation <https://www.rtl-sdr.com/rtl-sdr-quick-start-guide/>`_

View File

@ -0,0 +1,59 @@
.. _thinkrf:
ThinkRF
====================
The ThinkRF series of spectrum analyzers and software-defined radio platforms are designed for advanced
RF signal monitoring, analysis, and wireless research. These devices
combine high-performance RF front ends with flexible software interfaces for a wide range of applications,
including spectrum monitoring, signal intelligence, and wireless testing.
ThinkRF devices offer wide frequency coverage, deep dynamic range, and real-time analysis capabilities.
They are built for professional and research-grade environments, offering Ethernet-based connectivity and
software APIs for remote control and integration into automated systems.
Supported Models
----------------
- **ThinkRF R5550**: A real-time spectrum analyzer with frequency coverage from 9 kHz to 27 GHz, 160 MHz real-time bandwidth,
and 100 MHz instantaneous FFT bandwidth.
Key Features
------------
- Frequency Range: 9 kHz to 27 GHz (depending on model).
- Bandwidth: Up to 160 MHz real-time bandwidth.
- Connectivity: Gigabit Ethernet interface for high-throughput streaming and remote control.
- Software Support: Compatible with ThinkRF APIs, GNU Radio, MATLAB, and third-party spectrum analysis software.
- Real-Time Analysis:
- Enables full-band, real-time spectral visibility for dynamic signal environments.
- Supports trigger-based capture and event-driven recording.
- Remote Operation:
- Designed for distributed deployments and networked operation through Ethernet.
- Can be integrated into automated RF monitoring systems or deployed for field data collection.
Limitations
-----------
- Requires external host for processing (no onboard CPU for user applications).
- Dependent on ThinkRF software drivers and API for device control.
- High data rate operation may require optimized network settings or storage systems.
Set up instructions (Linux)
---------------------------------
Install PyRF
.. code-block:: bash
pip install 'pyrf>=2.8.0'
Convert PyRF scripts to Python 3
.. code-block:: bash
cd ../scripts
./convert_pyrf_to_python3.sh
Further Information
-------------------
- `ThinkRF Documentation <https://thinkrf.com/resources/>`_
- `ThinkRF Product Page <https://thinkrf.com/products/>`_
- `Pyrf Github Page <https://github.com/pyrf/pyrf>`_