Commit Graph
41 Commits
Author SHA1 Message Date
Adam Honse dd35cb8cbf Update Keychron QMK controller to pull keyboard's real firmware version when connected over wireless dongle, display both dongle and keyboard version 2026-09-01 22:58:22 -05:00
Adam Honse cfc6081f9d Update Keychron QMK controller to pull keyboard's real VID when connected over wireless dongle (at least for ZMK keyboards that support full control over the wireless link) 2026-09-01 22:56:23 -05:00
Daniel Clark c789351977 Fixes Keychron Patch Layouts (hopefully) 2026-09-01 07:43:58 -05:00
Adam Honse c3102bc724 Ignore interface check on Keychron QMK controller's detector as the Ultra series wireless dongles use interface 2 2026-08-30 16:40:36 -05:00
Adam Honse a757c04cf9 Fix the Keychron Q2 knob layout 2026-08-30 01:46:40 -05:00
Adam Honse 01c65c1d17 Fix the Keychron Q6 Ultra 8K layout 2026-08-30 01:43:33 -05:00
Daniel Clark b087a65f3c Update Keychron Controller 2026-08-28 00:01:06 -05:00
Richard Harris 15b784f6c6 Fix startup crash and other issues in VialRGB controller 2026-08-19 22:42:22 -05:00
Buu342 5e6d627f51 Fix for LEDs without an assigned key not being properly represented in QMK Firmware 2026-08-15 19:51:28 -05:00
Raulkong898 6ec5a955df Add Keychron J2 HE 8K support to QMKKeychronController 2026-08-05 01:59:28 -05:00
Daniel Clark 75463b8772 Fix K5 V2 layout and add ANSI Enter Expansion 2026-07-14 21:45:18 -05:00
Adam Honse 285a7bce4e Implement a matrix patching system in the Keychron QMK controller to apply keyboard-specific patches to correct for misplaced LEDs 2026-07-12 16:25:07 -05:00
Adam Honse baa033ff7f Add Keychron Q0 HE 2026-07-10 15:40:35 -05:00
Adam Honse 3a74c85be8 Move RGBController base destructor functionality into RGBController::Shutdown() so that update thread can be stopped before deleting the controller. Shutdown() must be called in every RGBController implementation before deleting the controller. Also some fixes to the NetworkServer to avoid deadlocking and disconnect issues 2026-07-07 01:35:34 -05:00
Adam Honse fe4ca34528 Move HID detector calls to RunHIDDetector/RunHIDWrappedDetector functions and return controller list from detector functions 2026-07-07 01:35:34 -05:00
Adam Honse 30e35eb44c Split out detection system from ResourceManager into DetectionManager
* Split detection system out into its own class, DetectionManager
    * Clean up ResourceManger's many callbacks into just two, one for detection and one general purpose
2026-07-07 01:35:34 -05:00
Adam Honse 25a753b97a 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-07-07 01:35:34 -05:00
Adam Honse 3818398d86 Handle differences in supported features protocol packet between Keychron QMK and ZMK 2026-07-07 01:34:16 -05:00
Adam Honse 0973f6149b Add Keychron Ultra 8K (ZMK) keyboards to Keychron QMK controller as they implement the same protocol 2026-07-07 01:22:02 -05:00
Adam Honse 1e1fb09821 Fix up mode setup in QMK Keychron controller 2026-07-05 17:20:39 -05:00
Adam Honse 971a2cc300 Fix warnings in QMKKeychronController 2026-07-04 13:41:57 -05:00
Adam Honse 3932a9614c Minor cleanups and warning fixes 2026-06-29 18:08:48 -05:00
Adam Honse c746b30287 Add Keychron K-series V2 keyboards from wls_2025q1 branch 2026-06-28 15:45:48 -05:00
Adam Honse 7627466891 Get Keychron firmware version 2026-06-28 01:30:32 -05:00
Adam Honse 6fc68f4e62 Add the rest of the Keychron keyboards in the 2025q3 branch 2026-06-27 20:03:50 -05:00
Adam Honse 75bac1fd4e Add all the Keychron K series keyboards from the 2025q3 firmware branch 2026-06-26 10:17:06 -05:00
Adam Honse 103306c6c8 Add all the Keychron C series keyboards from the 2025q3 firmware branch 2026-06-25 16:04:22 -05:00
Adam Honse 6d37d262ea Add all the Keychron Q series keyboards from the 2025q3 firmware branch 2026-06-25 12:55:39 -05:00
Adam Honse 5c931a61b4 Add support for Keychron K10 V2 in QMKKeychronController 2026-06-24 23:33:23 -05:00
Adam Honse c5abe47859 Create a common type for storing QMK LED info and use it in both VialRGB and Keychron controllers 2026-06-24 11:55:26 -05:00
Adam Honse d3e7dba2b7 Add supported feature check in QMKKeychronController 2026-06-23 19:22:50 -05:00
Adam Honse 73865fec59 Improve matrix generation for QMK Keychron controller, clean up modes, implement manual save 2026-06-22 18:42:03 -05:00
Adam Honse cce2d41500 Cleanups to QMKKeychronController and create common QMK VIA protocol header 2026-06-21 21:14:46 -05:00
Amadej Kastelic 175f3ed338 feat: add Keychron Q1 HE keyboard support and restructure Keychron controllers 2026-06-21 21:14:46 -05:00
Adam Honse f872f1c591 Ignore modes out of range in VialRGB controller 2026-04-08 18:50:47 -05:00
Adam Honse b4940e3a75 Fix warning in QMKVialRGBController 2026-03-02 23:04:40 -06:00
Daniel Lamphere 9fd352efc4 Prevent division by zero crash in QMK OpenRGB controllers 2026-01-04 12:51:34 -06:00
Adam Honse c509698b54 Fix a bunch of warnings 2025-12-15 19:21:15 -06:00
Egor Vorontsov 7886dc4c14 Added VialRGB dynamic detector. 2025-11-24 20:37:08 -06:00
Adam Honse 63936126f3 Perform VialRGB version and flag checks before registering QMK VialRGB controllers 2025-10-09 11:28:10 -05:00
Adam Honse 6aa8eb6101 Clean up OpenRGB and VialRGB QMK controllers into a common folder and move keymap definitions to QMK common files 2025-10-07 17:07:28 -05:00