Skip to content

Commit 7416547

Browse files
eriedclaude
andcommitted
docs: BLE capture guide for new-wheel support
Step-by-step instructions a non-technical tester can follow to produce a labeled btsnoop capture, plus the Samsung-specific extraction path contributed by an earlier tester. The labeled session is what lets us pin field offsets in the realtime telemetry stream when adding a new wheel. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 7a112eb commit 7416547

1 file changed

Lines changed: 112 additions & 0 deletions

File tree

docs/BLE_CAPTURE_GUIDE.md

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
# BLE capture guide for new wheels
2+
3+
EUC Planet learns each wheel's BLE protocol from real captures of the
4+
manufacturer's app talking to the wheel. If your wheel isn't supported yet
5+
(or works but with missing data), a 5 to 10 minute capture from you is what
6+
unlocks it.
7+
8+
## What you'll send back
9+
10+
1. The Bluetooth snoop log (`btsnoop_hci.log` and `.cfa` files)
11+
2. Your notes from the labeled session below
12+
3. The screenshots you took during the ride
13+
14+
You can email everything to the maintainer or attach to a GitHub issue.
15+
16+
## 1. Turn on Bluetooth logging
17+
18+
1. Settings, About phone, tap **Build number** seven times until it says
19+
you are now a developer
20+
2. Settings, System, **Developer options**, turn on
21+
**Enable Bluetooth HCI snoop log**
22+
3. Toggle Bluetooth off, then back on (this starts a fresh log)
23+
4. Force-stop your wheel's manufacturer app, then reopen it
24+
25+
## 2. Run the labeled session
26+
27+
Connect to your wheel in the manufacturer's app. Open a notes app or
28+
stopwatch alongside, and write down rough seconds when you do each step.
29+
Approximate is fine, within five seconds is plenty.
30+
31+
```
32+
0:00 idle 10 s
33+
0:10 SCREENSHOT the dashboard (note voltage and battery percent)
34+
0:15 headlights on, off
35+
0:25 DRL on, off
36+
0:35 horn (2 quick presses)
37+
0:45 lock the wheel, then unlock
38+
1:00 change tiltback to a specific value, then back
39+
(write down old and new value)
40+
1:20 change beep alarm speed similarly
41+
1:40 change volume to 50 percent (write old and new)
42+
1:50 ride 30 to 60 s, vary the speed: walk, slow, medium, faster,
43+
then brake firmly to stop
44+
2:50 SCREENSHOT mid-ride or right after stopping
45+
2:55 idle 30 s
46+
3:25 SCREENSHOT (note any temperature shown)
47+
```
48+
49+
Skip anything that feels unsafe. Just note which step you skipped.
50+
51+
## 3. What to write down
52+
53+
```
54+
Wheel model and firmware:
55+
Battery percent at start:
56+
Battery percent at end:
57+
Voltage at start:
58+
Voltage at end:
59+
Approximate top speed during ride:
60+
Tiltback was __, changed to __, then back
61+
Alarm was __, changed to __, then back
62+
Volume was __, changed to 50, then back to __
63+
Anything you skipped:
64+
```
65+
66+
The screenshots are important. They let us match what the manufacturer's
67+
app is showing to the bytes the wheel sent at that moment.
68+
69+
## 4. Get the log file
70+
71+
### Standard Android (Pixel and most non-Samsung)
72+
73+
1. Settings, System, Developer options, **Take bug report**, choose
74+
**Interactive**
75+
2. Wait for the notification, then share the resulting zip
76+
3. The file we need is inside the zip at
77+
`FS/data/misc/bluetooth/logs/btsnoop_hci.log`. If you can't find it,
78+
just send the whole zip.
79+
80+
### Samsung phones
81+
82+
Thanks to a tester who figured this out, here's the Samsung path:
83+
84+
To get the `.cfa` file:
85+
86+
1. After running the session, go back to Developer options and turn off
87+
Bluetooth HCI snoop log
88+
2. Wait 5 minutes
89+
3. Open the **phone dialer** and type `*#9900#`
90+
4. Tap **Run dumpstate / logcat** (takes 3 to 4 minutes)
91+
5. Tap **Copy to sdcard (include CP Ramdump)**
92+
6. Open the Files app, internal storage, open the **logs** folder
93+
7. Open the **Bluetooth** folder. The `.cfa` file is there.
94+
95+
To get the `.log` file:
96+
97+
1. Same steps 1 to 5 as above
98+
2. In the same `logs` folder, find the **dumpstate** zip and unzip it
99+
3. Inside the unzipped folder, open `FS`, then `logs`, then `Bluetooth`
100+
4. The `.log` file is there
101+
102+
## 5. Turn the snoop log off
103+
104+
Go back to Developer options and turn **Bluetooth HCI snoop log** off when
105+
you're done. You only need it during the capture.
106+
107+
## 6. Send everything back
108+
109+
Bundle the `.log` and `.cfa` files, your notes, and the screenshots. A
110+
zip via email or a GitHub issue works.
111+
112+
Thanks for helping out.

0 commit comments

Comments
 (0)