Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions captures/redragon-m612/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Redragon Predator M612 (`04d9:fc61`) captures

- `rdcfg-startup-push.hex`: the 114 config frames RDCfg 1.0.58 sent when it
started (usbmon, Wine), one `SET_FEATURE` payload per line, report id
first. It writes the LED block, opens a session (`02 f5 00`), writes
settings, then the five-profile DPI tables and button maps, the commit
block (`02 f1 02 ..`), and closes (`02 f5 01`). The one 64-byte line is
report 3.
- `openmouse-hardware-test.json`: OpenMouse's built-in hardware test on the
same unit, using the local package build.

Decoding and verification notes: `docs/redragon-m612-testing.md`.
137 changes: 137 additions & 0 deletions captures/redragon-m612/openmouse-hardware-test.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
{
"device": {
"present": true,
"brand": "Redragon",
"name": "Redragon Predator M612",
"vendorId": 1241,
"productId": 64609,
"productName": "Redragon Predator M612",
"transport": "webhid",
"connectionType": "Wired",
"pollingRateHz": 500,
"supportedPollingRates": [
125,
250,
500,
1000
],
"dpi": 2000,
"dpiStages": [
800,
1000,
2000,
3000,
4000
],
"activeDpiStage": 2,
"batteryPercent": null,
"batteryState": "Unknown",
"firmware": null,
"liftOffDistance": null,
"driverFamily": "redragon",
"deviceMode": null,
"collectionsSummary": "interfaces 0x000C:0x0001, 0xFFA0:0x0001",
"signalStrength": null,
"receiverOnline": null,
"receiverRfId": null,
"pairingInProgress": false
},
"results": [
{
"key": "connection",
"label": "Device connected",
"status": "pass",
"detail": "Connected through WebHID"
},
{
"key": "interface",
"label": "Control interface",
"status": "pass",
"detail": "interfaces 0x000C:0x0001, 0xFFA0:0x0001"
},
{
"key": "identity",
"label": "Device identity",
"status": "pass",
"detail": "Redragon Redragon Predator M612"
},
{
"key": "driver",
"label": "Driver identification",
"status": "pass",
"detail": "Redragon redragon"
},
{
"key": "dpi",
"label": "DPI read-back",
"status": "pass",
"detail": "2,000 DPI"
},
{
"key": "pollingRead",
"label": "Polling rate read-back",
"status": "pass",
"detail": "500 Hz"
},
{
"key": "battery",
"label": "Battery read-back",
"status": "skip",
"detail": "Not reported by this device."
},
{
"key": "firmware",
"label": "Firmware read-back",
"status": "skip",
"detail": "Not reported by this device."
},
{
"key": "liftOff",
"label": "Lift-off read-back",
"status": "skip",
"detail": "Not reported by this device."
},
{
"key": "dpiStages",
"label": "DPI stages read-back",
"status": "pass",
"detail": "800, 1,000, 2,000, 3,000, 4,000 DPI"
},
{
"key": "link",
"label": "Wireless link (receiver)",
"status": "skip",
"detail": null
},
{
"key": "flashRead",
"label": "Flash / EEPROM read-back",
"status": "pass",
"detail": "decoded fields are in range (dpi, polling, dpi stages)"
},
{
"key": "sampling",
"label": "Polling rate sampling",
"status": "pass",
"detail": "avg 475 Hz · peak 500 Hz · stability 95% · 2377 samples"
},
{
"key": "flashWrite",
"label": "Flash write round-trip",
"status": "pass",
"detail": "wrote 800 DPI → read back → restored 2,000 DPI · wrote 1,000 Hz → read back → restored 500 Hz · Lift-off skipped"
}
],
"verdict": "pass",
"durationMs": 16416.399999999907,
"runAt": "2026-09-29T19:40:01.127Z",
"build": "BETA · v2.0.1",
"supportedPage": {
"listed": true,
"status": "driver",
"label": "Driver Needed",
"matchedBy": "name",
"pageModel": "PREDATOR M612",
"detail": "listed as Driver Needed on the supported-devices page — this passing verification supports moving it to Supported."
}
}
114 changes: 114 additions & 0 deletions captures/redragon-m612/rdcfg-startup-push.hex
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
02f34604020000000200000000000000
02f358040800000081ff000002080103
02f348040800000080ff000005080103
02f350040800000081ff000002080303
02f368040800000081ff000001050103
02f360040800000081ff000004080103
02f37004080000008000000000000000
02f10204000000000000000000000000
02f50000000000000000000000000000
02f33e00020000000000000000000000
02f33c00010000001f00000000000000
02f34604020000000200000000000000
02f358040800000081ff000002080103
02f348040800000080ff000005080103
02f350040800000081ff000002080303
02f368040800000081ff000001050103
02f360040800000081ff000004080103
02f33200060000000200020002000000
02f33800040000000200020000000000
03f320000a0000000100010001000100010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
02f34200010000000000000000000000
02f30201010000000100000000000000
02f3b201010000000200000000000000
02f36202010000000300000000000000
02f31203010000000400000000000000
02f10202000000000000000000000000
02f10210000000000000000000000000
02f3440005000000010e000e00000000
02f34a0005000000011b001b00000000
02f35000050000000135003500000000
02f3560005000000014f004f00000000
02f35c0005000000016a006a00000000
02f3040105000000010e000e00000000
02f30a0105000000011b001b00000000
02f31001050000000135003500000000
02f3160105000000014f004f00000000
02f31c0105000000016a006a00000000
02f3b40105000000010e000e00000000
02f3ba0105000000011b001b00000000
02f3c001050000000135003500000000
02f3c60105000000014f004f00000000
02f3cc0105000000016a006a00000000
02f3640205000000010e000e00000000
02f36a0205000000011b001b00000000
02f37002050000000135003500000000
02f3760205000000014f004f00000000
02f37c0205000000016a006a00000000
02f3140305000000010e000e00000000
02f31a0305000000011b001b00000000
02f32003050000000135003500000000
02f3260305000000014f004f00000000
02f32c0305000000016a006a00000000
02f32c00020000000000000000000000
02f38200040000008100000000000000
02f38600040000008200000000000000
02f38a00040000008300000000000000
02f38e00040000009981030000000000
02f39200040000008500000000000000
02f39600040000008400000000000000
02f39a00040000008a00000000000000
02f39e00040000008900000000000000
02f3a200040000009b08000000000000
02f3aa00040000008b00000000000000
02f3ae00040000008c00000000000000
02f34201040000008100000000000000
02f34601040000008200000000000000
02f34a01040000008300000000000000
02f34e01040000009981030000000000
02f35201040000008500000000000000
02f35601040000008400000000000000
02f35a01040000008a00000000000000
02f35e01040000008900000000000000
02f36201040000009b08000000000000
02f36a01040000008b00000000000000
02f36e01040000008c00000000000000
02f3f201040000008100000000000000
02f3f601040000008200000000000000
02f3fa01040000008300000000000000
02f3fe01040000009981030000000000
02f30202040000008500000000000000
02f30602040000008400000000000000
02f30a02040000008a00000000000000
02f30e02040000008900000000000000
02f31202040000009b08000000000000
02f31a02040000008b00000000000000
02f31e02040000008c00000000000000
02f3a202040000008100000000000000
02f3a602040000008200000000000000
02f3aa02040000008300000000000000
02f3ae02040000009981030000000000
02f3b202040000008500000000000000
02f3b602040000008400000000000000
02f3ba02040000008a00000000000000
02f3be02040000008900000000000000
02f3c202040000009b08000000000000
02f3ca02040000008b00000000000000
02f3ce02040000008c00000000000000
02f35203040000008100000000000000
02f35603040000008200000000000000
02f35a03040000008300000000000000
02f35e03040000009981030000000000
02f36203040000008500000000000000
02f36603040000008400000000000000
02f36a03040000008a00000000000000
02f36e03040000008900000000000000
02f37203040000009b08000000000000
02f37a03040000008b00000000000000
02f37e03040000008c00000000000000
02f10204000000000000000000000000
02f10201000000000000000000000000
02f10202000000000000000000000000
02f10208000000000000000000000000
02f10210000000000000000000000000
02f50100000000000000000000000000
Loading
Loading