Commit Graph

2457 Commits

Author SHA1 Message Date
Cem Aksoylar
ace11e327f fix(docs): Fix broken link in BT troubleshooting 2023-06-02 22:07:29 -06:00
Cem Aksoylar
0682bc3aa6 feat(docs): Note split connectivity improvement with TX power 2023-06-02 21:13:27 -06:00
Cem Aksoylar
a9ad11f91e refactor(docs): Move BT troubleshooting items to BT page 2023-06-02 21:13:27 -06:00
Cem Aksoylar
30ba4b08ae feat(docs): Add pointer to Bluetooth page in troubleshooting 2023-06-02 21:13:27 -06:00
Cem Aksoylar
4042aea66f feat(docs): Add troubleshooting for Windows issue 2023-06-02 21:13:27 -06:00
Cem Aksoylar
0508718d6c feat(docs): Add behavior types section for hold-tap 2023-06-02 21:11:33 -06:00
Cem Aksoylar
a2af74f5ab feat(docs): Add note on modifier functions to macros 2023-06-02 21:08:02 -06:00
Joel Spadin
b276a3bfb0 refactor(kscan): batch GPIO reads by port
Changed the GPIO matrix and direct GPIO key scan drivers to do a single
read per port instead of one read per pin. This is much more efficient
for some types of GPIO drivers, such as I2C GPIO expanders.

To accomplish this with minimal overhead, we now sort input pins by port
at driver init. if we iterate through the pins in the sorted order, all
pins on the same port are consecutive, so we only need to read each port
once the first time we see it.
2023-05-28 23:33:34 -06:00
Xudong Zheng
1adfcf92bf refactor(split): fix inconsistency in Kconfig names 2023-05-28 22:58:31 -06:00
Peter Johanson
5aac2743b1 fix(bluetooth): Improved checking for conn status.
* Check the actual connection status before considering
  a discovered connection as connected.
2023-05-22 23:09:40 -06:00
Cem Aksoylar
864394b40a feat(display): Add setting to invert display colors
Add CONFIG_ZMK_DISPLAY_INVERT Kconfig to invert colors
(black-on-white to white-on-black) on monochrome screens.
Currently applies only if CONFIG_LV_USE_THEME_MONO is selected,
which is the default unless user overrides it.
2023-05-21 21:51:36 -06:00
Cem Aksoylar
7e29166c6c refactor(display): Clean up unused theme Kconfig 2023-05-21 21:51:36 -06:00
Cem Aksoylar
b021d19255 fix(display): Imply LVGL mono theme when display is enabled
All displays currently used with ZMK are monochrome so it makes sense
to enable the mono theme by default, which can be disabled by the user
since we use the "imply" statement.

Without this theme setting, the small font size selection for widgets
at the bottom of the stock status screen does not work.
2023-05-21 21:51:36 -06:00
Joel Spadin
c4c014e3d1 fix(docs): Fix typescript error
See https://github.com/facebook/docusaurus/issues/8226#issuecomment-1420620198
2023-05-20 01:33:11 -06:00
Joel Spadin
dae020787e docs: Update tree-sitter
Updated web-tree-sitter and the devicetree grammar.

web-tree-sitter now supports a custom function to locate its .wasm file,
so performing a string replace is no longer necessary to get it to work
with Docusaurus' Webpack configuration. We now check when tree-sitter is
locating its .wasm file and provide the Webpack-adjusted URL.
2023-05-20 01:33:11 -06:00
Joel Spadin
c6bf95a901 chore: Update fontawesome 2023-05-20 01:33:11 -06:00
Joel Spadin
da2599aa75 chore: Update docusaurus, react types 2023-05-20 01:33:11 -06:00
Joel Spadin
4674215551 chore: Update json-schema-to-typescript 2023-05-20 01:33:11 -06:00
Joel Spadin
d799560985 chore: Update typescript, eslint, webpack 2023-05-20 01:33:11 -06:00
digger vermont
89d71ed2c2
feat(boards): Add KBDfans Tofu65 2.0 board
* Initial commit of Tofu65 2.0 board

---------

Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2023-05-18 17:47:36 -06:00
Albert Y
b1ca9199de
fix(ci): Refactor prepare variable step
* Refactor workflow variables
* Use quotes to avoid word splitting
2023-05-17 00:42:57 -04:00
Joel Spadin
a1e0607a22 fix: Don't specify default C formatter
Microsoft's C/C++ extension performs poorly on some systems, so this gives the option to use any other extension that supports formatting with clang-format.
2023-05-14 11:54:34 -06:00
Joel Spadin
d53cd19929 refactor: Add format on save for VS Code
Added settings to format various file types on save in VS Code.

Added some recommended VS Code extensions:

