summaryrefslogtreecommitdiff
path: root/app
AgeCommit message (Collapse)Author
2021-11-26fix: Ensure power and underglow behaviors built.HEADmasterPeter Johanson
* Remove `/omit-if-no-ref/` from the behavior nodes.
2021-11-26fix(split): Add queue for running remote behaviorsPeter Johanson
2021-11-26fix(underglow): Handle cycling effects on splits.Peter Johanson
* Convert relative effect cycling to absolute effect selection.
2021-11-26refactor(split): Clean up split GATT discovery.Pete Johanson
* Use Zephyr auto CCC discovery instead of doing it ourselves. * Split service versus characteristic discovery into dedicated steps in the flow. * Fix for not searching properly when connecting to a peripheral a second time.
2021-11-26feature(split): behavior locality support.Pete Johanson
* GATT characteristic allowing passng data + behavior label to invoke the behavior on the peripheral side. * Behaviors have a locality setting to specify where they run. * Build reset/power/RGB on peripheral.
2021-11-22Add my stuffNick Van Doorn
Yeah!
2021-11-15test(conditional-layers): Add tests for edge casesJonathan Rascher
2021-11-15test(conditional-layers): Add interleaved up/downsJonathan Rascher
2021-11-15test(conditional-layers): Add multi-config testsJonathan Rascher
2021-11-15test(conditional-layers): Add basic unit testsJonathan Rascher
2021-11-15feat(conditional-layers): Implement featureJonathan Rascher
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-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-11-09fix(shields): Fix some keycodes in reviung41 keymapViet (Drake) Tran
Notice some keycodes are not matched with the expected keys.
2021-11-09feat: hold/tap flavor tap-unless-interruptedjding
Implements new hold/tap flavor, tap-unless-interrupted Adds tests Adds docs
2021-11-09feat(boards): Add Mikoto boardHai-Ninh Dang
* Supports selecting from several possible charge currents Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2021-11-04fix(split): Properly rediscover peripherals.Peter Johanson
* Handle disconnects of peripherals, and properly clean up and resume discovering for when the peripheral re-appears.
2021-11-01fix(behavior): Properly break in decision switch statement.jmding8
Co-authored-by: jding <jding@roblox.com>
2021-11-01feat(behaviors) Required keys for tap-hold behaviorsjmding8
* 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-10-26feat(kscan): Improve matrix debouncingJoel Spadin
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-20refactor(combos): Use ZMK_KEYMAP_EXTRACT_BINDINGJonathan Rascher
Now that PR #506 is merged, we can address this TODO.
2021-10-19fix: Properly find boards in user config repos.Peter Johanson
2021-10-18fix: Only search for board one not found yet.Peter Johanson
2021-10-18fix(keymaps): Properly locate split board keymaps.Peter Johanson
* Find the unified keymap filename for onboard controller split keyboards.
2021-10-13[squash] implement feedbackeyenseo
2021-10-13Add ergodasheyenseo
2021-10-12fix(display): Increase char buffer size to fit all symbolsRichard Kjerstadius
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-11add ranges and descriptions from #669git@jrhrsmit.nl
2021-10-10fix(underglow): Run clang-formatNick Winans
2021-10-10feat(underglow): Add support for configurable min/max brightnessSimon Malinge
Co-authored-by: jrhrsmit <jasper.770@gmail.com>
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-10-03feat(boards): Add Zodiark shieldAleblazer
2021-10-03feat(shields): Add Naked60BMP shieldBrandon Xie
2021-09-25feat(boards): Remove usage of pro_micro_a/d nodesNick Winans
2021-09-25feat(boards): Add D18-21 to Pro Micro pin mappingsNick Winans
2021-09-26refactor(boards): Remove leftover right split namePeter Johanson
2021-09-25refactor(boards): Remove "left" from split keyboard namesNick Winans
2021-09-25refactor(boards): Remove split right keyboard namesNick Winans
2021-09-25refactor(display): Saner font selection/defaults.Peter Johanson
* Only select fonts for the default built in status screen * Leverage theme default fonts, instead of hardcoding theme details in each component.
2021-09-25refactor(display): Output/layer/battery thread safety.Peter Johanson
* Submit widget updates to display queue. * Use mutex to control access to shared state for widgets.
2021-09-25feat(display): Optional dedicated work queue.Peter Johanson
* 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-23fix(hog): use OR instead of AND for bitmapXudong Zheng
2021-09-23fix(shield): Update URL in A. Dux metadataDom H
2021-09-23refactor(shield): "Architeuthis Dux" to "A. Dux"Dom H
The shorter name is more user-friendly.
2021-09-23feat(shield): Add Architeuthis Dux shieldDom H
2021-09-18fix(hog): encrypt perm for HID report map/ref.Peter Johanson
* 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-14fix(kscan): Allow composite driver to handle missing children.Pete Johanson
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-14feat(board): Add Ferris 0.2 boardsPeter Johanson
* Onboard stm32f072 with mcp23018 IO expander. * No underglow support yet. * Miryoku inspired default layout.
2021-09-14feat(drivers): Add mcp23017 driver based on upstream mcp23s17 one.Pete Johanson
* Upstream Zephyr has in progress driver, so doing this locally here, until we can move over to that driver.
2021-09-11feat(metadata): Add YAML check/format npm scripts.Peter Johanson