Compare commits

..

805 Commits

Author SHA1 Message Date
efdd4f4d50 Clean-up of #define _ADJUST 16 instances (#18182)
* enum layer_names: 40percentclub/nori default keymap

* enum layer_names: ergotravel default keymap

* enum layer_names: handwired/atreus50 default keymap

* enum layer_names: handwired/ortho5x13 default keymap

* enum layer_names: keebio/levinson default keymap

* enum layer_names: keebio/nyquist default keymap

* enum layer_names: keebio/rorschach default keymap

* enum layer_names: keebio/viterbi default keymap

* enum layer_names: keebio/wavelet default keymap

* enum layer_names: lets_split default keymap

* enum layer_names: maple_computing/launchpad reference keymaps

Update `default` and `default_rgb` keymaps.

* enum layer_names: maple_computing/minidox default keymap

* enum layer_names: miniaxe reference keymaps

Update `default` and `underglow` keymaps.

* enum layer_names: omkbd/ergodash/mini default keymap

* enum layer_names: omkbd/ergodash/rev1 default keymap

* enum layer_names: orthodox default keymap

* enum layer_names: unikeyboard/divergetm2 default keymap

* enum layer_names: woodkeys/scarletbandana default keymap

* add _Static_assert to keymap_introspection.c
2022-08-27 23:13:44 -07:00
0a3f7e4869 Merge remote-tracking branch 'upstream/develop' 2022-08-28 14:23:01 +10:00
9b5b072255 2022q3 Changelog. (#18180)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-28 14:20:52 +10:00
a2765bfe19 Add missing SS_LOPT and SS_ROPT defines (#18175) 2022-08-27 09:41:10 +10:00
24720400a8 Update LUFA submodule (#18168) 2022-08-26 12:19:34 +10:00
43fd647130 Add eeprom defaults for tinyuf2 bootloader (#18042) 2022-08-25 21:17:41 +10:00
1c47bd0ddf Merge remote-tracking branch 'origin/master' into develop 2022-08-24 21:20:43 +00:00
fc0bf67f37 Add missing DD mapping for RGB_MATRIX_DRIVER (#18160) 2022-08-24 22:20:05 +01:00
fdb0cc5981 Merge remote-tracking branch 'origin/master' into develop 2022-08-24 20:41:37 +00:00
4a67123310 Refactor pianoforte for configurator (#18159) 2022-08-24 13:39:49 -07:00
3aba764b43 Merge remote-tracking branch 'origin/master' into develop 2022-08-24 20:39:34 +00:00
e95aa2a352 Fix use of encoder map in mechlovin/zed65/retro66 (#18158) 2022-08-24 13:38:53 -07:00
fa25cacf6a Merge remote-tracking branch 'origin/master' into develop 2022-08-24 20:38:47 +00:00
b2db8becf9 Fix use of encoder map in mechlovin/foundation (#18157) 2022-08-24 13:38:07 -07:00
129c60946c Merge remote-tracking branch 'origin/master' into develop 2022-08-24 19:26:18 +00:00
3d8c624698 Update invalid pip install flag (#18146) 2022-08-24 20:25:16 +01:00
5f371104bc Merge remote-tracking branch 'origin/master' into develop 2022-08-24 18:11:55 +00:00
7fab889696 Fix use of encoder map in mechwild/clunker (#18156) 2022-08-24 19:10:52 +01:00
cf41c24db8 Move keyboard USB IDs and strings to data driven: develop (#18152)
* Move keyboard USB IDs and strings to data driven: develop

* Also do new onekeys
2022-08-24 15:28:38 +01:00
e06ea4a10f Merge remote-tracking branch 'origin/master' into develop 2022-08-23 17:56:51 +00:00
a53ef56946 [Keyboard] Add Plywrks Lune (#17057)
* Add Plywrks Lune

* Add OLED functionality

* Update keyboards/plywrks/lune/keymaps/default/keymap.c

* Update keyboards/plywrks/lune/keymaps/via/keymap.c

* Update keyboards/plywrks/lune/keymaps/via/keymap.c

* Update keyboards/plywrks/lune/lune.c

* Add the missing 2 layers in the keymap

Also added a missing parenthesis in lune.c, and removed
the oled_task_user in the default keymap.

* Update keyboards/plywrks/lune/info.json

* Update keyboards/plywrks/lune/info.json

* Update keyboards/plywrks/lune/info.json

* Update keyboards/plywrks/lune/config.h
2022-08-23 10:55:59 -07:00
dd0277beab Merge remote-tracking branch 'origin/master' into develop 2022-08-23 17:51:17 +00:00
7839396614 [Keyboard] Add Clunker (#18141)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-23 10:50:19 -07:00
f03f89ccb5 Merge remote-tracking branch 'origin/master' into develop 2022-08-23 13:43:09 +00:00
ee416048d9 Use correct board files for cantor (#18144) 2022-08-23 14:42:23 +01:00
3dd12b5425 Merge remote-tracking branch 'origin/master' into develop 2022-08-23 05:01:45 +00:00
f9584c8368 [Keyboard] Enable VIA - ALF X1.1 (#18140) 2022-08-22 22:00:58 -07:00
c1ce0f44f8 Merge remote-tracking branch 'origin/master' into develop 2022-08-23 02:13:07 +00:00
b395f40e07 [Keyboard] add rgb animation handwired/swiftrax/glacier (#18121)
Co-authored-by: swiftrax <swiftrax@github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-22 19:12:33 -07:00
7c0e5ce917 Nix shell updates for develop (#18131)
* shell.nix: Update `tomlkit` to 0.11.4 using a Nixpkgs overlay

The used Nixpkgs snapshot contains `tomlkit` version 0.7.0, which is
affected by https://www.github.com/sdispater/tomlkit/issues/148; that
bug is triggered by `pyproject.toml` from `jsonschema` >= 4.11.0,
preventing the build of that module.

Just adding `tomlkit = "*"` to the `[tool.poetry.dev-dependencies]`
section of `nix/pyproject.toml` does not fix the `jsonschema` build,
because `makeRemoveSpecialDependenciesHook` inside `poetry2nix` is not
affected by `nix/pyproject.toml`.  Add a Nixpkgs overlay which updates
the `tomlkit` Python module globally, so that `poetry2nix` would also
use the updated version internally.

* shell.nix: Bump `poetry2nix` to the most recent version

The new `poetry2nix` version includes overrides which are required for
recent versions of some Python packages (in particular, `jsonschema` and
`dotty-dict`).

* shell.nix: Bump QMK CLI to 1.1.1; update other Python deps

Update `pyproject.toml` to match `requirements*.txt`:

- add `pyserial = "*"`
- replace `qmk-dotty-dict = "*"` with `dotty-dict = "*"` (#18117, also
  required for compatibility with `qmk` 1.1.1, where this replacement
  had already been performed)

Add build dependencies of various Python modules to `pyproject.toml`:

- `hatchling`, `hatch-vcs`, `hatch-fancy-pypi-readme` (required by
  `jsonschema` >= 4.11.0)
- `pytest` (a newer version is required to solve the dependency conflict
  with the `hatchling` module due to the upper bound on `pluggy`)
- `flit-core` (a more recent version is required to build `tomli`)
- `poetry-core` (required for `dotty-dict` >= 1.3.1, and the version
  from Nixpkgs does not build on Darwin due to NixOS/nix#4758)

Update `poetry.lock` to use the most recent versions of Python modules.

The complete list of Python module updates as listed in `poetry.lock`
(note that other modules might be present in the Python environment,
e.g., if they come from Nixpkgs):

- `atomicwrites`: none -> 1.4.1 (but this module is not actually used,
  because the corresponding dependency of `pytest` is win32-only)
- `attrs`: 21.4.0 -> 22.1.0
- `colorama`: 0.4.4 -> 0.4.5
- `coverage`: 6.4 -> none
- `dotty-dict`: none -> 1.3.1 (used instead of `qmk-dotty-dict`)
- `editables`: none -> 0.3
- `flake8`: 4.0.1 -> 5.0.4
- `flake8-polyfill`: 1.0.2 -> none
- `flit-core`: none -> 3.7.1
- `hatch-fancy-pypi-readme`: none -> 22.3.0
- `hatch-vcs`: none -> 0.2.0
- `hatchling`: none -> 1.8.0
- `hjson`: 3.0.2 -> 3.1.0
- `importlib-resources`: 5.7.1 -> 5.9.0
- `iniconfig`: none -> 1.1.1
- `jsonschema`: 4.5.1 -> 4.14.0
- `mccabe`: 0.6.1 -> 0.7.0
- `nose2`: 0.11.0 -> 0.12.0
- `packaging`: none -> 21.3
- `pathspec`: none -> 0.9.0
- `pep8-naming`: 0.12.1 -> 0.13.2
- `pillow`: 9.1.1 -> 9.2.0
- `pkgutil-resolve-name`: none -> 1.3.10
- `pluggy`: none -> 1.0.0
- `poetry-core`: none -> 1.0.8
- `py`: none -> 1.11.0
- `pycodestyle`: 2.8.0 -> 2.9.1
- `pyflakes`: 2.4.0 -> 2.5.0
- `pygments`: 2.12.0 -> 2.13.0
- `pyparsing`: none -> 3.0.9
- `pyserial`: none -> 3.5
- `pytest`: none -> 7.1.2
- `qmk`: 1.1.0 -> 1.1.1
- `qmk-dotty-dict`: 1.3.0.post1 -> none (replaced by `dotty-dict`)
- `setuptools-scm`: none -> 7.0.5
- `tomli`: none -> 2.0.1
- `typing-extensions`: none -> 4.3.0
- `zipp`: 3.8.0 -> 3.8.1
2022-08-23 02:59:33 +01:00
d942c03be6 Merge remote-tracking branch 'origin/master' into develop 2022-08-22 23:06:18 +00:00
624d92e2f5 Update Tap Dance Example 4 (#18138)
break statements are missing from the switch for both registering and unregistering key codes. Neither have a default: case either. The code as exists in the repository right now does not compile. It does with this changes.
2022-08-23 00:05:35 +01:00
b1af9b4fe0 Merge remote-tracking branch 'origin/master' into develop 2022-08-22 09:04:48 +00:00
68ad251667 Remove USB IDs and strings from fungo/rev1 (#18133) 2022-08-22 19:04:01 +10:00
bbc3bc55f2 RESET -> QK_BOOT user keymaps (#17940) 2022-08-21 23:55:30 +01:00
e36ae90a65 Merge remote-tracking branch 'origin/master' into develop 2022-08-21 22:09:30 +00:00
b0eda7701a Move keyboard USB IDs and strings to data driven, pass 3 (#18111) 2022-08-21 23:08:50 +01:00
51e4e91285 Merge remote-tracking branch 'origin/master' into develop 2022-08-21 19:37:50 +00:00
3c0806a489 Add pcewing Speedo v3 keymap (#18118)
* Add pcewing Speedo v3 keymap

* Add readme and code quality improvements
2022-08-21 20:37:18 +01:00
1e84890a5b Merge remote-tracking branch 'origin/master' into develop 2022-08-21 19:04:26 +00:00
93f0c1f32f [Keymap] Add new keymap to nasu (#18024) 2022-08-21 12:03:48 -07:00
9b7965d3a9 Align CLI requirements (#18117) 2022-08-21 18:38:17 +01:00
efd893be39 Merge remote-tracking branch 'origin/master' into develop 2022-08-21 00:18:07 +00:00
7ea54a7837 [Keyboard] Add ai macropad (#17722)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Louis Dalibard <ontake@ontake.dev>
2022-08-20 17:17:02 -07:00
f99bac052e Merge remote-tracking branch 'origin/master' into develop 2022-08-20 20:28:43 +00:00
e2fbcc8099 added keymap for kprepublic/jj40:brdlf (#17961)
* added keymap for kprepublic/jj40:brdlf
2022-08-20 21:28:02 +01:00
e3cf678569 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 20:21:44 +00:00
JX
706995c044 [Keyboard] Add yandrstudio/nz67v2 keyboard. (#17591)
* add yr nz67v2 by jiaxin96
2022-08-20 21:21:07 +01:00
cb3c8f40d0 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 20:08:35 +00:00
d93b5ef247 Format code according to conventions (#18119) 2022-08-20 21:07:57 +01:00
aa7629f8e6 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 20:01:40 +00:00
5222cf7673 add fungo keyboard (#17513)
by bojiguard
2022-08-20 21:01:04 +01:00
3609c24df4 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 20:00:24 +00:00
ce19a9cdc5 Add Nascent keyboard support. (#17824)
* Add nascent keyboard by studiokestra
2022-08-20 20:59:47 +01:00
a580057422 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 18:46:12 +00:00
c2a46a6fa0 [Keyboard] Add Zed65 (#17917)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-20 11:45:38 -07:00
8f6b019dcc Merge remote-tracking branch 'origin/master' into develop 2022-08-20 10:22:48 -07:00
7ee55b1754 Fix PID value for the Keyboardio Atreus 2 bootloader (#18116)
Copy the correct PID from `util/udev/50-qmk.rules`.
2022-08-20 15:59:17 +01:00
d2accb48e7 RESET -> QK_BOOT keyboard readme (#18110) 2022-08-20 11:34:17 +01:00
5e2ffe7d8f CLI: Teaching the CLI to flash binaries (#16584)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-08-20 15:39:19 +10:00
3bf36e8b04 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 04:17:48 +00:00
e7107691ab [Keymap] Add joe_scotto keymap for CRKBD (#18103) 2022-08-19 21:17:09 -07:00
68079cba61 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 03:52:33 +00:00
f08e08cec2 [Keyboard] Fix compilation issues for keycapsss kimiko (#18112) 2022-08-20 13:51:57 +10:00
a69303bb78 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 02:59:05 +00:00
c9120ea8e9 [Keymap] Add Miryoku keymap for Hillside family (#18087) 2022-08-19 19:58:24 -07:00
880ea06760 Merge remote-tracking branch 'origin/master' into develop 2022-08-20 01:55:33 +00:00
85831fc188 [Keyboard] Add aliceh66 pianoforte (#18081)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-19 18:55:01 -07:00
61689ae609 Merge remote-tracking branch 'upstream/master' into develop 2022-08-20 10:55:40 +10:00
201f1a8f47 Move keyboard USB IDs and strings to data driven, pass 2: S-Y (#18093) 2022-08-20 01:48:38 +01:00
f4dcce7e59 Move keyboard USB IDs and strings to data driven, pass 2: M-O (#18090) 2022-08-20 01:45:28 +01:00
201a914beb Move keyboard USB IDs and strings to data driven, pass 2: P-R (#18091) 2022-08-20 01:42:49 +01:00
835c971f78 Move keyboard USB IDs and strings to data driven, pass 2: J-L (#18080) 2022-08-20 10:39:35 +10:00
eceed6c50b Merge remote-tracking branch 'origin/master' into develop 2022-08-20 00:32:18 +00:00
48792b030b Move keyboard USB IDs and strings to data driven, pass 2: handwired (#18079) 2022-08-20 10:31:48 +10:00
f1ac92ac63 Merge remote-tracking branch 'origin/master' into develop 2022-08-19 23:50:09 +00:00
39f0fb7bea [Keyboard] Update Work Louder keyboards (#18109) 2022-08-19 16:49:37 -07:00
4a8bed844d Merge remote-tracking branch 'origin/master' into develop 2022-08-19 22:15:34 +00:00
f1786cbd7b Fix duplicate keys in info.json files (#18107) 2022-08-19 23:14:38 +01:00
c0c875d675 Merge remote-tracking branch 'origin/master' into develop 2022-08-19 19:48:31 +00:00
8e8c0e2d57 Cyberstar Custom (#18076)
* Create Cyberstar Custom

Co-authored-by: yiancar <yiancar@gmail.com>
2022-08-19 20:47:45 +01:00
1eac095c0c Use the correct bootloader definition. (#18102) 2022-08-19 05:20:44 +01:00
5ee482b110 Merge remote-tracking branch 'origin/master' into develop 2022-08-19 01:19:23 +00:00
e6a1afb8f1 [Docs] Fix typo in data driven config docs (#18095) 2022-08-18 18:18:51 -07:00
2ed2c88a08 Merge remote-tracking branch 'origin/master' into develop 2022-08-19 01:17:50 +00:00
286dd6abe6 [Docs] Update list of "ARM-based ProMicro replacements" (#18083) 2022-08-18 18:17:20 -07:00
3c745caf61 Remove legacy bootmagic cli parsing (#18099) 2022-08-19 01:56:48 +01:00
9550cc464c Fix new-keyboard default for RP2040 bootloader (#18100) 2022-08-19 01:48:33 +01:00
0fcebdcdf1 Swap F4x1 default board files away from blackpill (#17522) 2022-08-19 00:52:50 +01:00
227e552f5c Add support keyboard Feker IK75 (#17611) 2022-08-18 01:23:34 +01:00
a645301c82 Add Bonsai C4 converter (#17711) 2022-08-18 01:01:54 +01:00
29f47f4cf3 Merge remote-tracking branch 'origin/master' into develop 2022-08-17 22:51:34 +00:00
9607b46756 Fixup mokey/ibis80 keymaps (#18088) 2022-08-17 23:51:04 +01:00
f9abecda3f Merge remote-tracking branch 'origin/master' into develop 2022-08-17 14:11:59 +00:00
45845ea07f Replace CG_SWAP in junonum (#18086)
Co-authored-by: Minh-tri Nguyen <mtngx@PigeonMac.local>
2022-08-17 15:11:00 +01:00
47e98e3a68 Merge remote-tracking branch 'origin/master' into develop 2022-08-17 07:28:11 +00:00
0df97fc968 [Keymap] Add personal keymap for kprepublic BM40HSRGB (#18021)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Fae <faenkhauser@gmail.com>
2022-08-17 00:27:31 -07:00
6b78d07e64 [Keyboard] add 'soda/cherish' (#18057)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-17 00:26:35 -07:00
39337373f5 Merge remote-tracking branch 'origin/master' into develop 2022-08-17 02:38:02 +00:00
e5f1d8859e [Keyboard] Add ibis80 (#18051)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-16 19:37:57 -07:00
2ade237e77 Merge remote-tracking branch 'origin/master' into develop 2022-08-17 02:37:40 +00:00
5a1a0e71de [Keymap] toshi0383 keymaps update (#18073) 2022-08-16 19:37:29 -07:00
cfab3e2d6e Merge remote-tracking branch 'origin/master' into develop 2022-08-17 02:37:10 +00:00
a1f0208797 [Docs] Use layer number as example for COMBO_ONLY_FROM_LAYER (#18072)
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-16 19:37:06 -07:00
8230b4c49d [Keymap] jotix's community/ortho4x12 change (#18069) 2022-08-16 19:36:30 -07:00
77150d00ac Merge remote-tracking branch 'origin/master' into develop 2022-08-16 18:42:23 +00:00
837a57b3c5 Adjust the hierarchy of chapter Deferred Execution (#18075) 2022-08-16 11:41:31 -07:00
7014e1efa3 Merge remote-tracking branch 'origin/master' into develop 2022-08-16 17:23:31 +00:00
c834608a74 Fix WS2812 order for aurora65 and loki65 (#18074) 2022-08-16 18:22:47 +01:00
c5dc4b4d1d Merge remote-tracking branch 'origin/master' into develop 2022-08-16 17:02:38 +00:00
2f4ad40561 [Docs] update pr_checklist.md with info about data-driven (#18068)
* update pr_checklist with info about data-driven

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2022-08-16 18:01:56 +01:00
9f0925fb18 Merge remote-tracking branch 'origin/master' into develop 2022-08-16 14:29:11 +00:00
164faf0a5c Use correct board file in xelus/valor_frl_tkl/rev2_0 (#18071) 2022-08-16 15:28:22 +01:00
904df296b0 Merge remote-tracking branch 'origin/master' into develop 2022-08-15 17:55:58 +00:00
e44b6242b7 Migrate more F4x1 board files (#18054) 2022-08-15 18:55:21 +01:00
5021cf58ad Fix DV_SCLN and DV_COLN in keymap_spanish_dvorak.h (#18043) 2022-08-15 18:41:05 +01:00
f74ed5fc53 Fix GD32VF103 WS2812 PWM driver (#18067)
...by adding the missing STM32 DMA defines.
2022-08-15 18:00:22 +01:00
8ce946b5c8 [Bug] Add key event check to is_tap_record and remove is_tap_key (#18063) 2022-08-15 16:40:51 +02:00
5e6175a553 Fixup gmmk/pro/rev2 USB Data (#18056) 2022-08-15 23:21:15 +10:00
1ccfed483d Merge remote-tracking branch 'origin/master' into develop 2022-08-15 09:15:56 +00:00
b297a347bb ADB to USB converter: split into rev1 and rev2 (#18052) 2022-08-15 10:15:22 +01:00
c202602938 Merge remote-tracking branch 'upstream/master' into develop 2022-08-15 17:54:07 +10:00
8e9ee29fe3 Remove duplicate COMBINING HORN in keymap_us_extended.h (#18045) 2022-08-14 22:25:37 -07:00
ed3b4bb606 Fix missing development_board schema entry (#18050) 2022-08-14 22:25:16 -07:00
51d5aad25b Move keyboard USB IDs and strings to data driven, pass 2: D-E (#17956) 2022-08-15 13:30:12 +10:00
1027aed83a Move keyboard USB IDs and strings to data driven, pass 2: F-I (#17958) 2022-08-15 02:53:19 +01:00
5334614e8a Merge remote-tracking branch 'origin/master' into develop 2022-08-14 23:55:05 +00:00
4c91e5bef8 Allow disabling RGB_MATRIX_ANIMATIONS system76 keyboards (#17478) 2022-08-14 19:54:25 -04:00
630de240b4 Merge remote-tracking branch 'origin/master' into develop 2022-08-14 23:26:34 +00:00
93fb69fbda Migrate more F4x1 board files (#18046) 2022-08-15 00:25:40 +01:00
463fb72d29 Partially revert some WB32 specific changes (#18038) 2022-08-14 20:48:44 +01:00
74b4bcb607 Merge remote-tracking branch 'origin/master' into develop 2022-08-14 19:43:25 +00:00
3d3e463598 Feat/port ft mars 65 (#17994)
* by wonderbeel
2022-08-14 20:42:58 +01:00
e6a522417a Merge remote-tracking branch 'origin/master' into develop 2022-08-14 19:26:44 +00:00
Cyn
5f74ae5b63 Improve Drop Alt compatibility with VIA (#18041)
by slycedix
2022-08-14 20:26:06 +01:00
95c43a2759 Fix Caps Word to treat mod-taps more consistently. (#17463)
* Fix Caps Word to treat mod-taps more consistently.

Previously, holding any mod-tap key while Caps Word is active stops Caps
Word, and this happens regardless of `caps_word_press_user()`. Yet for
regular mod keys, AltGr (KC_RALT) is ignored, Shift keys are passed to
`caps_word_press_user()` to determine whether to continue, and
similarly, a key `RSFT(KC_RALT)` representing Right Shift + Alt is
passed to `caps_word_press_user()` to determine whether to continue.

This commit makes held mod-tap keys consistent with regular mod keys:

* Holding a `RALT_T` mod-tap is ignored.
* When holding a shift mod-tap key, `KC_LSFT` or `KC_RSFT` is passed to
  `caps_word_press_user()` to determine whether to continue.
* When holding a Right Shift + Alt (`RSA_T`) mod-tap, `RSFT(KC_RALT)` is
  passed to `caps_word_press_user()`.

Particularly, with this fix a user may choose to continue Caps Word when
a shift mod-tap key is held by adding `KC_LSFT` and `KC_RSFT` cases in
`caps_word_press_user()`. For instance as

```
bool caps_word_press_user(uint16_t keycode) {
  switch (keycode) {
    // Keycodes that continue Caps Word, with shift applied.
    case KC_A ... KC_Z:
    case KC_MINS:
      add_weak_mods(MOD_BIT(KC_LSFT));  // Apply shift to the next key.
      return true;

    // Keycodes that continue Caps Word, without shifting.
    case KC_1 ... KC_0:
    case KC_BSPC:
    case KC_DEL:
    case KC_UNDS:
    case KC_LSFT:  // <<< Added here.
    case KC_RSFT:
      return true;

    default:
      return false;  // Deactivate Caps Word.
  }
}
```

* Fix Caps Word to treat mod-taps more consistently.

Previously, holding any mod-tap key while Caps Word is active stops Caps
Word, and this happens regardless of `caps_word_press_user()`. Yet for
regular mod keys, AltGr (KC_RALT) is ignored, Shift keys are passed to
`caps_word_press_user()` to determine whether to continue, and
similarly, a key `RSFT(KC_RALT)` representing Right Shift + Alt is
passed to `caps_word_press_user()` to determine whether to continue.

This commit makes held mod-tap keys consistent with regular mod keys:

* Holding a `RALT_T` mod-tap is ignored.
* When holding a shift mod-tap key, `KC_LSFT` or `KC_RSFT` is passed to
  `caps_word_press_user()` to determine whether to continue.
* When holding a Right Shift + Alt (`RSA_T`) mod-tap, `RSFT(KC_RALT)` is
  passed to `caps_word_press_user()`.

Particularly, with this fix a user may choose to continue Caps Word when
a shift mod-tap key is held by adding `KC_LSFT` and `KC_RSFT` cases in
`caps_word_press_user()`. For instance as

```
bool caps_word_press_user(uint16_t keycode) {
  switch (keycode) {
    // Keycodes that continue Caps Word, with shift applied.
    case KC_A ... KC_Z:
    case KC_MINS:
      add_weak_mods(MOD_BIT(KC_LSFT));  // Apply shift to the next key.
      return true;

    // Keycodes that continue Caps Word, without shifting.
    case KC_1 ... KC_0:
    case KC_BSPC:
    case KC_DEL:
    case KC_UNDS:
    case KC_LSFT:  // <<< Added here.
    case KC_RSFT:
      return true;

    default:
      return false;  // Deactivate Caps Word.
  }
}
```

* Update quantum/process_keycode/process_caps_word.c

Co-authored-by: Joel Challis <git@zvecr.com>
2022-08-14 20:25:32 +01:00
6fc7c03e95 Added emacs as an "operating system" for input mode. (#16949) 2022-08-14 20:24:52 +01:00
4da3482872 Fix Emulated EEPROM issue with F466 (#18039) 2022-08-14 17:18:59 +01:00
0a6327d20c Replace ; by : in the shifted symbols ASCII art of keymap_norman (#18029)
Thanks!
2022-08-14 12:18:42 -04:00
9f31fcace3 [Keyboard] Fix compilation issues for Boardsource Microdox (#18037) 2022-08-14 17:03:40 +01:00
fce99f3875 [Controller] Added board config for custom controller STeMCell (#16287)
Co-authored-by: Mariappan Ramasamy <947300+Mariappan@users.noreply.github.com>
Co-authored-by: Mariappan Ramasamy <maari@basis-ai.com>
Co-authored-by: Sadek Baroudi <sadekbaroudi@gmail.com>
2022-08-14 21:27:26 +10:00
ba04ecfabd Align TO() max layers with other keycodes (#17989) 2022-08-14 21:25:46 +10:00
ac31e42974 Merge remote-tracking branch 'origin/master' into develop 2022-08-14 01:54:23 -07:00
4195eb8fe1 [Keyboard] Add Valor FRL TKL rev2.0 and 2.1 (#17992)
* add valor frl tkl rev2 by xelus22
2022-08-14 08:17:11 +01:00
e948fa6f6e Added support for gmmk pro rev2 keyboard. (#17655)
Co-authored-by: Joy <chang.li@westberrytech.com>
2022-08-14 14:00:12 +10:00
3a7dbc8981 Move keyboard USB IDs and strings to data driven, pass 2: B-C (#17945) 2022-08-14 12:16:16 +10:00
dfc92d8f7b Fix buffer size for WS2812 PWM driver (#17046)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: yiancar <yiancar@gmail.com>
2022-08-13 18:36:34 -07:00
c02d7ae86f Added ws2812_pwm support for WB32 MCU. (#17142)
Co-authored-by: Joy <chang.li@westberrytech.com>
2022-08-13 18:21:46 -07:00
6b1c7d20aa Added ws2812_spi support for WB32 MCU (#17143)
Co-authored-by: Joy <chang.li@westberrytech.com>
2022-08-13 18:09:57 -07:00
5c805e4cc5 Merge remote-tracking branch 'origin/master' into develop 2022-08-14 01:09:31 +00:00
28b05d15ff [Keyboard] add bajjak keyboard (#12377)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: peepeetee <43021794+peepeetee@users.noreply.github.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2022-08-13 18:08:46 -07:00
4eda139b83 Add Gentleman 65 SE Solderd PCB support (#16992) 2022-08-14 01:55:03 +01:00
2d40713567 Merge remote-tracking branch 'origin/master' into develop 2022-08-14 00:52:21 +00:00
86261bfd8e Add texts for Discord Events to be created post-merge. (#17944) 2022-08-13 17:51:45 -07:00
2c3b447641 Use ANSI ASCII art and fix comments for LT_COLN and LT_UNDS in keymap_lithuanian_qwerty.h (#18028) 2022-08-13 17:50:32 -07:00
50ff52639f Merge remote-tracking branch 'origin/master' into develop 2022-08-14 00:47:42 +00:00
3079691391 Move keyboard USB IDs and strings to data driven, pass 2: 0-9, A (#17941) 2022-08-13 17:47:05 -07:00
b44c3f92ae Merge remote-tracking branch 'origin/master' into develop 2022-08-14 00:47:05 +00:00
0f1bb982e9 [Keyboard] Added different wiring of dactyl (#17997) 2022-08-13 17:46:35 -07:00
4faf0ccaec Merge remote-tracking branch 'origin/master' into develop 2022-08-14 00:36:47 +00:00
ca2d05f5c6 [Keyboard] jacky_studio/piggy60 (#18012) 2022-08-13 17:36:11 -07:00
2363a3bc42 Merge remote-tracking branch 'origin/master' into develop 2022-08-14 00:33:31 +00:00
0d3e07a3db [Docs] Suggest imgur images are edited to set size (#18031) 2022-08-13 17:32:30 -07:00
a83afb3fcd Improve avr wait_us() (#16879) 2022-08-14 00:04:03 +01:00
2f87abd4ef Revert "[Core] Re-order user space rules inclusion (#17459)" (#18032) 2022-08-14 07:13:15 +10:00
b1c7df9a68 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 20:26:43 +00:00
cbcb4f2ec0 [Keyboard] Added Atreyu keyboard. (#17698)
* Add Atreyu keyboard.

Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-13 21:26:05 +01:00
8fd7825007 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 20:16:08 +00:00
1eecdb502d [Keyboard] Add Foundation to QMK (#17573)
* add mechlovin foundation keyboard

Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-13 21:15:35 +01:00
7dca40f5af Merge remote-tracking branch 'origin/master' into develop 2022-08-13 20:13:03 +00:00
40676d058e [Keymap] adding new user (p4yne) layout with complex lighting feature… (#16085)
* [Keymap] adding new user (p4yne) layout with complex lighting features (per layer, per key, per type) and usefull layers DE/US, etc.

Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-13 21:12:31 +01:00
bcd021263e Merge remote-tracking branch 'origin/master' into develop 2022-08-13 19:48:14 +00:00
a49bdd2659 add BAMFK-4 (#17985)
* add BAMFK-4
2022-08-13 20:47:39 +01:00
97b610e166 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 19:45:00 +00:00
e145c7ad3f Bandominedoni version output feature and a new keymap added (#17947)
* SPLIT_USB_DETECT added.

* lednotg keymap added.

* lednotg missing modification fixed.

* VERSION is available.

* USER00 is used instead of SAFE_RANGE in via/keymap.c
2022-08-13 20:44:29 +01:00
f417ffff5a Merge remote-tracking branch 'origin/master' into develop 2022-08-13 19:39:19 +00:00
95782691d4 Dactyl Manuform 4x5 with 5 thumb cluster (#17671)
* Working on new dactyl

* Preliminary build and keymap in place for 4x5_5 dactyl manuform

* Removing first attempt to use 4x5

* Updating to match c style guide

* Fixing issues after merge, deletion of dactyl_manuform.h

* Spliting out custom keymap

* Adding license headers

* Fixing EE_HANDS detection on Pro-Micro

The pro-micro was not working when I plugged into the elite-c on the
right hand side of my keyboard. Adding the SPLIT_USB_DIRECT definition
fixed the issue.

* Apply suggestions from code review

Adding Drashna's delete comments

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Removed config.h for keymaps and tweaked keymap

Per Drashna's pr review, I have removed the config.h files for the
keymaps.
Also tweaked my keymap to switch backspace and enter. Added tapping
toggle for RAISE.

* Further tweaking ssedrick keymap for dactyl_manuform 4x5_5

As with most new keyboards, they take some getting used to.
I've rearranged my thumb cluster to hopfully a more long
term solution.

* Adding missing KC_BSLS to ssedrick keymap for 4x5_5

Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-13 20:38:31 +01:00
e95ba0d651 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 19:10:39 +00:00
aee738c61b [Keyboard] Add Hillside 46 (#17968)
* 46: Copy from 52 and file rename

* 46: File internals refer to 46, not 52

* 46: Board remove row

* 46: Keymap: Lshift becomes ctrl, Rshift a symbol

- ESC and CAPs on upper thumbs
- AltGr and App on upper thumbs
- Page up/down on upper thumbs
- F11, F12 and mods for them on adjust

* 46: Readme update for json script, tweaks

* 46: Board fix LED count

* 46: Keymap: Arrows right, symmetric layer keys

* 46: Readme: Image link with and w/o outer pinkie

* 46: Keymap: link fixed image of nav layer

* 46: Keymap: fix reaching adj layer

Co-authored-by: mmccoyd <mmccoyd@cs.berkley.edu>
2022-08-13 20:10:01 +01:00
826ab5412f Merge remote-tracking branch 'origin/master' into develop 2022-08-13 18:02:19 +00:00
b1fe7621eb RFC: add a simple implementation of the ploopy optical encoder (#17912) 2022-08-13 11:01:44 -07:00
96731ba88e Fix LV_CCAR and LV_NCED (#18025) 2022-08-13 10:24:15 -07:00
a03849c92c Merge remote-tracking branch 'origin/master' into develop 2022-08-13 16:24:37 +00:00
4c6ce12d2a Updated gourdo1 GMMK Pro keymaps (#17873)
* Fixed Left Shift tapdance in general and for gaming mode. (#12)

* update ISO readme
* left shift fixed in general, including for gaming mode

* fixed toggle menu rendering on ISO layouts

* updated readme's and cosmetics

* update readme's

* update readme's again

* readme cosmetics

* consolidate readme's

* more readme cosmetics

* clarification for bootloader mode on ISO

* Autocorrect added with 400 word English dictionary (#13)

* autocorrect added with 400 word dictionary

* update readme's for autocorrect

* Add FN-B as shortcut to bootloader

* Update .gitignore

Co-authored-by: Joel Challis <git@zvecr.com>

* RGB changes to system numlock and ISO extended alphas

- hide system numlock off indicator (primarily for Mac users) by moving it to numpad and FN layers instead
- give users with extended alpha ISO languages a config option to add RGB highlights for extras alphas on capslock

* readme updates

* Fixed [FN]B and [FN]N shortcuts not working on numpad layer

Co-authored-by: Joel Challis <git@zvecr.com>
2022-08-13 17:24:07 +01:00
149db3c6a8 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 16:19:58 +00:00
0c0d01966f [Keyboard] Add Hillside 52 (#17374)
* 52 Keymap.json: Set for Hillside 52

- Change script rows

* 52 Keymap.c: mirror .json

CAPSWORD, QK_BOOT, readme cleanup, EE_RST

* 52 Keymap.json: Initial files copy from 56

* 52 Keymap.json nav/edit lay, thumb shift, syms

- Del in backspace spot on sym layer
- Thumb shift OSM instead of extra space
- Nav/edit on num/fn: arrows cut copy paste undo redo, page up/down
- Fn keys bottom row to allow nav edit keys
- App and AltGr on lower row, on their layer
- Braces on index, so more common -= on middle ring.
- Adjust has Ctrl/GUI swap
- EE_RST, CAPSWORD, QK_BOOT, SPLIT_DETECT

* 52 Family: readme image and folder link

* 52 Board: initial copy from 56

* 52 Keymap via

* 52 Board: remove keys, cant columns, better ids

- .json: vid: MM, pid: H52

* 52 Keymap.c: initial.c copy from 48

* QK_BOOT EE_CLR, not ANY(), as config.qmk supports

- CAPSWRD instead of ANY, though config.qmk still converts to ANY()

* Cleanup readme

* 52 Keymap: Remove redundant key, cleanup script

* 52 Keymap: Fix template

* 52 Readme: Link lower res image better for readme

Co-authored-by: Drashna Jaelre <drashna@live.com>

* 52 Keymap: Move pretty-print script to GitHub wiki

* 52 Keymap: Link to 1024 res image thumbnails

* 52 Keymap: fix whitespace before image link

* Family: Fix image link to 1024 thumb

Co-authored-by: Drashna Jaelre <drashna@live.com>

* 52: Keymap: Caps word on a layer home row

* 52: Keymap: Arrows on right. Symmetric layer keys.

- Nav:
  - Arrows on right so up/down more intuitive. Page up/down on ends
  - Cut on home row, as more common

- Sym:
  - Layer mods on activate hand, extras symbols on left
  - Common digits on lower row

- Base:
  - Layer keys symmetric, on most extended, not resting, thumb
  - Mute on util key for easy use

- Swap layers 3 and 4 to match swapped thumbs

Co-authored-by: mmccoyd <mmccoyd@cs.berkley.edu>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-13 17:19:21 +01:00
39d2f61d51 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 16:14:39 +00:00
648f3eb71f Add support for XT60_SINGA (#17752)
* Added support for Christine, XT65E and Adelais

* Add support for MNK88

* Add support for XT8x

* Renamed XT65E to Typ65

* Revert "Renamed XT65E to Typ65"

This reverts commit b4fbc853d23003b9b4b5b67d49e098ea17d85a98.

* Revert "Revert "Renamed XT65E to Typ65""

This reverts commit 09baee94eba56dab0a0a96b99ce3758b0c5aa8a9.

* File reorganization

* Add support for MNK88

* Update readme.md

* Update keyboards/kopibeng/mnk88/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/kopibeng/mnk88/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Fix imgur link

* Update keyboards/kopibeng/mnk88/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/kopibeng/mnk88/info.json

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update info.json

Previous suggested change was breaking lint check, reverting back to the original.

* Update keyboards/kopibeng/mnk88/info.json

Co-authored-by: Ryan <fauxpark@gmail.com>

* Fix info.json

* Added XT60_SINGA

* Update config.h

* Update readme.md

Co-authored-by: Drashna Jaelre <drashna@live.com>

Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-13 17:13:49 +01:00
52dc16b758 [Keyboard] IDOBAO ID80v1 folder rename (#17265)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-14 00:00:42 +10:00
69fa2d8378 [Core] Re-order user space rules inclusion (#17459) 2022-08-13 23:57:07 +10:00
6a0d90f81a Fix Caps Word capitalization when used with Combos + Auto Shift. (#17549) 2022-08-13 23:48:51 +10:00
4eeafbebab Add Bit-C PRO converter (#17827) 2022-08-13 14:48:30 +01:00
fc7e9efd21 Improve importer workflow (#17707) 2022-08-13 14:39:56 +01:00
a02aff9c77 Add led matrix support for CKLED2001 (#17643) 2022-08-13 14:39:06 +01:00
ee664e0960 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 13:24:07 +00:00
dccb8ff7d6 Remove old submodules if present (#17930) 2022-08-13 23:23:32 +10:00
853d47b4cc Merge remote-tracking branch 'origin/master' into develop 2022-08-13 04:49:33 +00:00
b881778f53 [Keyboard] Remove unused keycodes from Aurora65 keymap (#18022) 2022-08-12 21:48:33 -07:00
3d24845016 [Bug] Fix wrong varaible in encoder block (#18020) 2022-08-12 19:55:59 -07:00
31e78aafbd Merge remote-tracking branch 'origin/master' into develop 2022-08-13 02:47:02 +00:00
aee48b8aab [Keyboard] add ogrn (#17983)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-12 19:46:16 -07:00
60176a3a28 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 02:38:32 +00:00
fb150e08f1 [Keyboard] Increase kinesis/kint41 unselect delay (#18015)
* [Keyboard] Increase kinesis/kint41 unselect delay

Fixes #18014

* Update kint41.c

Use correct si-abbreviation for micro in comment.
2022-08-13 03:38:01 +01:00
7a95926f46 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 02:30:55 +00:00
5ed7e1acf1 [Keyboard] Add akb-ogr (#17982)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-12 19:30:10 -07:00
4ff39b5652 KR_DQUO S(KR_COLN) → KR_DQUO S(KR_QUOT) (#18011) 2022-08-12 19:20:58 -07:00
e3415d6b97 define CZ_PERC S(CZ_PLUS) → define CZ_PERC S(CZ_EQL) (#18008) 2022-08-12 19:20:35 -07:00
20f0f40220 Remove invisible variation selector-15 from keymap_japanese.h (#18007) 2022-08-12 19:16:50 -07:00
b4fbb340c5 Use LT_ZCAR in place of LT_PLUS for modded kc definitions (#18000) 2022-08-12 19:13:43 -07:00
db4c4b1f78 Fix Bépo's BP_NNBS (narrow non-breaking space) (#17999)
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-12 19:13:22 -07:00
e0b4fa512e Merge remote-tracking branch 'origin/master' into develop 2022-08-13 02:04:58 +00:00
536e39a5d9 Fix viendi8l compilation (#18017) 2022-08-12 19:04:18 -07:00
19ce1418ba Added implementation of WB32 MCU wear_leveling_efl. (#17579) 2022-08-13 02:14:33 +01:00
aed82bc6a0 Move Encoder+Encoder Map from generic features (#18018) 2022-08-12 18:04:02 -07:00
06c7614a71 Merge remote-tracking branch 'origin/master' into develop 2022-08-13 00:45:05 +00:00
ea2ec5835b [Keyboard] Fix compilation issues for Mechlovin Adelais (#18019) 2022-08-13 01:44:33 +01:00
06391314cd Merge remote-tracking branch 'origin/master' into develop 2022-08-13 00:27:58 +00:00
a1fe9fe3b3 [Keymap] update fave104 keymap (#18004) 2022-08-12 17:27:53 -07:00
70c6b183df [Docs] Refactor code examples (#18003) 2022-08-12 17:27:24 -07:00
ccdba43e59 Create generic Pointing Device Pin defines (#17776) 2022-08-12 16:22:34 -07:00
83f6aedd93 Merge remote-tracking branch 'origin/master' into develop 2022-08-12 23:03:46 +00:00
1a4a278251 Put non-US ISO keys in their expected spots in sagittarius' default keymaps (#18005) 2022-08-13 09:03:14 +10:00
8133f40c26 Update to latest ChibiOS-Contrib. (#18016) 2022-08-13 08:54:32 +10:00
c565b415f7 Merge remote-tracking branch 'origin/master' into develop 2022-08-12 18:51:40 +00:00
90e2a5100b Format code according to conventions (#18009) 2022-08-12 11:50:58 -07:00
92d78a0198 Merge remote-tracking branch 'origin/master' into develop 2022-08-12 18:29:58 +00:00
cded26b199 [Keyboard] Add arc60 (#17976)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-12 11:28:53 -07:00
15422b3b26 Merge remote-tracking branch 'origin/master' into develop 2022-08-12 02:04:13 +00:00
cde9dd8b90 Refactor Pixel Fractal effect (#17602)
* Refactor effect with smaller array

* Add RGB_MATRIX_USE_LIMITS call

* Remove spaces

Co-authored-by: Drashna Jaelre <drashna@live.com>

Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-11 22:41:42 +01:00
9e44362179 Add minimal STM32F103C6 support (#17853)
Unfortunately, the crippled versions of “Bluepill” boards with
STM32F103C6xx chips instead of STM32F103C8xx are now sold all over the
place, sometimes advertised in a confusing way to make the difference
not noticeable until too late.  Add minimal support for these MCUs in
the common “Bluepill with stm32duino” configuration, so that it could be
possible to make something useful from those boards (although fitting
QMK into the available 24 KiB of flash may be rather hard).

(In fact, I'm not sure whether the “STM32” part of the chip name is
actually correct for those boards of uncertain origin, so the onekey
board name is `bluepill_f103c6`; another reason for that name is to
match the existing `blackpill_f401` and `blackpill_f411`.)

The EEPROM emulation support is not included on purpose, because
enabling it without having a working firmware size check would be
irresponsible with such flash size (the chance that someone would build
a firmware where the EEPROM backing store ends up overlapping some
firmware code is really high).  Other than that, enabling the EEPROM
emulation code is mostly trivial (the `wear_leveling` driver with the
`embedded_flash` backing store even works without any custom
configuration, although its code is significantly larger than the
`vendor` driver, which may also be important for such flash size).
2022-08-11 22:37:41 +01:00
8c4269f98e Merge remote-tracking branch 'origin/master' into develop 2022-08-11 21:04:46 +00:00
272f224dc6 Add cursor layer to DMQ Spin (#17996) 2022-08-11 13:28:48 -04:00
ba370a54cd Merge remote-tracking branch 'origin/master' into develop 2022-08-11 16:09:38 +00:00
9981aaaae8 Merge remote-tracking branch 'origin/master' into develop 2022-08-11 05:06:33 +00:00
9d10a19fa8 Merge remote-tracking branch 'origin/master' into develop 2022-08-11 05:00:10 +00:00
f3acbf60fc Merge remote-tracking branch 'origin/master' into develop 2022-08-11 04:43:11 +00:00
91be4740f2 Merge remote-tracking branch 'origin/master' into develop 2022-08-11 02:21:46 +00:00
1882cdbf7b Merge remote-tracking branch 'origin/master' into develop 2022-08-11 01:48:48 +00:00
e4b55a423a Merge remote-tracking branch 'origin/master' into develop 2022-08-11 01:45:33 +00:00
ff59ae9783 Merge remote-tracking branch 'origin/master' into develop 2022-08-11 01:44:31 +00:00
b7b842da55 Merge remote-tracking branch 'origin/master' into develop 2022-08-11 01:39:09 +00:00
90a290ea62 Merge remote-tracking branch 'origin/master' into develop 2022-08-11 01:34:34 +00:00
63915e84dc Merge remote-tracking branch 'origin/master' into develop 2022-08-10 20:08:21 +00:00
663b250e2f Merge remote-tracking branch 'origin/master' into develop 2022-08-10 03:01:41 +00:00
9bbc0cbb3b Merge remote-tracking branch 'origin/master' into develop 2022-08-10 00:24:17 +00:00
994a2542af Merge remote-tracking branch 'origin/master' into develop 2022-08-09 18:21:11 +00:00
525049990c Merge remote-tracking branch 'origin/master' into develop 2022-08-09 18:20:08 +00:00
25913ef518 Merge remote-tracking branch 'origin/master' into develop 2022-08-09 17:41:07 +00:00
6e1c2b20e5 Merge remote-tracking branch 'origin/master' into develop 2022-08-09 06:41:55 +00:00
1d33baac8f Merge remote-tracking branch 'origin/master' into develop 2022-08-08 18:06:29 +00:00
a14cd0fba5 Merge remote-tracking branch 'origin/master' into develop 2022-08-08 16:31:00 +00:00
22cb4e520a Merge remote-tracking branch 'origin/master' into develop 2022-08-08 09:46:27 +00:00
764c542bef Remove tmk_core 'serial' code (#17866) 2022-08-08 03:13:16 +01:00
972f9a612c Merge remote-tracking branch 'origin/master' into develop 2022-08-07 21:11:17 +00:00
b214768e09 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 21:07:55 +00:00
6a1a398627 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 19:40:49 +00:00
67461a0a47 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 19:33:39 +00:00
6e7678c415 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 13:01:43 +00:00
9087e6ee28 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 12:57:41 +00:00
e8ff0d6ced Merge remote-tracking branch 'origin/master' into develop 2022-08-07 09:34:18 +00:00
4f3bf762f1 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 09:30:52 +00:00
5599f26667 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 09:29:42 +00:00
50e6dd41e6 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 09:21:28 +00:00
ac25109312 Always run pointing device init (#17936) 2022-08-07 02:18:03 -07:00
93914142a3 Merge remote-tracking branch 'origin/master' into develop 2022-08-07 01:24:34 +00:00
c5844931e2 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 21:42:44 +00:00
5408334083 Update ginkgo65hot to allow use of community layouts (#17911) 2022-08-06 13:29:06 -07:00
e938c663e5 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 17:19:59 +00:00
985b91b30f Merge remote-tracking branch 'origin/master' into develop 2022-08-06 16:21:41 +00:00
154d35ac14 Remove UNUSED_PINS (#17931) 2022-08-06 23:23:35 +10:00
820371c31b Merge remote-tracking branch 'origin/master' into develop 2022-08-06 12:38:13 +00:00
f27b617f36 [Core] Process all changed keys in one scan loop, deprecate QMK_KEYS_PER_SCAN (#15292) 2022-08-06 20:51:13 +10:00
e9f9f99a33 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 08:59:44 +00:00
dd0ac80ee4 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 08:52:48 +00:00
ed9bdcbc36 [Core] guard RPC invocation by checking RPC info against crc checksum (#17840) 2022-08-06 18:46:59 +10:00
cac7042414 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 08:46:12 +00:00
1d45c99355 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 06:37:08 +00:00
3c9941a629 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 06:31:44 +00:00
5efa2ff23e Merge remote-tracking branch 'origin/master' into develop 2022-08-06 06:30:45 +00:00
897403c4a7 Publish data as part of API generation (#17020) 2022-08-06 16:14:29 +10:00
ec5186f0f9 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 05:50:30 +00:00
7bbc1b21dd Add kb2040 onkey keyboard that works with the oled keymap (#17786) 2022-08-05 19:38:10 -07:00
ad4ef47d2b [Keyboard] use correct function in Dilemma splinky (#17923) 2022-08-06 02:58:06 +01:00
758a0a0902 Merge remote-tracking branch 'origin/master' into develop 2022-08-06 01:54:55 +00:00
217bd431e9 Merge remote-tracking branch 'origin/master' into develop 2022-08-04 23:41:59 +00:00
eb417b3aaf Add deprecated check for RGBLIGHT_ANIMATIONS (#17832) 2022-08-04 11:05:53 -07:00
7093846319 Merge remote-tracking branch 'origin/master' into develop 2022-08-04 13:07:34 +00:00
d9eb152a90 Fix issue with #17904. (#17905) 2022-08-04 22:15:42 +10:00
94e8701b3e Fixup compilation of printf-like functions with uint32_t args. (#17904) 2022-08-04 21:44:56 +10:00
543f54a483 [Core] STM32_USB_USE_OTG1 => USB_ENDPOINTS_ARE_REORDERABLE (#17647) 2022-08-04 21:05:16 +10:00
88cfd55b8c Merge remote-tracking branch 'origin/master' into develop 2022-08-04 01:36:14 +00:00
4e50de3a4b Merge remote-tracking branch 'origin/master' into develop 2022-08-04 00:22:37 +00:00
42a36a2095 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 22:55:51 +00:00
d8a15ce5bb Merge remote-tracking branch 'origin/master' into develop 2022-08-03 22:54:33 +00:00
adf8218399 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 22:53:16 +00:00
0a198b59a3 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 22:13:21 +00:00
237039cdcd Merge remote-tracking branch 'origin/master' into develop 2022-08-03 22:06:14 +00:00
c6a6f987c9 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 20:08:10 +00:00
f326b0b40e Merge remote-tracking branch 'origin/master' into develop 2022-08-03 17:23:55 +00:00
e93124f05c Merge remote-tracking branch 'origin/master' into develop 2022-08-03 14:59:13 +00:00
4c81d4e526 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 13:20:50 +00:00
671e211930 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 10:33:16 +00:00
2dfccd29c8 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 08:33:04 +00:00
61a3fe4fac Merge remote-tracking branch 'origin/master' into develop 2022-08-03 07:23:52 +00:00
d4f9eb5225 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 07:16:28 +00:00
bce4fb4574 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 07:04:43 +00:00
d52d7bc658 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 06:48:37 +00:00
40499bed06 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 06:11:19 +00:00
b31c914f0f Merge remote-tracking branch 'origin/master' into develop 2022-08-03 00:07:38 +00:00
90259eb012 Merge remote-tracking branch 'origin/master' into develop 2022-08-02 18:39:44 +00:00
7883306466 Merge remote-tracking branch 'origin/master' into develop 2022-08-02 18:31:04 +00:00
1f8e9c1854 Merge remote-tracking branch 'origin/master' into develop 2022-08-02 06:54:51 +00:00
479c7876e6 Merge remote-tracking branch 'origin/master' into develop 2022-08-02 00:11:25 +00:00
e6dc14ae41 Merge remote-tracking branch 'origin/master' into develop 2022-08-02 00:03:00 +00:00
e3ee87ee31 Merge remote-tracking branch 'origin/master' into develop 2022-08-01 16:10:17 +00:00
b1eac5c671 [Keyboard] Overhaul uzu42 (#17868) 2022-08-01 14:04:26 +01:00
0e3b1740ef Merge remote-tracking branch 'origin/master' into develop 2022-08-01 13:01:06 +00:00
e32a956028 Format code according to conventions (#17869) 2022-07-31 21:35:53 -07:00
2bdd73f801 Add ST7735 driver to Quantum Painter (#17848) 2022-07-31 19:58:25 -07:00
09ea5f6337 [Keyboard] Fix uzu42 compilation issue (#17867) 2022-07-31 19:05:15 -07:00
735fb38a0e Merge remote-tracking branch 'origin/master' into develop 2022-07-31 22:34:03 +00:00
98d5c77521 Remove legacy AVR ssd1306 driver (#17864) 2022-07-31 22:15:01 +01:00
f7aaed1b57 Migrate crkbd keymaps to oled driver (#17863) 2022-07-31 12:36:30 -07:00
c10c2575b8 Remove OLED driver Split Common warning (#17862) 2022-07-31 12:33:12 -07:00
2f19579d3f Convert yosino58 to use split common (#17861) 2022-07-31 12:32:45 -07:00
b03a7cef75 Fix POINTING_DEVICE_GESTURES_SCROLL_ENABLE typo (#17850)
* Fix typo for POINTING_DEVICE_GESTURES_SCROLL_ENABLE

Follow the name written in documentation which follows
POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE

* Reword the blurb about POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE in docs
2022-07-31 15:51:20 +01:00
409790457c Refactor satt/comet46 to use core OLED driver (#17856) 2022-07-31 15:35:42 +01:00
baf34989f1 Default rgblight (#17855)
* better rgb bindings; improve default

* trim firmware size
2022-07-30 18:31:31 -04:00
f02e355380 More glyph transformations for spidey3 userspace (#17854)
* add bold and blackboard bold glyph transformations

* trim firmware size; cformat

* fix typo in macro

* trim firmware size a bit more
2022-07-30 18:21:54 -04:00
3d53c64992 Merge remote-tracking branch 'origin/master' into develop 2022-07-30 20:00:58 +00:00
06fe4b16d2 Merge remote-tracking branch 'origin/master' into develop 2022-07-30 07:32:18 +00:00
ef94f93fe2 Merge remote-tracking branch 'origin/master' into develop 2022-07-30 07:24:42 +00:00
0b726a437b Implement relative mode for Cirque trackpad (#17760) 2022-07-29 21:20:34 -07:00
b085d5221b Merge remote-tracking branch 'origin/master' into develop 2022-07-30 04:07:26 +00:00
7e172fd944 Merge remote-tracking branch 'origin/master' into develop 2022-07-30 03:03:14 +00:00
07f007de9a Merge remote-tracking branch 'origin/master' into develop 2022-07-30 03:02:29 +00:00
a97c61074e Merge remote-tracking branch 'origin/master' into develop 2022-07-30 02:47:09 +00:00
ed719d5d8d Merge remote-tracking branch 'origin/master' into develop 2022-07-30 02:17:19 +00:00
0c487cbeba Merge remote-tracking branch 'origin/master' into develop 2022-07-30 00:32:42 +00:00
21603c5142 Enable mousekeys by default for RGBKB Sol3 (#17842) 2022-07-29 23:42:34 +01:00
3f1b61ba55 Merge remote-tracking branch 'origin/master' into develop 2022-07-29 21:03:24 +00:00
a204523bbb [Core] RP2040 disable PIO IRQs on serial timeout (#17839) 2022-07-29 20:13:16 +02:00
ade2eb1e75 Merge remote-tracking branch 'origin/master' into develop 2022-07-29 17:30:33 +01:00
1050cf2453 Merge remote-tracking branch 'origin/master' into develop 2022-07-29 12:19:39 +00:00
a7d0e01e5b Merge remote-tracking branch 'origin/master' into develop 2022-07-29 06:44:32 +00:00
95c1cc425e Rename postprocess_steno_user → post_process_steno_user (#17823) 2022-07-28 21:51:01 -07:00
2d0443ec25 Merge remote-tracking branch 'origin/master' into develop 2022-07-29 04:42:45 +00:00
c2f68e3232 Merge remote-tracking branch 'origin/master' into develop 2022-07-28 13:13:39 +00:00
157ea96411 ChibiOS: use correct status codes in i2c_master.c (#17808)
msg_t is MSG_OK in the success case and either MSG_RESET or MSG_TIMEOUT
in case of errors. So actually use them in the comparison.
2022-07-28 02:02:10 +01:00
476d709fa5 Merge remote-tracking branch 'origin/master' into develop 2022-07-28 00:57:13 +00:00
b029252e76 Merge remote-tracking branch 'origin/master' into develop 2022-07-27 23:52:09 +00:00
7bb73306d6 Merge remote-tracking branch 'origin/master' into develop 2022-07-27 21:44:42 +00:00
5055c9a74b Merge remote-tracking branch 'origin/master' into develop 2022-07-27 21:12:28 +00:00
ed5351d75e Merge remote-tracking branch 'origin/master' into develop 2022-07-27 19:19:51 +00:00
602fde61e2 Merge remote-tracking branch 'origin/master' into develop 2022-07-27 16:29:08 +00:00
df15caf407 Merge remote-tracking branch 'origin/master' into develop 2022-07-27 15:02:29 +00:00
3d98269652 Merge remote-tracking branch 'origin/master' into develop 2022-07-27 07:40:30 -07:00
00c1653a15 Merge remote-tracking branch 'origin/master' into develop 2022-07-27 09:29:50 +00:00
59d940c9f3 ChibiOS-Contrib: Update for RP2040 PWM and I2C driver (#17817) 2022-07-27 10:06:18 +02:00
5df7cfdeb4 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 20:48:59 +00:00
ff5848992c Merge remote-tracking branch 'origin/master' into develop 2022-07-26 20:25:59 +00:00
53ca6338c7 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 19:51:21 +00:00
e0e1f0af92 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 19:44:06 +00:00
083b42068a Chibios: Stop I2C peripheral on transaction error (#17798)
From the ChibiOS HAL I2C driver pages:

After a timeout the driver must be stopped and restarted because the bus is in
an uncertain state.

This commit does that stopping explicitly on any error that occurred, not only
timeouts. As all the i2c functions restart the peripheral if necessary it is
safe to do so.

Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>

Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2022-07-26 21:40:14 +02:00
2899e69ead Merge remote-tracking branch 'origin/master' into develop 2022-07-26 19:15:45 +00:00
b8b2e99976 Constrain Cirque Pinnacle coordinates (#17803)
Static x & y should be the same type as touchData.xValue &
touchData.yValue: uint16_t.
Their delta could be larger than int8_t and should be constrained to
mouse_xy_report_t.
2022-07-26 19:35:41 +01:00
c982d6c5e3 Avoid OOB in dynamic_keymap_reset (#17695) 2022-07-26 17:38:28 +01:00
61da9286a1 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 16:38:06 +00:00
0534b878c3 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 16:37:29 +00:00
1cf68476cc Merge remote-tracking branch 'origin/master' into develop 2022-07-26 08:00:23 +00:00
5d898a3d34 [Docs] Updates to Pointing Device Docs (#17777) 2022-07-26 00:27:34 -07:00
244450625a bastardkb: fix info.json changes that got reverted during the last merge from master to develop (#17800)
* bastardkb: fix info.json changes that got reverted during the last merge from `master` to `develop`

* Remove board name from root folder `info.json`
2022-07-26 07:41:24 +01:00
9f5b71bada Merge remote-tracking branch 'origin/master' into develop 2022-07-26 06:27:00 +00:00
9825b66cac Merge remote-tracking branch 'origin/master' into develop 2022-07-26 06:26:00 +00:00
1de6811ebe Cirque circular scroll: Support POINTING_DEVICE_COMBINED (#17654) 2022-07-25 23:19:33 -07:00
2456044d5f Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:36:55 +00:00
9f976b89d8 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:31:41 +00:00
11c9a5e3ac Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:24:46 +00:00
70d554420c [Keyboard] Add RP2040 config defaults for ferris/sweep and cradio (#17557) 2022-07-25 22:22:42 -07:00
f004d93bad Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:21:11 +00:00
4bd4210e97 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:02:37 +00:00
f0300fc763 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:00:11 +00:00
d556c4233e Merge remote-tracking branch 'origin/master' into develop 2022-07-26 04:01:41 +00:00
928bbded6d [Keyboard] Fix compilation issues for Charybdis/Dilemma (#17791)
* [Keyboard] Fix debug printing for Charybdis/Dilemma

* Fix compliation issue for dilemma
2022-07-26 02:40:14 +01:00
77ed0feebe Merge remote-tracking branch 'origin/master' into develop 2022-07-26 00:53:04 +00:00
1e651dbdb0 Merge remote-tracking branch 'origin/master' into develop 2022-07-25 23:04:48 +00:00
4baed8037d Merge remote-tracking branch 'origin/master' into develop 2022-07-25 22:56:05 +00:00
4837bc50c4 Merge remote-tracking branch 'origin/master' into develop 2022-07-25 22:08:08 +00:00
683eeca2e2 [Docs] Fix custom debug function and sample output (#17790) 2022-07-25 23:07:15 +01:00
325da02e57 Fix QK_MAKE's reboot check (#17795) 2022-07-25 23:06:26 +01:00
99c48f1361 Merge remote-tracking branch 'origin/master' into develop 2022-07-25 10:15:47 -07:00
7d2260ab75 Merge remote-tracking branch 'origin/master' into develop 2022-07-25 14:59:45 +00:00
50a12c06b9 [keyboard] bastardkb: restructure folder hierarchy (#16778)
* bastardkb: restructure folder hierarchy ahead of supporting other adapters/mcus

Upcoming support for the following (adapter, mcu) pairs will be
submitted in follow-up PRs:

- `v2/elitec`
- `v2/stemcell`
- `blackpill`

This PR contains the following changes:

- Move previous implementation to an inner `v1/elitec` folder
- Move keyboard USB IDs and strings to data driven
- Update headers to update maintainers list
- Run `qmk format-c`

* bastardkb/charybdis: remove broken acceleration implementation

* bastardkb/charybdis: fix debug output

* bastardkb: add support for BastardKb the `v2/elitec` (adapter, mcu) pair

* bastardkb: add Blackpill support

* bastardkb/charybdis/3x5: add `bstiq` keymap

* bastardkb/charybdis: add fake LEDs to the configuration

For the Charybdis 3x5 (respectively 4x6), the LED config now simulates
36 (respectively 58) LEDs instead of the actual 35 (respectively 56) to
prevent confusion when testing LEDs during assembly when handedness is
not set correctly.  Those fake LEDs are bound to the physical
bottom-left corner.

* bastardkbk/charybdis/readme.md: update build commands

Merge pull request #5 from Nathancooke7/update_charybdis_readme_v2_shield.

* bastardkb/charybdis: fix Via keymap with blackpill

* bastardkb/charybdis: add 3x6 configuration

* bastardkb/charybdis: remove unnecessary files

* bastardkb/charybdis: remove obsolete code

* bastardkb/charybdis/3x6: add Via keymap

* bastardkb: add support for Splinky (RP2040) board

* bastardkb: initial configuration for the Splinky (SPI not working yet)

* bastardkb/charybdis/3x5/v2/splinky: tentative change to enable trackball

* bastardkb/charybdis/3x5/v2/splinky: fix SCK, MISO, MOSI pins

* bastardkb/charybdis/3x5/v2/splinky: fix SCK, MISO, MOSI pins

* bastardkb/charybdis/4x6/v2/splinky: add SPI configuration and enable trackball

* bastardkb/charybdis/3x6: add splinky config

* bastardkb/*/v2/splinky: update drivers to `vendor`

* bastardkb/dilemma: add new board

* bastardkb/charybdis: fix infinite loop in `layer_state_set_user(…)` in the `via` keymaps

* bastardkb/dilemma: add `bstiq` keymap

* bastardkb: specify blackpill boards

* bastardkb/charybdis: fix blackpill-specific define syntax

* bastardkb: remove `NO_ACTION_MACRO` and `NO_ACTION_FUNCTION` which are no longer valid options

* bastardkb: fix `QK_BOOT` keycodes

* bastardkb/dilemma: fix mouse direction on X axis

* bastardkb/charybdis/3x6: adjust CS

* bastardkb/dilemma: adjust trackpad configuration

* charybdis: fix `PWM33XX_CS_PIN` defines

This is a follow-up of https://github.com/qmk/qmk_firmware/pull/17613.

* bastardkb: remove Vial mentions from `bstiq` keymaps

* Cleanup unnecessary comments

Co-authored-by: Nathan <nathan.cooke@compass.com>
Co-authored-by: Charly Delay <0xcharly@codesink.dev>
2022-07-25 10:11:28 +01:00
336df3297e Merge remote-tracking branch 'origin/master' into develop 2022-07-24 23:01:36 +00:00
d5e619f472 Merge remote-tracking branch 'origin/master' into develop 2022-07-24 16:12:13 +00:00
c1783ff35d Merge remote-tracking branch 'origin/master' into develop 2022-07-24 16:07:21 +00:00
62cd280c3b Merge remote-tracking branch 'origin/master' into develop 2022-07-24 12:40:43 +00:00
f6612c219f Merge remote-tracking branch 'origin/master' into develop 2022-07-24 12:26:27 +00:00
7f938e969d Merge remote-tracking branch 'origin/master' into develop 2022-07-24 11:07:34 +00:00
914861b07c Merge remote-tracking branch 'origin/master' into develop 2022-07-24 05:10:28 +00:00
db3d9f9935 Merge remote-tracking branch 'origin/master' into develop 2022-07-24 03:28:12 +00:00
3825362a3b Merge remote-tracking branch 'origin/master' into develop 2022-07-24 00:10:33 +00:00
f383f7d6e5 Merge remote-tracking branch 'origin/master' into develop 2022-07-24 00:04:24 +00:00
302fa11d1f Merge remote-tracking branch 'origin/master' into develop 2022-07-23 20:23:43 +00:00
d02cefe613 implement tap_code16_delay (#17748) 2022-07-23 19:21:20 +01:00
a6f3194397 Add ability to enter bootloader mode from QK_MAKE (#17745) 2022-07-23 17:43:32 +01:00
8254d73fd4 Merge remote-tracking branch 'origin/master' into develop 2022-07-23 16:42:55 +00:00
c586cfda48 (develop) Update bootmagic for Adafruit Macropad (#17755) 2022-07-22 23:28:51 +01:00
c39a902867 Merge remote-tracking branch 'origin/master' into develop 2022-07-22 20:20:43 +00:00
536511a32a Merge remote-tracking branch 'origin/master' into develop 2022-07-22 14:58:18 +00:00
0e81d63b64 Merge remote-tracking branch 'origin/master' into develop 2022-07-22 13:23:36 +00:00
f1671ec720 Merge remote-tracking branch 'origin/master' into develop 2022-07-22 03:43:08 +00:00
d681eac0ad Merge remote-tracking branch 'origin/master' into develop 2022-07-21 20:24:51 +00:00
bfed88dba2 Merge remote-tracking branch 'origin/master' into develop 2022-07-21 19:55:00 +00:00
5f32690cba Move Pointing Device Initialization (#17740)
Move Pointing Device Initialization to after Split Post Initialization

If both pointing device and split is enabled, the pointing device init needs to be called after the split post init, otherwise the connection (serial/etc) isn't initialized yet, and any commands that need to send data over (such as calling the set cpi command) never get sent over.
2022-07-21 10:16:44 -07:00
5c90732622 Adafruit Macropad: Add VIA keymap, fix default km (#17735) 2022-07-21 14:44:12 +01:00
6081a8091d Merge remote-tracking branch 'origin/master' into develop 2022-07-21 12:45:28 +00:00
d510e80b89 Add Blok 2040 conversion (#17603) 2022-07-21 00:54:05 +01:00
4efe6330c4 VIA Encoder Map Support (#17734) 2022-07-21 09:53:42 +10:00
493d422406 Merge remote-tracking branch 'origin/master' into develop 2022-07-20 23:20:34 +00:00
9a31bbb3fa fix syntax error (#17732) 2022-07-20 22:59:18 +01:00
05f30f0787 Use Pro Micro pinout for SDA/SCL (#17595) 2022-07-20 18:24:34 +01:00
ab45e3b993 Merge remote-tracking branch 'origin/master' into develop 2022-07-20 17:00:18 +00:00
1db5272154 docs: fix default value of USB_SUSPEND_WAKEUP_DELAY (#17501)
Documents the change made in #12081
2022-07-20 17:43:41 +01:00
ee17ffadea Move Pointing Device code to a subdirectory (#17684) 2022-07-20 17:32:00 +01:00
adfa36fee4 Merge remote-tracking branch 'origin/master' into develop 2022-07-20 15:02:35 +00:00
fa44f2b21e Merge remote-tracking branch 'origin/master' into develop 2022-07-20 00:56:25 +00:00
12eb6444c6 Add support for PAW3204 Optical Sensor (#17669)
Co-authored-by: gompa <gompa@h-bomb.nl>
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-07-19 17:46:22 -07:00
6992efb229 Merge remote-tracking branch 'origin/master' into develop 2022-07-19 23:24:53 +00:00
d0c095eec2 Merge remote-tracking branch 'origin/master' into develop 2022-07-19 15:43:59 +00:00
d458df7698 Merge remote-tracking branch 'origin/master' into develop 2022-07-19 10:29:44 +00:00
7a10c3370f Merge remote-tracking branch 'origin/master' into develop 2022-07-19 10:14:23 +00:00
1cdde7ba6a Fix AVR compilation of FNV by using standard integer typenames. (#17716) 2022-07-19 05:30:01 +01:00
59c7b15b4d [Keyboard] boardsource/microdox data driven (#17675) 2022-07-18 19:20:24 -07:00
e8b14a52de Merge remote-tracking branch 'origin/master' into develop 2022-07-19 02:09:38 +00:00
c3f1ba7dd1 Remove full bootmagic config (#17702) 2022-07-19 02:28:23 +01:00
eabbc04213 Merge remote-tracking branch 'origin/master' into develop 2022-07-18 19:53:40 +00:00
0e4f953976 Merge remote-tracking branch 'origin/master' into develop 2022-07-18 12:20:54 +00:00
11cfc8a0b6 Merge remote-tracking branch 'origin/master' into develop 2022-07-18 12:18:48 +00:00
42eff8c372 Allow dynamic keymap to compile without via.h (#17703) 2022-07-18 11:55:27 +01:00
32cc8a7f43 Merge remote-tracking branch 'origin/master' into develop 2022-07-17 23:56:05 +00:00
a304a9b51e Use correct angle tune range of +/-127 on PMW33XX (#17708)
...partially reverts 580bcff4f65a3a9ee301de0fd036de7b610c7ee2 as the
datasheet doesn't claim that the angle tuning as limited to +/- 30
degrees.
2022-07-17 21:08:55 +02:00
4779539543 Merge remote-tracking branch 'origin/master' into develop 2022-07-17 16:50:28 +00:00
4f7be48758 Merge remote-tracking branch 'origin/master' into develop 2022-07-17 16:36:02 +00:00
96c92d208f Merge remote-tracking branch 'origin/master' into develop 2022-07-17 16:25:12 +00:00
a1fb1405e4 Merge remote-tracking branch 'origin/master' into develop 2022-07-17 12:03:31 +00:00
859c1a6fc9 Merge remote-tracking branch 'origin/master' into develop 2022-07-17 07:18:04 +00:00
54be228882 Merge remote-tracking branch 'origin/master' into develop 2022-07-17 00:32:15 +00:00
06e93a8f5c Merge remote-tracking branch 'origin/master' into develop 2022-07-16 19:48:33 +00:00
e50b1d33f3 Merge remote-tracking branch 'origin/master' into develop 2022-07-16 19:39:00 +00:00
de545b8e21 Merge remote-tracking branch 'origin/master' into develop 2022-07-16 19:04:10 +00:00
9fa14655df Merge remote-tracking branch 'origin/master' into develop 2022-07-16 18:39:27 +00:00
580bcff4f6 Use correct angle tune range of +/-30 on PMW33XX (#17693)
Co-authored-by: Daniel Kao <daniel.m.kao@gmail.com>

Co-authored-by: Daniel Kao <daniel.m.kao@gmail.com>
2022-07-16 11:33:18 +02:00
f5e16f94d5 Merge remote-tracking branch 'origin/master' into develop 2022-07-16 07:29:50 +00:00
c8ce87e044 Merge remote-tracking branch 'origin/master' into develop 2022-07-16 06:49:24 +00:00
abdca8847d Merge remote-tracking branch 'origin/master' into develop 2022-07-16 05:21:50 +00:00
c84f68d4c8 Merge remote-tracking branch 'origin/master' into develop 2022-07-16 05:16:47 +00:00
82f806b1ab Merge remote-tracking branch 'origin/master' into develop 2022-07-16 01:02:25 +00:00
38cd3684e1 Merge remote-tracking branch 'origin/master' into develop 2022-07-15 21:07:17 +00:00
ce2dbe17b5 Merge remote-tracking branch 'origin/master' into develop 2022-07-15 08:57:19 +00:00
c79818e703 Merge remote-tracking branch 'origin/master' into develop 2022-07-15 06:12:57 +00:00
64d2097a27 Merge remote-tracking branch 'origin/master' into develop 2022-07-15 02:58:03 +00:00
f54a55dcfe Merge remote-tracking branch 'origin/master' into develop 2022-07-15 02:53:09 +00:00
15c09335e9 Merge remote-tracking branch 'origin/master' into develop 2022-07-15 02:45:47 +00:00
7501523e1f Merge remote-tracking branch 'origin/master' into develop 2022-07-14 21:52:10 +00:00
d547c0bea7 Merge remote-tracking branch 'origin/master' into develop 2022-07-14 21:32:20 +00:00
8ee42cd6c4 Merge remote-tracking branch 'origin/master' into develop 2022-07-14 13:09:37 +00:00
2f73e65837 Add LED limit call (#17679) 2022-07-14 12:37:47 +01:00
1862ac5454 Fix the use of LED limits (#17678) 2022-07-14 12:36:51 +01:00
da4689d6b5 Merge remote-tracking branch 'origin/master' into develop 2022-07-14 11:23:09 +00:00
300dab7962 [Code] Add solid reactive gradient mode (#17228) 2022-07-14 12:22:53 +01:00
3c58f98929 [Core] PMW33XX drivers overhaul (#17613)
* PMW33XX drivers overhaul

This combines the PMW3389 and PM3360 drivers as they only differ in the
firmware blobs and CPI get and set functions. The following changes have
been made:

* PMW3389 now gets the same multi-sensor feature that is already available on the
  PMW3360.

* Introduced a shared pmw33xx_report_t struct is now directly readable via SPI
  transactions instead of individual byte-sized reads, saving multiple
  copies and bitshift operations.

* pmw33(89/60)_get_report functions had unreachable branches in their motion
  detection logic these have been simplied as much as possible.

* The fast firmware upload option has been removed as this becomes obsolete by
  the newly introduced polled waiting functions for ChibiOS polled waiting

* PMW33(60/89)_SPI_LSBFIRST and PMW33(60/89)_SPI_MODE config options
  have been removed as they don't need to be configurable.

* All PMW3389 and PMW3360 defines have been unified to a PMW33XX prefix
  to reduce code duplication and make the defines interchangeable

* Adjust keyboards to PMW33XX naming scheme
2022-07-14 11:50:00 +02:00
82685fc2ac Merge remote-tracking branch 'origin/master' into develop 2022-07-14 06:35:34 +00:00
9b04e9be04 Merge remote-tracking branch 'origin/master' into develop 2022-07-14 06:27:11 +00:00
633df1f365 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 22:25:18 +00:00
ce2ac433d9 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 20:58:40 +00:00
2cdaa639ee Merge remote-tracking branch 'origin/master' into develop 2022-07-13 19:40:36 +00:00
dc70ba612a Post-bootloader EFL/SPI fixes. (#17661)
* Fixup read address for EFL driver.

* Fixup sequencing of SPI.

* Lock during init of EFL backing store.
2022-07-14 00:41:08 +10:00
2a0d490eb3 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 08:12:12 +00:00
09e4001bba [Bug] Fix compile issue with LED Matrix (#17658) 2022-07-13 01:10:51 -07:00
4b108f7689 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 08:05:22 +00:00
b21a52c824 Fix compilation issue with Cirque Guestures file (#17656) 2022-07-13 09:01:30 +02:00
2468be889b Merge remote-tracking branch 'origin/master' into develop 2022-07-13 05:35:44 +00:00
bc385435a7 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 05:33:00 +00:00
38c8fc9baf Merge remote-tracking branch 'origin/master' into develop 2022-07-13 05:32:19 +00:00
0052b03ee0 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 05:25:36 +00:00
98312417b5 [Keyboard] boardsource/lulu data driven (#17638) 2022-07-12 22:20:38 -07:00
068d5688d8 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 05:19:48 +00:00
590c2342fc Merge remote-tracking branch 'origin/master' into develop 2022-07-13 05:19:25 +00:00
1dfe2bb49a Update LED/RGB Matrix flag function behavior (#17651) 2022-07-12 22:18:02 -07:00
34fec2c07d Merge remote-tracking branch 'origin/master' into develop 2022-07-13 04:58:34 +00:00
018fad6b95 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 04:53:38 +00:00
8a1ca7f6b8 [Keyboard] boardsource/holiday/spooky data driven (#17632) 2022-07-12 21:47:32 -07:00
dfff040433 Allow MCU-specific overrides for SPI flags. (#17650) 2022-07-13 14:42:24 +10:00
f9724dfa67 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 04:37:54 +00:00
27dd4dc91e Merge remote-tracking branch 'origin/master' into develop 2022-07-13 04:31:57 +00:00
5db705d054 Cirque trackpad features: circular scroll, inertial cursor (#17482) 2022-07-12 21:17:40 -07:00
904ec0ce78 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 04:11:08 +00:00
9d6a94cfb5 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 04:10:07 +00:00
36c2575658 Grammar fixes for docs/feature_converters.md (#17652) 2022-07-13 04:58:16 +01:00
6bb2ed68a8 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 03:51:07 +00:00
82f0263e41 Merge remote-tracking branch 'origin/master' into develop 2022-07-13 01:19:58 +01:00
ffb34fc082 Include stdint.h in avr/i2c_master.h (#17639) 2022-07-12 21:55:19 +02:00
45ffe42f1a [Fix] Make ChibiOS _wait.h independent of quantum.h (#17645) 2022-07-12 21:54:33 +02:00
bbd6ea977c GMMK 2 WBG7 MCU compatibility (#16436)
* GMMK V2 QMK Compatibility

* fix problems

* Update keyboards/gmmk/gmmk2/config.h

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/gmmk/gmmk2/config.h

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Fix a minor problem

* Optimize the code

* Update config.h

* Update

* Update config.h

* Update keyboards/gmmk/gmmk2/p96/ansi/keymaps/via/config.h

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update config.h

* Update keyboards/gmmk/gmmk2/p96/iso/keymaps/via/config.h

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update config.h

* Update keyboards/gmmk/gmmk2/p65/ansi/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/gmmk/gmmk2/p96/ansi/keymaps/default/keymap.c

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/gmmk/gmmk2/p96/ansi/keymaps/via/keymap.c

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/gmmk/gmmk2/p96/ansi/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/gmmk/gmmk2/p96/iso/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/gmmk/gmmk2/p65/iso/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update config.h

* Update config.h

* Update config.h

* Modify device pid

* Add gmmk2_p96 keyboard.

* Add gmmk2_p96 keyboard.

* Update led matrix.

* Update led matrix.

* Delete eeprom_flash.c

* Update keyboards/gmmk/gmmk2/p96/ansi/rules.mk

Co-authored-by: Nick Brassel <nick@tzarc.org>

* Update from qmk develop branch

* Increased compatibility with wear_leveling.

* Update config.h

Co-authored-by: Joy <chang.li@westberrytech.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-07-12 17:30:54 +10:00
a768ec265d Merge remote-tracking branch 'origin/master' into develop 2022-07-11 21:46:29 +00:00
b78a7e42b1 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 21:15:45 +00:00
85cdde1541 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 20:59:02 +00:00
61df87ae2c Added Delay time dynamic keymap's macro feature (#16810)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-07-11 12:59:16 -07:00
52e9ed75e8 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 19:47:42 +00:00
51b7828540 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 18:54:26 +00:00
3f5dc47296 [Core] Use polled waiting on ChibiOS platforms that support it (#17607)
* Use polled waiting on platforms that support it

Due to context switching overhead waiting a very short amount of time on
a sleeping thread is often not accurate and in fact not usable for timing
critical usage i.e. in a driver. Thus we use polled waiting for ranges
in the us range on platforms that support it instead. The fallback is
the thread sleeping mechanism.

This includes:

* ARM platforms with CYCCNT register (ARMv7, ARMv8) this is
  incremented at CPU clock frequency
* GD32VF103 RISC-V port with CSR_MCYCLE register this is incremented at
  CPU clock frequency
* RP2040 ARMv6 port which uses the integrated timer peripheral which is
  incremented with a fixed 1MHz frequency

* Use wait_us() instead of chSysPolledDelayX

...as it is powered by busy waiting now.

* Add chibios waiting methods test bench
2022-07-11 15:17:05 +02:00
57021d6358 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 12:58:12 +00:00
5925ea3478 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 12:55:42 +00:00
5e750cf039 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 12:52:03 +00:00
7a73f9a6b3 [Keyboard] Add Fine!40 PCB Support (#17426)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-07-11 05:10:47 -07:00
5e347f42a6 Merge remote-tracking branch 'origin/master' into develop 2022-07-11 11:31:19 +00:00
2e567150ea Merge remote-tracking branch 'origin/master' into develop 2022-07-11 11:23:48 +00:00
0348071810 Stabilize Half-duplex PIO split comms (#17612) 2022-07-11 04:05:04 -07:00
35d78aa8a4 More DD encoder fixes (#17615) 2022-07-11 10:51:39 +01:00
0bee7cbebe Merge remote-tracking branch 'origin/master' into develop 2022-07-10 22:45:26 +00:00
a15e44cfb3 Merge remote-tracking branch 'origin/master' into develop 2022-07-09 17:27:37 +00:00
39e1e27ea9 Merge remote-tracking branch 'origin/master' into develop 2022-07-09 12:33:33 +00:00
13b2b93fb0 Add Adafruit Macropad (#17512) 2022-07-08 23:33:03 +01:00
30f2556ae9 Merge remote-tracking branch 'origin/master' into develop 2022-07-08 21:50:28 +00:00
345e19f691 Add converter docs (#17593) 2022-07-08 22:49:16 +01:00
81d317aa87 Fix rgbkb/sol/rev2 build issues (#17601) 2022-07-08 22:48:48 +01:00
b0c3d61c17 Merge remote-tracking branch 'origin/master' into develop 2022-07-07 12:43:20 +00:00
643f6367a1 [Fix] Patches after printf library update (#17584)
* Add missing '(' to print_bin_reverse32 declaration
* Fix insufficient character buffers on satisfaction75
* Remove \0 character in format string and use corrected offset math
  instead on rocketboard 16
* Replace snprintf_ with snprintf for djinn
* Explicitly ignore format checks for tracktyl manuform that uses %b
  specifier
* Print properly escaped version string in command.c, as PRODUCT or
  other defines can contain constructs like 'Vendor keyboard 66%' which
  will be interpreted as a format specifier
2022-07-07 14:14:09 +02:00
8224f62806 Make debounce() signal changes in the cooked matrix as return value (#17554) 2022-07-07 10:00:40 +02:00
cca5d35321 Update PM2040 I2C pins (#17578) 2022-07-07 09:33:11 +02:00
d9bb189e25 [Core] Update mpaland/printf to eyalroz/printf fork (#16163)
mpaland printf implementation was abandoned in ~2019 and the fork by
eyalroz is now regarded to be the goto replacement of it. So this commit
incoporates the changes needed to use this fork in QMK.

Note that pointer ptrdiff_t is always supported since commit
51c90f93a97fdaef895783ecbe24569be0db7cb8
2022-07-07 09:27:50 +02:00
8f086faf8a Merge remote-tracking branch 'origin/master' into develop 2022-07-07 05:44:58 +00:00
744af003be Add kb2040 and sparkfun rp2040 converters (#17514) 2022-07-06 19:27:15 +01:00
29a2bac469 Fixup SPI. (#17534) 2022-07-05 22:41:35 +02:00
0e5d67145a Allow for keymaps array to be implemented in a file other than $(KEYMAP_C) (#17559) 2022-07-05 08:58:35 +10:00
5cad58dfa9 Merge remote-tracking branch 'origin/master' into develop 2022-07-04 20:49:23 +00:00
d37db0c50c Merge remote-tracking branch 'origin/master' into develop 2022-07-03 23:41:36 +00:00
e68205db1b Merge remote-tracking branch 'origin/master' into develop 2022-07-03 21:25:42 +00:00
63474e2c17 Merge remote-tracking branch 'origin/master' into develop 2022-07-03 18:08:32 +00:00
7d89dfe2dc Merge remote-tracking branch 'origin/master' into develop 2022-07-03 04:12:32 +00:00
6154c184a8 Merge remote-tracking branch 'origin/master' into develop 2022-07-03 04:11:21 +00:00
e8c46fab96 Merge remote-tracking branch 'origin/master' into develop 2022-07-03 02:56:16 +00:00
03909b8a3f Merge remote-tracking branch 'origin/master' into develop 2022-07-02 23:54:45 +00:00
2d5047a79c Merge remote-tracking branch 'origin/master' into develop 2022-07-02 23:43:38 +00:00
c5215d4a06 initial (#17545) 2022-07-03 00:43:29 +01:00
c8a78b1f04 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 23:38:39 +00:00
fb40abe2f2 Pca9505/6 driver (#17333) 2022-07-03 00:37:02 +01:00
ce29cb0f10 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 23:15:32 +00:00
4d243e94fa Merge remote-tracking branch 'origin/master' into develop 2022-07-02 23:12:20 +00:00
4b7c01c84b Merge remote-tracking branch 'origin/master' into develop 2022-07-02 23:11:36 +00:00
8744d57578 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 22:19:13 +00:00
5f11d7b554 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 22:18:33 +00:00
ba1f184267 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 19:10:40 +00:00
a41c5d8023 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 19:09:55 +00:00
6c7d549e31 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 18:10:05 +00:00
efd41fe9df Merge remote-tracking branch 'origin/master' into develop 2022-07-02 17:51:26 +00:00
f346c8400c Update ChibiOS-Contrib (#17540) 2022-07-03 00:47:28 +10:00
36de989e6f Merge remote-tracking branch 'origin/master' into develop 2022-07-02 14:32:39 +00:00
b56edb5f11 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 14:23:42 +00:00
ea14a93718 Merge remote-tracking branch 'upstream/master' into develop 2022-07-03 00:16:33 +10:00
ac5e6b6a3b Tentative Teensy 3.5 support (#14420)
* Tentative Teensy 3.5 support

* Set firmware format to .hex for ARM Teensys

* Got to "device descriptor failed" by comparing with Teensy 3.6 code

* Drop down to 96MHz...

* Bump back up to 120MHz
2022-07-03 00:12:45 +10:00
11299b337b Merge remote-tracking branch 'origin/master' into develop 2022-07-02 14:10:26 +00:00
f083eb1a37 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 14:07:53 +00:00
61eca0c972 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 14:06:19 +00:00
7de801ed9a Merge remote-tracking branch 'origin/master' into develop 2022-07-02 14:05:18 +00:00
3871c717da Merge remote-tracking branch 'origin/master' into develop 2022-07-02 14:01:44 +00:00
0c74892e90 [Keyboard] Update Charybdis code for Extended Mouse reports (#17435) 2022-07-02 23:58:40 +10:00
326d3ffad8 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 13:14:58 +00:00
1bf67b808d Merge remote-tracking branch 'origin/master' into develop 2022-07-02 13:13:58 +00:00
d9e311ad30 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 13:09:54 +00:00
c1d9f9911c Merge remote-tracking branch 'origin/master' into develop 2022-07-02 13:08:54 +00:00
414a387f22 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:53:52 +00:00
84d9996b6d Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:51:09 +00:00
a6faf3bc9e Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:49:52 +00:00
fcc14b8838 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:49:19 +00:00
bf44fc81bd Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:44:27 +00:00
5f16a4ec62 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:42:41 +00:00
fd883890af Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:41:39 +00:00
90ad47b1f2 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:41:05 +00:00
f996a4c5b7 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:38:02 +00:00
6285a1c0d3 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:37:05 +00:00
882eadd94d [Keyboard] IDOBAO ID67 code touch-ups and include factory keymap (#17231) 2022-07-02 22:35:37 +10:00
7a5f76d40a [Keyboard] IDOBAO ID87v2 code rewrite and include factory keymap (#17232) 2022-07-02 22:32:32 +10:00
4aca94d247 [Keyboard] IDOBAO ID80v3 code rewrite and include factory keymap (#17234) 2022-07-02 22:31:38 +10:00
7a8a4b1938 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:21:26 +00:00
5c5610074a Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:19:26 +00:00
fa0aea2a5a Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:18:55 +00:00
65832c0fc3 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:17:12 +00:00
b8e8a20ca6 Improve ENCODER_DEFAULT_POS to recognize lost ticks (#16932) 2022-07-02 22:12:41 +10:00
3ecb0a80af Feature-ify Send String (#17275) 2022-07-02 22:10:08 +10:00
7e41eb0277 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:09:58 +00:00
871eeae4ea PoC: Swap Escape and Caps (#16336) 2022-07-02 22:08:48 +10:00
c7d8adfeaa Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:08:11 +00:00
5d711c89c3 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:07:22 +00:00
ca0a9d243c Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:03:45 +00:00
8b78fac451 Fix keys being discarded after using the leader key (#17287) 2022-07-02 22:03:40 +10:00
08721b4125 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:00:37 +00:00
5d1bc92c64 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:58:55 +00:00
0112938140 Expose the time of the last change to the LED state (#17222) 2022-07-02 21:57:05 +10:00
2af2c5e109 [Keyboard] Move/Rename to Hillside48, simplify default keymap (#17210)
Co-authored-by: mmccoyd <mmccoyd@cs.berkley.edu>
2022-07-02 21:56:23 +10:00
a7179b188d Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:55:42 +00:00
59e28b8958 Add cli command to import keyboard|keymap|kbfirmware (#16668) 2022-07-02 21:50:09 +10:00
9dc7b9d40c Added Wait time to sending each Keys for Dynamic Macros function (#16800)
Co-authored-by: Joel Challis <git@zvecr.com>
2022-07-02 21:48:26 +10:00
0856b36139 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:47:16 +00:00
c679decb2b Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:45:40 +00:00
6b21f8369e Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:44:07 +00:00
6f1eca9c7b Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:43:17 +00:00
05074cbdf0 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:27:40 +00:00
a949d32072 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:26:57 +00:00
5d8b6847c7 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:23:33 +00:00
a9af4c928e Merge remote-tracking branch 'upstream/master' into develop 2022-07-02 21:13:06 +10:00
92c0b29be9 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 11:01:36 +00:00
e3cad4045a Merge remote-tracking branch 'origin/master' into develop 2022-07-02 10:57:59 +00:00
93e657fa99 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 10:55:05 +00:00
5846b40f74 RP2040 emulated EEPROM. (#17519) 2022-07-02 15:18:50 +10:00
9f1c4f304d Fixup #17438 (#17533) 2022-07-02 14:29:45 +10:00
3def7b98d4 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 03:23:21 +00:00
b67ae67687 [QP] Add ILI9488 support. (#17438) 2022-07-02 13:20:45 +10:00
d6c39490df Merge remote-tracking branch 'origin/master' into develop 2022-07-01 21:21:11 +00:00
a61e549a31 Merge remote-tracking branch 'origin/master' into develop 2022-07-01 14:39:35 +00:00
dfb23456b1 Merge remote-tracking branch 'origin/master' into develop 2022-07-01 14:36:43 +00:00
03630db506 Merge remote-tracking branch 'origin/master' into develop 2022-07-01 06:11:45 +00:00
5936e05a33 Merge remote-tracking branch 'origin/master' into develop 2022-07-01 03:02:42 +00:00
2f2d3e9c7b Merge remote-tracking branch 'origin/master' into develop 2022-06-30 22:40:36 +00:00
a98f69850f Also check /run/media/ for uf2 drives (#17517) 2022-06-30 23:29:56 +01:00
e5a15f404d Merge remote-tracking branch 'origin/master' into develop 2022-06-30 19:10:51 +00:00
77d960cce3 Disable clang-format for stage2_bootloaders (#17516) 2022-06-30 20:07:54 +01:00
d717396708 [Core] Add Raspberry Pi RP2040 support (#14877)
* Disable RESET keycode because of naming conflicts

* Add Pico SDK as submodule

* Add RP2040 build support to QMK

* Adjust USB endpoint structs for RP2040

* Add RP2040 bootloader and double-tap reset routine

* Add generic and pro micro RP2040 boards

* Add RP2040 onekey keyboard

* Add WS2812 PIO DMA enabled driver and documentation

Supports regular and open-drain output configuration. RP2040 GPIOs are
sadly not 5V tolerant, so this is a bit use-less or needs extra hardware
or you take the risk to fry your hardware.

* Adjust SIO Driver for RP2040

* Adjust I2C Driver for RP2040

* Adjust SPI Driver for RP2040

* Add PIO serial driver and documentation

* Add general RP2040 documentation

* Apply suggestions from code review

Co-authored-by: Nick Brassel <nick@tzarc.org>

Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-06-30 13:19:27 +02:00
d206c1791e (develop)Keychron Q2: Enable support for WL EEPROM Driver (#17507) 2022-06-30 12:25:33 +10:00
4f124574f1 (develop)AP2: Enable support for WL EEPROM Driver (#17506) 2022-06-30 11:07:43 +10:00
fb05b491e7 Merge remote-tracking branch 'origin/master' into develop 2022-06-29 23:34:39 +00:00
34e244cecf Wear-leveling EEPROM drivers: embedded_flash, spi_flash, legacy (#17376) 2022-06-30 07:42:23 +10:00
1204cbb7ea Update feature_split_keyboard.md to add extra detail about left and right matrices. (#17492) 2022-06-29 18:39:37 +10:00
dcdc7290e5 RGB Matrix Heatmap - Skip positions with NO_LED (#17488) 2022-06-29 01:25:03 -07:00
f7eb7926e8 Merge remote-tracking branch 'origin/master' into develop 2022-06-29 08:17:56 +00:00
0151f4c307 Merge remote-tracking branch 'origin/master' into develop 2022-06-29 06:45:13 +00:00
1f61fb33b4 Merge remote-tracking branch 'origin/master' into develop 2022-06-28 22:47:17 +00:00
2daad28ab1 Merge remote-tracking branch 'origin/master' into develop 2022-06-28 22:29:19 +00:00
54383674db Merge remote-tracking branch 'origin/master' into develop 2022-06-28 22:14:09 +00:00
33b62b6867 Merge remote-tracking branch 'origin/master' into develop 2022-06-26 22:59:06 +00:00
01ecf332ff Generic wear-leveling algorithm (#16996)
* Initial import of wear-leveling algorithm.

* Alignment.

* Docs tweaks.

* Lock/unlock.

* Update quantum/wear_leveling/wear_leveling_internal.h

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>

* More tests, fix issue with consolidation when unlocked.

* More tests.

* Review comments.

* Add plumbing for FNV1a.

* Another test checking that checksum mismatch clears the cache.

* Check that the write log still gets played back.

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-06-27 07:18:21 +10:00
0d013a21e1 [Split] Verify Split Pointing Device config (#17481) 2022-06-26 09:15:25 -07:00
01bc974365 improvements for Cirque Pinnacle trackpads (#17091) 2022-06-25 22:22:28 +02:00
60cbb25148 Merge remote-tracking branch 'origin/master' into develop 2022-06-25 19:46:15 +00:00
99614bd89a Merge remote-tracking branch 'origin/master' into develop 2022-06-25 19:41:30 +00:00
e30cd0fa16 Merge remote-tracking branch 'origin/master' into develop 2022-06-25 19:35:17 +00:00
c43e89bb4a Merge remote-tracking branch 'origin/master' into develop 2022-06-25 19:15:48 +00:00
3c9f27e1c9 Merge remote-tracking branch 'origin/master' into develop 2022-06-24 22:03:10 +00:00
3b9e186019 Do not enable PERMISSIVE_HOLD when TAPPING_TERM exceeds 500ms (#15674) 2022-06-24 12:40:09 +02:00
0e60b3a620 Merge remote-tracking branch 'origin/master' into develop 2022-06-24 04:11:58 +00:00
7060cb7b26 Refactor steno and add STENO_PROTOCOL = [all|txbolt|geminipr] (#17065)
* Refactor steno into STENO_ENABLE_[ALL|GEMINI|BOLT]

* Update stenography documentation

* STENO_ENABLE_TXBOLT → STENO_ENABLE_BOLT

TXBOLT is a better name but BOLT is more consistent with the
pre-existing TX Bolt related constants, which all drop the "TX " prefix

* Comments

* STENO_ENABLE_[GEMINI|BOLT|ALL] → STENO_PROTOCOL = [geminipr|txbolt|all]

* Add note on lacking V-USB support

* Clear chord at the end of the switch(mode){send_steno_chord} block

* Return true if NOEVENT

* update_chord_xxx → add_xxx_key_to_chord

* Enable the defines for all the protocols if STENO_PROTOCOL = all

* Mention how to use `steno_set_mode`

* Set the default steno protocol to "all"

This is done so that existing keymaps invoking `steno_set_mode` don't
all suddenly break

* Add data driver equivalents for stenography feature

* Document format of serial steno packets

(Thanks dnaq)

* Add missing comma
2022-06-23 20:43:24 +02:00
2239527871 In honor of king terry (#17387) 2022-06-23 02:47:15 +01:00
32792826a8 Merge remote-tracking branch 'origin/master' into develop 2022-06-23 01:26:43 +00:00
25b5c2c538 Merge remote-tracking branch 'origin/master' into develop 2022-06-23 01:23:52 +00:00
d3858585ac Added global current to all other issi drivers who don't have it (#17448) 2022-06-23 02:16:39 +01:00
a0f857b7a2 Merge remote-tracking branch 'origin/master' into develop 2022-06-23 01:16:12 +00:00
2f9145c6ea Merge remote-tracking branch 'origin/master' into develop 2022-06-23 00:52:50 +00:00
b02f178c06 Merge remote-tracking branch 'origin/master' into develop 2022-06-23 00:39:54 +00:00
9aa9155e88 [Core] Mark GD32VF103 as ChibiOS-Contrib (#17444) 2022-06-23 08:37:40 +10:00
eac0f6d4c9 Cirque Attenuation Setting (#17342) 2022-06-22 21:59:37 +02:00
2e27eb318e Merge remote-tracking branch 'origin/master' into develop 2022-06-22 16:41:19 +00:00
8ea9f13c67 Merge remote-tracking branch 'origin/master' into develop 2022-06-22 14:30:56 +00:00
b450ffc5c6 Merge remote-tracking branch 'origin/master' into develop 2022-06-22 05:10:58 +00:00
267864e42c Merge remote-tracking branch 'origin/master' into develop 2022-06-22 02:15:13 +00:00
86bfd8195c Merge remote-tracking branch 'origin/master' into develop 2022-06-22 01:53:38 +00:00
608404f874 Fix AVR I2C master 1ms timeout (#17174)
* avr i2c_master: Fix 1ms timeout

i2c_start() produces a minimum time_slice of 1ms for use as timeout
value.
The timer granularity is 1ms, it is entirely possible for timer_count
to tick up immediately after the last timer read and falsely trigger
timeout with a '>= 1' comparison.

* avr/drivers/i2c_master: Use timer_elapsed()
2022-06-22 00:00:04 +02:00
be42c5fb98 Fix RGB heatmap to use XY positions and use correct led limits (#17184)
* Fix RGB heatmap to use XY positions

* lower effect area limit and make configurable

* tidy up macro

* Fix triggering in both directions.

* add docs

* fix bug when decreasing value

* performance tweak
2022-06-21 10:53:34 -07:00
2d7a2dfad0 Merge remote-tracking branch 'origin/master' into develop 2022-06-21 15:50:58 +00:00
65fcf951d3 Merge remote-tracking branch 'origin/master' into develop 2022-06-21 12:23:46 +00:00
d116cf5e9a Merge remote-tracking branch 'origin/master' into develop 2022-06-21 03:42:15 +00:00
2b23ca876d Merge remote-tracking branch 'origin/master' into develop 2022-06-21 03:34:03 +00:00
503b40e748 Merge remote-tracking branch 'origin/master' into develop 2022-06-21 03:25:43 +00:00
52c1517766 Merge remote-tracking branch 'origin/master' into develop 2022-06-21 03:16:43 +00:00
1a400d8644 Allow encoder config from info.json (#17295) 2022-06-20 20:15:06 -07:00
4c39bad2e6 Merge remote-tracking branch 'origin/master' into develop 2022-06-21 03:12:14 +00:00
a6eeb930ae Merge remote-tracking branch 'origin/master' into develop 2022-06-21 02:24:10 +00:00
3370e2b74d Merge remote-tracking branch 'origin/master' into develop 2022-06-21 02:23:27 +00:00
589e756e98 Fixup SPI mode 3 => 0 on tzarc/djinn. (#17440) 2022-06-21 10:56:47 +10:00
2fb24c0298 Merge remote-tracking branch 'origin/master' into develop 2022-06-21 00:53:03 +00:00
93ee789387 Merge remote-tracking branch 'origin/master' into develop 2022-06-21 00:26:40 +00:00
6a81cb44f2 [Fix] Fix compilation warning for non-split keebs after #17423 (#17439) 2022-06-21 09:31:20 +10:00
2703ecc9e9 [BUG] Fix deadlocks on disconnected secondary half (#17423) 2022-06-21 08:24:53 +10:00
62eaec52e0 Init eeconfig before reading handedness (#17256) 2022-06-20 15:31:27 +01:00
36d60769f8 Merge remote-tracking branch 'origin/master' into develop 2022-06-20 04:21:32 +00:00
2bddffeaec IS31FL3737 Global Current Setting (#17420) 2022-06-19 14:32:37 -07:00
4e3db51e92 Merge remote-tracking branch 'origin/master' into develop 2022-06-19 18:17:00 +00:00
c725b6bf89 [Core] Mouse key kinetic mode fix (#17176)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-06-19 11:15:55 -07:00
d6eff188e9 Merge remote-tracking branch 'origin/master' into develop 2022-06-19 17:59:31 +00:00
7f8886a1b7 Merge remote-tracking branch 'origin/master' into develop 2022-06-18 22:32:54 +00:00
0da6562c4d Make default layer size 16-bit (#15286)
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2022-06-19 07:37:51 +10:00
cfcd647b2e Merge remote-tracking branch 'origin/master' into develop 2022-06-18 07:34:32 +00:00
17ec1650fd Additional schema fixes (#17414) 2022-06-18 15:30:46 +10:00
7b3ee1db8c Minor schema fixes (#14200)
Validating using AJV
2022-06-18 02:42:32 +01:00
fe680a8568 [Core] Split ChibiOS usart split driver in protocol and hardware driver part (#16669) 2022-06-18 08:04:17 +10:00
6d67e9df4b [Core] Allow usage of ChibiOS's SIO driver for split keyboards (#15907) 2022-06-17 22:06:44 +02:00
e44604c256 Merge remote-tracking branch 'origin/master' into develop 2022-06-17 03:50:47 +00:00
00872ea7e7 Merge remote-tracking branch 'origin/master' into develop 2022-06-16 22:36:12 +00:00
c251d88934 Merge remote-tracking branch 'origin/master' into develop 2022-06-16 22:35:55 +00:00
4610a6bf49 Merge remote-tracking branch 'origin/master' into develop 2022-06-16 22:34:39 +00:00
999b91fbd9 SPI Bugfix for ChibiOS 21.11.1 -- also rollback AW20216 mode change issue. (#17371) 2022-06-17 08:03:38 +10:00
9e35a1f617 Merge remote-tracking branch 'origin/master' into develop 2022-06-16 21:46:41 +00:00
4e8b864258 Merge remote-tracking branch 'origin/master' into develop 2022-06-16 21:16:35 +00:00
e312fa44e2 Merge remote-tracking branch 'origin/master' into develop 2022-06-16 18:21:12 +00:00
0b1bed1d41 Use --exclude-from=.gitignore in place of --exclude-standard (#17399) 2022-06-16 11:20:12 -07:00
ef80a1dd67 Update V-USB submodule (#17385) 2022-06-16 21:02:40 +10:00
050fa9062f tap-dance: Rename tests so that tap_dance is used consistently (#17396) 2022-06-16 08:05:27 +02:00
fa9ecc431d Merge remote-tracking branch 'origin/master' into develop 2022-06-16 02:08:34 +00:00
cac5f96275 Merge remote-tracking branch 'origin/master' into develop 2022-06-16 02:05:06 +00:00
fa8fb60279 Dump out the largest symbols in flash and in RAM. (#17397) 2022-06-16 09:55:15 +10:00
589bdedc47 Merge remote-tracking branch 'origin/master' into develop 2022-06-15 21:44:32 +00:00
6e10a80174 Merge remote-tracking branch 'origin/master' into develop 2022-06-15 20:31:47 +00:00
c40af06871 Merge remote-tracking branch 'origin/master' into develop 2022-06-15 20:31:09 +00:00
81d2218cee Merge remote-tracking branch 'origin/master' into develop 2022-06-15 00:14:34 +00:00
85d84938cf Merge remote-tracking branch 'origin/master' into develop 2022-06-14 23:42:47 +00:00
adf4c27db2 Merge remote-tracking branch 'origin/master' into develop 2022-06-14 23:32:38 +00:00
4cde5c243b Merge remote-tracking branch 'origin/master' into develop 2022-06-14 13:55:32 +00:00
87e1ff218d backlight|led 'on state' for DD configuration (#17383) 2022-06-14 12:30:31 +01:00
2f4c7697a9 Merge remote-tracking branch 'origin/master' into develop 2022-06-14 10:16:16 +00:00
84d3575fdb Merge remote-tracking branch 'origin/master' into develop 2022-06-14 10:13:29 +00:00
1706da9054 tap-dance: Restructure code and document in more detail (#16394) 2022-06-13 22:12:55 +02:00
b17324498e Merge remote-tracking branch 'origin/master' into develop 2022-06-13 18:31:17 +00:00
0c82aafb8a Merge remote-tracking branch 'origin/master' into develop 2022-06-13 05:15:12 +00:00
577e9d89fa Merge remote-tracking branch 'origin/master' into develop 2022-06-13 01:16:03 +00:00
d21ee22cc5 Merge remote-tracking branch 'origin/master' into develop 2022-06-13 01:06:36 +00:00
5ba04d1204 Merge remote-tracking branch 'origin/master' into develop 2022-06-13 00:55:54 +00:00
10345adaa5 Merge remote-tracking branch 'origin/master' into develop 2022-06-13 00:44:22 +00:00
0d64038b73 Update LUFA submodule (#17368) 2022-06-13 09:17:24 +10:00
d288121f21 Merge remote-tracking branch 'origin/master' into develop 2022-06-12 18:30:50 +00:00
191c180644 Merge remote-tracking branch 'origin/master' into develop 2022-06-12 14:35:07 +00:00
90765aaefd Merge remote-tracking branch 'origin/master' into develop 2022-06-12 10:47:53 +00:00
0d991b8873 Merge remote-tracking branch 'origin/master' into develop 2022-06-11 18:25:28 +00:00
1a7a6f313e Merge remote-tracking branch 'origin/master' into develop 2022-06-11 18:19:21 +00:00
af6435d44d qmk doctor: show arch for macOS (#17356) 2022-06-11 19:10:09 +01:00
5887bf7158 Merge remote-tracking branch 'origin/master' into develop 2022-06-11 17:53:14 +00:00
80034a847f Ensure that rgb+via compiles in all cases (#17355) 2022-06-10 22:01:46 -07:00
568924c76c Add missing bracket for VIA brightness scaling (#17354) 2022-06-10 19:07:58 -07:00
0fd08da806 Scale brigthness for VIA (#17352)
Co-authored-by: yiancar <yiancar@gmail.com>
2022-06-10 17:20:01 -07:00
d05a1deb7c Merge remote-tracking branch 'origin/master' into develop 2022-06-10 22:24:58 +00:00
6b838785b7 Merge remote-tracking branch 'origin/master' into develop 2022-06-10 10:45:24 +00:00
97fc4f1b6a Merge remote-tracking branch 'origin/master' into develop 2022-06-10 07:46:24 +00:00
738cec9bd5 Merge remote-tracking branch 'origin/master' into develop 2022-06-10 03:43:25 +00:00
ef8a30250b Merge remote-tracking branch 'origin/master' into develop 2022-06-10 03:41:14 +00:00
ed15a579a7 Merge remote-tracking branch 'origin/master' into develop 2022-06-10 03:26:21 +00:00
c84d058c8b Merge remote-tracking branch 'origin/master' into develop 2022-06-10 01:16:19 +00:00
e5e2cd94be Merge remote-tracking branch 'origin/master' into develop 2022-06-10 01:13:18 +00:00
474b4083ae Merge remote-tracking branch 'origin/master' into develop 2022-06-09 20:02:58 +00:00
c5f26b0e9a Merge remote-tracking branch 'origin/master' into develop 2022-06-09 18:54:04 +00:00
d2abfaeacd Fixup Pimoroni trackball code (#17335) 2022-06-09 10:09:00 -07:00
0ab51ee29d Add support for large Mouse Reports (#16371)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-06-08 18:39:16 -07:00
84944df6a6 Merge remote-tracking branch 'origin/master' into develop 2022-06-08 21:52:12 +00:00
728f7308af Merge remote-tracking branch 'origin/master' into develop 2022-06-08 19:21:10 +00:00
0e2009c669 Merge remote-tracking branch 'origin/master' into develop 2022-06-08 06:24:16 +00:00
8a6fd0dc7e Merge remote-tracking branch 'origin/master' into develop 2022-06-08 01:48:42 +00:00
1e1f387be7 Merge remote-tracking branch 'origin/master' into develop 2022-06-08 00:48:36 +00:00
1085500e89 Rework paths for eeprom locations. (#17326)
* Rework paths for eeprom locations.

* File relocation.

* Wrong file move.

* Fixup test paths.
2022-06-08 09:42:35 +10:00
6df5fce073 Merge remote-tracking branch 'origin/master' into develop 2022-06-07 18:33:49 +00:00
5141d6eeb1 Merge remote-tracking branch 'origin/master' into develop 2022-06-07 18:31:22 +00:00
fe08bbc4a0 Merge remote-tracking branch 'origin/master' into develop 2022-06-07 18:30:09 +00:00
da1c562ddf Merge remote-tracking branch 'origin/master' into develop 2022-06-07 18:28:46 +00:00
36109a887a Merge remote-tracking branch 'origin/master' into develop 2022-06-07 18:23:09 +00:00
b74509d4ae Merge remote-tracking branch 'origin/master' into develop 2022-06-07 18:15:24 +00:00
9d226b92a8 Merge remote-tracking branch 'origin/master' into develop 2022-06-07 18:01:59 +00:00
11836128fc Merge remote-tracking branch 'origin/master' into develop 2022-06-07 13:32:48 +00:00
6f82647e8d Merge remote-tracking branch 'origin/master' into develop 2022-06-06 22:30:38 +00:00
85b3b98570 Move SPLIT_HAND_PIN setup to split_pre_init (#17271)
* Move SPLIT_HAND_PIN setup to split_pre_init

* doppelganger should use old behaviour

* Add comment for future

Co-authored-by: Joel Challis <git@zvecr.com>

Co-authored-by: Joel Challis <git@zvecr.com>
2022-06-06 01:33:32 +01:00
e89478eb0f [Core] Update C standard to GNU11, C++ to GNU++14 (#17114) 2022-06-06 08:47:22 +10:00
6221c86186 Merge remote-tracking branch 'origin/master' into develop 2022-06-05 19:06:37 +00:00
d6402fe9fb Merge remote-tracking branch 'origin/master' into develop 2022-06-05 11:15:11 +02:00
08c556b78b Add keymap wrappers for introspection into the keymap. (#17229)
* Introspection handlers for keymaps.

* Renaming.
2022-06-05 10:26:02 +10:00
af84772a5f initial 24lc32a (#16990) 2022-06-04 01:53:24 +01:00
b1a3f806f5 Merge remote-tracking branch 'origin/master' into develop 2022-06-04 00:45:35 +00:00
bb324e5b3e Merge remote-tracking branch 'origin/master' into develop 2022-06-03 11:13:22 +00:00
267f392237 Merge remote-tracking branch 'origin/master' into develop 2022-06-02 18:30:44 +00:00
b94baa8bc3 Merge remote-tracking branch 'origin/master' into develop 2022-06-02 17:20:59 +00:00
86e93d7654 Merge remote-tracking branch 'origin/master' into develop 2022-06-02 16:51:28 +00:00
344b8410f7 Merge remote-tracking branch 'origin/master' into develop 2022-06-02 16:38:09 +00:00
8bb2c66c88 Merge remote-tracking branch 'origin/master' into develop 2022-06-02 16:18:53 +00:00
73bd3dff8c Merge remote-tracking branch 'origin/master' into develop 2022-06-02 13:03:13 +00:00
af02baae78 Allow larger SPLIT_USB_TIMEOUT with default SPLIT_USB_TIMEOUT_POLL (#17272)
* Switch SPLIT_USB_DETECT loop to uint16_t

* Add assertion
2022-06-01 00:10:05 +01:00
f9e97fd3c3 Merge remote-tracking branch 'origin/master' into develop 2022-05-31 21:38:36 +00:00
38839a9105 Merge remote-tracking branch 'origin/master' into develop 2022-05-31 11:32:26 +00:00
6fdce80822 Merge remote-tracking branch 'origin/master' into develop 2022-05-31 08:22:54 +00:00
bbab8eb993 Make bootloader_jump for dualbank STM32 respect STM32_BOOTLOADER_DUAL_BANK_DELAY (#17178) 2022-05-30 23:20:10 -07:00
ecce9900c9 Improve PS/2 mouse performance (#17111) 2022-05-30 23:15:17 -07:00
d44a950c10 Use TAP_HOLD_CAPS_DELAY for KC_LOCKING_CAPS_LOCK (#17099) 2022-05-30 22:55:33 -07:00
8545473307 Removes terminal from QMK. (#17258) 2022-05-30 22:38:08 -07:00
9e2fe4eff6 Make SPI Mode configurable and change default mode to 3 (#17263) 2022-05-31 15:28:55 +10:00
e869d089b7 Merge remote-tracking branch 'origin/master' into develop 2022-05-31 05:03:28 +00:00
f663f84413 Merge remote-tracking branch 'origin/master' into develop 2022-05-31 04:47:02 +00:00
044486500c Merge remote-tracking branch 'origin/master' into develop 2022-05-31 04:09:14 +00:00
a099579aa0 Merge remote-tracking branch 'origin/master' into develop 2022-05-31 02:09:37 +00:00
67e80780bb Merge remote-tracking branch 'origin/master' into develop 2022-05-30 22:44:05 +00:00
6e4e50d5aa Merge remote-tracking branch 'origin/master' into develop 2022-05-30 22:06:28 +00:00
2de70e6f2d Add uf2-split-* make targets. (#17257) 2022-05-31 08:04:50 +10:00
31fb141528 Merge remote-tracking branch 'origin/master' into develop 2022-05-30 21:46:00 +00:00
6b640db4bb Merge remote-tracking branch 'origin/master' into develop 2022-05-30 18:29:09 +00:00
e4be4d282c Merge remote-tracking branch 'origin/master' into develop 2022-05-30 18:07:56 +00:00
9a2943d221 Merge remote-tracking branch 'origin/master' into develop 2022-05-30 14:34:54 +00:00
f03fe5b917 Merge remote-tracking branch 'origin/master' into develop 2022-05-29 19:16:27 +00:00
6123698270 Merge remote-tracking branch 'origin/master' into develop 2022-05-29 05:18:24 +00:00
a765f730b1 Merge remote-tracking branch 'origin/master' into develop 2022-05-29 05:10:23 +00:00
3ce029c7fd Merge remote-tracking branch 'origin/master' into develop 2022-05-28 23:07:45 +00:00
87c3a53716 Branch point after 2022-05-28 Breaking Change. 2022-05-29 08:16:00 +10:00
103c08cc75 Merge branch 'master' into develop 2022-05-29 08:13:56 +10:00
6007 changed files with 64823 additions and 25371 deletions

View File

@ -7,6 +7,9 @@ on:
paths:
- 'keyboards/**'
- 'layouts/community/**'
- 'lib/python/**'
- 'data/**'
- '.github/workflows/api.yml'
workflow_dispatch:
jobs:

View File

@ -7,6 +7,9 @@ on:
paths:
- 'keyboards/**'
- 'layouts/community/**'
- 'lib/python/**'
- 'data/**'
- '.github/workflows/develop_api.yml'
workflow_dispatch:
jobs:

3
.gitmodules vendored
View File

@ -18,3 +18,6 @@
[submodule "lib/printf"]
path = lib/printf
url = https://github.com/qmk/printf
[submodule "lib/pico-sdk"]
path = lib/pico-sdk
url = https://github.com/qmk/pico-sdk.git

View File

@ -401,6 +401,7 @@ ifndef SKIP_GIT
if [ ! -e lib/lufa ]; then git submodule sync lib/lufa && git submodule update --depth 50 --init lib/lufa; fi
if [ ! -e lib/vusb ]; then git submodule sync lib/vusb && git submodule update --depth 50 --init lib/vusb; fi
if [ ! -e lib/printf ]; then git submodule sync lib/printf && git submodule update --depth 50 --init lib/printf; fi
if [ ! -e lib/pico-sdk ]; then git submodule sync lib/pico-sdk && git submodule update --depth 50 --init lib/pico-sdk; fi
git submodule status --recursive 2>/dev/null | \
while IFS= read -r x; do \
case "$$x" in \
@ -428,9 +429,15 @@ lib/%:
.PHONY: git-submodule
git-submodule:
[ -e lib/ugfx ] && rm -rf lib/ugfx || true
[ -e lib/pico-sdk ] && rm -rf lib/pico-sdk || true
[ -e lib/chibios-contrib/ext/mcux-sdk ] && rm -rf lib/chibios-contrib/ext/mcux-sdk || true
git submodule sync --recursive
git submodule update --init --recursive --progress
.PHONY: git-submodules
git-submodules: git-submodule
.PHONY: list-keyboards
list-keyboards:
util/list_keyboards.sh | sort -u | tr '\n' ' '

View File

@ -105,8 +105,8 @@ ifeq ($(strip $(BOOTLOADER)), halfkay)
ifeq ($(strip $(MCU)), at90usb1286)
BOOTLOADER_SIZE = 1024
endif
# Teensy LC, 3.x
ifneq (,$(filter $(MCU_ORIG), MKL26Z64 MK20DX128 MK20DX256 MK66FX1M0))
# Teensy LC, 3.0, 3.1/2, 3.5, 3.6
ifneq (,$(filter $(MCU_ORIG), MKL26Z64 MK20DX128 MK20DX256 MK64FX512 MK66FX1M0))
FIRMWARE_FORMAT = hex
endif
endif
@ -199,6 +199,11 @@ endif
ifeq ($(strip $(BOOTLOADER)), tinyuf2)
OPT_DEFS += -DBOOTLOADER_TINYUF2
BOOTLOADER_TYPE = tinyuf2
FIRMWARE_FORMAT = uf2
endif
ifeq ($(strip $(BOOTLOADER)), rp2040)
OPT_DEFS += -DBOOTLOADER_RP2040
BOOTLOADER_TYPE = rp2040
endif
ifeq ($(strip $(BOOTLOADER)), halfkay)
OPT_DEFS += -DBOOTLOADER_HALFKAY

View File

@ -13,6 +13,14 @@ endif
include paths.mk
include $(BUILDDEFS_PATH)/message.mk
# Helper to add defines with a 'QMK_' prefix
define add_qmk_prefix_defs
ifdef $1
# Need to cater for 'STM32L4xx+'
OPT_DEFS += -DQMK_$(2)="$($1)" -DQMK_$(2)_$(shell echo $($1) | sed -e 's@+@Plus@g' -e 's@[^a-zA-Z0-9]@_@g' | tr '[:lower:]' '[:upper:]')
endif
endef
# Set the qmk cli to use
QMK_BIN ?= qmk
@ -390,10 +398,18 @@ ifneq ("$(KEYMAP_H)","")
CONFIG_H += $(KEYMAP_H)
endif
OPT_DEFS += -DKEYMAP_C=\"$(KEYMAP_C)\"
# If a keymap or userspace places their keymap array in another file instead, allow for it to be included
# !!NOTE!! -- For this to work, the source file cannot be part of $(SRC), so users should not add it via `SRC += <file>`
ifneq ($(strip $(INTROSPECTION_KEYMAP_C)),)
OPT_DEFS += -DINTROSPECTION_KEYMAP_C=\"$(strip $(INTROSPECTION_KEYMAP_C))\"
endif
# project specific files
SRC += \
$(KEYBOARD_SRC) \
$(KEYMAP_C) \
$(QUANTUM_DIR)/keymap_introspection.c \
$(QUANTUM_SRC) \
$(QUANTUM_DIR)/main.c \
@ -436,6 +452,14 @@ else
include $(TMK_PATH)/protocol/$(PLATFORM_KEY).mk
endif
# Setup definitions based on the selected MCU
$(eval $(call add_qmk_prefix_defs,MCU_ORIG,MCU))
$(eval $(call add_qmk_prefix_defs,MCU_ARCH,MCU_ARCH))
$(eval $(call add_qmk_prefix_defs,MCU_PORT_NAME,MCU_PORT_NAME))
$(eval $(call add_qmk_prefix_defs,MCU_FAMILY,MCU_FAMILY))
$(eval $(call add_qmk_prefix_defs,MCU_SERIES,MCU_SERIES))
$(eval $(call add_qmk_prefix_defs,BOARD,BOARD))
# TODO: remove this bodge?
PROJECT_DEFS := $(OPT_DEFS)
PROJECT_INC := $(VPATH) $(EXTRAINCDIRS) $(KEYBOARD_PATHS)
@ -469,6 +493,19 @@ check-size: build
check-md5: build
objs-size: build
ifeq ($(strip $(TOP_SYMBOLS)),yes)
all: top-symbols
check-size: top-symbols
top-symbols: build
echo "###########################################"
echo "# Highest flash usage:"
$(NM) -Crtd --size-sort $(BUILD_DIR)/$(TARGET).elf | grep -i ' [t] ' | head -n10 | sed -e 's#^0000000# #g' -e 's#^000000# #g' -e 's#^00000# #g' -e 's#^0000# #g' -e 's#^000# #g' -e 's#^00# #g' -e 's#^0# #g'
echo "###########################################"
echo "# Highest RAM usage:"
$(NM) -Crtd --size-sort $(BUILD_DIR)/$(TARGET).elf | grep -i ' [dbv] ' | head -n10 | sed -e 's#^0000000# #g' -e 's#^000000# #g' -e 's#^00000# #g' -e 's#^0000# #g' -e 's#^000# #g' -e 's#^00# #g' -e 's#^0# #g'
echo "###########################################"
endif
include $(BUILDDEFS_PATH)/show_options.mk
include $(BUILDDEFS_PATH)/common_rules.mk

View File

@ -38,11 +38,11 @@ CREATE_MAP := no
VPATH += \
$(LIB_PATH)/googletest \
$(LIB_PATH)/googlemock \
$(LIB_PATH)/printf
$(COMMON_VPATH) \
$(TEST_PATH)
all: elf
VPATH += $(COMMON_VPATH)
PLATFORM:=TEST
PLATFORM_KEY:=test
BOOTLOADER_TYPE:=none
@ -63,6 +63,8 @@ include $(TMK_PATH)/protocol.mk
include $(QUANTUM_PATH)/debounce/tests/rules.mk
include $(QUANTUM_PATH)/encoder/tests/rules.mk
include $(QUANTUM_PATH)/sequencer/tests/rules.mk
include $(QUANTUM_PATH)/wear_leveling/tests/rules.mk
include $(QUANTUM_PATH)/logging/print.mk
include $(PLATFORM_PATH)/test/rules.mk
ifneq ($(filter $(FULL_TESTS),$(TEST)),)
include $(BUILDDEFS_PATH)/build_full_test.mk
@ -70,7 +72,6 @@ endif
$(TEST)_SRC += \
tests/test_common/main.c \
$(LIB_PATH)/printf/printf.c \
$(QUANTUM_PATH)/logging/print.c
$(TEST_OBJ)/$(TEST)_SRC := $($(TEST)_SRC)

File diff suppressed because it is too large Load Diff

View File

@ -1,19 +1,5 @@
# Hey Emacs, this is a -*- makefile -*-
#----------------------------------------------------------------------------
# WinAVR Makefile Template written by Eric B. Weddington, Jg Wunsch, et al.
#
# Released to the Public Domain
#
# Additional material for this makefile was written by:
# Peter Fleury
# Tim Henigan
# Colin O'Flynn
# Reiner Patommel
# Markus Pfaff
# Sander Pool
# Frederik Rouleau
# Carlos Lamas
#
# Enable vpath seraching for source files only
# Without this, output files, could be read from the wrong .build directories
@ -38,36 +24,15 @@ NO_LTO_OBJ := $(filter %.a,$(OBJ))
MASTER_OUTPUT := $(firstword $(OUTPUTS))
# Output format. (can be srec, ihex, binary)
FORMAT = ihex
# Optimization level, can be [0, 1, 2, 3, s].
# 0 = turn off optimization. s = optimize for size.
# (Note: 3 is not always the best optimization level. See avr-libc FAQ.)
OPT ?= s
# Compiler flag to set the C Standard level.
# c89 = "ANSI" C
# gnu89 = c89 plus GCC extensions
# c99 = ISO C99 standard (not yet fully implemented)
# gnu99 = c99 plus GCC extensions
CSTANDARD = -std=gnu99
# Place -D or -U options here for C sources
#CDEFS +=
# Place -D or -U options here for ASM sources
#ADEFS +=
# Place -D or -U options here for C++ sources
#CXXDEFS += -D__STDC_LIMIT_MACROS
#CXXDEFS += -D__STDC_CONSTANT_MACROS
#CXXDEFS +=
# Compiler flag to set the C and C++ language standard level
CSTANDARD = -std=gnu11
CXXSTANDARD = -std=gnu++14
# Speed up recompilations by opt-in usage of ccache
USE_CCACHE ?= no
@ -75,12 +40,8 @@ ifneq ($(USE_CCACHE),no)
CC_PREFIX ?= ccache
endif
#---------------- Compiler Options C ----------------
# -g*: generate debugging information
# -O*: optimization level
# -f...: tuning, see GCC manual and avr-libc documentation
# -Wall...: warning level
# -Wa,...: tell GCC to pass this to the assembler.
#---------------- C Compiler Options ----------------
ifeq ($(strip $(LTO_ENABLE)), yes)
ifeq ($(PLATFORM),ARM_ATSAM)
$(info Enabling LTO on arm_atsam-targeting boards is known to have a high likelihood of failure.)
@ -111,23 +72,14 @@ CFLAGS += -Wstrict-prototypes
ifneq ($(strip $(ALLOW_WARNINGS)), yes)
CFLAGS += -Werror
endif
#CFLAGS += -mshort-calls
#CFLAGS += -fno-unit-at-a-time
#CFLAGS += -Wundef
#CFLAGS += -Wunreachable-code
#CFLAGS += -Wsign-compare
CFLAGS += $(CSTANDARD)
# This fixes lots of keyboards linking errors but SHOULDN'T BE A FINAL SOLUTION
# Fixing of multiple variable definitions must be made.
CFLAGS += -fcommon
#---------------- Compiler Options C++ ----------------
# -g*: generate debugging information
# -O*: optimization level
# -f...: tuning, see GCC manual and avr-libc documentation
# -Wall...: warning level
# -Wa,...: tell GCC to pass this to the assembler.
#---------------- C++ Compiler Options ----------------
ifeq ($(strip $(DEBUG_ENABLE)),yes)
CXXFLAGS += -g$(DEBUG)
endif
@ -141,57 +93,17 @@ CXXFLAGS += -Wundef
ifneq ($(strip $(ALLOW_WARNINGS)), yes)
CXXFLAGS += -Werror
endif
#CXXFLAGS += -mshort-calls
#CXXFLAGS += -fno-unit-at-a-time
#CXXFLAGS += -Wstrict-prototypes
#CXXFLAGS += -Wunreachable-code
#CXXFLAGS += -Wsign-compare
#CXXFLAGS += $(CSTANDARD)
#---------------- Assembler Options ----------------
ASFLAGS += $(ADEFS)
ifeq ($(VERBOSE_AS_CMD),yes)
ASFLAGS += -v
endif
#---------------- Library Options ----------------
# Minimalistic printf version
PRINTF_LIB_MIN = -Wl,-u,vfprintf -lprintf_min
# Floating point printf version (requires MATH_LIB = -lm below)
PRINTF_LIB_FLOAT = -Wl,-u,vfprintf -lprintf_flt
# If this is left blank, then it will use the Standard printf version.
PRINTF_LIB =
#PRINTF_LIB = $(PRINTF_LIB_MIN)
#PRINTF_LIB = $(PRINTF_LIB_FLOAT)
# Minimalistic scanf version
SCANF_LIB_MIN = -Wl,-u,vfscanf -lscanf_min
# Floating point + %[ scanf version (requires MATH_LIB = -lm below)
SCANF_LIB_FLOAT = -Wl,-u,vfscanf -lscanf_flt
# If this is left blank, then it will use the Standard scanf version.
SCANF_LIB =
#SCANF_LIB = $(SCANF_LIB_MIN)
#SCANF_LIB = $(SCANF_LIB_FLOAT)
MATH_LIB = -lm
CREATE_MAP ?= yes
#---------------- Linker Options ----------------
# -Wl,...: tell GCC to pass this to linker.
# -Map: create map file
# --cref: add cross reference to map file
#
# Comennt out "--relax" option to avoid a error such:
# (.vectors+0x30): relocation truncated to fit: R_AVR_13_PCREL against symbol `__vector_12'
#
CREATE_MAP ?= yes
ifeq ($(CREATE_MAP),yes)
LDFLAGS += -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref
endif
@ -201,20 +113,11 @@ endif
#LDFLAGS += -Wl,--relax
LDFLAGS += $(EXTMEMOPTS)
LDFLAGS += $(patsubst %,-L%,$(EXTRALIBDIRS))
LDFLAGS += $(PRINTF_LIB) $(SCANF_LIB) $(MATH_LIB)
#LDFLAGS += -T linker_script.x
LDFLAGS += -lm
# You can give EXTRALDFLAGS at 'make' command line.
LDFLAGS += $(EXTRALDFLAGS)
#---------------- Assembler Listings ----------------
# -Wa,...: tell GCC to pass this to the assembler.
# -adhlns: create listing
# -gstabs: have the assembler create line number information; note that
# for use in COFF files, additional information about filenames
# and function names needs to be present in the assembler source
# files -- see avr-libc docs [FIXME: not yet described there]
# -listing-cont-lines: Sets the maximum number of continuation lines of hex
# dump that will be displayed for a given single line of source input.
ADHLNS_ENABLE ?= no
ifeq ($(ADHLNS_ENABLE),yes)
@ -468,6 +371,7 @@ show_path:
dump_vars: ERROR_IF_EMPTY=""
dump_vars: ERROR_IF_NONBOOL=""
dump_vars: ERROR_IF_UNSET=""
dump_vars: CATASTROPHIC_ERROR=""
dump_vars:
@$(foreach V,$(sort $(.VARIABLES)),$(if $(filter-out environment% default automatic,$(origin $V)),$(info $V=$($V))))

View File

@ -25,8 +25,6 @@ GENERIC_FEATURES = \
DIP_SWITCH \
DYNAMIC_KEYMAP \
DYNAMIC_MACRO \
ENCODER \
ENCODER_MAP \
GRAVE_ESC \
HAPTIC \
KEY_LOCK \

View File

@ -87,6 +87,33 @@ ifneq ($(findstring MK20DX256, $(MCU)),)
BOARD ?= PJRC_TEENSY_3_1
endif
ifneq ($(findstring MK64FX512, $(MCU)),)
# Cortex version
MCU = cortex-m4
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
ARMV = 7
## chip/board settings
# - the next two should match the directories in
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
MCU_FAMILY = KINETIS
MCU_SERIES = K60x
# Linker script to use
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
# or <keyboard_dir>/ld/
MCU_LDSCRIPT ?= MK64FX512
# Startup code to use
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
MCU_STARTUP ?= k60x
# Board: it should exist either in <chibios>/os/hal/boards/,
# <keyboard_dir>/boards/, or drivers/boards/
BOARD ?= PJRC_TEENSY_3_5
endif
ifneq ($(findstring MK66FX1M0, $(MCU)),)
# Cortex version
MCU = cortex-m4
@ -116,6 +143,41 @@ ifneq ($(findstring MK66FX1M0, $(MCU)),)
BOARD ?= PJRC_TEENSY_3_6
endif
ifneq ($(findstring RP2040, $(MCU)),)
# Cortex version
MCU = cortex-m0plus
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
CHIBIOS_PORT = ARMv6-M-RP2
## chip/board settings
# - the next two should match the directories in
# <chibios[-contrib]>/os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES)
# OR
# <chibios[-contrib]>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
MCU_FAMILY = RP
MCU_SERIES = RP2040
# Linker script to use
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
# or <keyboard_dir>/ld/
STARTUPLD_CONTRIB = $(CHIBIOS_CONTRIB)/os/common/startup/ARMCMx/compilers/GCC/ld
MCU_LDSCRIPT ?= RP2040_FLASH_TIMECRIT
LDFLAGS += -L $(STARTUPLD_CONTRIB)
# Startup code to use
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
MCU_STARTUP ?= rp2040
# Board: it should exist either in <chibios>/os/hal/boards/,
# <keyboard_dir>/boards/, or drivers/boards/
BOARD ?= GENERIC_PROMICRO_RP2040
# Default UF2 Bootloader settings
UF2_FAMILY ?= RP2040
FIRMWARE_FORMAT ?= uf2
endif
ifneq ($(findstring STM32F042, $(MCU)),)
# Cortex version
MCU = cortex-m0
@ -286,7 +348,8 @@ ifneq ($(findstring STM32F401, $(MCU)),)
# or <keyboard_dir>/ld/
ifeq ($(strip $(BOOTLOADER)), tinyuf2)
MCU_LDSCRIPT ?= STM32F401xC_tinyuf2
FIRMWARE_FORMAT ?= uf2
EEPROM_DRIVER ?= wear_leveling
WEAR_LEVELING_DRIVER ?= legacy
else
MCU_LDSCRIPT ?= STM32F401xC
endif
@ -297,7 +360,7 @@ ifneq ($(findstring STM32F401, $(MCU)),)
# Board: it should exist either in <chibios>/os/hal/boards/,
# <keyboard_dir>/boards/, or drivers/boards/
BOARD ?= BLACKPILL_STM32_F401
BOARD ?= GENERIC_STM32_F401XC
USE_FPU ?= yes
@ -402,7 +465,8 @@ ifneq ($(findstring STM32F411, $(MCU)),)
# or <keyboard_dir>/ld/
ifeq ($(strip $(BOOTLOADER)), tinyuf2)
MCU_LDSCRIPT ?= STM32F411xE_tinyuf2
FIRMWARE_FORMAT ?= uf2
EEPROM_DRIVER ?= wear_leveling
WEAR_LEVELING_DRIVER ?= legacy
else
MCU_LDSCRIPT ?= STM32F411xE
endif
@ -413,7 +477,7 @@ ifneq ($(findstring STM32F411, $(MCU)),)
# Board: it should exist either in <chibios>/os/hal/boards/,
# <keyboard_dir>/boards/, or drivers/boards/
BOARD ?= BLACKPILL_STM32_F411
BOARD ?= GENERIC_STM32_F411XE
USE_FPU ?= yes

View File

@ -5,7 +5,6 @@ BUILD_OPTION_NAMES = \
CONSOLE_ENABLE \
COMMAND_ENABLE \
NKRO_ENABLE \
TERMINAL_ENABLE \
CUSTOM_MATRIX \
DEBOUNCE_TYPE \
SPLIT_KEYBOARD \
@ -46,6 +45,7 @@ OTHER_OPTION_NAMES = \
LEADER_ENABLE \
PRINTING_ENABLE \
STENO_ENABLE \
STENO_PROTOCOL \
TAP_DANCE_ENABLE \
VIRTSER_ENABLE \
OLED_ENABLE \

View File

@ -4,6 +4,7 @@ FULL_TESTS := $(notdir $(TEST_LIST))
include $(QUANTUM_PATH)/debounce/tests/testlist.mk
include $(QUANTUM_PATH)/encoder/tests/testlist.mk
include $(QUANTUM_PATH)/sequencer/tests/testlist.mk
include $(QUANTUM_PATH)/wear_leveling/tests/testlist.mk
include $(PLATFORM_PATH)/test/testlist.mk
define VALIDATE_TEST_LIST

View File

@ -16,6 +16,30 @@
"board": "QMK_PROTON_C",
"pin_compatible": "promicro"
},
"kb2040": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
},
"promicro_rp2040": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
},
"blok": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
},
"bit_c_pro": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
},
"bluepill": {
"processor": "STM32F103",
"bootloader": "stm32duino",
@ -30,6 +54,18 @@
"processor": "STM32F411",
"bootloader": "stm32-dfu",
"board": "BLACKPILL_STM32_F411"
},
"stemcell": {
"processor": "STM32F411",
"bootloader": "tinyuf2",
"board": "STEMCELL",
"pin_compatible": "promicro"
},
"bonsai_c4": {
"processor": "STM32F411",
"bootloader": "stm32-dfu",
"board": "GENERIC_STM32_F411XE",
"pin_compatible": "promicro"
}
}
}
}

View File

@ -13,6 +13,7 @@
"AUDIO_VOICES": {"info_key": "audio.voices", "value_type": "bool"},
"BACKLIGHT_BREATHING": {"info_key": "backlight.breathing", "value_type": "bool"},
"BREATHING_PERIOD": {"info_key": "backlight.breathing_period", "value_type": "int"},
"BACKLIGHT_ON_STATE": {"info_key": "backlight.on_state", "value_type": "int"},
"BACKLIGHT_PIN": {"info_key": "backlight.pin"},
"BOTH_SHIFTS_TURNS_ON_CAPS_WORD": {"info_key": "caps_word.both_shifts_turns_on", "value_type": "bool"},
"CAPS_WORD_IDLE_TIMEOUT": {"info_key": "caps_word.idle_timeout", "value_type": "int"},
@ -36,6 +37,9 @@
"LED_CAPS_LOCK_PIN": {"info_key": "indicators.caps_lock"},
"LED_NUM_LOCK_PIN": {"info_key": "indicators.num_lock"},
"LED_SCROLL_LOCK_PIN": {"info_key": "indicators.scroll_lock"},
"LED_COMPOSE_PIN": {"info_key": "indicators.compose"},
"LED_KANA_PIN": {"info_key": "indicators.kana"},
"LED_PIN_ON_STATE": {"info_key": "indicators.on_state", "value_type": "int"},
"MANUFACTURER": {"info_key": "manufacturer"},
"MATRIX_HAS_GHOST": {"info_key": "matrix_pins.ghost", "value_type": "bool"},
"MATRIX_IO_DELAY": {"info_key": "matrix_pins.io_delay", "value_type": "int"},
@ -53,7 +57,6 @@
"RGB_DI_PIN": {"info_key": "rgblight.pin"},
"RGBLED_NUM": {"info_key": "rgblight.led_count", "value_type": "int"},
"RGBLED_SPLIT": {"info_key": "rgblight.split_count", "value_type": "array.int"},
"RGBLIGHT_ANIMATIONS": {"info_key": "rgblight.animations.all", "value_type": "bool"},
"RGBLIGHT_EFFECT_ALTERNATING": {"info_key": "rgblight.animations.alternating", "value_type": "bool"},
"RGBLIGHT_EFFECT_BREATHING": {"info_key": "rgblight.animations.breathing", "value_type": "bool"},
"RGBLIGHT_EFFECT_CHRISTMAS": {"info_key": "rgblight.animations.christmas", "value_type": "bool"},
@ -80,7 +83,6 @@
"VENDOR_ID": {"info_key": "usb.vid", "value_type": "hex"},
"QMK_ESC_OUTPUT": {"info_key": "qmk_lufa_bootloader.esc_output"},
"QMK_ESC_INPUT": {"info_key": "qmk_lufa_bootloader.esc_input"},
"QMK_KEYS_PER_SCAN": {"info_key": "qmk.keys_per_scan", "value_type": "int"},
"QMK_LED": {"info_key": "qmk_lufa_bootloader.led"},
"QMK_SPEAKER": {"info_key": "qmk_lufa_bootloader.speaker"},
"SECURE_UNLOCK_SEQUENCE": {"info_key": "secure.unlock_sequence", "value_type": "array.array.int", "to_json": false},
@ -111,4 +113,7 @@
"DESCRIPTION": {"info_key": "_invalid.usb_description", "invalid": true},
"DEBOUNCING_DELAY": {"info_key": "_invalid.debouncing_delay", "invalid": true, replace_with: "DEBOUNCE"},
"PREVENT_STUCK_MODIFIERS": {"info_key": "_invalid.prevent_stuck_mods", "invalid": true},
"UNUSED_PINS": {"info_key": "_invalid.unused_pins", "deprecated": true},
"RGBLIGHT_ANIMATIONS": {"info_key": "rgblight.animations.all", "value_type": "bool", "deprecated": true},
"QMK_KEYS_PER_SCAN": {"info_key": "qmk.keys_per_scan", "value_type": "int", "deprecated": true},
}

View File

@ -14,11 +14,13 @@
"BOOTLOADER": {"info_key": "bootloader", "warn_duplicate": false},
"BLUETOOTH": {"info_key": "bluetooth.driver"},
"CAPS_WORD_ENABLE": {"info_key": "caps_word.enabled", "value_type": "bool"},
"ENCODER_ENABLE": {"info_key": "encoder.enabled", "value_type": "bool"},
"FIRMWARE_FORMAT": {"info_key": "build.firmware_format"},
"KEYBOARD_SHARED_EP": {"info_key": "usb.shared_endpoint.keyboard", "value_type": "bool"},
"MOUSE_SHARED_EP": {"info_key": "usb.shared_endpoint.mouse", "value_type": "bool"},
"LAYOUTS": {"info_key": "community_layouts", "value_type": "list"},
"LED_MATRIX_DRIVER": {"info_key": "led_matrix.driver"},
"RGB_MATRIX_DRIVER": {"info_key": "rgb_matrix.driver"},
"LTO_ENABLE": {"info_key": "build.lto", "value_type": "bool"},
"MCU": {"info_key": "processor", "warn_duplicate": false},
"MOUSEKEY_ENABLE": {"info_key": "mouse_key.enabled", "value_type": "bool"},
@ -28,6 +30,8 @@
"SPLIT_KEYBOARD": {"info_key": "split.enabled", "value_type": "bool"},
"SPLIT_TRANSPORT": {"info_key": "split.transport.protocol", "to_c": false},
"WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"},
"STENO_ENABLE": {"info_key": "stenography.enabled", "value_type": "bool"},
"STENO_PROTOCOL": {"info_key": "stenography.protocol"},
# Items we want flagged in lint
"CTPC": {"info_key": "_deprecated.ctpc", "deprecated": true, "replace_with": "CONVERT_TO=proton_c"},

View File

@ -242,9 +242,6 @@
honeycomb: {
target: 'keyhive/honeycomb'
},
id80: {
target: 'id80/ansi'
},
idb_60: {
target: 'idb/idb_60',
layouts: {
@ -826,6 +823,9 @@
geminate60: {
target: 'weirdo/geminate60'
},
gentleman65: {
target: 'jkeys_design/gentleman65'
},
georgi: {
target: 'gboards/georgi'
},
@ -844,6 +844,9 @@
halberd: {
target: 'kagizaraya/halberd'
},
handwired/hillside/0_1: {
target: 'handwired/hillside/48'
}
hecomi/alpha: {
target: 'takashiski/hecomi/alpha'
},
@ -857,7 +860,13 @@
target: 'idobao/id67/rgb'
},
id80: {
target: 'idobao/id80/v1'
target: 'idobao/id80/v2/ansi'
},
idobao/id80/v1/ansi: {
target: 'idobao/id80/v2/ansi'
},
idobao/id80/v1/iso: {
target: 'idobao/id80/v2/iso'
},
id87: {
target: 'idobao/id87/v1'

View File

@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema#",
"$id": "qmk.definitions.v1",
"title": "Common definitions used across QMK's jsonschemas.",
"type": "object",
@ -65,8 +65,7 @@
]
},
"key_unit": {
"type": "number",
"min": 0.25
"type": "number"
},
"keyboard": {
"oneOf": [
@ -103,8 +102,11 @@
"pattern": "^LINE_PIN\\d{1,2}$"
},
{
"type": "number",
"multipleOf": 1
"type": "string",
"pattern": "^GP\\d{1,2}$"
},
{
"type": "integer"
},
{
"type": "null"
@ -115,14 +117,12 @@
"type": "number"
},
"signed_int": {
"type": "number",
"multipleOf": 1
"type": "integer"
},
"signed_int_8": {
"type": "number",
"min": -127,
"max": 127,
"multipleOf": 1
"type": "integer",
"minimum": -127,
"maximum": 127
},
"string_array": {
"type": "array",
@ -138,17 +138,20 @@
},
"unsigned_decimal": {
"type": "number",
"min": 0
"minimum": 0
},
"unsigned_int": {
"type": "number",
"min": 0,
"multipleOf": 1
"type": "integer",
"minimum": 0
},
"unsigned_int_8": {
"type": "number",
"min": 0,
"max": 255,
"multipleOf": 1
"type": "integer",
"minimum": 0,
"maximum": 255
},
"bit": {
"type": "integer",
"minimum": 0,
"maximum": 1
}
}

View File

@ -1,7 +1,27 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema#",
"$id": "qmk.keyboard.v1",
"title": "Keyboard Information",
"definitions": {
"encoder_config": {
"type": "object",
"properties": {
"rotary": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": ["pin_a", "pin_b"],
"properties": {
"pin_a": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"pin_b": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"resolution": {"$ref": "qmk.definitions.v1#/unsigned_int"}
}
}
}
}
}
},
"type": "object",
"properties": {
"keyboard_name": {"$ref": "qmk.definitions.v1#/text_identifier"},
@ -14,7 +34,7 @@
},
"development_board": {
"type": "string",
"enum": ["promicro", "elite_c", "proton_c", "bluepill", "blackpill_f401", "blackpill_f411"]
"enum": ["promicro", "elite_c", "proton_c", "kb2040", "promicro_rp2040", "blok", "bit_c_pro", "stemcell", "bluepill", "blackpill_f401", "blackpill_f411", "bonsai_c4"]
},
"pin_compatible": {
"type": "string",
@ -22,7 +42,7 @@
},
"processor": {
"type": "string",
"enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "MK66FX1M0", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F405", "STM32F407", "STM32F411", "STM32F446", "STM32G431", "STM32G474", "STM32L412", "STM32L422", "STM32L432", "STM32L433", "STM32L442", "STM32L443", "GD32VF103", "WB32F3G71", "WB32FQ95", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"]
"enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "MK64FX512", "MK66FX1M0", "RP2040", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F405", "STM32F407", "STM32F411", "STM32F446", "STM32G431", "STM32G474", "STM32L412", "STM32L422", "STM32L432", "STM32L433", "STM32L442", "STM32L443", "GD32VF103", "WB32F3G71", "WB32FQ95", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"]
},
"audio": {
"type": "object",
@ -40,12 +60,12 @@
"breathing": {"type": "boolean"},
"breathing_period": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
"levels": {
"type": "number",
"min": 1,
"max": 31,
"multipleOf": 1
"type": "integer",
"minimum": 1,
"maximum": 31
},
"pin": {"$ref": "qmk.definitions.v1#/mcu_pin"}
"pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"on_state": {"$ref": "qmk.definitions.v1#/bit"}
}
},
"bluetooth": {
@ -66,7 +86,7 @@
},
"bootloader": {
"type": "string",
"enum": ["atmel-dfu", "bootloadhid", "bootloadHID", "custom", "caterina", "halfkay", "kiibohd", "lufa-dfu", "lufa-ms", "md-boot", "qmk-dfu", "qmk-hid", "stm32-dfu", "stm32duino", "gd32v-dfu", "wb32-dfu", "unknown", "usbasploader", "USBasp", "tinyuf2"],
"enum": ["atmel-dfu", "bootloadhid", "bootloadHID", "custom", "caterina", "halfkay", "kiibohd", "lufa-dfu", "lufa-ms", "md-boot", "qmk-dfu", "qmk-hid", "stm32-dfu", "stm32duino", "gd32v-dfu", "wb32-dfu", "unknown", "usbasploader", "USBasp", "tinyuf2", "rp2040"],
},
"bootloader_instructions": {
"type": "string",
@ -113,13 +133,22 @@
"type": "array",
"items": {"$ref": "qmk.definitions.v1#/filename"}
},
"encoder": {
"$ref": "#/definitions/encoder_config",
"properties": {
"enabled": {"type": "boolean"}
}
},
"features": {"$ref": "qmk.definitions.v1#/boolean_array"},
"indicators": {
"type": "object",
"properties": {
"caps_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"num_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"}
"scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"compose": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"kana": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"on_state": {"$ref": "qmk.definitions.v1#/bit"}
}
},
"layout_aliases": {
@ -154,12 +183,11 @@
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number",
"min": 0,
"multipleOf": 1
"type": "integer",
"minimum": 0
}
},
"r": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
"r": {"$ref": "qmk.definitions.v1#/signed_decimal"},
"rx": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
"ry": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
"h": {"$ref": "qmk.definitions.v1#/key_unit"},
@ -193,8 +221,7 @@
"items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
},
"cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
"rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
"unused": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
"rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
}
},
"mouse_key": {
@ -230,14 +257,13 @@
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number",
"min": 0,
"multipleOf": 1
"type": "integer",
"minimum": 0
}
},
"x": {"$ref": "qmk.definitions.v1#/key_unit"},
"y": {"$ref": "qmk.definitions.v1#/key_unit"},
"flags": {"$ref": "qmk.definitions.v1#/unsigned_decimal"}
"flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
}
}
}
@ -258,14 +284,13 @@
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number",
"min": 0,
"multipleOf": 1
"type": "integer",
"minimum": 0
}
},
"x": {"$ref": "qmk.definitions.v1#/key_unit"},
"y": {"$ref": "qmk.definitions.v1#/key_unit"},
"flags": {"$ref": "qmk.definitions.v1#/unsigned_decimal"}
"flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
}
}
}
@ -290,10 +315,9 @@
"blink": {"type": "boolean"},
"enabled": {"type": "boolean"},
"max": {
"type": "number",
"min": 1,
"max": 32,
"multipleOf": 1
"type": "integer",
"minimum": 1,
"maximum": 32
},
"override_rgb": {"type": "boolean"}
}
@ -307,8 +331,8 @@
"split": {"type": "boolean"},
"split_count": {
"type": "array",
"minLength": 2,
"maxLength": 2,
"minItems": 2,
"maxItems": 2,
"items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
}
}
@ -322,21 +346,31 @@
"idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
"unlock_sequence": {
"type": "array",
"minLength": 1,
"maxLength": 5,
"minItems": 1,
"maxItems": 5,
"items": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number",
"min": 0,
"multipleOf": 1
"type": "integer",
"minimum": 0
}
}
}
}
},
"stenography": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": {"type": "boolean"},
"protocol": {
"type": "string",
"enum": ["all", "geminipr", "txbolt"]
}
}
},
"split": {
"type": "object",
"additionalProperties": false,
@ -365,16 +399,24 @@
}
}
},
"encoder": {
"type": "object",
"additionalProperties": false,
"properties": {
"right": {
"$ref": "#/definitions/encoder_config"
}
}
},
"main": {
"type": "string",
"enum": ["eeprom", "left", "matrix_grid", "pin", "right"]
},
"soft_serial_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
"soft_serial_speed": {
"type": "number",
"min": 0,
"max": 5,
"multipleOf": 1
"type": "integer",
"minimum": 0,
"maximum": 5
},
"transport": {
"type": "object",
@ -428,7 +470,7 @@
"force_nkro": {"type": "boolean"},
"pid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
"vid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
"max_power": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
"max_power": {"$ref": "qmk.definitions.v1#/unsigned_int"},
"no_startup_check": {"type": "boolean"},
"polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
"shared_endpoint": {
@ -439,7 +481,7 @@
"mouse": {"type": "boolean"}
}
},
"suspend_wakeup_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
"suspend_wakeup_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
"wait_for": {"type": "boolean"},
}
},
@ -448,8 +490,8 @@
"additionalProperties": false,
"properties": {
"keys_per_scan": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
"tap_keycode_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
"tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
"tap_keycode_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
"tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
}
},
"qmk_lufa_bootloader": {

View File

@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema#",
"$id": "qmk.keymap.v1",
"title": "Keymap Information",
"type": "object",
@ -50,8 +50,7 @@
},
"config": {"$ref": "qmk.keyboard.v1"},
"notes": {
"type": "string",
"description": "asdf"
"type": "string"
}
},
"required": [

View File

@ -24,4 +24,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `RESET` if it is available
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available

343
docs/ChangeLog/20220827.md Normal file

File diff suppressed because it is too large Load Diff

View File

@ -83,14 +83,13 @@
* [Key Overrides](feature_key_overrides.md)
* [Layers](feature_layers.md)
* [One Shot Keys](one_shot_keys.md)
* [Pointing Device](feature_pointing_device.md)
* [Raw HID](feature_rawhid.md)
* [Secure](feature_secure.md)
* [Send String](feature_send_string.md)
* [Sequencer](feature_sequencer.md)
* [Swap Hands](feature_swap_hands.md)
* [Tap Dance](feature_tap_dance.md)
* [Tap-Hold Configuration](tap_hold.md)
* [Terminal](feature_terminal.md)
* [Unicode](feature_unicode.md)
* [Userspace](feature_userspace.md)
* [WPM Calculation](feature_wpm.md)
@ -109,6 +108,7 @@
* [Audio](feature_audio.md)
* [Bluetooth](feature_bluetooth.md)
* [Bootmagic Lite](feature_bootmagic.md)
* [Converters](feature_converters.md)
* [Custom Matrix](custom_matrix.md)
* [Digitizer](feature_digitizer.md)
* [DIP Switch](feature_dip_switch.md)
@ -117,7 +117,7 @@
* [Joystick](feature_joystick.md)
* [LED Indicators](feature_led_indicators.md)
* [MIDI](feature_midi.md)
* [Proton C Conversion](proton_c_conversion.md)
* [Pointing Device](feature_pointing_device.md)
* [PS/2 Mouse](feature_ps2_mouse.md)
* [Split Keyboard](feature_split_keyboard.md)
* [Stenography](feature_stenography.md)
@ -135,7 +135,7 @@
* Breaking Changes
* [Overview](breaking_changes.md)
* [My Pull Request Was Flagged](breaking_changes_instructions.md)
* [Most Recent ChangeLog](ChangeLog/20220528.md "QMK v0.17.0 - 2022 May 28")
* [Most Recent ChangeLog](ChangeLog/20220827.md "QMK v0.18.0 - 2022 Aug 27")
* [Past Breaking Changes](breaking_changes_history.md)
* C Development
@ -149,6 +149,7 @@
* [SPI Driver](spi_driver.md)
* [WS2812 Driver](ws2812_driver.md)
* [EEPROM Driver](eeprom_driver.md)
* [Flash Driver](flash_driver.md)
* ['serial' Driver](serial_driver.md)
* [UART Driver](uart_driver.md)
* [GPIO Controls](gpio_control.md)
@ -167,6 +168,8 @@
* Arm/ChibiOS
* [Selecting an MCU](platformdev_selecting_arm_mcu.md)
* [Early initialization](platformdev_chibios_earlyinit.md)
* [Raspberry Pi RP2040](platformdev_rp2040.md)
* [Proton C](platformdev_proton_c.md)
* [WeAct Blackpill F411](platformdev_blackpill_f411.md)
* QMK Reference

View File

@ -8,6 +8,7 @@ The breaking change period is when we will merge PR's that change QMK in dangero
## What has been included in past Breaking Changes?
* [2022 Aug 27](ChangeLog/20220827.md)
* [2022 May 28](ChangeLog/20220528.md)
* [2022 Feb 26](ChangeLog/20220226.md)
* [2021 Nov 27](ChangeLog/20211127.md)
@ -22,17 +23,18 @@ The breaking change period is when we will merge PR's that change QMK in dangero
## When is the next Breaking Change?
The next Breaking Change is scheduled for August 27, 2022.
The next Breaking Change is scheduled for November 26, 2022.
### Important Dates
* [x] 2022 May 28 - `develop` is tagged with a new release version. Each push to `master` is subsequently merged to `develop` by GitHub actions.
* [ ] 2022 Jul 31 - `develop` closed to new PR's.
* [ ] 2022 Jul 31 - Call for testers.
* [ ] 2022 Aug 13 - Last day for merges -- after this point `develop` is locked for testing and accepts only bugfixes
* [ ] 2022 Aug 25 - `master` is locked, no PR's merged.
* [ ] 2022 Aug 27 - Merge `develop` to `master`.
* [ ] 2022 Aug 27 - `master` is unlocked. PR's can be merged again.
* 2022 Aug 27 - `develop` is tagged with a new release version. Each push to `master` is subsequently merged to `develop` by GitHub actions.
* 2022 Oct 29 - `develop` closed to new PR's.
* 2022 Oct 29 - Call for testers.
* 2022 Nov 12 - Last day for merges -- after this point `develop` is locked for testing and accepts only bugfixes
* 2022 Nov 19 - `develop` is locked, only critical bugfix PR's merged.
* 2022 Nov 24 - `master` is locked, no PR's merged.
* 2022 Nov 26 - Merge `develop` to `master`.
* 2022 Nov 26 - `master` is unlocked. PR's can be merged again.
## What changes will be included?
@ -43,7 +45,7 @@ If you want your breaking change to be included in this round you need to create
Criteria for acceptance:
* The PR is complete and ready to merge
* The PR has a ChangeLog file describing the changes under `<qmk_firmware>/docs/Changelog/20220827`.
* The PR has a ChangeLog file describing the changes under `<qmk_firmware>/docs/Changelog/20221126`.
* This should be in Markdown format, with a name in the format `PR12345.md`, substituting the digits for your PR's ID.
* One strong recommendation that the ChangeLog document matches the PR description on GitHub, so as to ensure traceability.
@ -54,53 +56,47 @@ This section documents various processes we use when running the Breaking Change
### 4 Weeks Before Merge
* `develop` is now closed to new PR's, only fixes for current PR's may be merged
* Post call for testers
* [ ] Discord
* [ ] GitHub PR
* [ ] https://reddit.com/r/olkb
* Post call for testers: message `@Breaking Changes Updates` on `#qmk_firmware` in Discord:
* `@Breaking Changes Updates -- Hey folks, last day for functional PRs to be raised against qmk_firmware for this breaking changes cycle is today.`
### 2 Weeks Before Merge
* `develop` is now closed to existing PR merges, only bugfixes for previous merges may be included
* Post call for testers
* [ ] Discord
* [ ] GitHub PR
* [ ] https://reddit.com/r/olkb
* Post call for testers: message `@Breaking Changes Updates` on `#qmk_firmware` in Discord.
* `@Breaking Changes Updates -- Hey folks, last day for functional PRs to be merged into qmk_firmware for this breaking changes cycle is today. After that, we're handling bugfixes only.`
### 1 Week Before Merge
* Announce that master will be closed from <2 Days Before> to <Day of Merge>
* [ ] Discord
* [ ] GitHub PR
* [ ] https://reddit.com/r/olkb
* `develop` is now closed to PR merges, only critical bugfixes may be included
* Announce that master will be closed from <2 Days Before> to <Day of Merge> -- message `@Breaking Changes Updates` on `#qmk_firmware` in Discord:
* `@Breaking Changes Updates -- Hey folks, last day for functional PRs to be merged into qmk_firmware for this breaking changes cycle is today. After that, we're handling bugfixes only.`
### 2 Days Before Merge
* `master` is now closed to PR merges
* Announce that master is closed for 2 days
* [ ] Discord
* [ ] GitHub PR
* [ ] https://reddit.com/r/olkb
* `@Breaking Changes Updates -- Hey folks, the master branch of qmk_firmware is now locked for the next couple of days while we prepare to merge the newest batch of changes from develop.`
### Day Of Merge
* `qmk_firmware` git commands
* [ ] `git checkout develop`
* [ ] `git pull --ff-only`
* [ ] Edit `readme.md`
* [ ] Remove the notes about `develop`
* [ ] Roll up the ChangeLog into one file.
* [ ] `git commit -m 'Merge point for <DATE> Breaking Change'`
* [ ] `git push upstream develop`
* `git checkout develop`
* `git pull --ff-only`
* Edit `readme.md`
* Remove the notes about `develop`
* Roll up the ChangeLog into one file.
* `git commit -m 'Merge point for <DATE> Breaking Change'`
* `git push upstream develop`
* GitHub Actions
* [ ] Create a PR for `develop`
* [ ] **Turn off 'Automatically delete head branches' for the repository** -- confirm with @qmk/directors that it is done before continuing
* Create a PR for `develop`
* **Turn off 'Automatically delete head branches' for the repository** -- confirm with @qmk/directors that it is done before continuing
* `qmk_firmware` git commands
* [ ] `git checkout master`
* [ ] `git pull --ff-only`
* [ ] `git merge --no-ff develop`
* [ ] `git tag <next_version>` # Prevent the breakpoint tag from confusing version incrementing
* [ ] `git push upstream <next_version>`
* [ ] `git push upstream master`
* `git checkout master`
* `git pull --ff-only`
* `git merge --no-ff develop`
* `git tag <next_version>` # Prevent the breakpoint tag from confusing version incrementing
* `git push upstream <next_version>`
* `git push upstream master`
## Post-merge operations
@ -109,28 +105,72 @@ This section documents various processes we use when running the Breaking Change
This happens immediately after the previous `develop` branch is merged to `master`.
* `qmk_firmware` git commands
* [ ] `git checkout master`
* [ ] `git pull --ff-only`
* [ ] `git checkout develop`
* [ ] `git pull --ff-only`
* [ ] `git merge --no-ff master`
* [ ] Edit `readme.md`
* [ ] Add a big notice at the top that this is a testing branch.
* [ ] Include a link to this document
* [ ] `git commit -m 'Branch point for <DATE> Breaking Change'`
* [ ] `git tag breakpoint_<YYYY>_<MM>_<DD>`
* [ ] `git push upstream breakpoint_<YYYY>_<MM>_<DD>`
* `git checkout master`
* `git pull --ff-only`
* `git checkout develop`
* `git pull --ff-only`
* `git merge --no-ff master`
* Edit `readme.md`
* Add a big notice at the top that this is a testing branch. See previous revisions of the `develop` branch.
* Include a link to this document
* `git commit -m 'Branch point for <DATE> Breaking Change'`
* `git tag breakpoint_<YYYY>_<MM>_<DD>`
* `git push upstream breakpoint_<YYYY>_<MM>_<DD>`
* All submodules under `lib` now need to be checked against their QMK-based forks:
* [ ] `git submodule foreach git log -n1`
* [ ] Validate each submodule SHA1 matches the qmk fork, e.g. for ChibiOS:
* `git submodule foreach git log -n1`
* Validate each submodule SHA1 matches the qmk fork, e.g. for ChibiOS:
* Go to [qmk/ChibiOS](https://github.com/qmk/ChibiOS)
* Compare the commit hash in the above output to the commit hash in the repository
* If there's a mismatch:
* [ ] `cd lib/chibios`
* [ ] `git fetch --all`
* [ ] `git checkout master`
* [ ] `git reset --hard <commit hash>`
* [ ] `git push origin master --force-with-lease`
* If there's a mismatch, that repository needs to have its `master` branch updated to match (otherwise Configurator won't work):
* `cd lib/chibios`
* `git fetch --all`
* `git checkout master`
* `git reset --hard <commit hash>`
* `git push origin master --force-with-lease`
* Announce that both `master` and `develop` are now unlocked -- message `@Breaking Changes Updates` on `#qmk_firmware` in Discord:
* `@Breaking Changes Updates -- Hey folks, develop has now been merged into master -- newest batch of changes are now available for everyone to use!`
* (Optional) [update ChibiOS + ChibiOS-Contrib on `develop`](chibios_upgrade_instructions.md)
### Set up Discord events for the next cycle
* Update this file with the new dates: `docs/breaking_changes.md`
* Create Events on the QMK Discord - "Somewhere Else" => "GitHub":
* Event #1:
| Field | Value |
|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Topic | Last `develop` functionality PRs to be raised |
| Start Date | ((5 weeks before merge)), 12:00am |
| End Date | ((4 weeks before merge)), 12:00am |
| Description | This is the last window for functional PRs to be raised against `develop` for the current breaking changes cycle. After ((4 weeks before merge)), any new PRs targeting `develop` will be deferred to the next cycle. |
* Event #2:
| Field | Value |
|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Topic | Last `develop` functionality PRs to be merged |
| Start Date | ((4 weeks before merge)), 12:00am |
| End Date | ((2 weeks before merge)), 12:00am |
| Description | This is the last window for functional PRs to be merged into `develop` for the current breaking changes cycle. After ((2 weeks before merge)), only bugfix PRs targeting `develop` will be considered for merge. |
* Event #3:
| Field | Value |
|-------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Topic | `develop` closed for merges |
| Start Date | ((2 weeks before merge)), 12:00am |
| End Date | ((day of merge)), 12:00am |
| Description | This is the deadline for functionality bugfix PRs to be merged into `develop` for the current breaking changes cycle. After ((1 week before merge)), only critical bugfix PRs targeting `develop` will be considered for merge. |
* Event #4:
| Field | Value |
|-------------|----------------------------------------------------------------------------------------------------------------------|
| Topic | `master` closed for merges |
| Start Date | ((2 days before merge)), 12:00am |
| End Date | ((day of merge)), 12:00am |
| Description | This is the period that no PRs are to be merged to `master`, so that the merge of `develop` into `master` is stable. |
* Event #5:
| Field | Value |
|-------------|--------------------------------------------------------------------------------------------------------------------------------------------|
| Topic | `develop` merges to `master` |
| Start Date | ((day of merge)), 12:00am |
| End Date | ((day of merge)), 11:45pm |
| Description | At some point, QMK will merge `develop` into `master` and everyone will be able to reap the benefits of the newest batch of functionality. |

View File

@ -2,6 +2,7 @@
This page links to all previous changelogs from the QMK Breaking Changes process.
* [2022 Aug 27](ChangeLog/20220827.md) - version 0.18.0
* [2022 May 28](ChangeLog/20220528.md) - version 0.17.0
* [2022 Feb 26](ChangeLog/20220226.md) - version 0.16.0
* [2021 Nov 27](ChangeLog/20211127.md) - version 0.15.0

View File

@ -90,6 +90,8 @@ This command is similar to `qmk compile`, but can also target a bootloader. The
This command is directory aware. It will automatically fill in KEYBOARD and/or KEYMAP if you are in a keyboard or keymap directory.
This command can also flash binary firmware files (hex or bin) such as the ones produced by [Configurator](https://config.qmk.fm).
**Usage for Configurator Exports**:
```
@ -102,6 +104,21 @@ qmk flash [-bl <bootloader>] [-c] [-e <var>=<value>] [-j <num_jobs>] <configurat
qmk flash -kb <keyboard_name> -km <keymap_name> [-bl <bootloader>] [-c] [-e <var>=<value>] [-j <num_jobs>]
```
**Usage for pre-compiled firmwares**:
**Note**: The microcontroller needs to be specified (`-m` argument) for keyboards with the following bootloaders:
* HalfKay
* QMK HID
* USBaspLoader
ISP flashing is also supported with the following flashers and require the microcontroller to be specified:
* USBasp
* USBtinyISP
```
qmk flash [-m <microcontroller>] <compiledFirmware.[bin|hex]>
```
**Listing the Bootloaders**
```
@ -352,6 +369,73 @@ $ qmk via2json -kb ai03/polaris -o polaris_keymap.json polaris_via_backup.json
Ψ Wrote keymap to /home/you/qmk_firmware/polaris_keymap.json
```
## `qmk import-keyboard`
This command imports a data-driven `info.json` keyboard into the repo.
**Usage**:
```
usage: qmk import-keyboard [-h] filename
```
**Example:**
```
$ qmk import-keyboard ~/Downloads/forever60.json
Ψ Importing forever60.json.
Ψ Imported a new keyboard named forever60.
Ψ To start working on things, `cd` into keyboards/forever60,
Ψ or open the directory in your preferred text editor.
Ψ And build with qmk compile -kb forever60 -km default.
```
## `qmk import-keymap`
This command imports a data-driven `keymap.json` keymap into the repo.
**Usage**:
```
usage: qmk import-keymap [-h] filename
```
**Example:**
```
qmk import-keymap ~/Downloads/asdf2.json
Ψ Importing asdf2.json.
Ψ Imported a new keymap named asdf2.
Ψ To start working on things, `cd` into keyboards/takashicompany/dogtag/keymaps/asdf2,
Ψ or open the directory in your preferred text editor.
Ψ And build with qmk compile -kb takashicompany/dogtag -km asdf2.
```
## `qmk import-kbfirmware`
This command creates a new keyboard based on a [Keyboard Firmware Builder](https://kbfirmware.com/) export.
**Usage**:
```
usage: qmk import-kbfirmware [-h] filename
```
**Example:**
```
$ qmk import-kbfirmware ~/Downloads/gh62.json
Ψ Importing gh62.json.
⚠ Support here is basic - Consider using 'qmk new-keyboard' instead
Ψ Imported a new keyboard named gh62.
Ψ To start working on things, `cd` into keyboards/gh62,
Ψ or open the directory in your preferred text editor.
Ψ And build with qmk compile -kb gh62 -km default.
```
---
# Developer Commands
@ -527,3 +611,4 @@ This command converts a TTF font to an intermediate format for editing, before c
## `qmk painter-convert-font-image`
This command converts an intermediate font image to the QFF File Format. See the [Quantum Painter](quantum_painter.md?id=quantum-painter-cli) documentation for more information on this command.

View File

@ -62,9 +62,17 @@ You can also use any ARM chip with USB that [ChibiOS](https://www.chibios.org) s
* [MK20DX128](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/k-series-cortex-m4/k2x-usb/kinetis-k20-50-mhz-full-speed-usb-mixed-signal-integration-microcontrollers-based-on-arm-cortex-m4-core:K20_50)
* [MK20DX256](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/k-series-cortex-m4/k2x-usb/kinetis-k20-72-mhz-full-speed-usb-mixed-signal-integration-microcontrollers-mcus-based-on-arm-cortex-m4-core:K20_72)
* PJRC Teensy 3.2
* [MK64FX512](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/k-series-cortex-m4/k6x-ethernet/kinetis-k64-120-mhz-256-kb-sram-microcontrollers-mcus-based-on-arm-cortex-m4-core:K64_120)
* PJRC Teensy 3.5
* [MK66FX1M0](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/k-series-cortex-m4/k6x-ethernet/kinetis-k66-180-mhz-dual-high-speed-full-speed-usbs-2mb-flash-microcontrollers-mcus-based-on-arm-cortex-m4-core:K66_180)
* PJRC Teensy 3.6
### Raspberry Pi
* [RP2040](https://www.raspberrypi.com/documentation/microcontrollers/rp2040.html)
For a detailed overview about the RP2040 support by QMK see the [dedicated RP2040 page](platformdev_rp2040.md).
## Atmel ATSAM
There is limited support for one of Atmel's ATSAM microcontrollers, that being the [ATSAMD51J18A](https://www.microchip.com/wwwproducts/en/ATSAMD51J18A) used by the [Massdrop keyboards](https://github.com/qmk/qmk_firmware/tree/master/keyboards/massdrop). However, it is not recommended to design a board with this microcontroller as the support is quite specialized to Massdrop hardware.

View File

@ -57,8 +57,6 @@ This is a C header file that is one of the first things included, and will persi
* may be omitted by the keyboard designer if matrix reads are handled in an alternate manner. See [low-level matrix overrides](custom_quantum_functions.md?id=low-level-matrix-overrides) for more information.
* `#define MATRIX_IO_DELAY 30`
* the delay in microseconds when between changing matrix pin state and reading values
* `#define UNUSED_PINS { D1, D2, D3, B1, B2, B3 }`
* pins unused by the keyboard for reference
* `#define MATRIX_HAS_GHOST`
* define is matrix has ghost (unlikely)
* `#define MATRIX_UNSELECT_DRIVE_HIGH`
@ -107,8 +105,10 @@ This is a C header file that is one of the first things included, and will persi
* sets the maximum power (in mA) over USB for the device (default: 500)
* `#define USB_POLLING_INTERVAL_MS 10`
* sets the USB polling rate in milliseconds for the keyboard, mouse, and shared (NKRO/media keys) interfaces
* `#define USB_SUSPEND_WAKEUP_DELAY 200`
* set the number of milliseconde to pause after sending a wakeup packet
* `#define USB_SUSPEND_WAKEUP_DELAY 0`
* sets the number of milliseconds to pause after sending a wakeup packet.
Disabled by default, you might want to set this to 200 (or higher) if the
keyboard does not wake up properly after suspending.
* `#define F_SCL 100000L`
* sets the I2C clock rate speed for keyboards using I2C. The default is `400000L`, except for keyboards using `split_common`, where the default is `100000L`.
@ -141,7 +141,7 @@ If you define these options you will enable the associated feature, which may in
## Behaviors That Can Be Configured
* `#define TAPPING_TERM 200`
* how long before a tap becomes a hold, if set above 500, a key tapped during the tapping term will turn it into a hold too
* how long before a key press becomes a hold
* `#define TAPPING_TERM_PER_KEY`
* enables handling for per key `TAPPING_TERM` settings
* `#define RETRO_TAPPING`
@ -174,19 +174,12 @@ If you define these options you will enable the associated feature, which may in
* sets the timer for leader key chords to run on each key press rather than overall
* `#define LEADER_KEY_STRICT_KEY_PROCESSING`
* Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify `MT(MOD_CTL, KC_A)` if you want to use `KC_A`.
* `#define MOUSE_EXTENDED_REPORT`
* Enables support for extended reports (-32767 to 32767, instead of -127 to 127), which may allow for smoother reporting, and prevent maxing out of the reports. Applies to both Pointing Device and Mousekeys.
* `#define ONESHOT_TIMEOUT 300`
* how long before oneshot times out
* `#define ONESHOT_TAP_TOGGLE 2`
* how many taps before oneshot toggle is triggered
* `#define QMK_KEYS_PER_SCAN 4`
* Allows sending more than one key per scan. By default, only one key event gets
sent via `process_record()` per scan. This has little impact on most typing, but
if you're doing a lot of chords, or your scan rate is slow to begin with, you can
have some delay in processing key events. Each press and release is a separate
event. For a keyboard with 1ms or so scan times, even a very fast typist isn't
going to produce the 500 keystrokes a second needed to actually get more than a
few ms of delay from this. But if you're doing chording on something with 3-4ms
scan times? You probably want this.
* `#define COMBO_COUNT 2`
* Set this to the number of combos that you're using in the [Combo](feature_combo.md) feature. Or leave it undefined and programmatically set the count.
* `#define COMBO_TERM 200`
@ -194,7 +187,7 @@ If you define these options you will enable the associated feature, which may in
* `#define COMBO_MUST_HOLD_MODS`
* Flag for enabling extending timeout on Combos containing modifers
* `#define COMBO_MOD_TERM 200`
* Allows for extending COMBO_TERM for mod keys while mid-combo.
* Allows for extending COMBO_TERM for mod keys while mid-combo.
* `#define COMBO_MUST_HOLD_PER_COMBO`
* Flag to enable per-combo COMBO_TERM extension and `get_combo_must_hold()` function
* `#define COMBO_TERM_PER_COMBO`
@ -214,14 +207,12 @@ If you define these options you will enable the associated feature, which may in
* `#define RGB_DI_PIN D7`
* pin the DI on the WS2812 is hooked-up to
* `#define RGBLIGHT_ANIMATIONS`
* run RGB animations
* `#define RGBLIGHT_LAYERS`
* Lets you define [lighting layers](feature_rgblight.md?id=lighting-layers) that can be toggled on or off. Great for showing the current keyboard layer or caps lock state.
* `#define RGBLIGHT_MAX_LAYERS`
* Defaults to 8. Can be expanded up to 32 if more [lighting layers](feature_rgblight.md?id=lighting-layers) are needed.
* Note: Increasing the maximum will increase the firmware size and slow sync on split keyboards.
* `#define RGBLIGHT_LAYER_BLINK`
* `#define RGBLIGHT_LAYER_BLINK`
* Adds ability to [blink](feature_rgblight.md?id=lighting-layer-blink) a lighting layer for a specified number of milliseconds (e.g. to acknowledge an action).
* `#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF`
* If defined, then [lighting layers](feature_rgblight?id=overriding-rgb-lighting-onoff-status) will be shown even if RGB Light is off.
@ -366,8 +357,8 @@ This is a [make](https://www.gnu.org/software/make/manual/make.html) file that i
* `SRC`
* Used to add files to the compilation/linking list.
* `LIB_SRC`
* Used to add files as a library to the compilation/linking list.
The files specified by `LIB_SRC` is linked after the files specified by `SRC`.
* Used to add files as a library to the compilation/linking list.
The files specified by `LIB_SRC` is linked after the files specified by `SRC`.
For example, if you specify:
```
SRC += a.c
@ -420,7 +411,7 @@ Use these to enable or disable building certain features. The more you have enab
* `NKRO_ENABLE`
* USB N-Key Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
* `RING_BUFFERED_6KRO_REPORT_ENABLE`
* USB 6-Key Rollover - Instead of stopping any new input once 6 keys are pressed, the oldest key is released and the new key is pressed.
* USB 6-Key Rollover - Instead of stopping any new input once 6 keys are pressed, the oldest key is released and the new key is pressed.
* `AUDIO_ENABLE`
* Enable the audio subsystem.
* `KEY_OVERRIDE_ENABLE`

View File

@ -81,17 +81,17 @@ void matrix_init(void) {
}
uint8_t matrix_scan(void) {
bool matrix_has_changed = false;
bool changed = false;
// TODO: add matrix scanning routine here
// Unless hardware debouncing - use the configured debounce routine
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
changed = debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
// This *must* be called for correct keyboard behavior
matrix_scan_quantum();
return matrix_has_changed;
return changed;
}
```

View File

@ -406,11 +406,11 @@ And you're done. The RGB layer indication will only work if you want it to. And
The `val` is the value of the data that you want to write to EEPROM. And the `eeconfig_read_*` function return a 32 bit (DWORD) value from the EEPROM.
### Deferred Execution :id=deferred-execution
# Deferred Execution :id=deferred-execution
QMK has the ability to execute a callback after a specified period of time, rather than having to manually manage timers. To enable this functionality, set `DEFERRED_EXEC_ENABLE = yes` in rules.mk.
#### Deferred executor callbacks
## Deferred executor callbacks
All _deferred executor callbacks_ have a common function signature and look like:
@ -430,7 +430,7 @@ The return value is the number of milliseconds to use if the function should be
?> Note that the returned delay will be applied to the intended trigger time, not the time of callback invocation. This allows for generally consistent timing even in the face of occasional late execution.
#### Deferred executor registration
## Deferred executor registration
Once a callback has been defined, it can be scheduled using the following API:
@ -444,7 +444,7 @@ The third parameter is the `cb_arg` that gets passed to the callback at the poin
The return value is a `deferred_token` that can consequently be used to cancel the deferred executor callback before it's invoked. If a failure occurs, the returned value will be `INVALID_DEFERRED_TOKEN`. Usually this will be as a result of supplying `0` to the delay, or a `NULL` for the callback. The other failure case is if there are too many deferred executions "in flight" -- this can be increased by changing the limit, described below.
#### Extending a deferred execution
## Extending a deferred execution
The `deferred_token` returned by `defer_exec()` can be used to extend a the duration a pending execution waits before it gets invoked:
```c
@ -452,7 +452,7 @@ The `deferred_token` returned by `defer_exec()` can be used to extend a the dura
extend_deferred_exec(my_token, 800);
```
#### Cancelling a deferred execution
## Cancelling a deferred execution
The `deferred_token` returned by `defer_exec()` can be used to cancel a pending execution before it gets invoked:
```c
@ -462,7 +462,7 @@ cancel_deferred_exec(my_token);
Once a token has been canceled, it should be considered invalid. Reusing the same token is not supported.
#### Deferred callback limits
## Deferred callback limits
There are a maximum number of deferred callbacks that can be scheduled, controlled by the value of the define `MAX_DEFERRED_EXECUTORS`.

Some files were not shown because too many files have changed in this diff Show More