How exactly did you try to hack the library?
During my tests, the following two lines at the top of setup()
in my own sketch made the keyboard come up as 6KRO by default:
BootKeyboard.default_protocol = HID_BOOT_PROTOCOL;
BootKeyboard.setProtocol(HID_BOOT_PROTOCOL);
Mind you, I do not have a KVM switch to test if this works, the best I can do at the moment is to test if this puts the keyboard into boot mode by default, which, for me, it does.
This will still present two HID descriptors, one for a 6KRO and one for an NKRO keyboard, but will default to the former. The KVM switch might be confused by this, so in this case, the best course of action would be to completely remove the NKRO parts. That is currently not easily possible, but you can hack up Kaleidoscope-HIDAdaptor-KeyboardioHID
and remove or comment out all references to Keyboard
.