Skip to content

Select compact sensor decoding from the actual firmware version - #156

Merged
TobiasRoeddiger merged 1 commit into
2.5.0from
codex/select-ble-format-by-firmware
Oct 4, 2026
Merged

TobiasRoeddiger merged 1 commit into
2.5.0from
codex/select-ble-format-by-firmware

Conversation

@TobiasRoeddiger

@TobiasRoeddiger TobiasRoeddiger commented Oct 4, 2026 •

Copy link
Copy Markdown
Member

Real-device testing found that the factory's historically named firmware getter actually reads hardware generation UUID 45622512. Passing this value to the new transport selector made firmware 2.3.0 use the legacy decoder: IMU CSVs contained NaNs and PPG readings exceeded the 19-bit range.

Keep hardware generation for V1/V2 device identification. Read firmware UUID 45622513 separately before selecting the sensor parser on each connection. This also supports development firmware labels without changing generation matching.

Validation: the factory/GATT regression test fails before this fix and passes afterward across 2.2.9 → 2.3.0 → prerelease → 2.2.9. All 47 library tests pass and analysis is clean. Live Android Recorder repeat passes: firmware 2.3.0 delivers 99.67 Hz IMU and 512.27 Hz PPG in separate 30-second windows, with finite values, valid PPG range, no backward timestamps and zero app parsing exceptions. A connected legacy-firmware earphone remains correct. Full 2.2.9 and paired 2.3.0 release testing continues.

@github-actions

github-actions Bot commented Oct 4, 2026

Copy link
Copy Markdown

Visit the preview URL for this PR (updated for commit 07456ab):

https://open-earable-lib-web-example--pr156-codex-select-ble-f-l33flavo.web.app

(expires Sun, 01 Nov 2026 21:11:17 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: 7f6db4d9d00b851ad49af109fa949061904b3151

@TobiasRoeddiger
TobiasRoeddiger merged commit 70063b6 into 2.5.0 Oct 4, 2026
3 checks passed
@TobiasRoeddiger TobiasRoeddiger mentioned this pull request Oct 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant