Commit 8197bbd
fix(inmotion-v1): send the PIN handshake on connect (default 000000)
Tester insight: the V8S PIN is 000000 but the app never sent a PIN - the connect
log has no 0x0F550307 frame. initSequence only sent the PIN when the pin field was
non-null, and with no UI to set it the field was always null, so nothing went out.
This matches the failing capture: the wheel broadcasts an identity-only frame
(0x0F060101, carrying its serial) for ~30 s after power-on and never streams
fast-info until it gives up waiting - which is exactly a wheel waiting for the PIN
handshake. The protocol connect procedure is "send PIN if required, then
GetSlowInfo" (docs section 7), and the command builder already exists.
Always send the PIN on connect now, defaulting to the factory 000000; a wheel with
no PIN configured ignores it, so it is safe. A future Saved-PINs preference can set
a custom value via the existing pin field. InMotion V1 only. If this lands the
wheel should stream immediately instead of after the ~30 s boot-cycle wait.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GADLyChheAoMX9dQbRgRnH1 parent 1b9f7f5 commit 8197bbd
1 file changed
Lines changed: 18 additions & 9 deletions
Lines changed: 18 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
27 | 33 | | |
28 | 34 | | |
29 | 35 | | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
35 | 40 | | |
36 | 41 | | |
37 | 42 | | |
| |||
55 | 60 | | |
56 | 61 | | |
57 | 62 | | |
58 | | - | |
59 | | - | |
60 | | - | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
61 | 70 | | |
62 | 71 | | |
63 | 72 | | |
64 | | - | |
| 73 | + | |
65 | 74 | | |
66 | 75 | | |
67 | 76 | | |
| |||
0 commit comments