DragonSync can publish detections to an MQTT broker as well as to TAK. This article covers the settings that turn it on, how to confirm messages are actually reaching your broker, and where to look when they are not.
What is published
With MQTT enabled, detections are published both as an aggregate and per drone, alongside the CoT output that goes to TAK. Each per-drone message carries the time the kit processed it, the aircraft’s own timestamp where the broadcast includes one, and an identifier for the kit that saw it. System status, including whether the kit has a GPS fix, is published separately. Dashboards that support MQTT discovery can create entities for drones, and for pilot and home positions where known, when discovery is enabled.
Turning it on
Edit /home/dragon/DragonSync/config.ini under [SETTINGS]:
mqtt_enabled = true
mqtt_host = <broker-address>
mqtt_port = 1883
mqtt_per_drone_enabled = true
mqtt_ha_enabled = true
mqtt_per_drone_enabled publishes one message stream per drone. mqtt_ha_enabled turns on discovery for dashboards that use it. Restart the output service after any change:
sudo systemctl restart dragonsync
If the broker is down when the unit boots, nothing else is affected. Detection and CoT output run as normal, and the connection to the broker is made automatically once it comes up.
Signal alerts
Signal alerts, such as FPV video, are not drone tracks and are off by default for MQTT. To publish them, add:
mqtt_signals_enabled = true
Alerts are then published to the topic wardragon/signals. With discovery on, mqtt_ha_signal_tracker = true adds a per-kit signal alert tracker that jumps to the latest alert.
Confirm the broker is reachable
From the unit, publish a test message:
mosquitto_pub -h <broker> -t test -m "hello"
If that fails, the problem is the network path or the broker credentials, not detection.
Confirm detections are arriving
Subscribe to the kit’s topics from any machine that can reach the broker:
mosquitto_sub -h <broker> -t 'wardragon/#' -v
mosquitto_sub -h <broker> -t '<discovery-prefix>/#' -v
The first shows the kit’s own messages. The second shows discovery messages. Then check the unit’s log for MQTT activity:
journalctl -u dragonsync | grep -i mqtt
If your dashboard does not show the entities
- Confirm
mqtt_enabled,mqtt_per_drone_enabled, andmqtt_ha_enabledare all true. - Watch the discovery topic while a detection is in progress to see whether the discovery messages are published at all.
- Confirm detections exist by checking
/droneson the API.
When an aircraft goes quiet
When an aircraft stops updating for the inactivity timeout, its entities are marked offline, which hides them on a map. The last known position stays in your dashboard’s history.
Related
- WarDragon User Guide, Section 8 — integration with your operational picture
- WarDragon User Guide, Appendix A.2 — file locations
- Reading a detection: tracks, signal alerts, and the API
- Software and SDR firmware updates
