Skip to content

Migrate to raw WebUSB - #87

Open
HaoboGu wants to merge 3 commits into
mainfrom
feat/webusb
Open

Migrate to raw WebUSB#87
HaoboGu wants to merge 3 commits into
mainfrom
feat/webusb

Conversation

@HaoboGu

@HaoboGu HaoboGu commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

HaoboGu added 2 commits August 4, 2026 14:47
…yout

A keyboard that matches the vendor usage filter without speaking rynk (a
Vial board shares usage page 0xFF60) could park the connect flow forever:
WebHID sendReport never settles, the probe deadline never covered it, and
the whole screen stayed disabled.

- probeVersion runs under an idle watchdog that also covers the send:
  every answer rearms the 5s window, so a slow link that is still talking
  is never cut off, and only silence gives up. Opening the transport gets
  its own 15s deadline, a late open closes itself, and WebHidLink.close
  no longer wedges behind a stuck sendReport.
- Failures now explain themselves: explainKeyboardError maps each cause
  to a title plus a next step (port busy, not RMK firmware, link lost),
  shown as error toasts that stay until dismissed and dedupe on retry.
  A row whose last attempt failed keeps a red 'failed' pill instead of
  falling back to 'ready'.
- The connect screen centres as one column and scrolls when the viewport
  is too short (phones). Both tabs' lists stack in one grid cell so
  switching tabs cannot move the card; the empty-state floor is exactly
  one device row, so native builds with a single keyboard show no dead
  space; native builds get native hints instead of browser copy.

Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Replace the `feat/rynk-usb` branch pin (#1023 is merged as 7fe0c396e) and the
`branch = "main"` pins with one rev, so the desktop app, the fixture firmware
and the wasm client always speak the same protocol commit.

The CI checkout step existed only to keep two independent resolutions of the
moving `main` branch on one commit; with rev pins it is redundant and would
override them via RMK_REPO, so drop it.

Signed-off-by: Haobo Gu <haobogu@outlook.com>
@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

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