Commit Graph

17 Commits

Author SHA1 Message Date
Adam Honse
7b06b96008 RGBController API Overhaul
* Reorganize and clean up RGBController API functions
    * Add functions to get protected RGBController member values
    * Make NetworkClient, ProfileManager, and ResourceManager friend classes so they can access protected members
    * Protected previously-public RGBController members
        * Information strings (name, vendor, description, version, serial location)
        * Device type
        * Active mode
        * Flags
        * LEDs vector
        * LED alternate names vector
        * Modes vector
        * Colors vector
        * Zones vector
    * Add CONTROLLER_FLAG_HIDDEN to allow plugins to hide controllers from control GUI
    * Add update reason codes to RGBController update callback and signal updates on more RGBController events
    * Add loop zone types and segmented zone type
    * Add matrix map field to segments
    * Rework matrix_map_type from using pointers to vector to prevent memory leaks
    * Rework KeyboardLayoutManager to return new matrix_map_type
    * Add access mutex to RGBController API
    * Add per-zone modes ot RGBController API
    * Add JSON description functions to RGBController API
2026-01-20 20:44:27 -06:00
Adam Honse
c71cc4f18a Change SPDX license identifier from GPL 2.0 only to GPL 2.0 or later, as the original LICENSE file includes an or later clause at the end so the file headers were incorrect 2025-09-28 00:47:08 -05:00
Adam Honse
17a58b4c22 Store name in CorsairLightingNodeController to avoid setting it in detector 2025-08-06 00:48:13 -05:00
James Buren
66109be668 Properly fix how how hidapi and libusb dependencies are handled 2024-08-05 01:14:17 +00:00
Adam Honse
841b85a589 Increase Corsair Lighting Node read timeout to 15ms to fix issues with some CorsairLightingProtocol setups 2024-05-29 19:24:10 -05:00
Adam Honse
da8469f478 Update all Corsair controller files to use new standardized file header comment 2024-05-14 19:14:09 -05:00
Evan Mulawski
f672397563 Generic device guard; use Corsair implementation for all Corsair HID cooling-capable controllers 2023-11-10 15:12:26 +00:00
Adam Honse
c2a353ec6f Add brightness control to Corsair Lighting Node controller 2021-07-04 21:17:36 -05:00
Adam Honse
d19baf1365 Fill in serial field for all HID controllers using hidapi 2020-12-03 00:01:42 -06:00
k1-801
dde857dfb4 Tiny threads fixes & a little bit of safety 2020-11-15 13:28:29 -06:00
Adam Honse
406ebcc789 Use HID path for Location on Corsair Lighting Node controllers 2020-10-02 20:29:17 -05:00
Adam Honse
ad4e198aea Replace C-style clock() with std::chrono::steady_clock to fix timing on Linux 2020-07-02 16:59:30 -05:00
Adam Honse
39d451793b Update Lighting Node detection to detect multiple of the same device. Add reads to Lighting Node driver to fix compatibility with Corsair Lighting Protocol Arduino project 2020-06-25 22:30:31 -05:00
Adam Honse
8d29a40954 Convert Corsair Lighting Node driver to use hidapi instead of libusb 2020-05-30 23:48:59 -05:00
Adam Honse
4919b03bd1 Remove controller-side LED count from Corsair Lighting Node and ThermalTake Riing controllers, initialize them to zero LED count 2020-03-19 20:55:57 -05:00
Adam Honse
e6c21f0a72 Add firmware version to Corsair Lighting Node driver 2020-03-10 15:57:46 -05:00
Adam Honse
fe6a84d6c9 Rename NodePro to LightingNode 2020-03-06 12:11:53 -06:00