RF-IDS includes a powerful proximity detection feature that alerts you when wireless devices get too close to your secure area:
- Bluetooth Proximity Alerts: Get notified when Bluetooth devices enter within a configurable perimeter (default: 10 feet)
- Cell Phone Detection: Receive alerts when cellular devices come within range (default: 15 feet)
- Guided Calibration: Easy setup process to calibrate detection for your specific environment
- Visual Confirmation: Generates spectrum plots highlighting the detected device signals
- Priority Alerts: Proximity alerts take precedence over other detections for immediate response
This feature is ideal for:
- Enforcing "no wireless device" policies in secure areas
- Detecting unauthorized smartphones in restricted zones
- Monitoring for potential eavesdropping devices
- Creating an RF perimeter around sensitive equipment or discussions

Detect unauthorized wireless transmissions and RF-based security threats with an affordable Software Defined Radio setup
RF-IDS turns your $30 RTL-SDR dongle into a powerful cybersecurity tool that continuously monitors the radio frequency spectrum around you, alerting you to potential security threats like rogue access points, unauthorized transmissions, covert surveillance devices, and wireless exfiltration attempts.
- π Real-time RF spectrum monitoring across multiple frequencies
- π Instant alerts via macOS notifications when suspicious signals are detected
- π± Proximity detection for Bluetooth devices (10ft) and cell phones (15ft)
- π Visual analysis with auto-generated spectrum plots comparing anomalies against baseline
- π± Email notifications for remote monitoring capabilities
- π Adaptive baseline creation for your specific RF environment
- π One-click installation - be up and running in minutes
- π₯οΈ Native macOS integration with desktop shortcuts and notifications
- π§ Highly configurable frequency bands, sensitivity, and alert thresholds
curl -sSL https://raw.githubusercontent.com/yourusername/rf-ids/main/install_rf_ids.sh | bashThat's it! The installer handles everything automatically:
- Installing all required dependencies and libraries
- Setting up the monitoring script and configuration
- Creating desktop shortcuts for easy access
- Configuring autostart options (optional)
RF-IDS creates a baseline of the normal RF spectrum in your environment, then continuously scans for deviations that could indicate security threats:
- Baseline Creation: First-time setup samples your local RF environment to establish what's "normal"
- Continuous Monitoring: Cycles through configured frequencies (WiFi, Bluetooth, common ISM bands, etc.)
- Anomaly Detection: Identifies signals that exceed your configured power threshold
- Alert System: Triggers notifications, logs events, and saves spectrum visualizations
- Analysis: Provides spectral plots showing exactly where and how anomalies differ from baseline
- macOS 10.15+ (Catalina or newer)
- RTL-SDR dongle (RTL2832U-based)
- USB port
- Internet connection (for installation only)
When RF-IDS detects an anomaly, it automatically generates visualizations like this:
The upper graph shows baseline vs. current spectrum, while the lower graph highlights specific anomalies that triggered the alert.
The system is fully configurable via the config.json file:
{
"frequencies": [915, 2412, 2437, 2462, 2480, 433, 868],
"threshold": 12,
"scan_interval": 5,
"...": "..."
}- π’ Enterprise Security: Monitor for unauthorized wireless devices in secure areas
- π Smart Home Security: Detect potential attacks against IoT devices
- π TEMPEST Protections: Identify potential data exfiltration via RF
- π Device-Free Zones: Enforce no-phone policies in sensitive or classified environments
- π Meeting Security: Alert when unauthorized devices enter conference rooms during sensitive discussions
- π¬ Security Research: Analyze wireless protocols for vulnerabilities
- π΅οΈ Digital Forensics: Gather RF evidence during incident response
After installation:
- Double-click the RF-IDS icon on your desktop
- The system will first create a baseline RF profile (takes ~1 minute)
- Monitoring begins automatically after baseline creation
- Check the
rf_ids_datafolder for logs and visualizations
Contributions are welcome! Feel free to:
- Report bugs and suggest features by opening issues
- Submit pull requests for improvements
- Share your use cases and success stories
This project is licensed under the MIT License - see the LICENSE file for details.
- RTL-SDR community for drivers and tools
- GNU Radio project for signal processing capabilities
- Python scientific computing community
Made with β€οΈ for the cybersecurity community