- Prettier for formatting various file types
- Python for formatting Python files
- C/C++ for formatting C files
- Devicetree for syntax highlighting
- CMake for syntax highlighting
2023-05-14 11:54:34 -06:00
Albert Y
48be2eedd0 fix(docs): Update QMK debounce references 2023-05-09 21:40:14 -07:00
Alexander Krikun
94789a092c fix(boards): unify board I2C configuration, use TWI driver 2023-05-04 22:51:54 -07:00
Cem Aksoylar
0239f18b61 feat(boards): Add Corne-ish Zen v1 2023-04-25 23:57:16 -07:00
Cem Aksoylar
39d7f86f70 refactor(boards): Make Zen dtsi non-v2 specific 2023-04-25 23:57:16 -07:00
Cem Aksoylar
4a9c59317f refactor(boards): Add back default matrix transform to Zen v2 chosen node 2023-04-25 23:57:16 -07:00
Cem Aksoylar
2c70048bee refactor(boards): Remove duplicated Zen v2 Kconfigs and unused font size 2023-04-25 23:57:16 -07:00
Cem Aksoylar
ab65ffc114 refactor(boards): Fix Zen v2 DTS spacing inconsistencies 2023-04-25 23:57:16 -07:00
Peter Johanson
a6787b08c7 refactor(underglow): Tad more logging. 2023-04-25 23:53:17 -07:00
Joel Spadin
9bd171ede4 fix(docs): Add key to interconnect tabs
Added a key property to interconnect tabs list items to fix a React
warning.
2023-04-25 15:50:38 -07:00
ReFil
db08e041c6
feat(boards): Polarity works CKP Series
Adds support for the CKP family of boards
BT60V2 ANSIHotswap, ISO Hotswap, ANSI Lowpro and soldered
BT65 ANSI Hotswap, ISO Hotswap and soldered
BT75 ANSI Hotswap and soldered

The BT65 and BT75 are stylised as btXX_v1 in order to maintain compatibility with customers existing zmk-config setups in the same way the BT60 V1 was handled when merged into main.

CKP boards have identical pinmapping between hotswap and soldered so there's only one set of defconfig, dts, keymap, yaml and yml files per size
2023-04-25 13:37:33 -04:00
Peter Johanson
e52e734480 chore: Fix formatting of Kconfig setting. 2023-04-24 23:01:48 -07:00
Peter Johanson
de152fe741 fix(bluetooth): Revert to Legacy LLCP
* Reports of constant/frequent disconnects, with HCI err 0x28,
  "instant passed", seem linked to newer LLCP that became default
  in Zephyr 3.2, so revert to the Legacy LLCP for now until a
  proper fix for new LLCP can be found.
2023-04-24 22:41:03 -07:00
Joel Spadin
7a352908ee docs: Add pre-commit documentation 2023-04-24 16:07:04 -07:00
Joel Spadin
5b07c86d05 chore: Update Prettier
Added a workaround to select the latest version of Prettier with
pre-commit, since the pre-commit mirror repo started tracking alpha
releases and doesn't have anything beyond 2.7.1.
2023-04-24 16:07:04 -07:00
Joel Spadin
94061bb916 refactor: Replace tabs with spaces
Standardized indentation to use spaces with a new pre-commit hook.
2023-04-24 16:07:04 -07:00
Joel Spadin
32ae776c42 refactor: Add more checks to pre-commit
Updated existing pre-commit hooks and added some new hooks:

- Remove trailing whitespace
- Ensure every non-empty file ends with a new line
- Check YAML file validity
- Prevent adding large files
- Ensure any scripts with shebangs are executable

Added a GitHub action to run pre-commit on every commit. Removed any
existing actions which duplicate pre-commit.

Ran pre-commit on the codebase.
2023-04-24 16:07:04 -07:00
Albert Y
9c4f1e02d1
fix(docs): Update references to QMK settings
* Remove TAPPING_FORCE_HOLD reference
* Remove IGNORE_MOD_TAP_INTERRUPT reference
2023-04-24 04:24:36 -04:00
Peter Johanson
53dea223b7 feat(shields): Add splitkb.com Kyria Rev3. 2023-04-24 01:20:51 -07:00
Nick Coutsos
9d64c2a3a0 fix(docs): switch sensor rotate parameter order 2023-04-22 17:30:10 -07:00
Nick Conway
3db163aa2c feat(behaviors): Add reusable sensor behaviors.
* Add new sensor behaviors that either take full bindings
  add definition, or accept parameters when bound in the
  keymap.
* Remove existing hard-coded key press sensor behavior
  and instead leverage new generic sensor behaviors to
  achieve the same functionality.

Co-authored-by: nick@conway.dev
2023-04-21 21:13:31 -07:00
Peter Johanson
9a73650041 fix(boards): Move nice!60 to SPI3 for underglow
* Move to SPI3 for underglow peripheral, needed after the
  move to pinctrl.
2023-04-21 11:41:10 -05:00
Joel Spadin
5c6f21b0e0 fix: Fix compiler warnings in sensor code 2023-04-18 00:20:57 -07:00
Joel Spadin
e7a6e4016d feat(behaviors): Add key position to key events
Extended the virtual key position system from combos so that each sensor
also gets a virtual key position. This allows sensor behaviors to use
the behavior queue API.
2023-04-16 23:53:12 -07:00
sporkus
83a151890c
fix(docs): Correct example keymap filename 2023-04-16 13:28:08 -07:00
Josep Roca
71855af14f
fix(docs): ignore-modifiers clarification
* Clarify the potential need of adding the ignore-modifiers setting for new sticky key behaviors.
* Add ignore-modifiers setting to skq example
* Update docs/docs/behaviors/sticky-key.md

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-04-16 03:04:49 -04:00
Cem Aksoylar
f1b138cbf0 fix(boards): Fix Zen logo alignment 2023-04-14 14:39:54 -07:00
Purdea Andrei
309359b32f
fix(keymaps): fix keypresses that are not in the transform
Before this change, if a matrix position was not present in the transform,
various incorrect behaviors would happen:

1) In some cases out-of-bounds accesses:

Note that the size of the`transform[]` array does not necessarily match
the size of the matrix. So for example if key position
(ZMK_MATRIX_COLS-1, ZMK_MATRIX_ROWS-1) is not present in the transform,
but ends up being pressed, then the array will be accessed beyond its
size, and any data could be returned.

2) In other cases the 0th position in the keymap will be used because
the `transform[]` array is initialized to all zeros.
2023-04-10 03:27:19 -04:00