ReFil and Nick Winans
b877410379
fix(boards): BT60 Formatting tweaks
2021-11-30 15:33:12 -06:00
ReFil and Nick Winans
99c5a8ee6f
feat(boards): Add BT60 Boards
2021-11-30 15:33:12 -06:00
66f90dae3a
feat(shield) Add Chalice support ( #1022 )
...
* add chalice
* add split bs transform
* Update app/boards/shields/chalice/chalice.zmk.yml
Co-authored-by: Nick Winans <nick@winans.codes >
Co-authored-by: Nick Winans <nick@winans.codes >
2021-11-29 11:39:46 -06:00
Cem Aksoylar and Pete Johanson
b9a35c6ae7
fix(keymaps): Locate shared conf and overlay for split boards.
2021-11-29 07:56:29 -05:00
Nick Winans and Pete Johanson
0b44321613
fix(shields): Fix typo on Quefrency .zmk.yml
2021-11-29 00:52:57 -05:00
Peter Johanson
54dabffd0d
feat(behaviors): Add caps word (&caps_word).
...
* Add new `&caps_word` behavior that acts like caps lock, but
releases automatically when any "break" keycode is pressed.
2021-11-28 22:41:35 -05:00
Jonathan Rascher and Pete Johanson
30ed237533
test(conditional-layers): Add tests for edge cases
2021-11-15 05:49:23 -05:00
Jonathan Rascher and Pete Johanson
6cd1734851
test(conditional-layers): Add interleaved up/downs
2021-11-15 05:49:23 -05:00
Jonathan Rascher and Pete Johanson
a908396013
test(conditional-layers): Add multi-config tests
2021-11-15 05:49:23 -05:00
Jonathan Rascher and Pete Johanson
df110beac4
test(conditional-layers): Add basic unit tests
2021-11-15 05:49:23 -05:00
Jonathan Rascher and Pete Johanson
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
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 and GitHub
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 and Pete Johanson
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
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
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
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 and GitHub
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 and Pete Johanson
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
Jonathan Rascher and Pete Johanson
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
Peter Johanson
e6c815f1b0
fix: Properly find boards in user config repos.
2021-10-19 13:29:36 +00:00
Peter Johanson
0dc7d46eb1
fix: Only search for board one not found yet.
2021-10-18 20:08:35 -04:00
Peter Johanson
742f4c2826
fix(keymaps): Properly locate split board keymaps.
...
* Find the unified keymap filename for onboard controller split
keyboards.
2021-10-18 20:08:35 -04:00
eyenseo and Nick Winans
6f29453041
[squash] implement feedback
2021-10-13 09:51:02 -07:00
eyenseo and Nick Winans
51298f1d22
Add ergodash
2021-10-13 09:51:02 -07:00
Richard Kjerstadius and Pete Johanson
a774ce8555
fix(display): Increase char buffer size to fit all symbols
...
Recent refactoring of the font handling seems to have broken the display
of the last symbol of the output status widget. From my analysis the
last symbol is truncated because the buffer simply is too small.
Increasing the buffer size to 9 fits all three possible symbols.
2021-10-12 12:00:21 -04:00
git@jrhrsmit.nl and Nick Winans
f221ff1dc7
add ranges and descriptions from #669
2021-10-11 09:46:17 -07:00
Nick Winans
f23f427cae
fix(underglow): Run clang-format
2021-10-10 17:43:57 -07:00
c5b8dd85fd
feat(underglow): Add support for configurable min/max brightness
...
Co-authored-by: jrhrsmit <jasper.770@gmail.com >
2021-10-10 17:43:57 -07:00
Peter Johanson
bc179b1030
feat(hid): Kconfig for basic/full consumer usages.
...
* 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-04 23:01:39 -04:00
Pete Johanson
91ba034896
feat(hid): Configurable NKRO HID report support.
...
* 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-10-04 23:01:39 -04:00
Aleblazer and GitHub
063b496c26
feat(boards): Add Zodiark shield
2021-10-03 23:47:23 -04:00
Brandon Xie and GitHub
3b8244e466
feat(shields): Add Naked60BMP shield
2021-10-03 23:23:54 -04:00
Nick Winans and Pete Johanson
687e91ab18
feat(boards): Remove usage of pro_micro_a/d nodes
2021-09-25 23:09:21 -04:00
Nick Winans and Pete Johanson
4a03214e06
feat(boards): Add D18-21 to Pro Micro pin mappings
2021-09-25 23:09:21 -04:00
Peter Johanson
014e5ba93c
refactor(boards): Remove leftover right split name
2021-09-26 01:21:49 +00:00
Nick Winans and Pete Johanson
478cf94374
refactor(boards): Remove "left" from split keyboard names
2021-09-25 21:17:24 -04:00
Nick Winans and Pete Johanson
36ced48e53
refactor(boards): Remove split right keyboard names
2021-09-25 21:17:24 -04:00
Peter Johanson
3e6a3758ed
refactor(display): Saner font selection/defaults.
...
* Only select fonts for the default built in status screen
* Leverage theme default fonts, instead of hardcoding theme
details in each component.
2021-09-25 19:43:20 -04:00
Peter Johanson
2128b2b55f
refactor(display): Output/layer/battery thread safety.
...
* Submit widget updates to display queue.
* Use mutex to control access to shared state for widgets.
2021-09-25 17:17:04 -04:00
Peter Johanson
063d98e3df
feat(display): Optional dedicated work queue.
...
* Add new Kconfig settingsx to allow selecting system or dedicated
work queue for performing UI updates.
* Allow UI updates to not block other system tasks when display is
updating, especially important for e-ink displays.
2021-09-25 17:17:04 -04:00
Xudong Zheng and Pete Johanson
212a05feb3
fix(hog): use OR instead of AND for bitmap
2021-09-23 20:47:40 -04:00
Dom H and Pete Johanson
db4bbbf9eb
fix(shield): Update URL in A. Dux metadata
2021-09-23 14:57:40 -04:00
Dom H and Pete Johanson
80b01c7265
refactor(shield): "Architeuthis Dux" to "A. Dux"
...
The shorter name is more user-friendly.
2021-09-23 14:57:40 -04:00
Dom H and Pete Johanson
0c15c2291e
feat(shield): Add Architeuthis Dux shield
2021-09-23 14:57:40 -04:00
Peter Johanson
a7908a94de
fix(hog): encrypt perm for HID report map/ref.
...
* Workaround for ensuring macOS pairing happens early enough,
for their stack, we require encryption for the hids report map and
report ref characteristics as well, to trigger pairing ealier in the
connection process for macOS.
2021-09-18 15:43:26 -04:00
Pete Johanson
c9a671d8d5
fix(kscan): Allow composite driver to handle missing children.
...
For split keyboards using an IO expander over TRRS/i2c, if the
right half isn't connected, we should be able to gracefully
fallback to the left side still working.
2021-09-14 20:48:28 -04:00
Peter Johanson
e42590a049
feat(board): Add Ferris 0.2 boards
...
* Onboard stm32f072 with mcp23018 IO expander.
* No underglow support yet.
* Miryoku inspired default layout.
2021-09-14 20:48:28 -04:00
Pete Johanson
647110e5e5
feat(drivers): Add mcp23017 driver based on upstream mcp23s17 one.
...
* Upstream Zephyr has in progress driver, so doing this locally here,
until we can move over to that driver.
2021-09-14 20:48:28 -04:00
Peter Johanson
c7e513634d
feat(metadata): Add YAML check/format npm scripts.
2021-09-11 00:50:36 -04:00