Releases: Root-Down-Digital/DragonSync-iOS
TestFlight v1.6
Release Notes
v1.6 build 2.4.1-2
RX5808 SPI FPV Detection
What's New
- 5.8GHz FPV detections with RSSI based proximity rings*
- Fixes custom webhook URL crash with JSON sanitization
- Fixes a bug with untracking creating stray entries in Encounter History
- Optimized ring handling for memory and speed
Standalone ESP32 Firmware Updates
- Multiple firmware configuration options for different hardware setups
- Improved flasher tooling with better user experience
- Updated firmware links and installation guides
Documentation Updates
- Updated README with new ESP32 standalone instructions
- Added comprehensive firmware flashing guides
- Enhanced troubleshooting documentation
- Updated hardware compatibility matrix
Notes
- FPV detection requires an RX5808 unit that has the SPI mod. These are cheap and easy to wire up. A bridge script can be found here and used as a background service in conjunction with
zmq_decoder.py
This app runs on coffee... thanks to the supporters, they keep this project alive
Full Changelog: v1.5build2.3.2...v1.6build2.4.1
Download: Available on the TestFlight link above (be sure you are using the latest TF link to get new builds)
Hardware Requirements: iOS 17.6+ | Compatible ESP32 board for standalone operation
v1.5
Release Notes
v1.5 - Enhanced Stability & ESP32 Standalone
Released August 13, 2025
A huge thanks to all who have supported this project (especially with coffee). Without it, this release would not be possible.
Major Features
ESP32 Standalone Firmware
- Complete standalone ESP32 drone detection system - Run WarDragon without iOS device dependency
- Hardware/Software configuration options for flexible deployment scenarios
- Auto-flasher utility for streamlined ESP32 firmware installation
- Dedicated firmware binaries for plug-and-play ESP32 deployment
- Enhanced ESP32 scanner with comprehensive bug fixes and performance improvements
Advanced Historical Tracking
- Detailed encounter visualization with enhanced map integration
- Historical pilot and home location tracking for pattern analysis
- Enhanced flight path recording with proximity point mapping
- MAC/CAA-based drone encounter identification for better tracking accuracy
Critical Fixes
Background Processing Stability
- Fixed critical crash during Settings singleton initialization - Resolved recursive dependency between Settings and BackgroundManager during app startup
- Improved background disconnect handling - Enhanced cleanup procedures to prevent memory leaks and crashes during background task termination
- Stabilized app lifecycle management - Better handling of foreground/background transitions
Technical Improvements
Codebase Enhancements
- Minor codebase refactoring and logging improvements for better maintainability
- Image resizing optimizations for better performance
- Updated documentation and README improvements
- Enhanced error handling and debugging capabilities
Firmware Updates
- Multiple firmware configuration options for different hardware setups
- Improved flasher tooling with better user experience
- Updated firmware links and installation guides
Documentation Updates
- Updated README with new ESP32 standalone instructions
- Added comprehensive firmware flashing guides
- Enhanced troubleshooting documentation
- Updated hardware compatibility matrix
This app runs on coffee... thanks to the supporters.
Full Changelog: v1.4build2.2.0...v1.5build2.3.2
Download: Available on the TestFlight and GitHub Releases
Hardware Requirements: iOS 17.6+ | ESP32 compatible boards for standalone mode
TestFlight 1.4 - Build 2.2.0
Release Notes
v1.4build2.2.0
- Addresses potential crashes and data loss during app termination by implementing a graceful shutdown procedure
- Prevents multiple cleanup calls and makes termination cleaner
- Stores and displays the original, unprocessed message string
- Fix drones not deleting on macOS detection tab
- Improves the readability of flight data charts by displaying the minimum and maximum values alongside the chart
- Increases chart height to accommodate labels
- Enhances the CoT message parsing logic to accurately extract additional data fields such as UA Type, Manufacturer, Operator ID, and Self-ID information
- Addresses inconsistencies in handling Height AGL and reorders parsing for better organization
- Refactors flight path point addition logic to prioritize monitor status and alert ring data for proximity points
- Ensures that only valid coordinates (both latitude and longitude non-zero) are added as regular flight points
- Adds signature count limit to 500, old signatures are removed after limit
- Prioritizes user map interactions and improves drone pathing
- Updates the map view to prioritize user interactions, preventing automatic recentering when the user has manually moved the map
- Improves drone flight path accuracy by filtering out redundant points and capping the path length for better performance
- Enhances coordinate validation and map reset logic for a more reliable user experience
This app is made by coffee. Your support keeps it (and this dev) alive!
Help Improve the App
Found a bug? Have an idea? Your feedback makes all the difference. Open a GitHub ticket or send a screenshot directly from the app. Feature requests welcome.
Full Changelog: v1.4build2.1...v1.4build2.2.0
TestFlight v1.4b2.1
This app is built with coffee and spare time. Your support keeps me and it alive
What's Fixed:
- More robust background network task to avoid potential crashes closes #53
- Keepalive session overhead lowered significantly and bugs fixed
Enhancements:
- Extend KML and CSV to include pilot and takeoff locations
- Fix encounter list display on iPhone closes #25
- Fix concurrency issues and webhook reliability
- Changed min polling interval 300-> 100ms
- Handle missing description data in selfID
- Status map location marker fix
Notes:
- Build is experimental for long-running sessions: Please report any crashes you experience as we iron out a stable BG service.
Help Improve the App
Found a bug? Have an idea? Your feedback makes all the difference. Open a GitHub ticket or send a screenshot directly from the app. Feature requests welcome.
Full Changelog: v1.4build1.9...v1.4build2.1
TestFlight v1.4 build 1.9
Maintenance Build
- Fix memory and data displaying only in KB
- Phantom
SilentAudioKeepAlive(fixes #51 and #52)- Keeps the app running in the background by holding a silent, non-interactive audio session.
- No audio is played, no UI or user interaction, and no interference with system or user audio.
- Fully compliant with App Store rules (no fake playback, no UI, no sound).
- No privacy concerns or battery issues typical of GPS/location hacks.
- Fixes crash in build 1.7
Full Changelog: v1.4build1.7...v1.4build1.9
Note
Though this is a working method, there may be some bugs to iron out in some areas. Input is welcome- such as using GPS for distance calc. when not available from other hardware. Here's a comparison of the ways to keep it alive:
iOS Background Keepalive Methods: Comparison
| Method | How It Works | Battery Use | App Store Safe? | Privacy | Reliability | Side Effects / Risks |
|---|---|---|---|---|---|---|
| Phantom Audio Session (SilentAudioKeepAlive) |
Runs a silent, non-interactive audio session/engine. No output, no playback, no UI. App stays alive in background without affecting other audio. |
Low | Yes (if silent) | Very safe | High | None. No impact on other audio/apps. |
| GPS/CoreLocation Hack | Fakes location updates to keep app running in background. | High | No (rejected) | Tracks user | Medium | Battery drain, privacy concerns. |
| Background Fetch | System wakes app at intervals for short tasks. | Very low | Yes | Very safe | Low | Unpredictable, not for real-time use. |
| Silent Push Notification | Server sends push to trigger short background activity. | Low | Yes | Very safe | Medium | Needs infra, short run time. |
| Deprecated VoIP | Old method for VoIP; not allowed for non-VoIP apps. | Medium | No | Very safe | N/A | Blocked by Apple. |
TestFlight v1.4
What's New in v1.4
- Drone icons rotate to their heading
- Support DragonSync multicast CoT messages with speed and course added
- Dashboard system status indicators
- Fix untracked drones reappearing
- iPad and iPhone specific status layouts
- Cleaned up message header menu
- Compact FAA lookup elements
- Dynamic maps fix hidden objects
- New fields from unhandled data
- Drone staleness tracking indicators
- Rebuilt Status tab
- New granular alerts and customizable notifications: Threshold-based alerting for proximity, system stats
- Webhook support for custom URL, Matrix, Discord, and IFTTT
- Restructured drone details
- Improved background ZMQ stability
- Apple silicon support restored
- Fixed a background timer invalidation bug causing unstable detections without the app open
Thanks @cya9nide for the detailed feedback
Recommendations / Known Issues
- Using ZMQ is recommended (for signal source detection and full data parsing)
- Breaking changes may be introduced in testing
- Spoof detection & RSSI distance estimates may have false positives or inaccuracies
Note
Untracked drones reappear when removed from history, delete erases them from your entire database.
Support the Project
This app is built by and runs on coffee
Help Improve the App
Found a bug? Have an idea? Your feedback makes all the difference. Open a GitHub ticket or send a screenshot directly from the app. Feature requests welcome!
Full Changelog: v1.3_build12.4...v1.4build1.5
TestFlight Build 12.4
What's New in 12.4
Full Changelog: v1.3build12.3...v1.3_build12.4
- Restores Multicast Support: for alphafox02 DragonSync python bridge:
- Pilot/home/drone CoT message consolidation
- New drone details view map and UX changes
- Add pilot and takeoff locations to storage and all maps
- Adjusts ZMQ polling timeout based on background mode status
- Fixes untracked drones from reappearing
- Swipe to delete status messages
Recommendations / Known Issues
- A Direct ZMQ connection is recommended (for signal source detection and more)
- Multicast is limited to the data in a CoT message XML
- App is in beta and breaking changes may occur
- Spoof detection & RSSI distance estimates may have false positives or inaccuracies.
Note: untracked drones reappear on next app session, delete erases them from your entire database
Support the Project
This app is built by and runs on coffee
Help Improve the App
Found a bug? Have an idea? Your feedback makes all the difference. Open a GitHub ticket or send a screenshot directly from the app. Feature requests welcome!
TestFlight v1.3 - Build 12.3
What's New in 12.3
-
Background Mode v2: Rebuilt for reliable, continuous functionality.
- Continues working after using airplane mode, while using other apps or with device locked.
- Native iOS Background App Refresh does not need to be enabled for this to work.
- Optimized for max battery performance without sacrificing detection.
-
Swipe to delete/untrack: Fixed delete functionality being blocked by alert
Note: untracked drones reappear on next app session, delete erases them from your entire database
Support the Project
Open source maintainer burnout is real.
Licensing is expensive. Keep it alive with coffee ☕
Thank you to all who have supported this project. I could not do it without you:
Recommendations
- A Direct ZMQ connection is recommended
- Multicast is limited to the data in a CoT message XML
Known Issues
- App is in beta and breaking changes may occur
- Spoof detection & RSSI distance estimates may have false positives or inaccuracies.
Help Improve the App
Found a bug? Have an idea? Your feedback makes all the difference. Open a GitHub ticket or send a screenshot directly from the app. Feature requests welcome!
Full Changelog: v1.3build11.9...v1.3build12.3
TestFlight v1.3 - Build 11.9
What's New
- New: Serial ID FAA lookup feature (Note: this queries faa.gov)
- New: menu to messages to delete/untrack individual drones (Note: untracked drones reappear on next app session, delete erases them from entire app)
- New: rate limiting: New processing interval setting for incoming messages
- Fix: background connections causing crashes on network timeouts. (Note: experimental feature, thank you to the tester who reported this crash)
- Fix: map rendering for zero coordinate detection.
Support the Project
💻 Open source maintainer burnout is real. I make no money from free and privacy focused dev work. Licensing is expensive. Keep it alive with coffee ☕
Recommendations
- A Direct ZMQ connection is recommended
- Multicast is limited to the data in a CoT message. This connection mode will be sunset in future builds.
Known Issues
- Multicast no longer supported due to upstream changes to the dependency
- Spoof detection & RSSI distance estimates may have false positives or inaccuracies.
- App is in beta and breaking changes may occur
Help Improve the App
Found a bug? Have an idea? Your feedback makes all the difference. Open a GitHub ticket or send a screenshot directly from the app. Feature requests welcome!
Full Changelog: v1.3build1.2...v1.3build11.9
TestFlight v1.3 build 11.3
v1.3 Changelog
Ensure your DroneID and DragonSync dependencies are up to date.
What's New
- Feature: Background monitoring: continues delivering status and drones alerts.
- Fix estimated distance not stored in encounter history
- Map and UI/UX improvements
Full Changelog: v1.2build11.2...v1.3build1.2
Recommendations
- A Direct ZMQ connection is recommended
- Use Multicast in conjunction with
dragonsync.pyfor CoT message relay features - Multicast is limited to the data in a CoT message and will not contain all details
Known Issues
- ZMQ provides more data than Multicast by design
- Active Drone count & history may have limitations with CAA-only IDs (Multicast)
- Spoof detection & RSSI distance estimates may have false positives or inaccuracies.
- App is in beta and breaking changes may occur
Help Improve the App!
Found a bug? Have an idea? Your feedback
makes all the difference! Open a GitHub ticket or send a screenshot directly from the app.