summaryrefslogtreecommitdiff
path: root/app
AgeCommit message (Collapse)Author
2021-02-24refactor(hold-tap): improve switch statementsOkke Formsma
2021-02-24refactor(hold-tap): pretty print decision_momentOkke Formsma
2021-02-24refactor(hold-tap): create press_binding and release_binding functionsOkke Formsma
2021-02-24refactor(hold-tap): split hold state into interrupt and timerOkke Formsma
2021-02-24refactor(hold-tap): use enum for hold-tap statusOkke Formsma
2021-02-24refactor(hold-tap): simplify flavor enumOkke Formsma
2021-02-16refactor(ext-power): Add init-delay-ms optionNick Winans
Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2021-02-16fix(ext-power): Initialize as soon as settings are availableNick Winans
2021-02-16fix(display): Check for display in idle handler.Pete Johanson
* Closes #679
2021-02-10style(hold-tap)!: Write hold-tap params with dashesOkke Formsma
tapping_term_ms -> tapping-term-ms quick_tap_ms -> quick-tap-ms The old style works, although it's deprecated.
2021-02-09feat(underglow): Convert HSB changes to absolute.Pete Johanson
* Public type for HSB led color. * New API for calculating "next" HSB based on current state. * Update behavior to convert the increment/decrement commands to absolute command as well.
2021-02-09refactor(behaviors): Convert state dependent params.Pete Johanson
* Allow each behavior to map a relative binding, e.g. "toggle", to an absolute one, e.g. "on", before being invoked.
2021-02-09refactor(rgb): Expose explicit on/off command/API.Pete Johanson
2021-02-08fix(boards): Remove explicit enable of sensorNick Winans
2021-02-08fix(core): Enable sensor by defaultNick Winans
2021-02-04Refactor nibble / update to match build docs (#620)KemoNine
* feat(nibble): add underglow support for nice_nano builds * feat(nibble): add encoder to top, left most column to match standard assembly documentation * refactor(nibble): add layer labels * feat(nibble): add support for optional display ; off by default * feat(nibble): add README * fix(nibble): adjust oled rotation for easier reading * fix(nibble): add additional note about enabling oled * refactor(nibble): convert keymap to use tabs instead of spaces * refactor(nibble): enable oled in dts/overlay by default * refactor(nibble): cleanup alignment and formatting in nibble keymap * refactor(nibble): re-align top most row of keymap to be sensible * refactor(nibble): cleanup kscan map alignment * refactor(nibble): indent first row of map/transform to properly align with physical columns * fix(nibble): remove dangling code block from readme Co-authored-by: KemoNine <mcrosson@kemonine.info>
2021-02-04fix(power): Add support for capacitors on ADC for BVDjrhrsmit
Add a little delay so any capacitors connected to the ADC for the BVD can charge up when using power_gpios Co-authored-by: Jasper Smit <jrhrsmit@gmail.com>
2021-02-04refactor(core): Use /omit-if-no-ref/ for behaviors.Pete Johanson
* Use lesser-known DT features to skip behaviors not referenced in the user keymap * Update the behaviors to skip code if no nodes found. * Remove some empty config/data structs where unused in behaviors.
2021-02-03feat(shields) Add encoder support to CRBNmantas
Pin A maps to A2 (F5), pin B to A3 (F4). Added keymappings to encoder on default and lower layers.
2021-02-03style(crbn): Unify indentation from spaces to tabsmantas
2021-02-03Feat combo layers (#661)KemoNine
feat(combos): add layer filtering Co-authored-by: KemoNine <mcrosson@kemonine.info>
2021-02-02behaviors(hold-tap): Implement quick_tap_ms (TAPPING_FORCE_HOLD)Okke Formsma
Tap-and-hold a hold-tap to hold the tap behavior so it can repeat. After a tap, if the same key is pressed within `quick_tap_ms`, the tap behavior is always picked. This is useful for things like `&ht LSHFT BACKSPACE` where holding the backspace is required. Implements #288.
2021-02-02refactor(kscan): Fix polling of GPIO matrices.Pete Johanson
* Add easier macros for conditional polling/interrupt code. * Properly continue polling on intervals, without extra enable/disable code for pins that is superfluous when not trying to deal with interupts firing. * Fix to allow multiple GPIO drivers when doing splits w/ IO expanders
2021-02-02refactor(kscan): Remove explicit default n from kscan configs.Pete Johanson
* Actually allow defaulting yes in other places.
2021-02-02fix(boards): Shorten keyboard names that are too longNick Winans
2021-02-02fix(core): Assert BLE device name is correct lengthNick Winans
2021-02-02refactor(behaviors): simplify hold-taps by not using _TRANSFORM_ENTRYOkke Formsma
2021-02-02refactor(behaviors): factor out multiple uses of _TRANSFORM_ENTRYOkke Formsma
2021-01-30Add a missing log_strdup()Jeff Rizzo
2021-01-28feature(sticky_keys): add quick-releaseOkke Formsma
when quick-release is enabled, the sticky key is released immediately after another key is pressed
2021-01-25fix(behaviors): Updated grsec snapshots for new log format.Pete Johanson
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-24refactor(modifiers): define is_mods functionOkke Formsma
2021-01-24refactor(hid_listener): pass event struct instead of parametersOkke Formsma
2021-01-23feat: Add WPM calculator and display widgetAlly Parker
2021-01-23run-test.sh: use the POSIX '-L 1' for xargsJeff Rizzo
This allows tests to be run on platforms where '-l' isn't implemented, like MacOS.
2021-01-22feat(grave-escape): implement grave-escapeOkke Formsma
closes #85
2021-01-22Fix offset in NIBBLE transformation and keymapJay Greco
The NIBBLE transformation was missing RC(0,0), which was causing some strange behavior in the kscan driver.
2021-01-20refactor(core): Combine `is_` and `cast_` event functions.Pete Johanson
* Use a single `as_foo` generated function to conditionally return a certain event type from a generic `zmk_event_t*` pointer.
2021-01-20refactor(core): Extra event payloads to own types, refactor API.Pete Johanson
* Make it easier to use *just* event payloads by defining the data, and then having event manager macros generate "wrapper structs" * Improve is_*/cast_* APIs to hide details of full event struct. * Create `zmk_event_t` typedef to pass to event handlers. * Bring event names inline w/ consistent `zmk_` prefix.
2021-01-20refactor(core): Extra position state change data struct.Pete Johanson
* Separate header and data struct for the event. * Remove duplicate struct in split code.
2021-01-19fix(shields): Unflip left Microdox OLED.Pete Johanson
2021-01-16chore(core): replace `Pete Johanson` with `The ZMK Contributors`innovaker
Does not include boards and shields.
2021-01-15fix(splits): Send pos notify from dedicated threadPete Johanson
* Avoid deadlocks by using a deadicated workqueue for sending position state notifications from peripherals.
2021-01-15fix(hid): Clear all matching usages, not just first.Pete Johanson
* If various events get dropped, we can end up with duplicate codes in our report, so tweak to ensure we look for all matches and clear them when we have a keycode released.
2021-01-15fix(bluetooth): improve LE param update loggingPete Johanson
2021-01-15fix(ble): Perform GATT notifies from dedicated queue.Pete Johanson
* Zephyr BT stack frees TX buffers from system workqueue, and to avoid blocking waiting to allocate, perform notify from a dedicated queue.
2021-01-15fix(split): Use queue/work for peripheral events.Pete Johanson
* Avoid corruption by using work to process peripheral key position events on the main work thread, like local kscan events are. * Fixes #221
2021-01-15fix(boards): Define but don't enable uart0.Pete Johanson
* Set pro-micro TX/RX pins, but don't enable the UART by default.
2021-01-15refactor(core): define usage page as uint16_tinnovaker
Aligns with the HID specification. Usage page values were sometimes declared as uint8_t and sometimes uint16_t. This commit aligns all instances with the HID specification for consistency. PR: #521