Skip to content

Razer: mark the DeathAdder V3 Pro (0x00b6 wired, 0x00b7 receiver) verified on hardware - #107

Merged
snekxs merged 2 commits into
OpenMouse-Project:mainfrom
EmreO33:deathadder-v3-pro-verified
Sep 16, 2026
Merged

snekxs merged 2 commits into
OpenMouse-Project:mainfrom
EmreO33:deathadder-v3-pro-verified

Conversation

@EmreO33

@EmreO33 EmreO33 commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Summary

Hardware verification of the DeathAdder V3 Pro on both transports: stock HyperSpeed receiver 1532:00b7 and cable 1532:00b6 (firmware "Mouse 2.1", Windows 11), following the promotion procedure in docs/razer-testing.md. RazerHidClient was driven unmodified from Node over hidapi, with Razer Synapse and its services fully quit.

  • src/razer/devices.ts: 0x00b7 and 0x00b6 get verified: true (comments record what was measured).
  • src/drivers/razer/devices.test.ts: pinned in VERIFIED_SINCE and HARDWARE_VERIFIED.
  • docs/razer-testing.md: id added to the verified list; the open "DeathAdder V3 Pro" section is closed out with the results, and the earlier 0x00b6 capture kept underneath as history.
  • captures/razer-deathadder-v3-pro/: all feature reports of both write sessions (486 each) plus per-step results (serial payload redacted).

What was tested (receiver, 0x00b7)

Setting Written Read back on a fresh connection After power cycle
DPI 800, 3200, 1600 (restore) each value 1600
Polling (legacy command) 125, 500, 1000 Hz each value 1000
Polling 2000 Hz refused by the driver, as expected
Auto sleep 60 s, 900 s, 300 s (restore) each value 60 s held
Low power 5 %, 50 %, 30 % (restore) each value 5 % held
  • Polling measured, not just read back: a pointerrawupdate counter (1 s window, peak) read 842 Hz at 1000 Hz and 124 Hz after the driver wrote 125 Hz. The legacy command really changes the link rate here, so highRatePolling: false is right.
  • Sleep and low power persist: both re-read as written after switching the mouse off and on at its own power switch. That rules out the "no commit step / volatile state" theory the docs left open; the original report was made with Synapse present, which leaves contention as the explanation.
  • Soak: 31/31 readStatus() reads over 3 minutes, 822 to 914 ms each, no stalls or errors.
  • Read-only status: model name, "Wireless / HyperSpeed receiver", battery percent and state, DPI, polling, sleep, low power all decoded (steps 1 and 2 of the checklist).

Wired (0x00b6)

Same mouse with the cable plugged in, same scripts: 13/13 write/read-back steps passed and were restored; polling measured 126 Hz peak at 125 and well above 500 at 1000; battery reads "Charging" and climbed 25 % to 32 % across the wired runs; second 3-minute soak 31/31 at 824 to 887 ms. Settings written on one transport read back identically on the other.

Not covered

  • Checklist step 8 (an off-list timeout set in Synapse appearing in the dropdown) needs Synapse running, which can't coexist with the test.
  • Lift-off: the row keeps liftOff: false, so class 0x0b was not sent.

Tests

npm test: 1685/1685 pass before the wired commit; all Razer suites re-run after it, 150/150.

Firmware "Mouse 2.1" on the stock HyperSpeed receiver, driven from Node over
hidapi with RazerHidClient unmodified and Synapse fully quit:

- DPI, polling (125/500/1000 on the legacy command), auto sleep and low power
  each wrote, read back on a fresh connection, and were restored. 2000 Hz is
  refused as expected. 486 feature reports captured.
- Polling is measured, not just read back: 842 Hz peak pointerrawupdate at
  1000 Hz, 124 Hz after writing 125 Hz. `highRatePolling: false` is right.
- Auto sleep 60 s and low power 5 % survived a power cycle at the mouse's own
  switch, which rules out the "no commit step" theory the docs left open.
- 3-minute soak: 31/31 reads, 822 to 914 ms, no stalls.

The wired transport 0x00b6 was not connected and stays unverified. Raw
reports and per-step results (serial redacted) are in
captures/razer-deathadder-v3-pro/.
Same mouse, same session, cable plugged in: 13/13 write/read-back steps,
polling measured at 126 Hz peak after writing 125, battery reports
"Charging" and climbed 25 % to 32 % across the wired runs, 3-minute soak
31/31. Settings written on either transport read back on the other.
Capture added alongside the receiver one.
@EmreO33 EmreO33 changed the title Razer: mark the DeathAdder V3 Pro receiver (0x00b7) verified on hardware Razer: mark the DeathAdder V3 Pro (0x00b6 wired, 0x00b7 receiver) verified on hardware Sep 15, 2026
@snekxs
snekxs merged commit 55eee21 into OpenMouse-Project:main Sep 16, 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.

2 participants