Commit Graph
3954 Commits
Author SHA1 Message Date
Adam Honse d0d2bfb553 Convert NZXTHuePlusController to use USB Serial detector 2026-10-17 15:16:50 -05:00
Adam Honse c907bfdc20 Convert BlinkyTapeController to use USB Serial detector 2026-10-17 15:16:50 -05:00
Adam Honse 68f2357def Convert HYTEMousematController to use USB Serial detector 2026-10-17 15:16:50 -05:00
Adam Honse 03a47eed54 Convert HYTENexusController to use USB Serial detector 2026-10-17 15:16:50 -05:00
XZH 3df6daa3e2 Add support for Colorful iGame GeForce RTX 5060 Ultra W DUO OC 2026-10-17 15:13:58 -05:00
JAO1988 2544151f15 Add support for MSI GeForce RTX 3070 Gaming Trio Plus 2026-10-16 15:57:58 -05:00
Petru Mare 96e198adea Fix Sinowealth mouse config corruption on mode changes 2026-10-16 12:54:13 -05:00
Petru Mare 70de7051b4 Fix double hid_close in SinowealthController destructor 2026-10-16 12:51:38 -05:00
Daniel Clark 3926dca676 Fix Cooler Master ARGB Gen2 A1 V2 controller support 2026-10-16 12:24:10 -05:00
Gajjar Pratham Jayesh e752d91efe Add wired Kreo Swarm keyboard support 2026-10-16 11:47:36 -05:00
Pratham Personal 7d5fecf55f Fix Sinowealth 010C identity query buffer length 2026-10-16 13:34:11 +00:00
Adam Honse 46bfeb026f Fix remaining uses of GetActiveMode within device controllers except for odd case in Philips Hue Entertainment controller 2026-10-15 11:06:38 -05:00
Adam Honse 9d64a8f5db Replace GetActiveMode with raw active_mode inside RGBController_ENESMBus.cpp to avoid deadlock 2026-10-15 07:54:30 -05:00
Julien Tanay 504b881f00 refactor(roccat): use switch/case for the Vulcan II Mini direct mode check
Rework IsBigEndianDirectMode() into a switch/case with the default case keeping the existing firmware version behavior, so future device-specific additions do not turn into chains of if blocks.

Also trim logging per review feedback: keep info for device init plus warnings and errors for faults, drop the info logs from the direct mode enable and mode switch paths, and tag every entry with the ROCCATVULCANKEYBOARD constant.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-10-14 07:42:05 -05:00
Julien Tanay e498c9679d style(roccat): remove redundant comments in Vulcan II Mini driver
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-10-14 07:42:05 -05:00
Julien Tanay 24a0eceb35 feat(roccat): add info, warning and error logging to Vulcan keyboard controller
Log firmware version and layout at init, mode changes and direct mode
switches at info level. Log failed HID report writes as errors and a
device that does not report ready as a warning.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-10-14 07:42:05 -05:00
Julien Tanay c7264709e6 fix(roccat): initialize WaitUntilReady buffer to fix macOS crash on Vulcan detection
WaitUntilReady() read buf[1] before the first hid_get_feature_report
filled it. Indeterminate read is UB; Apple clang -O2 collapses the
whole function to a trap, crashing the app during device detection
on macOS. memset the buffer after allocation, matching the style of
SendMode/SendColors/InitDeviceInfo.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-10-14 07:42:05 -05:00
Julien Tanay fd8014781a fix(roccat): correct Vulcan II Mini LED mapping and static mode commit
The Vulcan II Mini report uses 107 color slots of which only 69 are
wired to LEDs. Map the 69 compacted LED indices from the layout
tables onto the wired report slots in both the static 0x11 report
and the direct 0xA1 color frames, so per-key colors land on the
correct physical keys.

Replace the placeholder Mini layout matrices and LED names with the
tables derived from a hardware slot sweep of a physical FR AZERTY
board (firmware 1.29): 69 LEDs on a 5x15 matrix, UK ISO and US ANSI
name tables.

Set the Mini static report marker byte to 0xFB and always use a
little-endian length field in the Mini direct color frame, matching
USB captures.

Send the capture-exact 123-byte 0x13 keepalive report three times
after a static 0x11 report; the board only commits static colors
while the keepalive is being sent.

Verified on hardware: static mode colors the full board and a
left-to-right gradient lands on the correct keys. Direct color
frames are byte-exact against captures and covered by unit tests
(1285 checks) reconstructing the reports with a mock hidapi.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-10-14 07:42:05 -05:00
Julien Tanay 369245891f feat(roccat): add support for Vulcan II Mini keyboard
Add the ROCCAT Vulcan II Mini (USB 1e7d:2f09) to the unified
RoccatVulcanKeyboardController driver:

- Detector: register PID 0x2F09 with control interface 1
  (usage page 0xFF01) and LED interface 3 (usage page 0xFF00),
  same as the Vulcan II family.
- Controller: v2 protocol parameters (init report 0x09, direct
  enable 0x0E), colour frame of 345 bytes streamed as six 64-byte
  packets (0xA1 prefix, RGB per LED), mode packet of 332 bytes with
  the Mini-specific 0x02/0x0B header bytes.
