Multi-band passive drone detector | Мультидиапазонный пассивный детектор дронов
SkySweep32 is an advanced passive drone detection system based on the ESP32 microcontroller. It monitors radio spectrum across three frequency bands (900 MHz, 2.4 GHz, 5.8 GHz) to detect UAV control signals and video transmission. Built with a modular, budget-friendly architecture — start with a ~$15 base kit and upgrade as needed.
| Tier | Name | Cost | Includes |
|---|---|---|---|
| 🟢 Base | Starter | ~$15-20 | ESP32 + OLED + NRF24L01+ (2.4 GHz) + Web Dashboard + BLE Remote ID |
| 🟡 Standard | Hunter | ~$35-45 | Base + CC1101 (900 MHz) + RX5808 (5.8 GHz) + ML Classification |
| 🔴 Pro | Sentinel | ~$60-80 | Standard + GPS + SD Card Logger + LoRa Mesh Network |
| 🟣 EW Mode | Juggernaut | ~$100+ | Sentinel + 4x VCO Jamming Modules (5.8G, 2.4G, 900M, 1.5G) |
Optional add-ons: 🎤 Acoustic Detection (~$5) | ⚔️ Countermeasures (auth required)
- Multi-band RF & Spectrum Scanning: Hardware sweeping across 900 MHz, 2.4 GHz, and 5.8 GHz bands checking for analog and digital drone links.
- Web Dashboard & Map: Real-time dark-themed dashboard via WiFi with Leaflet.js interactive map, drone lists, and RSSI graphs.
- Signal Fingerprinting: Built-in
SignalDatabaseidentifying known drone patterns (e.g., DJI OcuSync, FPV Analog, Crossfire) via band-matching and RSSI variance. - ESP-NOW Mesh: Free, autonomous node-to-node network sharing threat alerts, heartbeats, and GPS telemetry across massive areas without extra hardware.
- Power Management: 4 dynamic power states (Full, Balanced, Low, Deep Sleep) with battery ADC monitoring and runtime estimates.
- Countermeasures (Juggernaut): Optional VCO signal injection covering DJI, Walksnail, OpenIPC, ELRS, and GPS Denial.
- Auto-Calibration Tool: Integrated baseline noise calibration directly from the Web-UI.
- Alert System: Non-blocking intelligent Buzzer and LED patterns scaling with Threat Levels (Info → Critical).
- Remote ID: FAA ANSI/CTA-2063 compliant BLE drone identification natively on the ESP32.
- FreeRTOS Architecture: Safe concurrent processing with hardware Watchdogs and SPI mutexes.
| Component | Model | Frequency | Purpose |
|---|---|---|---|
| Microcontroller | ESP32 DevKit | - | Main processor + WiFi + BLE |
| RF Module 1 | CC1101 | 900 MHz | ISM band monitoring |
| RF Module 2 | NRF24L01+ | 2.4 GHz | WiFi/RC monitoring |
| RF Module 3 | RX5808 | 5.8 GHz | Video link monitoring |
| Display | OLED 128x64 (I2C) | - | Visual interface |
| Microphone (optional) | ICS-43434 MEMS | I2S | Acoustic detection |
| Signal | ESP32 Pin |
|---|---|
| MOSI | GPIO 23 |
| MISO | GPIO 19 |
| SCK | GPIO 18 |
| Module | CS Pin | CE Pin | Tier |
|---|---|---|---|
| NRF24L01+ | GPIO 15 | GPIO 2 | Base+ |
| CC1101 | GPIO 5 | - | Standard+ |
| RX5808 | GPIO 13 | - | Standard+ |
| LoRa SX1276 | GPIO 14 | - | Pro (Changed in v0.4) |
| SD Card | GPIO 27 | - | Pro |
| Signal | ESP32 Pin | Purpose |
|---|---|---|
| DAC 1 | GPIO 25 | 5.8GHz / 2.4GHz VCO Sweep |
| DAC 2 | GPIO 26 | 900MHz / 1.5GHz GPS VCO Sweep |
| LORA_R | GPIO 12 | LoRa Reset moved here |
| Signal | ESP32 Pin |
|---|---|
| SDA | GPIO 21 |
| SCL | GPIO 22 |
- RX5808 RSSI: GPIO 34 (ADC1_CH6)
- Power: 3.3V and GND to all modules
src/
├── main.cpp # Main application logic
├── countermeasures.h/cpp # Active countermeasure system
├── drivers/
│ ├── cc1101.h/cpp # CC1101 900MHz driver
│ ├── nrf24l01.h/cpp # NRF24L01+ 2.4GHz driver
│ └── rx5808.h/cpp # RX5808 5.8GHz driver
└── protocols/
├── mavlink_parser.h/cpp # MAVLink protocol decoder
└── crsf_parser.h/cpp # CRSF/ExpressLRS decoder
# Clone repository
git clone https://github.com/bobberdolle1/SkySweep32.git
cd SkySweep32
# Build firmware
pio run
# Upload to ESP32
pio run --target upload
# Monitor serial output
pio device monitorEdit platformio.ini:
build_flags = -DENABLE_COUNTERMEASURESEdit src/main.cpp:
counterMeasures.armSystem(true); // Uncomment this line- Criminal prosecution
- Heavy fines
- Equipment confiscation
- Interference with critical communications
Authorized Use Cases:
- Military and law enforcement operations
- Critical infrastructure protection (with permits)
- Conflict zones with appropriate authorization
- Research and development in controlled environments
This project is for educational and authorized defense purposes only.
- 🍼 Absolute Beginner Guide (Start Here) — No soldering, Lego-style assembly for beginners
- 📘 Hardware Setup Guide — Advanced wiring & BOM
- 💻 Software API Reference — REST & WebSocket APIs
- ⚖️ Legal Compliance — Responsible use
GNU General Public License v3.0 - See LICENSE file for details.
SkySweep32 — продвинутая система пассивного обнаружения дронов на базе микроконтроллера ESP32. Система мониторит радиоэфир в трех диапазонах (900 МГц, 2.4 ГГц, 5.8 ГГц) для детекции сигналов управления БПЛА и видеопередачи. Включает опциональные возможности активного противодействия для авторизованных оборонных применений.
- Мультидиапазонное и Спектральное сканирование: Аппаратный скан эфира на 900 МГц, 2.4 ГГц и 5.8 ГГц диапазонах для детекции пультов, телеметрии и видеолинков.
- Web-Дашборд и Интерактивная Карта: Локальный веб-интерфейс по WiFi с картой (Leaflet.js) для трекинга дронов и операторов через Remote ID.
- Сигнатурная База (Fingerprinting): Динамическое распознавание 8 типов дронов (DJI OcuSync, FPV, Crossfire и др.) через анализ дисперсии RSSI и паттернов "прыжков".
- Своя Mesh-сеть (ESP-NOW): Самоорганизующаяся децентрализованная сеть оповещения между детекторами (0 рублей стоимости, использует WiFi чип ESP32).
- Активный РЭБ (Juggernaut): Управление каскадом из 4-х внешних VCO-генераторов (5.8GHz, 2.4GHz, 900MHz, 1.5GHz GPS) через DAC-пины для подавления DJI, Walksnail, BetaFPV, OpenIPC и ELRS.
- Power Management (Батарея): Глубокий сон, скалер частоты ЦП и ADC-отслеживание батареи. Позволяет работать от 18650 днями. Автоматическая калибровка шума из UI.
- Умная Система Уведомлений: Неблокирующий диспетчер сигналов для зуммера (Buzzer) и LED с динамическими паттернами под каждый уровень угрозы.
- Оценка угроз: 5-уровневая классификация (НЕТ/НИЗКАЯ/СРЕДНЯЯ/ВЫСОКАЯ/КРИТИЧЕСКАЯ).
- Активное противодействие (опционально, требуется легальная авторизация).
| Компонент | Модель | Частота | Назначение |
|---|---|---|---|
| Микроконтроллер | ESP32 DevKit | - | Основной процессор + WiFi/BLE |
| РЧ-модуль 1 | CC1101 | 900 МГц | Мониторинг ISM-диапазона |
| РЧ-модуль 2 | NRF24L01+ | 2.4 ГГц | Спектральное сканирование / RC |
| РЧ-модуль 3 | RX5808 | 5.8 ГГц | Мониторинг видеолинка |
| Дисплей | OLED 128x64 | - | Визуальный интерфейс |
| Индикация | Passive Buzzer | - | Алерты и ошибки |
| Сигнал | Пин ESP32 |
|---|---|
| MOSI | GPIO 23 |
| MISO | GPIO 19 |
| SCK | GPIO 18 |
| Модуль | CS пин | CE пин (если есть) |
|---|---|---|
| NRF24L01+ | GPIO 15 | GPIO 2 |
| CC1101 | GPIO 5 | - |
| RX5808 | GPIO 13 | - |
| LoRa SX1276 | GPIO 14 | - |
| SD Card | GPIO 27 | - |
| Пин | Функция |
|---|---|
| GPIO 25 | DAC 1 (Шум для 5.8GHz и 2.4GHz VCO) |
| GPIO 26 | DAC 2 (Шум для 900MHz и 1.5GHz GPS VCO) |
| GPIO 12 | LoRa RESET (перенесен с GPIO 25) |
| Сигнал | Пин ESP32 |
|---|---|
| SDA | GPIO 21 |
| SCL | GPIO 22 |
- Зуммер (Buzzer): GPIO 4
- LED оповещения: GPIO 2
- ADC Батареи (100k/100k): GPIO 36
- RX5808 RSSI: GPIO 34 (ADC1_CH6)
- Питание: 3.3V и GND на все модули (регулятор LDO 1117 обязателен!)
src/
├── main.cpp # Основная логика приложения
├── countermeasures.h/cpp # Система активного противодействия
├── drivers/
│ ├── cc1101.h/cpp # Драйвер CC1101 900МГц
│ ├── nrf24l01.h/cpp # Драйвер NRF24L01+ 2.4ГГц
│ └── rx5808.h/cpp # Драйвер RX5808 5.8ГГц
└── protocols/
├── mavlink_parser.h/cpp # Декодер протокола MAVLink
└── crsf_parser.h/cpp # Декодер CRSF/ExpressLRS
# Клонировать репозиторий
git clone https://github.com/bobberdolle1/SkySweep32.git
cd SkySweep32
# Собрать прошивку
pio run
# Загрузить на ESP32
pio run --target upload
# Мониторинг Serial
pio device monitorРедактировать platformio.ini:
build_flags = -DENABLE_COUNTERMEASURESРедактировать src/main.cpp:
counterMeasures.armSystem(true); // Раскомментировать эту строку- Уголовному преследованию
- Крупным штрафам
- Конфискации оборудования
- Помехам критическим коммуникациям
Разрешенные случаи использования:
- Военные и правоохранительные операции
- Защита критической инфраструктуры (с разрешениями)
- Зоны боевых действий с соответствующей авторизацией
- Исследования и разработка в контролируемых условиях
Этот проект предназначен только для образовательных и авторизованных оборонных целей.
- 🍼 Сборка с Абсолютного Нуля (Начни отсюда) — Никакой пайки, Лего-сборка для новичков (рядового бойца)
- 📘 Руководство по аппаратной части — Инструкция для инженеров с полным BOM
- 💻 Справочник API ПО — Документация REST и WebSocket
- ⚖️ Правовое соответствие — Правила использования
Стандартная общественная лицензия GNU v3.0 - См. файл LICENSE для деталей.
Contributions are welcome! Please read CONTRIBUTING.md for details.
Приветствуются вклады! Пожалуйста, прочитайте CONTRIBUTING.md для деталей.
- GitHub Issues: Report bugs
- Discussions: Community forum
Developed with ❤️ for drone defense research | Разработано с ❤️ для исследований противодроновой защиты