Modular RF signal chain simulator with real-time spectrum display
Design a cascade of RF components and probe any node to see the spectrum.
Building a signal chain, probing nodes, and reading the spectrum in real time.
demo.mp4
- 🔧 13 component types — Amplifiers, attenuators, equalizers, mixers, filters, splitters, combiners, RF switches (1:2 and 2:1), coax cable, RF ADC, signal generator, and PFB channelizer
- 📊 Real-time spectrum display — probe any node in the signal chain with ImPlot
- 📐 S-parameter support — Touchstone file import for accurate component modeling
- 🧮 DSP pipeline — Polyphase filter bank channelizer, noise PSD analysis
- 🏗️ Dirty-flag caching — Efficient recomputation only when parameters change
- 🔀 Subcircuits — collapse part of the schematic into a block for reuse
- 🧩 Extensible architecture — Clean engine+widget pattern for adding new components
- 🖥️ Network Analyzer — measures gain and noise figure of the chain between two probe points
- ⚡ Power Meter — total power readout at any node in the chain
- 🔌 Extensions — manifest-based plugins for data packs and external Tools-menu actions
- 📘 Guided tutorial — first-run walkthrough with panel highlighting
- 🧪 Test Flow — author repeatable parameter sweeps on a live circuit, capture built-in measurements, preview results, and export them as JSON (
View > Test Flow) - 🧮 PFB Filter Calculator — plot the Kaiser prototype response, compare filter metrics with a rejection target, and apply designs to PFB channelizers (
View > Filter Calculator) - 📐 Receiver Requirements — band, gain, and noise-figure limits, with a pass, fail, or incomplete status for each check (
View > Receiver Requirements) - ⚡ Receiver output power and IIP3 checks — output-power limits at a reference tone and two-tone IIP3 sweeps, reported alongside gain and noise figure
Download the newest release from the Releases page. Use rf-simulator-linux-x86_64.tar.gz on Linux or rf-simulator-windows-x86_64.zip on Windows. The user manual covers installing, the first run, and the guided tutorial.
# Clone and build
cmake -B build -G Ninja -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc
cmake --build build
# Run
build/bin/tiny-rf-simulator.exe💡 First build takes 60-90s (FetchContent downloads all dependencies). For detailed setup, prerequisites, and per-platform instructions see the Quickstart Guide.
An MCP client launches the local rf-sim-mcp bridge over standard input/output. Keep the RF Simulator GUI running, then open View > Agent and enable Agent Server; the client can connect only while the server is enabled.
Add this generic MCP server configuration to your client:
{
"mcpServers": {
"rf-sim": {
"command": "<install dir>/rf-sim-mcp"
}
}
}For Claude Code, run:
claude mcp add rf-sim -- "<install dir>/rf-sim-mcp"Replace <install dir> with the directory containing the simulator executables. On Windows, use rf-sim-mcp.exe in the JSON command and Claude Code command.
Agents can save and load .rfsim projects with project_save and project_load, which take absolute paths. They can also create validated reusable component-library JSON entries with library_create, then find and place them through library_search and circuit_edit. Project entries persist under ./rf-sim-libraries relative to the simulator process's current working directory; global entries persist under $HOME/.rf-sim/libraries or %USERPROFILE%/.rf-sim/libraries. Library creation does not change the circuit and accepts no arbitrary paths or asset files. Agents cannot open file dialogs.
The local bridge protects the GUI endpoint against access from other local accounts and web pages. It does not protect against software running as the same user or administrators.
| Topic | Link |
|---|---|
| User manual | Install, tutorial, and reference |
| 🚀 Quickstart & Build | Quickstart Guide |
| 🏛️ Architecture | Architecture Overview |
| 📡 RF Components | Components Reference |
| 📐 S-Parameter System | S-Parameter System |
| 🧪 Testing | Testing Guide · Test Flow (ATP) |
| ⚙️ Operations | Build & Operations |
| 📈 DSP Pipeline | DSP Pipeline & Workflows |
| 📚 Engineering Refs | Amplifier model · PFB channelizer · RF ADC · Touchstone parser |
| 🗺️ Roadmap | ROADMAP.md |
Contributions welcome! See CONTRIBUTING.md for guidelines.
Additional resources:
This project is licensed under the Apache-2.0 License.