- Layouts: US (68 LEDs) and UK (69 LEDs) 5x16 matrix maps with
  per-key LED ids, covering the 60% block plus the nav cluster and
  arrow keys.

Protocol constants and the LED index map are ported from Mola19's
unmerged branch (OpenRGB issue #3193) and are pending verification
against the USB captures and the physical device.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-10-14 07:42:05 -05:00
Venatrix “Joe” Ritz bab1c134a3 TurtleBeachKP7Controller: fix unsynchronized hid_write causing heap corruption 2026-10-13 20:07:24 -05:00
Pablo Costa Oubiña 54f82e7004 MSI GPU v2: add RTX 50 series effect modes 2026-10-13 11:45:53 -05:00
as9220 eb86697032 Add support for Corsair Scimitar Elite RGB (1B1C:1BE3) 2026-10-12 19:33:38 -05:00
Venatrix “Joe” Ritz feab05b6e2 Govee: send LAN scan to the subnet broadcast address instead of multicast 2026-10-12 00:13:22 -05:00
Andrei 3f2f28015d RazerController: support mice connected through the Mouse Dock Pro 2026-10-11 19:36:33 -05:00
Sergei Baranov efea04dd06 Add read timeouts to all Corsair Lighting Node and Hydro Platinum commands to prevent lockup 2026-10-11 19:28:59 -05:00
Berke Arslan a4eb614558 Add support for Gigabyte GeForce RTX 4070 Ti SUPER Eagle OC ICE 2026-10-11 19:16:22 -05:00
JAO1988 d57aa2ec0d Add support for MSI GeForce RTX 5060TI 16G GAMING TRIO OC & MSI GeForce RTX 5060 8G GAMING TRIO OC cards 2026-10-11 16:50:30 -05:00
William Leerbeck Meyer 4d17bac5b8 Add ASRock Radeon RX 7900 XTX Taichi 24GB OC detection 2026-10-11 00:23:38 +02:00
JAO1988 b190d3e5af GIGABYTE RX9060XT GAMING ICE & GIGABYTE Radeon RX 9070 GRE GAMING OC 2026-10-09 13:20:42 -05:00
Pablo Costa Oubiña deeecd3ba6 MSI 761-byte: use the real zone size for ARGB headers 2026-10-08 20:47:12 -05:00
JAO1988 951547541d Add SteelSeries Rival 3 Wireless 2026-10-08 11:59:51 -05:00
Harnigard 01bd77cef0 Add support for Gigabyte GeForce RTX 5060 Ti Aero OC 16G 2026-10-07 21:50:34 -05:00
operatios 4367e26cea ENESMBusController: add DIMM_LED-0103 2026-10-07 17:06:47 +03:00
Dmitry K ddd5a75e2a Fix hotplug in Sinowealth controllers 2026-10-06 23:37:33 -05:00
Ignacio Martín Arano 59aa9613bd AsusAuraUSB: expose remaining hardware effect modes 2026-10-06 07:53:08 -05:00
MasterDevX 3491773d56 AsusAuraUSBController: implement complete support for 500 LEDs in DIRECT mode 2026-10-06 07:25:11 -05:00
RomanG1337 979d13486a Fix GameSir Nova 2 Lite wireless detection and LED control 2026-10-06 07:20:50 -05:00
Yoobin Kim 3021bc4f93 Add Colorful iGame RTX 5080 Ultra W OC support 2026-10-05 15:43:34 -05:00
Richard Kayne 821ea77483 Add NZXT F280 RGB Core support 2026-10-04 22:35:57 +01:00
jdhirst b9783787b6 Add IO Shield support for MSI MPG X870E Edge Ti 2026-10-03 21:58:29 -05:00
wiretax df3024befb Add support for Gigabyte Radeon RX 6750 XT GAMING OC 12G 2026-10-03 11:47:47 +00:00
Jordan Della Favory 6cc4068cc7 Add Gigabyte RTX 4070 Ti SUPER AORUS MASTER Subsystem ID 2026-10-02 22:35:36 -05:00
morg 155eb95039 add MSI B850M GAMING WIFI (MS-7E82) support 2026-10-01 07:58:17 -05:00
Andrei b5de0eaa71 RazerController: add firmware-reported Reactive, Starlight, Ripple, Fire 2026-09-30 22:37:09 -05:00
Andrei 354c3c93ac RGBController_Razer: only write LED colors in Direct mode 2026-09-30 22:30:49 -05:00
Jess 094ba43d66 Fix command interleaving and Color Cycle handling in Gigabyte RGB Fusion GPUs 2026-09-30 22:30:07 -05:00
Darren G c13fa1f7b6 Add MSI RTX 5060 Ti Gaming OC support 2026-09-30 20:56:34 -05:00
Adam Honse af36b81a79 Clean up MSIMotherboardControllerDetect.cpp 2026-09-29 11:33:42 -05:00
krxoid abf9b8f95f Add MSI B650M GAMING WIFI ARGB support 2026-09-29 10:37:51 -05:00
Jess ce6456ebdc Add Gigabyte RTX 4070 Ti SUPER AERO OC RGB support 2026-09-29 10:28:03 -05:00