Commit graph

1697 commits

Author SHA1 Message Date
Cedric VINCENT
e907e03271 feat(pim447): Add support for a lot of new driver properties. 2021-11-21 11:03:58 +01:00
Jonathan Rascher
30ed237533 test(conditional-layers): Add tests for edge cases 2021-11-15 05:49:23 -05:00
Jonathan Rascher
6cd1734851 test(conditional-layers): Add interleaved up/downs 2021-11-15 05:49:23 -05:00
Jonathan Rascher
a908396013 test(conditional-layers): Add multi-config tests 2021-11-15 05:49:23 -05:00
Jonathan Rascher
df110beac4 test(conditional-layers): Add basic unit tests 2021-11-15 05:49:23 -05:00
Jonathan Rascher
cbf6e28e34 docs(conditional-layers): Document feature 2021-11-15 05:49:23 -05:00
Jonathan Rascher
e9140b2da9 feat(conditional-layers): Implement feature
This is a generalization of the existing concept of tri-layer support
that's already well known. Essentially, a conditional-layer
configuration activates a particular layer (the then-layer) when one or
more other layers (the if-layers) are activated.

This is commonly used on ortho keyboards to activate a third "adjust"
layer while the primary two layers ("lower" and "raise") are active.
2021-11-15 05:49:23 -05:00
Cedric Vincent
7b45f80c72 feat(mouse): Add support for PIM447 trackball. 2021-11-14 19:49:18 +01:00
Cedric Vincent
b9f900faa7 feat(sensor): Add Pimoroni PIM447 trackball driver. 2021-11-14 19:49:17 +01:00
Peter Johanson
f8018b22d0 fix(hid): Basic consumer code fixes for signed logical max.
* 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-11-09 10:38:49 -05:00
Viet (Drake) Tran
c412fad40d
fix(shields): Fix some keycodes in reviung41 keymap
Notice some keycodes are not matched with the expected keys.
2021-11-09 10:26:21 -05:00
jding
4e62319982 feat: hold/tap flavor tap-unless-interrupted
Implements new hold/tap flavor, tap-unless-interrupted
Adds tests
Adds docs
2021-11-09 01:07:05 -05:00
Hai-Ninh Dang
f2e0642291
feat(boards): Add Mikoto board
* Supports selecting from several possible charge currents

Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2021-11-09 00:57:24 -05:00
dependabot[bot]
944f931704 chore(deps): bump DoozyX/clang-format-lint-action from 0.12 to 0.13
Bumps [DoozyX/clang-format-lint-action](https://github.com/DoozyX/clang-format-lint-action) from 0.12 to 0.13.
- [Release notes](https://github.com/DoozyX/clang-format-lint-action/releases)
- [Commits](https://github.com/DoozyX/clang-format-lint-action/compare/v0.12...v0.13)

---
updated-dependencies:
- dependency-name: DoozyX/clang-format-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-04 22:47:15 -04:00
Peter Johanson
0b0b49d626 fix(split): Properly rediscover peripherals.
* Handle disconnects of peripherals, and properly clean up
  and resume discovering for when the peripheral re-appears.
2021-11-04 22:31:56 -04:00
Alexander Krikun
621ecc5450 prettier 2021-11-02 01:04:39 +03:00
Alexander Krikun
5021a842cd clang-format 2021-11-02 01:04:38 +03:00
Alexander Krikun
37ba47c20c Moved tick duration 2021-11-02 01:01:32 +03:00
Alexander Krikun
7580668d97 Added documentation for new features 2021-11-02 01:01:30 +03:00
Alexander Krikun
c6c4e9b531 Send mouse messages from dedicated thread 2021-11-02 01:01:28 +03:00
krikun98
775117d590 Cleanup and acceleration fixes 2021-11-02 01:01:27 +03:00
krikun98
a6d5ed15c9 Add messages to BLE queue without a waiting interval 2021-11-02 01:01:26 +03:00
krikun98
c2c2961bfc Simplified tick rate and made it configurable 2021-11-02 01:01:25 +03:00
krikun98
30581f7207 Added dedicated mouse work queue option 2021-11-02 01:01:23 +03:00
Okke Formsma
35eef63fa9 feat(mouse keys): add events, smoothing and acceleration 2021-11-02 00:59:03 +03:00
krikun98
1815820716 Modified mouse_timer_unref to account for errors 2021-11-02 00:59:02 +03:00
Okke Formsma
c55bd0fa27 Simplify binary arithmetic 2021-11-02 00:59:02 +03:00
krikun98
2d3f0e1d92 Report refactor (added macros) 2021-11-02 00:59:00 +03:00
krikun98
8e6fbdcc25 Reverted mouse buttons 9-16 2021-11-02 00:57:49 +03:00
krikun98
fdcd7241e3 Mouse movement coordinate signedness consistency 2021-11-02 00:57:48 +03:00
krikun98
33518ef5c9 Review edits: macro, event override fix, cosmetics 2021-11-02 00:57:47 +03:00
krikun98
a29ee0033a Added new mouse movement macros 2021-11-02 00:57:46 +03:00
krikun98
848f32c957 Add the doc page to the sidebar 2021-11-02 00:57:45 +03:00
krikun98
fbd6110cd9 Documentation refactor 2021-11-02 00:57:44 +03:00
krikun98
c76935d90a Raised BLE mouse report queue size 2021-11-02 00:57:43 +03:00
Dmitry Tsykunov
2d2a8bd60d Implemented Rinh's suggestion to remove deadlocks 2021-11-02 00:57:42 +03:00
krikun98
b27b8e35ec clang-format 2021-11-02 00:56:28 +03:00
krikun98
c36ec0c717 Cleaning out prototype traces 2021-11-02 00:54:41 +03:00
Dmitry Tsykunov
5083b31296 Add mouse behaviour documentation 2021-11-02 00:54:40 +03:00
Dmitry Tsykunov
3eebe8657b Continuous mouse movement prototype 2021-11-02 00:54:38 +03:00
Dmitry Tsykunov
400e24608b Add mouse movement event 2021-11-02 00:54:37 +03:00
Dmitry Tsykunov
aefbd5edc9 Mouse-related behaviours 2021-11-02 00:54:35 +03:00
Alexander Krikun
e585af2aa1 Bluetooth tuning, mouse wheel and movement backend 2021-11-02 00:54:34 +03:00
Alexander Krikun
9b09974734 Fine-tuning report, 16 buttons 2021-11-02 00:54:32 +03:00
Alexander Krikun
d8d8b96992 Preliminary work for mouse click 2021-11-02 00:54:31 +03:00
jmding8
73fd4b9230
fix(behavior): Properly break in decision switch statement.
Co-authored-by: jding <jding@roblox.com>
2021-11-01 13:51:12 -04:00
jmding8
19ee7849f8
feat(behaviors) Required keys for tap-hold behaviors
* Add optional `hold-trigger-key-positions` hold-tap configuration
* Leverage configuration for decision making around when to trigger
  hold decision in hold-taps.
* Add docs for new configuration.
* Tests for the new config/decision logic.
2021-11-01 12:37:20 -04:00
Joel Spadin
f946dc6893 feat(kscan): Improve matrix debouncing
Switched the GPIO matrix driver to debouncing using a simple integrator
algorithm. Whenever a key is pressed, we now scan at a rate controlled
by debounce-scan-period-ms (default 1 ms) until all keys are released,
then return to either waiting for an interrupt or polling more slowly.

The timers for key press and release can now be controlled separately,
so debounce-period is deprecated in favor of debounce-press-ms and
debounce-release-ms. Global Kconfig options
ZMK_KSCAN_DEBOUNCE_PRESS_MS and ZMK_KSCAN_DEBOUNCE_RELEASE_MS are also
added to make these easier to set.

Added documentation for debouncing options.
2021-10-26 23:52:13 -04:00
Peter Johanson
5cc7c280a5 refactor: Move to explicit docker.io/* image references.
* Some runtimes (e.g. podman), require explicit registries in image URLs
 or will prompt for the user to select one, which breaks things like
 VSCode remote container rebuilds.
2021-10-23 15:33:42 -04:00
Jonathan Rascher
e3eb77dfc6 refactor(combos): Use ZMK_KEYMAP_EXTRACT_BINDING
Now that PR #506 is merged, we can address this TODO.
2021-10-20 23:36:31 -04:00