vudentz/btsnoop Analyzer
Analyze Bluetooth HCI (btsnoop) traces using a 5-step pipeline: protocol detection, filtering, annotation, diagnostics, and LLM-powered analysis. Builds btmon from BlueZ automatically.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| trace-url | URL to the btsnoop trace file (.log, .snoop, .btsnoop, .cfa) | yes | — |
| description | User description of the scenario being analyzed | no | No description provided |
| focus | Analysis focus area. One of: General (full analysis), Connection issues, Controller enumeration, Pairing / Security, GATT discovery, Audio, Audio / LE Audio, Audio / A2DP, Audio / HFP, L2CAP channel issues, Advertising / Scanning, Disconnection analysis, Channel Sounding | no | General (full analysis) |
| anonymize | Anonymize MAC addresses before LLM processing (true/false) | no | true |
| model | Override the default LLM model. Must be available in the GitHub Models catalog (e.g. openai/gpt-4o-mini, openai/gpt-4o). | no | "" |
| btmon-path | Path to a pre-built btmon binary. If not provided, btmon is built from the BlueZ upstream repository automatically. | no | "" |
| docs-path | Path to btmon.rst documentation file. If not provided, uses the file from the BlueZ clone (built alongside btmon). | no | "" |
| output-dir | Directory to write the result markdown files | no | results |
| python-version | Python version to use | no | 3.12 |
Outputs
| name | description |
|---|---|
| output-dir | Path to the directory containing result files |
| detect | Path to the detection result (Step 1) |
| filter | Path to the prefilter result (Step 2) |
| annotate | Path to the annotation result (Step 3) |
| diagnose | Path to the diagnostics result (Step 4) |
| analyze | Path to the LLM analysis result (Step 5) |