summaryrefslogtreecommitdiff
path: root/app/include/zmk/hid.h
AgeCommit message (Collapse)Author
2021-11-09fix(hid): Basic consumer code fixes for signed logical max.Peter Johanson
* Logical max values are signed, so for the report descriptor, use a two byte logical max descriptor item to impart proper 0xFF max logical value.
2021-10-04feat(hid): Kconfig for basic/full consumer usages.Peter Johanson
* Add ZMK_HID_CONSUMER_REPORT_USAGES choice to allow choosing between full consumer usage range, with poor OS compat, or basic consumer usage range, with broader compat.
2021-10-04feat(hid): Configurable NKRO HID report support.Pete Johanson
* Add Kconfig settings for NKRO or HKRO (boot compatible), HID report types for keyboard page. * Updated report storage and set/unset for each config.
2021-01-24feature(modifiers): add explicit modifiersOkke Formsma
this makes LS(LEFT_CONTROL) work as if shift and control were both pressed explicitly. Previously, the left shift would have been released as soon as another key was pressed. The implicit behavior is useful in case of LS(NUMBER_1) when rolling over to other keys. Also see #361.
2021-01-22feat(grave-escape): implement grave-escapeOkke Formsma
closes #85
2020-12-28refactor(app): replace zmk_mod_flags with zmk_mod_flags_tinnovaker
Aligns with typedef _t convention. PR: #531
2020-12-28refactor(app): replace zmk_mod with zmk_mod_tinnovaker
Aligns with typedef _t convention. PR: #531
2020-12-28refactor(app): replace zmk_key with zmk_key_tinnovaker
Aligns with typedef _t convention. PR: #531
2020-12-14refactor(app): replace Zephyr integer types with C99 integer typesinnovaker
u8_t → uint8_t u16_t → uint16_t u32_t → uint32_t u64_t → uint64_t s8_t → int8_t s16_t → int16_t s32_t → int32_t s64_t → int64_t Prerequisite for #223 See: https://github.com/zephyrproject-rtos/zephyr/releases/tag/zephyr-v2.4.0 PR: #467
2020-11-21refactor: change `keypad` to `keyboard`innovaker
The application usage used by report 1 is `HID_USAGE_GD_KEYBOARD`. Moreover, the `keys` usage page (0x07) that primarily feeds into this report is predominantly keyboard codes. The rest of the system should align with this naming convention.
2020-11-20refactor(hid): Replace modifier usage values with their cpp definitionsinnovaker
Improves readability of the HID reports.
2020-11-06refactor(hid): Replace `0x01` with `HID_USAGE_CONSUMER_CONSUMER_CONTROL`innovaker
This should've changed alongside: 711658206f86fc6af35be7d104243dfcf857f194
2020-11-03feat(hid): Enhance consumer report to support higher codesinnovaker
Switch from single byte to double byte usages. Allow the entire 0x0C page for future compatibility. Closes #234. Co-requisite of #21.
2020-11-03refactor(hid): Replace Zephyr usages with ZMK usages in HID reportsinnovaker
Replace `USAGE_GEN_DESKTOP` with `HID_USAGE_GD`. Replace `USAGE_GEN_DESKTOP_KEYBOARD` with `HID_USAGE_GD_KEYBOARD`. Replace `USAGE_GEN_DESKTOP_KEYPAD` with `HID_USAGE_KEY`. Replace `0x0C` with `HID_USAGE_CONSUMER`. Closes #217.
2020-11-03initial implementation for modifiersOkke Formsma
https://github.com/zmkfirmware/zmk/issues/86
2020-10-31Merge pull request #269 from joelspadin/endpoint-selectionPete Johanson
feat: only send HID reports to one endpoint
2020-10-28feat(endpoints): clear HID report on endpoint changeJoel Spadin
This prevents stuck keys when switching endpoints by clearing everything in the HID report and sending one last report before switching to the new endpoint.
2020-10-27feat(hid): Make keypad report boot friendlyinnovaker
Add missing byte to make keypad report boot friendly.
2020-10-27refactor(hid): Refactor consumer report to a configurable sizeinnovaker
2020-10-27refactor(hid): Refactor keypad report to use a configurable integer arrayinnovaker
Replace NKRO bit array with configurable integer (DV) array.
2020-09-14chore: clang-format the codebase.Pete Johanson
* Use the LLVM style * Override indent width (8) and column limit (100) * Fixes #142.
2020-09-10fix: Switch to single AUTHORS file.* Closes #164Pete Johanson
2020-06-22Fix consumer keys w/ refactored behaviors.Pete Johanson
2020-06-21Clean up after refactor, better HID constants.Pete Johanson
2020-06-08Move Zephyr app into subdirectory.Pete Johanson