Add rtl_433 sensor decoding and UI improvements

Features:
- Add 433MHz sensor decoding via rtl_433 integration
- Add mode tabs to switch between Pager and 433MHz modes
- Add sensor data display with device model, readings
- Add separate stats for sensors (readings count, unique devices)
- Add favicon
- Add audio alerts, export (CSV/JSON), signal meter, waterfall display
- Add auto-restart on frequency change
- Add relative timestamps

UI:
- Add author credit (smittix) to header
- Fix tool status alignment with grid layout
- Update stats display to switch with mode tabs

Docs:
- Update README with rtl_433 installation and usage
- Add "What is INTERCEPT?" section explaining front-end purpose
- Add author section and badge
- Update LICENSE copyright

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
James Smith
2025-12-19 15:25:48 +00:00
parent 9a644d6faa
commit 6738fba42d
4 changed files with 662 additions and 83 deletions
+78 -14
View File
@@ -4,6 +4,7 @@
<img src="https://img.shields.io/badge/python-3.7+-blue.svg" alt="Python 3.7+">
<img src="https://img.shields.io/badge/license-MIT-green.svg" alt="MIT License">
<img src="https://img.shields.io/badge/platform-macOS%20%7C%20Linux-lightgrey.svg" alt="Platform">
<img src="https://img.shields.io/badge/author-smittix-cyan.svg" alt="Author">
</p>
<p align="center">
@@ -11,8 +12,8 @@
</p>
<p align="center">
A sleek, modern web-based pager decoder using RTL-SDR and multimon-ng.<br>
Decode POCSAG and FLEX pager signals with a futuristic SpaceX-inspired interface.
A sleek, modern web-based front-end for RTL-SDR signal decoding tools.<br>
Provides a unified interface for multimon-ng (POCSAG/FLEX) and rtl_433 (433MHz sensors).
</p>
## Screenshot
@@ -20,15 +21,40 @@
---
## What is INTERCEPT?
INTERCEPT is a **web-based front-end** that provides a unified, modern interface for popular RTL-SDR signal decoding tools:
- **rtl_fm + multimon-ng** - For decoding POCSAG and FLEX pager signals
- **rtl_433** - For decoding 433MHz ISM band devices (weather stations, sensors, etc.)
Instead of running command-line tools manually, INTERCEPT handles the process management, output parsing, and presents decoded data in a clean, real-time web interface.
---
## Features
### Pager Decoding
- **Real-time decoding** of POCSAG (512/1200/2400) and FLEX protocols
- **Customizable frequency presets** stored in browser
- **Auto-restart** on frequency change while decoding
### 433MHz Sensor Decoding
- **200+ device protocols** supported via rtl_433
- **Weather stations** - temperature, humidity, wind, rain
- **TPMS** - Tire pressure monitoring sensors
- **Doorbells, remotes, and IoT devices**
- **Smart meters** and utility monitors
### General
- **Web-based interface** - no desktop app needed
- **Live message streaming** via Server-Sent Events (SSE)
- **Audio alerts** with mute toggle
- **Message export** to CSV/JSON
- **Signal activity meter** and waterfall display
- **Message logging** to file with timestamps
- **Customizable frequency presets** stored in browser
- **RTL-SDR device detection** and selection
- **Configurable gain, squelch, and PPM correction**
- **Configurable gain and PPM correction**
## Requirements
@@ -40,7 +66,8 @@
- Python 3.7+
- Flask
- rtl-sdr tools (`rtl_fm`)
- multimon-ng
- multimon-ng (for pager decoding)
- rtl_433 (for 433MHz sensor decoding)
## Installation
@@ -75,7 +102,7 @@ sudo apt-get install multimon-ng
**From source:**
```bash
git clone https://github.com/EliasOewortal/multimon-ng.git
git clone https://github.com/EliasOenal/multimon-ng.git
cd multimon-ng
mkdir build && cd build
cmake ..
@@ -83,13 +110,35 @@ make
sudo make install
```
### 3. Install Python dependencies
### 3. Install rtl_433 (optional, for 433MHz sensors)
**macOS (Homebrew):**
```bash
brew install rtl_433
```
**Ubuntu/Debian:**
```bash
sudo apt-get install rtl-433
```
**From source:**
```bash
git clone https://github.com/merbanan/rtl_433.git
cd rtl_433
mkdir build && cd build
cmake ..
make
sudo make install
```
### 4. Install Python dependencies
```bash
pip install -r requirements.txt
```
### 4. Clone and run
### 5. Clone and run
```bash
git clone https://github.com/yourusername/intercept.git
@@ -119,12 +168,19 @@ Open your browser to `http://localhost:5050`
Enable logging in the Logging section to save decoded messages to a file. Messages are saved with timestamp, protocol, address, and content.
## Default Frequencies (UK)
## Default Frequencies
### Pager (UK)
- **153.350 MHz** - UK pager frequency
- **153.025 MHz** - UK pager frequency
You can customize these presets in the web interface.
### 433MHz Sensors
- **433.92 MHz** - EU/UK ISM band (most common)
- **315.00 MHz** - US ISM band
- **868.00 MHz** - EU ISM band
- **915.00 MHz** - US ISM band
You can customize pager presets in the web interface.
## API Endpoints
@@ -132,10 +188,13 @@ You can customize these presets in the web interface.
|----------|--------|-------------|
| `/` | GET | Main web interface |
| `/devices` | GET | List RTL-SDR devices |
| `/start` | POST | Start decoding |
| `/stop` | POST | Stop decoding |
| `/start` | POST | Start pager decoding |
| `/stop` | POST | Stop pager decoding |
| `/start_sensor` | POST | Start 433MHz sensor listening |
| `/stop_sensor` | POST | Stop 433MHz sensor listening |
| `/status` | GET | Get decoder status |
| `/stream` | GET | SSE stream for messages |
| `/stream` | GET | SSE stream for pager messages |
| `/stream_sensor` | GET | SSE stream for sensor data |
| `/logging` | POST | Toggle message logging |
| `/killall` | POST | Kill all decoder processes |
@@ -160,10 +219,15 @@ You can customize these presets in the web interface.
MIT License - see [LICENSE](LICENSE) for details.
## Author
Created by **smittix** - [GitHub](https://github.com/smittix)
## Acknowledgments
- [rtl-sdr](https://osmocom.org/projects/rtl-sdr/wiki) - RTL-SDR drivers
- [multimon-ng](https://github.com/EliasOenal/multimon-ng) - Multi-protocol decoder
- [multimon-ng](https://github.com/EliasOenal/multimon-ng) - Multi-protocol pager decoder
- [rtl_433](https://github.com/merbanan/rtl_433) - 433MHz sensor decoder
- Inspired by the SpaceX mission control aesthetic
## Disclaimer