feat(rmk): add RynkHidService #893
Merged
Merged
Conversation
04e1acf to
e889de8
Compare
Carry the rynk protocol over a BLE HID-over-GATT report (vendor usage 0xFF60) so a pure browser can configure an OS-bonded keyboard via WebHID — Web Bluetooth can't attach a bonded keyboard, but WebHID rides the existing OS HID link. The custom-GATT path and the new WebHID path share one RynkService::run_session over a single BLE link — RynkBleTx routes each reply to whichever characteristic the host is using (RynkBleSource) — rather than a second concurrent session. - RYNK_HID_REPORT_SIZE (32) + RynkHidReport descriptor; each report is just a fixed 32-byte fragment of the rynk frame stream, delimited by the frame header's LEN — no per-report length, like a small-MTU GATT notification - gatt routing + CCCD arms reuse the existing encryption gate - reserve an extra topic-subscriber slot so the two BLE sources don't overflow the pubsub subs budget on connect - tests: HID fragment/de-frag units and a HID-framed loopback through the real dispatcher Connection path hw-verified on nRF54LM20A (boots, advertises, host connects + encrypts, GATT serves the service); the frame fragmenting is covered by the HID loopback through the real dispatcher. Signed-off-by: Haobo Gu <haobogu@outlook.com>
e889de8 to
bfff76b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For remapping over BLE in web, HID over BLE is necessary.