Skip to content

snstac/dhbridge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dhbridge

Implements the DroneHone external Bluetooth sensor protocol: listen for Remote ID as Cursor on Target (CoT), map to DroneHone JSON, and export over Bluetooth Classic RFCOMM (and optionally BLE OpenDroneID).

On startup the host advertises on Bluetooth using its hostname (or BT_NAME if set). ATAK DroneHone can connect immediately; aircraft data arrives when CoT producers send events to the bridge.

Upstream project for AryaOS and other TAK edge deployments. Wire format: docs/dronehone-bluetooth-protocol.md.

Architecture

CoT TCP :8087 (default) ──► dhbridge ──► Bluetooth RFCOMM ──► ATAK DroneHone
Optional MQTT (DroneScout) ──┘

Install (Debian / AryaOS)

Download the latest .deb from GitHub Releases or use the stable alias dhbridge_latest_all.deb:

curl -fsSLO https://github.com/snstac/dhbridge/releases/latest/download/dhbridge_latest_all.deb
sudo dpkg -i dhbridge_latest_all.deb
sudo apt-get install -fy
sudo systemctl enable --now dhbridge

Configuration: /etc/dhbridge.ini or /etc/default/dhbridge.

Defaults

Setting Default
COT_ENABLED true — listen on 0.0.0.0:8087
MQTT_ENABLED false
RFCOMM_ENABLED true
BT_NAME (empty = system hostname)
DEVICE_SERIAL (empty = /etc/machine-id)

Point a CoT producer (e.g. dronecot, PyTAK client) at tcp://<host>:8087. For DroneScout MQTT ingest, set MQTT_ENABLED=true and install the [mqtt] extra or dronecot package.

dhclient (Bluetooth client)

dhclient discovers and connects to external Bluetooth sensors speaking the same wire protocol as dhbridge (and DroneHone-compatible hardware such as Edge Scout). By default it prints UAS JSON lines to stdout; optionally forward detections as CoT:

dhclient scan
dhclient connect AA:BB:CC:DD:EE:FF
dhclient connect AA:BB:CC:DD:EE:FF --pair --cot-url tcp://127.0.0.1:8087

Development

pip install -e ".[dev]"
make test
dhbridge

Optional MQTT ingest:

pip install -e ".[dev,mqtt]"

Build a local package:

sudo apt-get install debhelper dh-python pybuild-plugin-pyproject python3-all
make deb

Release

Tag with v* (e.g. v0.1.0); GitHub Actions publishes versioned .deb plus dhbridge_latest_all.deb.

License

Apache-2.0 — Copyright Sensors & Signals LLC

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors