Smittix d0e8eaf397 fix: Add LISTEN button to listening post function strip and clarify controls
- Add dedicated LISTEN button (🎧) to function strip for direct audio playback
- Rename START to SCAN (📡) to clarify it scans for signals, not direct audio
- Update function strip status to show LISTENING (green) vs SCANNING (cyan)
- Update updateListeningStripRunning() to accept mode parameter
- Add listenFromStrip() function for direct audio from function strip
- Update stopListening() to handle both scanner and audio states
- Move .listening status dot to green color group (matches audio state)

This clarifies the confusion where users expected the START button to play audio,
but it actually started the frequency scanner which only plays audio when signals
are detected.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 21:20:17 +00:00
2026-01-14 10:30:24 +00:00
2026-01-23 06:02:54 -06:00
2026-01-08 06:46:52 +01:00

INTERCEPT

Python 3.9+ MIT License Platform

Support the developer of this open-source project

Buy Me A Coffee

Signal Intelligence Platform
A web-based interface for software-defined radio tools.

Screenshot


Features

  • Pager Decoding - POCSAG/FLEX via rtl_fm + multimon-ng
  • 433MHz Sensors - Weather stations, TPMS, IoT devices via rtl_433
  • Aircraft Tracking - ADS-B via dump1090 with real-time map and radar
  • Vessel Tracking - AIS ship tracking with VHF DSC distress monitoring
  • ACARS Messaging - Aircraft datalink messages via acarsdec
  • Listening Post - Frequency scanner with audio monitoring
  • Satellite Tracking - Pass prediction using TLE data
  • ADS-B History - Persistent aircraft history with reporting dashboard (Postgres optional)
  • WiFi Scanning - Monitor mode reconnaissance via aircrack-ng
  • Bluetooth Scanning - Device discovery and tracker detection (with Ubertooth support)
  • Meshtastic - LoRa mesh network integration
  • Spy Stations - Number stations and diplomatic HF network database
  • Remote Agents - Distributed SIGINT with remote sensor nodes
  • Offline Mode - Bundled assets for air-gapped/field deployments

Installation / Debian / Ubuntu / MacOS


**1. Clone and run:**
```bash
git clone https://github.com/smittix/intercept.git
cd intercept
./setup.sh
sudo -E venv/bin/python intercept.py

Docker (Alternative)

git clone https://github.com/smittix/intercept.git
cd intercept
docker compose up -d

Note: Docker requires privileged mode for USB SDR access. See docker-compose.yml for configuration options.

ADS-B History (Optional)

The ADS-B history feature persists aircraft messages to Postgres for long-term analysis.

# Start with ADS-B history and Postgres
docker compose --profile history up -d

Then open /adsb/history for the reporting dashboard.

Open the Interface

After starting, open http://localhost:5050 in your browser. The username and password is admin:admin

The credentials can be change in the ADMIN_USERNAME & ADMIN_PASSWORD variables in config.py


Hardware Requirements

Hardware Purpose Price
RTL-SDR Required for all SDR features ~$25-35
WiFi adapter Must support promiscuous (monitor) mode ~$20-40
Bluetooth adapter Device scanning (usually built-in) -
GPS Any Linux supported GPS Unit ~10

Most features work with a basic RTL-SDR dongle (RTL2832U + R820T2).

Not using an RTL-SDR Device?
Intercept supports any device that SoapySDR supports. You must however have the correct module for your device installed! For example if you have an SDRPlay device you'd need to install soapysdr-module-sdrplay.
GPS Usage
gpsd is needed for real time location. Intercept automatically checks to see if you're running gpsd in the background when any maps are rendered.

Discord Server

Join our Discord


Documentation


Disclaimer

This project was developed using AI as a coding partner, combining human direction with AI-assisted implementation. The goal: make Software Defined Radio more accessible by providing a clean, unified interface for common SDR tools.

This software is for educational and authorized testing purposes only.

  • Only use with proper authorization
  • Intercepting communications without consent may be illegal
  • You are responsible for compliance with applicable laws

License

MIT License - see LICENSE

Author

Created by smittix - GitHub

Acknowledgments

rtl-sdr | multimon-ng | rtl_433 | dump1090 | AIS-catcher | acarsdec | aircrack-ng | Leaflet.js | Celestrak | Priyom.org

S
Description
No description provided
Readme Apache-2.0 116 MiB
Languages
Python 45.7%
HTML 22.5%
JavaScript 20.3%
CSS 10.2%
Shell 1.2%
Other 0.1%