Repository navigation
Releases: threadpoolx/DissPair
Release list
DissPair v2.2.0
DissPair v2.2.0
New
Advertisement Inspector (GAP)
Tap ADV on any BLE device to see what it broadcasts, without connecting. Updates live while scanning.
- Decodes every advertising data field: flags, service UUIDs (with names), local name, TX power, appearance, service and manufacturer data, Mesh, URI and more. Malformed advertisements are flagged.
- Vendor formats: Apple Continuity (iBeacon, AirDrop, Proximity Pairing, Handoff, Nearby Info/Action, Find My), Eddystone UID/URL/TLM/EID, Google Fast Pair, company-ID lookup.
- Privacy checks: address type (public / random static / resolvable private / non-resolvable), private addresses that never rotate, serials or MAC fragments in device names, tracker beacons (Find My, SmartTag, Tile).
- Over time: estimated advertising interval, RSSI graph, payload changes, PDU details (legacy/extended, connectable, PHY, TX power).
- Risk flags for exposed firmware-update (DFU) and Nordic UART services.
- COPY / SHARE a full report, or jump straight to GATT analysis.
GATT Access Audit
One tap tests what every characteristic allows without pairing.
- Read, subscribe and write results labelled
OPEN/AUTH/ENC/AUTHZ/KEY/DENY. - Write test: Off, Echo only (safe), or Echo + commit a payload you choose.
- Exportable text report for vendor disclosure.
GATT improvements
- SUB / UNSUB for notifications and indications, with a live notification log.
- Write-without-response support: characteristics that only allow it are now writable.
- Maximum MTU requested automatically on connect; payload limits follow the negotiated MTU.
- Real names for standard and vendor services (ANCS, AMS, Device Information, Nordic UART/DFU, …).
- Readable text shown alongside hex values.
- Error codes shown by name (e.g.
INSUFFICIENT_AUTHENTICATION).
Appearance
- Follows the system light/dark theme, with a manual System / Light / Dark toggle.
- New app icon, adapted for all launcher shapes.
Fixed
- Back gesture returns to the main screen instead of exiting the app.
- Rapid GATT actions are no longer silently dropped (all operations are queued).
- Reads were handled twice on Android 13+.
- Dual-mode devices now connect over BLE for GATT analysis.
DissPair v2.1.2
Bug Fixes.
Now availaible on F-Droid: https://f-droid.org/packages/org.disspair.disspair/
DissPair v2.1.1
APK is ready to be pushed to f droid
v2.1
DissPair v2
DissPair v2.0 — Release Notes
April 2026 · Native Android · Kotlin + Jetpack Compose
What's new
🔧 Architecture — Complete native rewrite
Migrated entirely from Python/Kivy to native Kotlin with Jetpack Compose. App size drops from 36 MB → 12 MB (67% reduction) with faster startup, lower memory footprint, and direct access to Android Bluetooth APIs — no JNI bridging required.
✨ New — BLE GATT read & write
The BLE Tool is now supports reading and writing characteristics directly. Supports ASCII and raw hex input, with a live HEX / ASCII display toggle.
✨ New — Classic payload delivery
The Classic Tool now includes a payload dialog with predefined AT commands and OBEX Connect PDUs, plus a custom entry field. Automatic HFP handshake detection and bypass is performed before payload injection.
⚡ Improved — Scan filtering toggles
New per-toggle filters for Paired and Unknown devices help declutter scan results when focusing on specific targets. Paired devices load automatically from the bond cache on startup.
⚡ Improved — UI/UX polish
Overhauled interface with consistent dark theming, color-coded log output, device class tags, and smoother overlay transitions across both the Classic and GATT auditors.
At a glance
| v1 | v2 | |
|---|---|---|
| Language | Python / Kivy | Kotlin / Jetpack Compose |
| App size | ~36 MB | ~12 MB |
| BLE GATT write | ✗ | ✓ |
| Classic payloads | ✗ | ✓ |
| HFP auto-bypass | ✗ | ✓ |
| Scan filters | ✗ | ✓ |
For installation instructions and build steps, see the README.
To report a vulnerability or abuse, see the Security Policy.
Virus Total Report: https://www.virustotal.com/gui/file/b8da497be5374b58fadf9ba2b66834e4bfa66d06d9281c0a98217855b1e2d7f0?nocache=1
⚠️ Authorized Use Only
Use this tool exclusively on devices you own or have explicit written permission to test. Unauthorized use may violate local laws.Risk Disclosure
This tool contains features that can cause operational disruption if misused:
- RFCOMM Flooding — injects dense byte streams that may cause buffer overflows, device freezes, or DoS on vulnerable stacks
- Payload Injection — raw AT command injection can alter device state or trigger DoS
The developer assumes no liability for misuse or damage. For concerns or abuse reports, see the Security Policy.
DissPair v1
📡 DissPair v1.0 — Initial Release
First public release of DissPair, a Bluetooth protocol analysis toolkit
for studying RFCOMM channel behavior on devices you own in a lab environment.
What's Included
- Classic BR/EDR Scanner — Discovers nearby Bluetooth Classic devices
using Android's standard discovery API - RFCOMM Channel Analyzer — Probes channels 1–30 via direct connection
attempts to map which channels are active, supplementing what SDP advertises - AT Command Probe — Sends a standard Hayes AT command sequence to study
how your device's serial profile responds to modem commands - Flood Test — Transmits a sustained data stream (64 B – 64 KB,
adjustable) to observe how your device handles connection load and
buffer behavior under pressure
Installation
- Download
disspair.apkbelow - On your Android device, allow Install unknown apps
- Grant Location and Nearby Devices permissions when prompted
Requirements
- Android 8.0+ (API 26 minimum)
- Bluetooth Classic capable device
- Android 12+ requires Nearby Devices permission
VirusTotal Report
⚠️ Authorized Use Only
This tool is intended strictly for use on devices you own or have explicit
written permission to test. Unauthorized use against third-party devices may
violate local laws.
⚠️ Potentially Harmful Capabilities & Risk DisclosureThis tool is strictly intended for educational purposes, security research, and authorized security auditing. It contains features that can cause operational disruption to target hardware if used improperly:
RFCOMM Hardware Flooding: The "Flood" module intentionally injects dense byte streams into targeted Bluetooth channels. On vulnerable, legacy, or unpatched Bluetooth stacks, this can cause buffer overflows, resulting in the target device freezing, kernel panics, or complete Denial of Service (DoS).
Payload Injection & State Manipulation: The ability to inject raw AT commands can alter the operational state of target devices, potentially causing Denial of Service(DoS).
The developer assumes no liability for misuse or damage caused by this software. Use exclusively on hardware you own or have explicit consent to audit.
For raising any concerns or Misuse of the tool please read our Security Policy