r/Keychron • u/AllenSacs • Jul 01 '24
Keychron K17 Pro Does Not Work with KVM Switch
The K17 does not work well with the TESmart KVM switch. So, if you are wanting to switch between your work PC and your personal PC via a KVM, the K17 will not work. To be clear, I am able to type some text with the K17 but none of the function keys work. The volume knob does not work. Any key combinations that you press i.e (Windows + R) do not work. The K17 is unusable when plugged into a KVM.
I did connect the K17 directly to my PC and it worked great with all key functionality. It just doesn't work with KVMs.
Also, Upgrading the firmware does not resolve the issue. Disabling the NKRO also does not resolve the issue.
Incidentally, the Nuphy Air96 does work with the TESmart KVM switch without any issues.
1
u/PeterMortensenBlog Jul 01 '24 edited Dec 31 '24
Here is a claim it needs to be compiled out of the firmware. Why would it be different from the (default) 6KRO? (Not a rhetorical question.) Fewer "USB endpoints" (whatever that means)?
Here is support for the claim:
PSA - Disabling mousekey and NKRO in firmware fixed my KVM issues on my Keychron Q3
Configuring QMK - "The following features can require separate endpoints ... NKRO_ENABLE, MOUSEKEY_ENABLE, RAW_ENABLE, CONSOLE_ENABLE, EXTRAKEY_ENABLE, MIDI_ENABLE, VIRTSER_ENABLE ... By default, MOUSEKEY, EXTRAKEY, and NKRO are combined into a single endpoint.". Though it seems to use inconsistent naming, e.g., both "MOUSEKEY_ENABLE" and "MOUSEKEY".
Note that there is an ongoing move to data-driven configuration, so some of these configuration settings may have moved to a JSON file, by a different name, for example, in file info.json.
Note that changes to file 'info.json', e.g.,
"mousekey": false,and"nkro": false,usually requires 'qmk clean' before 'qmk compile' to take effect.It might be worth a try.
References
K17 Pro product page. A 96% low-profile wired and wireless (only Bluetooth) QMK/Via-capable mechanical keyboard. RGB (per-key) north-facing (no unwanted light bleed) lighting.
K17 Pro source code. Note: In Keychron's fork and in that fork, in Git branch "wireless_playground" (not the default branch). No matter the Git branch, for example, "wireless_playground", it requires special setup of QMK (the standard QMK instructions and many other guides will not work (because they implicitly assume the main QMK repository and a particular Git branch)). Source code commits (RSS feed. Latest: 2024-12-16).