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
2 changes: 1 addition & 1 deletion src/check-scan.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ export const BRANDS: Record<number, string> = {
0x1038: "SteelSeries",
0x1B1C: "Corsair",
0x0951: "HyperX / Kingston",
0x0B05: "ASUS ROG",
0x0B05: "Asus",
0x1E7D: "Roccat",
0x258A: "SinoWealth / Glorious",
0x30FA: "SinoWealth",
Expand Down
5 changes: 4 additions & 1 deletion src/supported-live.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,10 @@ test("canonicalBrand folds brand aliases onto the canonical name", () => {
assert.equal(canonicalBrand("HSXJ"), "HXSJ");
assert.equal(canonicalBrand("Razer Basilisk"), "Razer");
assert.equal(canonicalBrand("MX Anywhere 3s"), "Logitech");
assert.equal(canonicalBrand("ROG"), "ASUS ROG");
assert.equal(canonicalBrand("ROG"), "Asus");
assert.equal(canonicalBrand("ASUS"), "Asus");
assert.equal(canonicalBrand("TUF"), "Asus");
assert.equal(canonicalBrand("ASUS ROG"), "Asus");
assert.equal(canonicalBrand("rapoo Vpro"), "Rapoo");
assert.equal(canonicalBrand("Eyooso"), "E-YOOSO");
assert.equal(canonicalBrand("e-yooso"), "E-YOOSO");
Expand Down
5 changes: 4 additions & 1 deletion src/supported-live.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,10 @@ const BRAND_TYPOS: Record<string, string> = {
mxanywhere3: "Logitech",
mxanywhere3s: "Logitech",
hyperxpulsefirehastle2: "HyperX",
rog: "ASUS ROG",
rog: "Asus",
asus: "Asus",
asusrog: "Asus",
tuf: "Asus",
};

/**
Expand Down
30 changes: 15 additions & 15 deletions src/supported-mice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,32 +187,32 @@ export const MICE: Mouse[] = [

// ATTACK SHARK ────────────────────────────────────────────────────────
{ brand: "Attack Shark", model: "X3", status: "likely", req: 15,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
note: "0x25a7 GearHub protocol — needs hardware test" },
{ brand: "Attack Shark", model: "X11", status: "likely", req: 10,
note: "Driver implemented (0x1d57 / 0x25a7 families) — needs hardware test" },
{ brand: "Attack Shark", model: "R5 Ultra", status: "supported", req: 7,
pids: [0x0046, 0x0047],
note: "PIDs 0x0046/0x0047 in the CompX/Lamzu driver (R5 Ultra profile)" },
{ brand: "Attack Shark", model: "X6", status: "likely", req: 5,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
note: "0x25a7 GearHub protocol — needs hardware test" },
{ brand: "Attack Shark", model: "R3", status: "likely", req: 4,
note: "Driver implemented (0x373e family) — needs hardware test" },
{ brand: "Attack Shark", model: "R1", status: "likely", req: 3,
note: "Driver implemented (0x1d57 family) — needs hardware test" },
{ brand: "Attack Shark", model: "X8 Ultra", status: "likely", req: 3,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
{ brand: "Attack Shark", model: "X8 SE", status: "likely", req: 3,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
note: "0x25a7 GearHub protocol — needs hardware test" },
{ brand: "Attack Shark", model: "X8 SE", status: "supported", req: 2,
note: "0x25a7 GearHub protocol — DPI, polling, firmware" },
{ brand: "Attack Shark", model: "X1", status: "likely", req: 2,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
note: "0x25a7 GearHub protocol — needs hardware test" },
{ brand: "Attack Shark", model: "V3 Pro", status: "likely", req: 1,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
note: "0x25a7 GearHub protocol — needs hardware test" },
{ brand: "Attack Shark", model: "X3 Pro", status: "likely", req: 1,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
note: "0x25a7 GearHub protocol — needs hardware test" },
{ brand: "Attack Shark", model: "X11 SE", status: "likely", req: 1,
note: "Driver implemented (0x1d57 / 0x25a7 families) — needs hardware test" },
{ brand: "Attack Shark", model: "X8 PLUS", status: "likely", req: 1,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
note: "0x25a7 GearHub protocol — needs hardware test" },
{ brand: "Attack Shark", model: "X12", status: "likely", req: 1,
note: "Driver implemented (0x25a7 family) — needs hardware test" },
{ brand: "Attack Shark", model: "R6", status: "likely", req: 1,
Expand Down Expand Up @@ -470,16 +470,16 @@ export const MICE: Mouse[] = [
{ brand: "Keychron", model: "M6", status: "quickwin", req: 1,
note: "Keychron vendor covered; M6 PID not yet in KEYCHRON_PRODUCT_IDS" },

// ASUS ROG ────────────────────────────────────────────────────────────
{ brand: "ASUS ROG", model: "Harpe Ace Aim Lab", status: "driver", req: 5,
// Asus ────────────────────────────────────────────────────────────────
{ brand: "Asus", model: "Harpe Ace Aim Lab", status: "driver", req: 5,
note: "Armoury Crate protocol — not implemented" },
{ brand: "ASUS ROG", model: "TUF Gaming M5", status: "driver", req: 2,
{ brand: "Asus", model: "TUF Gaming M5", status: "driver", req: 2,
note: "Armoury Crate protocol — not implemented" },
{ brand: "ASUS ROG", model: "Gladius II Core", status: "driver", req: 1,
{ brand: "Asus", model: "Gladius II Core", status: "driver", req: 1,
note: "Armoury Crate protocol — not implemented" },
{ brand: "ASUS ROG", model: "Strix Impact III", status: "driver", req: 1,
{ brand: "Asus", model: "Strix Impact III", status: "driver", req: 1,
note: "Armoury Crate protocol — not implemented" },
{ brand: "ASUS ROG", model: "TUF Gaming M3 Gen 1", status: "driver", req: 1,
{ brand: "Asus", model: "TUF Gaming M3 Gen 1", status: "driver", req: 1,
note: "Armoury Crate protocol — not implemented" },

// OTHER DRIVER-NEEDED ─────────────────────────────────────────────────
Expand Down