feat(redragon): wire up the M690 PRO driver - #617
Merged
Merged
Conversation
Brings the app up to the current protocol pin (0.26.0). The branch pinned 0.23.0, which predates the Redragon M690 PRO driver, so importing @openmouse/protocol/drivers/redragon/m690-pro-hid failed type-checking (TS2307). No conflicts. npm run check 290/290, npm run size and npm audit --audit-level=high all pass.
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.
Summary
Adds the Redragon M690 PRO (
0x258a:0x002ecable,0x258a:0x002freceiver). No UI changes.Changes
src/device/controller.ts): importsRedragonM690ProHidClientfrom@openmouse/protocol/drivers/redragon/m690-pro-hidand adds it toNEEDS_OPEN, so the device is opened before its first status read, as the register-and-verify checklist requires. No traits changes: the client has no advanced-section settings.src/supported-devices-data.ts): addsRedragon M690 PRO, statussupported, PIDs0x2eand0x2f.0x2eis also listed for the Razer Naga 2012; the crosscheck prefers the row whose brand matches the connected device.Features exposed in UI
DPI stage editor (5 stages, 250-8000 in the vendor's steps), active stage, stage colours, polling rate 125-1000 Hz, lighting (Static, Wave, Breathing random, Off), the button remapper, and battery (through OpenMouse Bridge).
Note on DPI stage colours
The mouse lights its scroll wheel in the active DPI stage's colour, and the driver can set each DPI stage's colour (
setDpiStageColor). The stage editor shows the colours but has no control to change them at the moment: an earlier version of the editor had a per-stage colour input (callingapplyDpiStageColor; thedpi.stageColorstring is still defined), which doesn't appear after0fc6ae1. Today the colours are only written when a saved game profile is applied. This PR doesn't change the editor; the driver would work with such a control unchanged, as would the other drivers that implementsetDpiStageColor.Verification
npm run checkagainst the local@openmouse/protocolbuild (npm install --no-save --package-lock=false ../mouse-protocol): TypeScript, the production build, and all tests pass.Companion PR
OpenMouse-Project/mouse-protocol#163