Channel Capture
tools/channel_capture.py connects to multiple RFCOMM channels and captures traffic from each.
python tools/channel_capture.py [channels...]If no channels are specified, the tool defaults to channels 14, 27, 8, and 9.
What It Does
Section titled “What It Does”- Connects to each specified channel sequentially
- Sends probe commands in both based-connect and
ff55formats - Captures and displays all responses with hex dump, including ASCII representation
- Analyzes packet structure (identifies headers, lengths, known patterns)
- Generates a per-channel message summary
Specialized Channel Tools
Section titled “Specialized Channel Tools”Several focused tools exist for specific channels:
ch14_session.py — Focused channel 14 probe. Connects, captures the initial ff55 traffic for 5 seconds, then sends test commands with various request types.
ch27_session.py — Focused channel 27 probe. Captures the fe03 beacon and tests cross-protocol commands.
grab_ch14.py — Fast channel 14 reconnect tool that polls with 120 retries over a 2-minute window. Designed for power-cycle capture: start the tool, then power-cycle the headphones to catch the connection window.
# Start grab_ch14.py, then power-cycle the headphonespython tools/grab_ch14.pyThe grab_ch14.py tool is particularly useful because channel 14 is only available briefly after the headphones power on. The 120-retry loop with short intervals gives a reliable way to catch that window without manual timing.