Noureddine RAMDI / DragonSync-iOS: real-time multi-spectrum RF detection visualization on iOS/macOS

Created Mon, 04 May 2026 10:23:02 +0000 Modified Sat, 23 May 2026 20:41:27 +0000

Root-Down-Digital/DragonSync-iOS

DragonSync-iOS is a Swift-based iOS/macOS companion app designed to visualize and alert on multi-spectrum radio frequency (RF) detections for drone detection. It connects to a Python backend called DroneID using ZeroMQ (ZMQ) sockets to aggregate diverse RF signal streams and presents them in a unified live map interface on Apple devices.

How DragonSync-iOS aggregates multi-spectrum RF signals for real-time visualization

At its core, DragonSync-iOS is part of the WarDragon ecosystem, which detects drones and RF devices by combining multiple signal sources. The backend runs on Python in a multi-process architecture, using ZeroMQ message brokering to handle streams from WiFi 2.4/5GHz Remote ID (RID), Bluetooth Low Energy (BLE) advertisements, software-defined radio (SDR) decoders connected to ANTSDR E200 hardware, ADS-B 1090MHz transponders, and 5.8GHz FPV video transmitters.

This aggregation layer normalizes the data from these heterogeneous feeds into a unified detection pipeline. The app then connects over the local network using ZMQ sockets (ports 4224/4225) to receive this stream of detection events in real time.

The app itself is a native SwiftUI application targeting iOS and macOS platforms. It features a live map displaying color-coded markers for each detection type, reflecting their spectrum source and status. Additional features include FAA aircraft registry lookups for ADS-B transponder signals, data persistence via SwiftData with iOS Keychain encryption for security, and export options to KML and CSV formats for offline analysis.

Integration points extend beyond visualization: MQTT support enables Home Assistant auto-discovery for smart home integrations, TAK/ATAK CoT XML messages allow interoperability with tactical situational awareness tools, and webhook notifications deliver alerts to external systems. The backend supports three deployment tiers: the pre-built WarDragon Pro hardware (full spectrum), a portable ESP32-C3/S3 firmware for WiFi RID only, or custom Linux/macOS builds with commodity RF hardware for DIY enthusiasts.

Modular multi-process ZMQ architecture and native Swift integration

What distinguishes DragonSync-iOS is its clean separation between the heavy RF signal processing backend and the lightweight mobile visualization frontend. The backend architecture uses ZeroMQ to broker messages between processes responsible for decoding different RF protocols. This design keeps the system modular and scalable — new signal sources can be added as separate Python processes publishing to the ZMQ bus.

On the iOS/macOS side, the Swift app subscribes to these messages using ZMQ client sockets, parsing protocol-specific information such as Remote ID data, ADS-B aircraft info, and SDR signal metadata. The app uses SwiftData for efficient, local persistence of detections, secured with Keychain encryption to protect sensitive information.

The codebase favors clarity and modularity, with separate Swift modules handling networking, data parsing, persistence, and UI rendering. The unified live map is optimized to display a high volume of markers without performance degradation, leveraging native map frameworks and SwiftUI’s declarative UI patterns.

However, the tradeoff is the dependence on the backend’s uptime and network connectivity. Without the Python ZMQ broker running and accessible over the network, the app cannot receive live data. Also, configuring the backend and hardware requires some domain knowledge, particularly with RF hardware and network setup.

Quick start with WarDragon Pro hardware

The repo provides a clear quick start path for the WarDragon Pro pre-configured hardware, designed for full-spectrum deployment. Here’s the exact setup from the docs:

# Quick Start:
1. Power on device
2. Connect iOS device to same network
3. App  Settings  ZMQ  Enter WarDragon IP
4. Start monitoring

Troubleshooting tips include toggling the in-app connection for Apple network permission requests, editing the backend /home/dragon/WarDragon/DragonSync/config.ini file to adjust ZMQ host or multicast addresses, and ensuring GPS lock or firmware compatibility for temperature reporting on SDR hardware.

Besides WarDragon Pro, there is an option for a portable WiFi-only setup using Drag0net ESP32 firmware, which can be flashed via an automated script. The repo supports a DIY custom build variant with commodity hardware for maximum control but requires more setup time.

verdict: a practical tool for RF drone detection visualization with modular architecture

DragonSync-iOS is a solid example of bridging complex multi-protocol RF detection with a polished native app experience. Its multi-process ZeroMQ architecture under the hood is worth understanding for anyone building real-time distributed detection or monitoring systems.

It’s well suited for RF hobbyists, drone security researchers, and tactical operators who want a unified visualization and alerting layer on iOS/macOS. The app’s native Swift implementation and use of SwiftData for secure persistence align well with Apple’s platform best practices.

The main limitations are the reliance on the Python backend and network connectivity, which means it’s not a standalone app but part of a larger ecosystem. The hardware setup complexity and requirement for RF knowledge may also put off casual users.

Overall, DragonSync-iOS provides a pragmatic, extensible framework for multi-spectrum RF situational awareness, balancing modular backend design with a smooth native frontend. Worth exploring if you need live drone and RF device detection on Apple mobile devices.


→ GitHub Repo: Root-Down-Digital/DragonSync-iOS ⭐ 186 · Swift