xiaohongshu
xiaohongshu
device-prober
Probe and test SDR hardware capabilities (RTL-SDR, SDRplay, HackRF, etc.). Use when verifying device detection, discovering supported sample rates and gains, testing antenna ports, or troubleshooting SDR hardware issues.
Full skill instructions
This skill helps probe SDR hardware to discover capabilities, test configurations, and troubleshoot device issues.
Use this skill when:
The skill uses SoapySDR APIs to:
Find all connected SDR devices using SoapySDRUtil:
# Using SoapySDRUtil (if installed)
SoapySDRUtil --find
# Or use the probe script
PYTHONPATH=backend backend/.venv/bin/python .claude/skills/device-prober/probe_device.py --list
Example output:
Found 2 devices:
[0] driver=rtlsdr, serial=00000001
RTL2838UHIDIR, manufacturer=Realtek, product=RTL2838UHIDIR
[1] driver=sdrplay, serial=240309F070
SDRplay Dev1, model=RSPdx
Get detailed capabilities for a device:
PYTHONPATH=backend backend/.venv/bin/python .claude/skills/device-prober/probe_device.py \
--device "driver=rtlsdr"
Parameters:
--device: Device selector string (e.g., "driver=rtlsdr", "driver=sdrplay,serial=ABC123")--output: Save report to JSON file--test-capture: Test actual capture (verify device works)--test-duration: Seconds for test capture (default: 2)The probe script outputs:
Device Information:
Frequency Ranges:
Sample Rates:
Gain Settings:
Antenna Ports:
Advanced Features:
Verify a specific configuration works:
PYTHONPATH=backend backend/.venv/bin/python .claude/skills/device-prober/probe_device.py \
--device "driver=rtlsdr" \
--test-capture \
--test-duration 5
This performs a short capture to verify:
Device String:
driver=rtlsdr
Typical Capabilities:
Recommended Settings:
device_args: "driver=rtlsdr"
sample_rate: 2048000 # 2.048 MHz
gain_db: 30
Direct Sampling for HF (<30 MHz):
device_args: "driver=rtlsdr,direct_samp=2" # Q-branch for HF
Device String:
driver=sdrplay,serial=YOUR_SERIAL
Typical Capabilities:
Recommended Settings:
device_args: "driver=sdrplay,serial=240309F070"
sample_rate: 2000000 # 2 MHz
gain_db: 40
antenna: "Antenna A"
Device String:
driver=hackrf
Typical Capabilities:
Recommended Settings:
device_args: "driver=hackrf"
sample_rate: 8000000 # 8 MHz
gain_db: 32 # Combined LNA+VGA
Device String:
driver=airspy
Typical Capabilities:
Diagnosis:
# Check if SoapySDR sees the device
SoapySDRUtil --find
# Check USB devices (Linux)
lsusb | grep -E "RTL|Realtek|Airspy|HackRF"
# Check kernel modules (Linux)
lsmod | grep -E "rtl|sdr"
Solutions:
Diagnosis:
# Check if another process is using the device
lsof | grep SDR
ps aux | grep -E "gqrx|sdr|cubic"
Solutions:
pkill -f sdrDiagnosis:
# Test with known good frequency (FM broadcast)
PYTHONPATH=backend backend/.venv/bin/python .claude/skills/device-prober/probe_device.py \
--device "driver=rtlsdr" \
--test-capture \
--test-duration 5
Solutions:
Diagnosis:
# Query supported rates
PYTHONPATH=backend backend/.venv/bin/python .claude/skills/device-prober/probe_device.py \
--device "driver=rtlsdr"
Look for "Sample Rates" section.
Solutions:
Enable bias-T to power LNA through antenna port:
device_args: "driver=rtlsdr,bias_tee=1"
Warning: Only use with LNA that expects bias-T. Can damage amplifiers not designed for it.
Select antenna port (RSPdx):
device_args: "driver=sdrplay,serial=240309F070"
antenna: "Antenna B" # or "Antenna A", "Hi-Z"
Enable FM/DAB notch filters:
device_args: "driver=sdrplay,rfnotch_ctrl=1,dabnotch_ctrl=1"
Enable RX amplifier:
device_args: "driver=hackrf,amp=1"
After probing device, update backend/config/wavecapsdr.yaml:
device:
driver: soapy # Use SoapySDR driver
device_args:
- "driver=rtlsdr" # Or device string from probe
presets:
my_device:
center_hz: 100000000 # From frequency range
sample_rate: 2048000 # From supported rates
gain_db: 30 # From gain range
antenna: "RX" # From available antennas
SKILL.md: This file - instructions for using the skillprobe_device.py: Device capability probe scriptSoapySDRUtil --probe=driver=xxx for maximum detailxiaohongshu
technical spec
product ux expert
database patterns
Conduct multi-agent task orchestration and workflow coordination.
Initialize project with Conductor artifacts (product definition,
Expert in web animations, transitions, and motion design using Framer Motion and CSS
Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...
PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.
Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...
Display project status, active tracks, and next actions
Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience