Add HID feature report for extended keyboard attrs#26280
Add HID feature report for extended keyboard attrs#26280TorstenSchmitz wants to merge 4 commits into
Conversation
|
I do believe that the EVENT_USB_Device_ControlRequest and similar functions are what is called by the respective frameworks, and is the lowest level that QMK can go. However, the examples you've posted look to be part of the shared/keyboard report, and not lower than that. (but I'm not an expert with the usb and hid control stuff) As for the reports, these are handled as progmem, in part because they can be rather large, which is not AVR friendly. That would mean mean that it's also compile time only. Also, do you know if linux, windows and/or macos actually looks for an honors this? |
|
I'll update the PR with the handling of the report once I'm happier with my local changes.
Microsoft requested the HUTRR so presumably they want to do something with it eventually, though I would be surprised if they do so today. |
d48e896 to
11e7b64
Compare
11e7b64 to
56236c8
Compare
[HUTTR42c](https://www.usb.org/sites/default/files/hutrr42c_0.pdf) This could be what bCountryCode never was. A way for us to report our layout to the OS.
56236c8 to
bcdd738
Compare
bcdd738 to
32a52cb
Compare
7614625 to
80f126f
Compare
|
If you'd like tests for this please advice me on where those should go. |
4859445 to
b0f8878
Compare
HUTTR42c could be what bCountryCode never was.
A way for us to report our layout to the OS.
This exposes a Get_Report(FEATURE) to get these attributes to the OS which specify physical layout (ISO, ANSI, KS, JIS, ABNT) and locale of the printed key set (e.g. "en-US", "de-CH-1996") as specified in ietf bcp47.
This could in theory be used to select appropriate keyboard layouts when plugging in a device.
To my knowledge no OS makes use of this today.
I have not added the input report for Keyboard Assist hotkeys (e.g previous/next suggesition, accept/cancel suggestion).
Description
Adds HID Feature report for USAGE(EXTENDED_KEYBOARD_ATTRIBUTES).
Adds (usually PROGMEM) keyboard_extended_attributes and get_report(FEATURE) handling for
Todo:Open questions :
Future work:
Issues Fixed or Closed by This PR
Types of Changes
Checklist