mirror of
https://github.com/zmkfirmware/zmk.git
synced 2026-03-20 04:55:20 -05:00
Compare commits
211 Commits
revert-239
...
v0.2-branc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fadafc7759 | ||
|
|
1e3e62c13d | ||
|
|
21f54e7238 | ||
|
|
7186528f77 | ||
|
|
9406d39d14 | ||
|
|
82216be635 | ||
|
|
ea267b0f35 | ||
|
|
2fe55c4c41 | ||
|
|
d2eb6de7ad | ||
|
|
209085da73 | ||
|
|
18d0d2f476 | ||
|
|
8575fc8a9d | ||
|
|
9d234cbb10 | ||
|
|
e8ec9b65f8 | ||
|
|
d0d313409b | ||
|
|
5926269ea5 | ||
|
|
eeb8a00778 | ||
|
|
aa3e5dd70f | ||
|
|
627e6dbec9 | ||
|
|
424e53210e | ||
|
|
4b4a8a35f3 | ||
|
|
0f7c11248a | ||
|
|
8e065d55b9 | ||
|
|
425256bc0d | ||
|
|
72b00b3f58 | ||
|
|
e4885d5d4c | ||
|
|
4f72e7cb25 | ||
|
|
4882a62c40 | ||
|
|
40e9e5c5fa | ||
|
|
40ea92d201 | ||
|
|
db2fc2bffd | ||
|
|
e4f1454e0b | ||
|
|
c367d8f636 | ||
|
|
6941abc2af | ||
|
|
700e9b264f | ||
|
|
8dddb1d9d7 | ||
|
|
022603ec16 | ||
|
|
b93bf6d3fd | ||
|
|
d0ee30bfaa | ||
|
|
3377ed02a8 | ||
|
|
36508c27fd | ||
|
|
e6343f44ce | ||
|
|
bc6bb90414 | ||
|
|
05abd677c5 | ||
|
|
f0a77b888a | ||
|
|
85aba16eec | ||
|
|
3f6841c95f | ||
|
|
2f172f63c2 | ||
|
|
bb486619a1 | ||
|
|
cb867f92db | ||
|
|
d0016b34f8 | ||
|
|
ec6b770947 | ||
|
|
4ef231f4bb | ||
|
|
7013158a67 | ||
|
|
a8f5ab67b5 | ||
|
|
84baf929c9 | ||
|
|
6b40bfda53 | ||
|
|
7e8c542c94 | ||
|
|
0820991901 | ||
|
|
b26058b6c7 | ||
|
|
40925d48e6 | ||
|
|
a9ff3a78a1 | ||
|
|
3f7c9d7cc4 | ||
|
|
978c7cb124 | ||
|
|
230b860f31 | ||
|
|
d39941dfbe | ||
|
|
fb359f5766 | ||
|
|
76ee97e1b6 | ||
|
|
33113c7028 | ||
|
|
6934e362b5 | ||
|
|
4fcc308910 | ||
|
|
ffa485c11b | ||
|
|
70542990c0 | ||
|
|
f8eff2fe34 | ||
|
|
888c0d966c | ||
|
|
58de2eb5e9 | ||
|
|
e4339241ea | ||
|
|
fed66a92d0 | ||
|
|
9d9f626938 | ||
|
|
14c6fb74ee | ||
|
|
b0f5789b12 | ||
|
|
2a5b73f294 | ||
|
|
4438b7b835 | ||
|
|
63af296b6e | ||
|
|
c9553c31e3 | ||
|
|
98e314baf2 | ||
|
|
c7473fc325 | ||
|
|
9320271dde | ||
|
|
8779530312 | ||
|
|
bac6bda34c | ||
|
|
4082370215 | ||
|
|
7248438ee4 | ||
|
|
2ded7919eb | ||
|
|
99b8506437 | ||
|
|
a173be9d71 | ||
|
|
cf2c46734d | ||
|
|
e6c1219f0c | ||
|
|
19a096ab67 | ||
|
|
f08b817d60 | ||
|
|
9935e8df47 | ||
|
|
644fc821f7 | ||
|
|
6e37f21f6b | ||
|
|
40f59df2cc | ||
|
|
1cfce345ba | ||
|
|
f4582bdaa7 | ||
|
|
249ecbc7e6 | ||
|
|
158bb31863 | ||
|
|
80df3195b7 | ||
|
|
cb5e605906 | ||
|
|
7d8dd64cdc | ||
|
|
f0a3947044 | ||
|
|
7ee25c7959 | ||
|
|
87cea76c93 | ||
|
|
9a68b2eeb7 | ||
|
|
428c36bc59 | ||
|
|
5487b108d5 | ||
|
|
55c67804eb | ||
|
|
0d8b23fccb | ||
|
|
e9681270d3 | ||
|
|
4c47d67e63 | ||
|
|
8ed556df62 | ||
|
|
369a009d99 | ||
|
|
200d98f623 | ||
|
|
8756a064d1 | ||
|
|
7293037f18 | ||
|
|
a057e4c89d | ||
|
|
7f1ee320ab | ||
|
|
b67f8bbe9f | ||
|
|
548fe7f6bd | ||
|
|
94100e307b | ||
|
|
2e9d72ba6b | ||
|
|
ea1a09bf99 | ||
|
|
a6d09f8c00 | ||
|
|
10868c72f7 | ||
|
|
64c1e1e3ff | ||
|
|
7dfc6ab31d | ||
|
|
11537ebee6 | ||
|
|
218a2fff8d | ||
|
|
bbe4f64bb2 | ||
|
|
c8841c4119 | ||
|
|
993a64d5b3 | ||
|
|
0adb80c02b | ||
|
|
6cbf25f04a | ||
|
|
0abc1eaf23 | ||
|
|
a72327bdff | ||
|
|
d3f2895744 | ||
|
|
dab4b2cdf3 | ||
|
|
78513af73e | ||
|
|
022ede9d1e | ||
|
|
16976db58c | ||
|
|
6e2d30d589 | ||
|
|
4aea919a4d | ||
|
|
47a17c64d7 | ||
|
|
6cac781ada | ||
|
|
29b39f2b9f | ||
|
|
c05aed2f19 | ||
|
|
60a8f29340 | ||
|
|
36f146226e | ||
|
|
73ca365530 | ||
|
|
90d6285d98 | ||
|
|
e195822559 | ||
|
|
99b424bb4b | ||
|
|
ce04352e2f | ||
|
|
8c21e7766d | ||
|
|
7276fd525f | ||
|
|
59c82ef27a | ||
|
|
608b6458a9 | ||
|
|
907b1caaa6 | ||
|
|
552d665f58 | ||
|
|
dafdc44b22 | ||
|
|
f618871f53 | ||
|
|
a314128ea8 | ||
|
|
e68abe57d8 | ||
|
|
e80b1584de | ||
|
|
91e1a7cfef | ||
|
|
026be009a6 | ||
|
|
a8f7888f4d | ||
|
|
a47f1fe2e1 | ||
|
|
ec32c566ce | ||
|
|
0a25fa2f95 | ||
|
|
1f900bfc9c | ||
|
|
a17266847d | ||
|
|
4a8ceba0db | ||
|
|
5d4b6df6a7 | ||
|
|
21e1b2acad | ||
|
|
17f0a4d307 | ||
|
|
58dcf5c285 | ||
|
|
33e3b02ddb | ||
|
|
f992352936 | ||
|
|
8166527ea3 | ||
|
|
fb18a4d871 | ||
|
|
b249135742 | ||
|
|
4fdfb01b6a | ||
|
|
9e36ebd525 | ||
|
|
11f600d9e5 | ||
|
|
cca637d66e | ||
|
|
de38676afd | ||
|
|
1baf18d671 | ||
|
|
6ae07d222a | ||
|
|
62900c62be | ||
|
|
c8c8835a19 | ||
|
|
a9167b2275 | ||
|
|
32d0a4bf41 | ||
|
|
92745903c9 | ||
|
|
67d595f29f | ||
|
|
82a22d731b | ||
|
|
6e03a0bb67 | ||
|
|
6b4d591c37 | ||
|
|
1c48f64730 | ||
|
|
f0319fde94 | ||
|
|
d52bb04090 |
@@ -9,6 +9,7 @@
|
||||
"mounts": [
|
||||
"type=volume,source=zmk-root-user,target=/root",
|
||||
"type=volume,source=zmk-config,target=/workspaces/zmk-config",
|
||||
"type=volume,source=zmk-modules,target=/workspaces/zmk-modules",
|
||||
"type=volume,source=zmk-zephyr,target=${containerWorkspaceFolder}/zephyr",
|
||||
"type=volume,source=zmk-zephyr-modules,target=${containerWorkspaceFolder}/modules",
|
||||
"type=volume,source=zmk-zephyr-tools,target=${containerWorkspaceFolder}/tools"
|
||||
|
||||
47
.github/dependabot.yml
vendored
47
.github/dependabot.yml
vendored
@@ -8,3 +8,50 @@ updates:
|
||||
directory: "/docs"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
groups:
|
||||
docusaurus-major:
|
||||
applies-to: "version-updates"
|
||||
dependency-type: "production"
|
||||
patterns:
|
||||
- "@docusaurus/*"
|
||||
update-types:
|
||||
- "major"
|
||||
docusaurus-minor-patch:
|
||||
applies-to: "version-updates"
|
||||
dependency-type: "production"
|
||||
patterns:
|
||||
- "@docusaurus/*"
|
||||
update-types:
|
||||
- "minor"
|
||||
- "patch"
|
||||
tree-sitter:
|
||||
applies-to: "version-updates"
|
||||
dependency-type: "production"
|
||||
patterns:
|
||||
- "tree-sitter-devicetree"
|
||||
- "web-tree-sitter"
|
||||
prod-other-major:
|
||||
applies-to: "version-updates"
|
||||
dependency-type: "production"
|
||||
exclude-patterns:
|
||||
- "@docusaurus/*"
|
||||
- "tree-sitter-devicetree"
|
||||
- "web-tree-sitter"
|
||||
update-types:
|
||||
- "major"
|
||||
prod-other-minor-patch:
|
||||
applies-to: "version-updates"
|
||||
dependency-type: "production"
|
||||
exclude-patterns:
|
||||
- "@docusaurus/*"
|
||||
- "tree-sitter-devicetree"
|
||||
- "web-tree-sitter"
|
||||
update-types:
|
||||
- "minor"
|
||||
- "patch"
|
||||
development:
|
||||
applies-to: "version-updates"
|
||||
dependency-type: "development"
|
||||
update-types:
|
||||
- "minor"
|
||||
- "patch"
|
||||
|
||||
18
.github/pull_request_template.md
vendored
18
.github/pull_request_template.md
vendored
@@ -1,15 +1,9 @@
|
||||
<!-- If you're adding a board/shield please fill out this check-list, otherwise you can delete it -->
|
||||
<!-- Note: ZMK is generally not accepting PRs for new keyboards. New generic controller PRs *may* still be accepted, please discuss on the Discord server first. -->
|
||||
|
||||
## Board/Shield Check-list
|
||||
## PR check-list
|
||||
|
||||
- [ ] This board/shield is tested working on real hardware
|
||||
- [ ] Definitions follow the general style of other shields/boards upstream ([Reference](https://zmk.dev/docs/development/new-shield))
|
||||
- [ ] `.zmk.yml` metadata file added
|
||||
- [ ] Branch has a [clean commit history](https://zmk.dev/docs/development/contributing/pull-requests#clean-commit-history)
|
||||
- [ ] Additional tests are included, if changing behaviors/core code that is testable.
|
||||
- [ ] Proper Copyright + License headers added to applicable files (Generally, we stick to "The ZMK Contributors" for copyrights to help avoid churn when files get edited)
|
||||
- [ ] General consistent formatting of DeviceTree files
|
||||
- [ ] Keymaps do not use deprecated key defines (Check using the [upgrader tool](https://zmk.dev/docs/codes/keymap-upgrader))
|
||||
- [ ] `&pro_micro` used in favor of `&pro_micro_d/a` if applicable
|
||||
- [ ] If split, no name added for the right/peripheral half
|
||||
- [ ] Kconfig.defconfig file correctly wraps _all_ configuration in conditional on the shield symbol
|
||||
- [ ] `.conf` file has optional extra features commented out
|
||||
- [ ] Keyboard/PCB is part of a shipped group buy or is generally available in stock to purchase (OSH/personal projects without general availability should create a zmk-config repo instead)
|
||||
- [ ] [Pre-commit](https://zmk.dev/docs/development/local-toolchain/pre-commit) used to check formatting of files, commit messages, etc.
|
||||
- [ ] Includes any necessary [documentation changes](https://zmk.dev/docs/development/contributing/documentation).
|
||||
|
||||
2
.github/workflows/build-user-config.yml
vendored
2
.github/workflows/build-user-config.yml
vendored
@@ -26,7 +26,7 @@ on:
|
||||
|
||||
jobs:
|
||||
matrix:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-22.04
|
||||
name: Fetch Build Keyboards
|
||||
outputs:
|
||||
build_matrix: ${{ env.build_matrix }}
|
||||
|
||||
38
.github/workflows/release-please.yml
vendored
Normal file
38
.github/workflows/release-please.yml
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- "v*.*-branch"
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
pull-requests: write
|
||||
|
||||
name: release-please
|
||||
|
||||
jobs:
|
||||
release-please:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: googleapis/release-please-action@v4
|
||||
id: release
|
||||
with:
|
||||
token: ${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}
|
||||
target-branch: ${{ github.ref_name }}
|
||||
- uses: actions/checkout@v4
|
||||
if: ${{ steps.release.outputs.release_created }}
|
||||
- name: create major, minor branch
|
||||
if: ${{ steps.release.outputs.release_created && steps.release.outputs.patch == '0' }}
|
||||
run: |
|
||||
git remote add gh-token-branch "https://x-access-token:${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}@github.com/${{ github.repository }}.git"
|
||||
git checkout -b v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}-branch
|
||||
git push gh-token-branch v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}-branch
|
||||
- name: tag major and minor versions
|
||||
if: ${{ steps.release.outputs.release_created }}
|
||||
run: |
|
||||
git config user.name github-actions[bot]
|
||||
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
|
||||
git remote add gh-token "https://x-access-token:${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}@github.com/${{ github.repository }}.git"
|
||||
git tag -d v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} || true
|
||||
git tag -a v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} -m "Release v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}"
|
||||
git push --force gh-token v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}
|
||||
2
.github/workflows/test.yml
vendored
2
.github/workflows/test.yml
vendored
@@ -4,12 +4,14 @@ on:
|
||||
push:
|
||||
paths:
|
||||
- ".github/workflows/test.yml"
|
||||
- "app/run-test.sh"
|
||||
- "app/tests/**"
|
||||
- "app/src/**"
|
||||
- "app/include/**"
|
||||
pull_request:
|
||||
paths:
|
||||
- ".github/workflows/test.yml"
|
||||
- "app/run-test.sh"
|
||||
- "app/tests/**"
|
||||
- "app/src/**"
|
||||
- "app/include/**"
|
||||
|
||||
138
.gitlint
Normal file
138
.gitlint
Normal file
@@ -0,0 +1,138 @@
|
||||
# Edit this file as you like.
|
||||
#
|
||||
# All these sections are optional. Each section with the exception of [general] represents
|
||||
# one rule and each key in it is an option for that specific rule.
|
||||
#
|
||||
# Rules and sections can be referenced by their full name or by id. For example
|
||||
# section "[body-max-line-length]" could also be written as "[B1]". Full section names are
|
||||
# used in here for clarity.
|
||||
#
|
||||
[general]
|
||||
# Ignore certain rules, this example uses both full name and id
|
||||
# ignore=title-trailing-punctuation, T3
|
||||
|
||||
# verbosity should be a value between 1 and 3, the commandline -v flags take precedence over this
|
||||
# verbosity = 2
|
||||
|
||||
# By default gitlint will ignore merge, revert, fixup, fixup=amend, and squash commits.
|
||||
# ignore-merge-commits=true
|
||||
# ignore-revert-commits=true
|
||||
# ignore-fixup-commits=true
|
||||
# ignore-fixup-amend-commits=true
|
||||
# ignore-squash-commits=true
|
||||
|
||||
# Ignore any data sent to gitlint via stdin
|
||||
# ignore-stdin=true
|
||||
|
||||
# Fetch additional meta-data from the local repository when manually passing a
|
||||
# commit message to gitlint via stdin or --commit-msg. Disabled by default.
|
||||
# staged=true
|
||||
|
||||
# Hard fail when the target commit range is empty. Note that gitlint will
|
||||
# already fail by default on invalid commit ranges. This option is specifically
|
||||
# to tell gitlint to fail on *valid but empty* commit ranges.
|
||||
# Disabled by default.
|
||||
# fail-without-commits=true
|
||||
|
||||
# Whether to use Python `search` instead of `match` semantics in rules that use
|
||||
# regexes. Context: https://github.com/jorisroovers/gitlint/issues/254
|
||||
# Disabled by default, but will be enabled by default in the future.
|
||||
# regex-style-search=true
|
||||
|
||||
# Enable debug mode (prints more output). Disabled by default.
|
||||
# debug=true
|
||||
|
||||
# Enable community contributed rules
|
||||
# See http://jorisroovers.github.io/gitlint/contrib_rules for details
|
||||
contrib=contrib-title-conventional-commits,CT1,contrib-disallow-cleanup-commits,CC2
|
||||
|
||||
# Set the extra-path where gitlint will search for user defined rules
|
||||
# See http://jorisroovers.github.io/gitlint/user_defined_rules for details
|
||||
# extra-path=examples/
|
||||
|
||||
[title-max-length]
|
||||
line-length=80
|
||||
|
||||
# Conversely, you can also enforce minimal length of a title with the
|
||||
# "title-min-length" rule:
|
||||
# [title-min-length]
|
||||
# min-length=5
|
||||
|
||||
# [title-must-not-contain-word]
|
||||
# Comma-separated list of words that should not occur in the title. Matching is case
|
||||
# insensitive. It's fine if the keyword occurs as part of a larger word (so "WIPING"
|
||||
# will not cause a violation, but "WIP: my title" will.
|
||||
# words=wip
|
||||
|
||||
# [title-match-regex]
|
||||
# python-style regex that the commit-msg title must match
|
||||
# Note that the regex can contradict with other rules if not used correctly
|
||||
# (e.g. title-must-not-contain-word).
|
||||
# regex=^US[0-9]*
|
||||
|
||||
# [body-max-line-length]
|
||||
# line-length=72
|
||||
|
||||
# [body-min-length]
|
||||
# min-length=5
|
||||
|
||||
# [body-is-missing]
|
||||
# Whether to ignore this rule on merge commits (which typically only have a title)
|
||||
# default = True
|
||||
# ignore-merge-commits=false
|
||||
|
||||
# [body-changed-file-mention]
|
||||
# List of files that need to be explicitly mentioned in the body when they are changed
|
||||
# This is useful for when developers often erroneously edit certain files or git submodules.
|
||||
# By specifying this rule, developers can only change the file when they explicitly reference
|
||||
# it in the commit message.
|
||||
# files=gitlint-core/gitlint/rules.py,README.md
|
||||
|
||||
# [body-match-regex]
|
||||
# python-style regex that the commit-msg body must match.
|
||||
# E.g. body must end in My-Commit-Tag: foo
|
||||
# regex=My-Commit-Tag: foo$
|
||||
|
||||
# [author-valid-email]
|
||||
# python-style regex that the commit author email address must match.
|
||||
# For example, use the following regex if you only want to allow email addresses from foo.com
|
||||
# regex=[^@]+@foo.com
|
||||
|
||||
# [ignore-by-title]
|
||||
# Ignore certain rules for commits of which the title matches a regex
|
||||
# E.g. Match commit titles that start with "Release"
|
||||
# regex=^Release(.*)
|
||||
|
||||
# Ignore certain rules, you can reference them by their id or by their full name
|
||||
# Use 'all' to ignore all rules
|
||||
# ignore=T1,body-min-length
|
||||
|
||||
# [ignore-by-body]
|
||||
# Ignore certain rules for commits of which the body has a line that matches a regex
|
||||
# E.g. Match bodies that have a line that that contain "release"
|
||||
# regex=(.*)release(.*)
|
||||
#
|
||||
# Ignore certain rules, you can reference them by their id or by their full name
|
||||
# Use 'all' to ignore all rules
|
||||
# ignore=T1,body-min-length
|
||||
|
||||
# [ignore-body-lines]
|
||||
# Ignore certain lines in a commit body that match a regex.
|
||||
# E.g. Ignore all lines that start with 'Co-Authored-By'
|
||||
# regex=^Co-Authored-By
|
||||
|
||||
# [ignore-by-author-name]
|
||||
# Ignore certain rules for commits of which the author name matches a regex
|
||||
# E.g. Match commits made by dependabot
|
||||
# regex=(.*)dependabot(.*)
|
||||
#
|
||||
# Ignore certain rules, you can reference them by their id or by their full name
|
||||
# Use 'all' to ignore all rules
|
||||
# ignore=T1,body-min-length
|
||||
|
||||
# This is a contrib rule - a community contributed rule. These are disabled by default.
|
||||
# You need to explicitly enable them one-by-one by adding them to the "contrib" option
|
||||
# under [general] section above.
|
||||
# [contrib-title-conventional-commits]
|
||||
# Specify allowed commit types. For details see: https://www.conventionalcommits.org/
|
||||
# types = bugfix,user-story,epic
|
||||
@@ -4,20 +4,31 @@ repos:
|
||||
rev: v1.5.1
|
||||
hooks:
|
||||
- id: remove-tabs
|
||||
exclude: "vendor-prefixes\\.txt$"
|
||||
- repo: https://github.com/pocc/pre-commit-hooks
|
||||
rev: v1.3.5
|
||||
exclude: "vendor-prefixes\\.txt$|.git/COMMIT_EDITMSG"
|
||||
- repo: https://github.com/pre-commit/mirrors-clang-format
|
||||
rev: v18.1.8
|
||||
hooks:
|
||||
- id: clang-format
|
||||
types_or: [c++, c]
|
||||
args:
|
||||
- -i
|
||||
- repo: https://github.com/pre-commit/mirrors-prettier
|
||||
rev: v2.7.1
|
||||
hooks:
|
||||
- id: prettier
|
||||
exclude: |
|
||||
(?x)^(
|
||||
.git/COMMIT_EDITMSG|
|
||||
CHANGELOG.md|
|
||||
.release-please-manifest.json
|
||||
)$
|
||||
# Workaround for https://github.com/pre-commit/mirrors-prettier/issues/29
|
||||
additional_dependencies:
|
||||
- prettier@2.8.7
|
||||
- repo: https://github.com/jorisroovers/gitlint
|
||||
rev: v0.19.1
|
||||
hooks:
|
||||
- id: gitlint
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v4.4.0
|
||||
hooks:
|
||||
|
||||
1
.release-please-manifest.json
Normal file
1
.release-please-manifest.json
Normal file
@@ -0,0 +1 @@
|
||||
{".":"0.2.0"}
|
||||
62
CHANGELOG.md
Normal file
62
CHANGELOG.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# Changelog
|
||||
|
||||
## [0.2.0](https://github.com/zmkfirmware/zmk/compare/v0.1.0...v0.2.0) (2025-03-01)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* Added `toggle-mode`, allowing toggle-on and toggle-off ([#2555](https://github.com/zmkfirmware/zmk/issues/2555)) ([4ef231f](https://github.com/zmkfirmware/zmk/commit/4ef231f4bba87151acfbd1cf3babd83b69813e45))
|
||||
* added toggle mode to key and layer toggles ([4ef231f](https://github.com/zmkfirmware/zmk/commit/4ef231f4bba87151acfbd1cf3babd83b69813e45))
|
||||
* **boards:** Update for mikoto board definition ([#1946](https://github.com/zmkfirmware/zmk/issues/1946)) ([b26058b](https://github.com/zmkfirmware/zmk/commit/b26058b6c7c83f8d1f095d2f9c6c3998b391a61b))
|
||||
* **core:** Make physical layout key rotation optional ([#2770](https://github.com/zmkfirmware/zmk/issues/2770)) ([c367d8f](https://github.com/zmkfirmware/zmk/commit/c367d8f636f0842b414c2b58df6101761cdd676d))
|
||||
* **display:** Add ability to set display on/off pin. ([#2814](https://github.com/zmkfirmware/zmk/issues/2814)) ([627e6db](https://github.com/zmkfirmware/zmk/commit/627e6dbec99211b3d7cce55904fb1c824ed87bf3))
|
||||
* **display:** Add config for display update period ([#2819](https://github.com/zmkfirmware/zmk/issues/2819)) ([aa3e5dd](https://github.com/zmkfirmware/zmk/commit/aa3e5dd70fdd1b364fa9ad26f14425be613d180c))
|
||||
* input processor behavior invocation ([#2714](https://github.com/zmkfirmware/zmk/issues/2714)) ([cb867f9](https://github.com/zmkfirmware/zmk/commit/cb867f92dbe4e32675c2137fc6aa914a44ecc8dc))
|
||||
* **Kconfig:** Allow overriding ZMK Kconfig defaults ([#2537](https://github.com/zmkfirmware/zmk/issues/2537)) ([40925d4](https://github.com/zmkfirmware/zmk/commit/40925d48e67b3eeaeb3e848a2287ed628de9f674))
|
||||
* **mouse:** Add mouse move and scroll support ([#2477](https://github.com/zmkfirmware/zmk/issues/2477)) ([6b40bfd](https://github.com/zmkfirmware/zmk/commit/6b40bfda53571f7a960ccc448aa87f29da7496ac))
|
||||
* **pointing:** Add behavior input processor ([cb867f9](https://github.com/zmkfirmware/zmk/commit/cb867f92dbe4e32675c2137fc6aa914a44ecc8dc))
|
||||
* **pointing:** Add pre-defined scroll scaler ([0f7c112](https://github.com/zmkfirmware/zmk/commit/0f7c11248a1ddb7c6559064c2a1e7a3c446d5d55))
|
||||
* **pointing:** Add pre-defined scroll scaler and mouse scroll tests ([#2759](https://github.com/zmkfirmware/zmk/issues/2759)) ([0f7c112](https://github.com/zmkfirmware/zmk/commit/0f7c11248a1ddb7c6559064c2a1e7a3c446d5d55))
|
||||
* **shields:** Add physical layout for Lotus58 ([#2753](https://github.com/zmkfirmware/zmk/issues/2753)) ([424e532](https://github.com/zmkfirmware/zmk/commit/424e53210ea16c2287abaf770ebf45be432d841a))
|
||||
* **studio:** Add ortho_4x10 grid layout ([#2651](https://github.com/zmkfirmware/zmk/issues/2651)) ([7e8c542](https://github.com/zmkfirmware/zmk/commit/7e8c542c94908ac011ec7272a5f8ab10d2102632))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* allow kscan-composite to wake up device. ([#2682](https://github.com/zmkfirmware/zmk/issues/2682)) ([a8f5ab6](https://github.com/zmkfirmware/zmk/commit/a8f5ab67b5d449a2624e2de7ddfb264da778ea6c))
|
||||
* **behaviors:** Make multiple sticky keys work on same key position ([7186528](https://github.com/zmkfirmware/zmk/commit/7186528f77bf077173927c1c8506b4d434e5c371))
|
||||
* **behaviors:** Make multiple sticky keys work on same key position ([#2758](https://github.com/zmkfirmware/zmk/issues/2758)) ([7186528](https://github.com/zmkfirmware/zmk/commit/7186528f77bf077173927c1c8506b4d434e5c371))
|
||||
* **ble:** enforce maximum length for dynamic device name ([#2784](https://github.com/zmkfirmware/zmk/issues/2784)) ([ea267b0](https://github.com/zmkfirmware/zmk/commit/ea267b0f35f862b882ac568dde6365c3a0c85099))
|
||||
* **combos:** Properly report combos len with emply block ([#2739](https://github.com/zmkfirmware/zmk/issues/2739)) ([f0a77b8](https://github.com/zmkfirmware/zmk/commit/f0a77b888ac482a863386ced08e04660ddacb026))
|
||||
* **display:** Only default mono theme when 1bpp ([#2804](https://github.com/zmkfirmware/zmk/issues/2804)) ([425256b](https://github.com/zmkfirmware/zmk/commit/425256bc0de7ed08802533b170abba78ee90f546))
|
||||
* **display:** POSIX lvgl fixes ([#2812](https://github.com/zmkfirmware/zmk/issues/2812)) ([4b4a8a3](https://github.com/zmkfirmware/zmk/commit/4b4a8a35f3f90f1af75cdf5d9c26b47d4b8dcabb))
|
||||
* **drivers:** Proper static/const for data/config ([#2769](https://github.com/zmkfirmware/zmk/issues/2769)) ([6941abc](https://github.com/zmkfirmware/zmk/commit/6941abc2afab16502cff9c5149d8dc0fcd5112c9))
|
||||
* Fix warnings in nanopb encoding code ([#2643](https://github.com/zmkfirmware/zmk/issues/2643)) ([7013158](https://github.com/zmkfirmware/zmk/commit/7013158a6715d94b34e8c471ce25bb5005f3bb49))
|
||||
* Kconfig refactor now works correctly with external modules ([#2711](https://github.com/zmkfirmware/zmk/issues/2711)) ([bb48661](https://github.com/zmkfirmware/zmk/commit/bb486619a183f6df7fbb4620c80164555a22da0b))
|
||||
* **Kconfig:** Added a name to EC11's trigger mode choice ([40925d4](https://github.com/zmkfirmware/zmk/commit/40925d48e67b3eeaeb3e848a2287ed628de9f674))
|
||||
* **kscan:** Remove warning when keyboard is built without CONFIG_PM_DEVICE ([#2808](https://github.com/zmkfirmware/zmk/issues/2808)) ([8e065d5](https://github.com/zmkfirmware/zmk/commit/8e065d55b916481ef06ce37cddedb84cf1d15d99))
|
||||
* **pointing:** Complete header rename missed in refactor ([#2702](https://github.com/zmkfirmware/zmk/issues/2702)) ([84baf92](https://github.com/zmkfirmware/zmk/commit/84baf929c9bb95f255d4bafd0e57f2ec47455fca))
|
||||
* **pointing:** Temp layer threading protection. ([#2729](https://github.com/zmkfirmware/zmk/issues/2729)) ([1e3e62c](https://github.com/zmkfirmware/zmk/commit/1e3e62c13d0666d98831ee302ae2fb17e68196c9))
|
||||
* **studio:** Allow adding layers after a layer move ([#2748](https://github.com/zmkfirmware/zmk/issues/2748)) ([36508c2](https://github.com/zmkfirmware/zmk/commit/36508c27fddfb84d912e0122e313ad3904ceb946))
|
||||
* **studio:** Properly return complete keymap from RPC ([#2696](https://github.com/zmkfirmware/zmk/issues/2696)) ([0820991](https://github.com/zmkfirmware/zmk/commit/0820991901a95ab7a0eb1f1cc608a631d514e26c))
|
||||
|
||||
## 0.1.0 (2024-11-29)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **boards:** Add glove80 nexus node for extension GPIO. ([#2594](https://github.com/zmkfirmware/zmk/issues/2594)) ([fb359f5](https://github.com/zmkfirmware/zmk/commit/fb359f576619940164ca2e770b49b7b34f13428e))
|
||||
* **boards:** add nrf52833-nosd snippet ([63af296](https://github.com/zmkfirmware/zmk/commit/63af296b6efd8d677d584f372c9da9a4fedaa496))
|
||||
* **boards:** add nrf52840-nosd snippet ([4438b7b](https://github.com/zmkfirmware/zmk/commit/4438b7b835bfd1d4e89cdd955a4ab0fd2e2ae3bf))
|
||||
* **ci:** Add release-please automation with VERSION ([#2622](https://github.com/zmkfirmware/zmk/issues/2622)) ([ffa485c](https://github.com/zmkfirmware/zmk/commit/ffa485c11b48444acf3adf1e3c1cb3eed16fad94))
|
||||
* **drivers:** Support init high/low in 595 driver ([888c0d9](https://github.com/zmkfirmware/zmk/commit/888c0d966cd52f3ab5145992f61b14d6262c1951))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **boards:** Disable uart serial node in Xiao BLE by default ([#2672](https://github.com/zmkfirmware/zmk/issues/2672)) ([230b860](https://github.com/zmkfirmware/zmk/commit/230b860f31063774c3bcc19afb6f92479462de24))
|
||||
* **boards:** Fix typo in BT75 metadata ([c9553c3](https://github.com/zmkfirmware/zmk/commit/c9553c31e3a3f39964391b006492995b5bb09c39))
|
||||
* Disable display feature for settings_reset ([b0f5789](https://github.com/zmkfirmware/zmk/commit/b0f5789b128f0f5599341398898fdb0e0407b2d3))
|
||||
* Fix inconsistent column offset property ([c7473fc](https://github.com/zmkfirmware/zmk/commit/c7473fc32557d2d384ab78d3acf51a05488f0214))
|
||||
* include a header file for RC macros ([#2649](https://github.com/zmkfirmware/zmk/issues/2649)) ([f8eff2f](https://github.com/zmkfirmware/zmk/commit/f8eff2fe34609c91211c25113f9d7db09f7d1689))
|
||||
* **studio:** Improved error message when keyboard is missing a physical layout. ([fed66a9](https://github.com/zmkfirmware/zmk/commit/fed66a92d000f4c8e0019d9ccdd167271324e8e9))
|
||||
@@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.13.1)
|
||||
|
||||
set(CONFIG_APPLICATION_DEFINED_SYSCALL true)
|
||||
|
||||
set(ZEPHYR_BOARD_ALIASES "boards/aliases.cmake")
|
||||
set(ZEPHYR_EXTRA_MODULES "${ZMK_EXTRA_MODULES};${CMAKE_CURRENT_SOURCE_DIR}/module;${CMAKE_CURRENT_SOURCE_DIR}/keymap-module")
|
||||
|
||||
# Find Zephyr. This also loads Zephyr's build system.
|
||||
@@ -16,6 +17,7 @@ if(CONFIG_ZMK_BEHAVIOR_LOCAL_IDS)
|
||||
endif()
|
||||
|
||||
zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/behavior.h)
|
||||
zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/input_processor.h)
|
||||
zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/ext_power.h)
|
||||
|
||||
# Add your source file to the "app" target. This must come after
|
||||
@@ -36,15 +38,14 @@ target_sources_ifdef(CONFIG_ZMK_GPIO_KEY_WAKEUP_TRIGGER app PRIVATE src/gpio_key
|
||||
target_sources(app PRIVATE src/events/activity_state_changed.c)
|
||||
target_sources(app PRIVATE src/events/position_state_changed.c)
|
||||
target_sources(app PRIVATE src/events/sensor_event.c)
|
||||
target_sources(app PRIVATE src/events/mouse_button_state_changed.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_WPM app PRIVATE src/events/wpm_state_changed.c)
|
||||
target_sources_ifdef(CONFIG_USB_DEVICE_STACK app PRIVATE src/events/usb_conn_state_changed.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_reset.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_EXT_POWER app PRIVATE src/behaviors/behavior_ext_power.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_SOFT_OFF app PRIVATE src/behaviors/behavior_soft_off.c)
|
||||
add_subdirectory_ifdef(CONFIG_ZMK_POINTING src/pointing/)
|
||||
if ((NOT CONFIG_ZMK_SPLIT) OR CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||
target_sources(app PRIVATE src/hid.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_MOUSE app PRIVATE src/mouse.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_key_press.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_KEY_TOGGLE app PRIVATE src/behaviors/behavior_key_toggle.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_HOLD_TAP app PRIVATE src/behaviors/behavior_hold_tap.c)
|
||||
@@ -64,8 +65,9 @@ if ((NOT CONFIG_ZMK_SPLIT) OR CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_SENSOR_ROTATE_COMMON app PRIVATE src/behaviors/behavior_sensor_rotate_common.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_MOUSE_KEY_PRESS app PRIVATE src/behaviors/behavior_mouse_key_press.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_STUDIO_UNLOCK app PRIVATE src/behaviors/behavior_studio_unlock.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_INPUT_TWO_AXIS app PRIVATE src/behaviors/behavior_input_two_axis.c)
|
||||
target_sources(app PRIVATE src/combo.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_tap_dance.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_TAP_DANCE app PRIVATE src/behaviors/behavior_tap_dance.c)
|
||||
target_sources(app PRIVATE src/behavior_queue.c)
|
||||
target_sources(app PRIVATE src/conditional_layer.c)
|
||||
target_sources(app PRIVATE src/endpoints.c)
|
||||
|
||||
137
app/Kconfig
137
app/Kconfig
@@ -46,7 +46,7 @@ config NRF_STORE_REBOOT_TYPE_GPREGRET
|
||||
bool
|
||||
default y
|
||||
|
||||
endif
|
||||
endif # SOC_SERIES_NRF52X
|
||||
|
||||
menu "HID"
|
||||
|
||||
@@ -81,14 +81,11 @@ if ZMK_HID_REPORT_TYPE_HKRO
|
||||
|
||||
config ZMK_HID_KEYBOARD_REPORT_SIZE
|
||||
int "# Keyboard Keys Reportable"
|
||||
default 6
|
||||
|
||||
endif
|
||||
endif # ZMK_HID_REPORT_TYPE_HKRO
|
||||
|
||||
config ZMK_HID_CONSUMER_REPORT_SIZE
|
||||
int "# Consumer Keys Reportable"
|
||||
default 6
|
||||
|
||||
|
||||
choice ZMK_HID_CONSUMER_REPORT_USAGES
|
||||
prompt "HID Report Type"
|
||||
@@ -142,8 +139,7 @@ config USB_NUMOF_EP_WRITE_RETRIES
|
||||
config USB_HID_POLL_INTERVAL_MS
|
||||
default 1
|
||||
|
||||
#ZMK_USB
|
||||
endif
|
||||
endif # ZMK_USB
|
||||
|
||||
menuconfig ZMK_BLE
|
||||
bool "BLE (HID over GATT)"
|
||||
@@ -153,6 +149,7 @@ menuconfig ZMK_BLE
|
||||
select BT_SMP_APP_PAIRING_ACCEPT
|
||||
select BT_PERIPHERAL
|
||||
select BT_DIS
|
||||
imply BT_DEVICE_NAME_DYNAMIC
|
||||
imply BT_SETTINGS if !ARCH_POSIX
|
||||
imply SETTINGS if !ARCH_POSIX
|
||||
imply ZMK_BATTERY_REPORTING if !ARCH_POSIX
|
||||
@@ -162,17 +159,14 @@ if ZMK_BLE
|
||||
config ZMK_BLE_EXPERIMENTAL_CONN
|
||||
bool "Experimental BLE connection changes"
|
||||
help
|
||||
Enables a combination of settings that are planned to be default in future versions of ZMK
|
||||
to improve connection stability. This includes changes to timing on BLE pairing initiation,
|
||||
restores use of the updated/new LLCP implementation, and disables 2M PHY support.
|
||||
Enables settings that are planned to be default in future versions of ZMK
|
||||
to improve connection stability.
|
||||
|
||||
config ZMK_BLE_EXPERIMENTAL_SEC
|
||||
bool "Experimental BLE security changes"
|
||||
imply BT_SMP_ALLOW_UNAUTH_OVERWRITE
|
||||
help
|
||||
Enables a combination of settings that are planned to be officially supported in the future.
|
||||
This includes enabling BT Secure Connection passkey entry, and allows overwrite of keys from
|
||||
previously paired hosts.
|
||||
Enables security settings that are planned to be officially supported in the future.
|
||||
|
||||
config ZMK_BLE_EXPERIMENTAL_FEATURES
|
||||
bool "Experimental BLE connection and security settings/features"
|
||||
@@ -244,19 +238,20 @@ config BT_PERIPHERAL_PREF_LATENCY
|
||||
config BT_PERIPHERAL_PREF_TIMEOUT
|
||||
default 400
|
||||
|
||||
#ZMK_BLE
|
||||
endif
|
||||
# The device name should be 16 characters or less so it fits within the
|
||||
# advertising data.
|
||||
config BT_DEVICE_NAME_MAX
|
||||
default 16
|
||||
|
||||
#Output Types
|
||||
endmenu
|
||||
endif # ZMK_BLE
|
||||
|
||||
# HID
|
||||
endmenu
|
||||
endmenu # Output Types
|
||||
|
||||
endmenu # HID
|
||||
|
||||
rsource "src/split/Kconfig"
|
||||
|
||||
#Basic Keyboard Setup
|
||||
endmenu
|
||||
endmenu # Basic Keyboard Setup
|
||||
|
||||
menu "Keymaps"
|
||||
|
||||
@@ -274,7 +269,7 @@ config ZMK_KEYMAP_LAYER_NAME_MAX_LEN
|
||||
int "Max Layer Name Length"
|
||||
default 20
|
||||
|
||||
endif
|
||||
endif # ZMK_KEYMAP_SETTINGS_STORAGE
|
||||
|
||||
endmenu # Keymaps
|
||||
|
||||
@@ -291,67 +286,51 @@ menuconfig ZMK_RGB_UNDERGLOW
|
||||
|
||||
if ZMK_RGB_UNDERGLOW
|
||||
|
||||
# This default value cuts down on tons of excess .conf files, if you're using GPIO, manually disable this
|
||||
config SPI
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EXT_POWER
|
||||
bool "RGB underglow toggling also controls external power"
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MIN
|
||||
int "RGB underglow minimum brightness in percent"
|
||||
range 0 100
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
int "RGB underglow maximum brightness in percent"
|
||||
range ZMK_RGB_UNDERGLOW_BRT_MIN 100
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_STEP
|
||||
int "RGB underglow hue step in degrees"
|
||||
range 0 359
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_STEP
|
||||
int "RGB underglow saturation step in percent"
|
||||
range 0 100
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_STEP
|
||||
int "RGB underglow brightness step in percent"
|
||||
range 0 100
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_START
|
||||
int "RGB underglow start hue value in degrees"
|
||||
range 0 359
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_START
|
||||
int "RGB underglow start saturations value in percent"
|
||||
range 0 100
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_START
|
||||
int "RGB underglow start brightness value in percent"
|
||||
range ZMK_RGB_UNDERGLOW_BRT_MIN ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
default ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SPD_START
|
||||
int "RGB underglow start animation speed value"
|
||||
range 1 5
|
||||
default 3
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EFF_START
|
||||
int "RGB underglow start effect int value related to the effect enum list"
|
||||
range 0 3
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_ON_START
|
||||
bool "RGB underglow starts on by default"
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE
|
||||
bool "Turn off RGB underglow when keyboard goes into idle state"
|
||||
@@ -360,8 +339,7 @@ config ZMK_RGB_UNDERGLOW_AUTO_OFF_USB
|
||||
bool "Turn off RGB underglow when USB is disconnected"
|
||||
depends on USB_DEVICE_STACK
|
||||
|
||||
#ZMK_RGB_UNDERGLOW
|
||||
endif
|
||||
endif # ZMK_RGB_UNDERGLOW
|
||||
|
||||
menuconfig ZMK_BACKLIGHT
|
||||
bool "LED backlight"
|
||||
@@ -372,16 +350,13 @@ if ZMK_BACKLIGHT
|
||||
config ZMK_BACKLIGHT_BRT_STEP
|
||||
int "Brightness step in percent"
|
||||
range 1 100
|
||||
default 20
|
||||
|
||||
config ZMK_BACKLIGHT_BRT_START
|
||||
int "Default brightness in percent"
|
||||
range 1 100
|
||||
default 40
|
||||
|
||||
config ZMK_BACKLIGHT_ON_START
|
||||
bool "Default backlight state"
|
||||
default y
|
||||
|
||||
config ZMK_BACKLIGHT_AUTO_OFF_IDLE
|
||||
bool "Turn off backlight when keyboard goes into idle state"
|
||||
@@ -389,19 +364,11 @@ config ZMK_BACKLIGHT_AUTO_OFF_IDLE
|
||||
config ZMK_BACKLIGHT_AUTO_OFF_USB
|
||||
bool "Turn off backlight when USB is disconnected"
|
||||
|
||||
#ZMK_BACKLIGHT
|
||||
endif
|
||||
endif # ZMK_BACKLIGHT
|
||||
|
||||
#Display/LED Options
|
||||
endmenu
|
||||
endmenu # Display/LED Options
|
||||
|
||||
menu "Mouse Options"
|
||||
|
||||
config ZMK_MOUSE
|
||||
bool "Enable ZMK mouse emulation"
|
||||
|
||||
#Mouse Options
|
||||
endmenu
|
||||
rsource "src/pointing/Kconfig"
|
||||
|
||||
menu "Power Management"
|
||||
|
||||
@@ -423,7 +390,8 @@ config ZMK_BATTERY_REPORTING_FETCH_MODE_LITHIUM_VOLTAGE
|
||||
bool "Lithium Voltage"
|
||||
|
||||
endchoice
|
||||
endif
|
||||
|
||||
endif # ZMK_BATTERY_REPORTING
|
||||
|
||||
config ZMK_IDLE_TIMEOUT
|
||||
int "Milliseconds of inactivity before entering idle state (OLED shutoff, etc)"
|
||||
@@ -445,12 +413,10 @@ config ZMK_IDLE_SLEEP_TIMEOUT
|
||||
int "Milliseconds of inactivity before entering deep sleep"
|
||||
default 900000
|
||||
|
||||
#ZMK_SLEEP
|
||||
endif
|
||||
endif # ZMK_SLEEP
|
||||
|
||||
config ZMK_EXT_POWER
|
||||
bool "Enable support to control external power output"
|
||||
default y
|
||||
|
||||
config ZMK_PM
|
||||
bool
|
||||
@@ -472,7 +438,7 @@ config ZMK_GPIO_KEY_WAKEUP_TRIGGER
|
||||
default y
|
||||
depends on DT_HAS_ZMK_GPIO_KEY_WAKEUP_TRIGGER_ENABLED && ZMK_PM_SOFT_OFF
|
||||
|
||||
#Power Management
|
||||
# Power Management
|
||||
endmenu
|
||||
|
||||
menu "Combo options"
|
||||
@@ -489,7 +455,7 @@ config ZMK_COMBO_MAX_KEYS_PER_COMBO
|
||||
int "Maximum number of keys per combo"
|
||||
default 4
|
||||
|
||||
#Combo options
|
||||
# Combo options
|
||||
endmenu
|
||||
|
||||
menu "Behavior Options"
|
||||
@@ -524,8 +490,7 @@ config ZMK_USB_HID_INIT_PRIORITY
|
||||
int "USB HID Init Priority"
|
||||
default 95
|
||||
|
||||
#USB
|
||||
endif
|
||||
endif # USB
|
||||
|
||||
if ZMK_BLE || ZMK_SPLIT_BLE
|
||||
|
||||
@@ -533,11 +498,13 @@ config ZMK_BLE_INIT_PRIORITY
|
||||
int "BLE Init Priority"
|
||||
default 50
|
||||
|
||||
#ZMK_BLE || ZMK_SPLIT_BLE
|
||||
endif
|
||||
endif # ZMK_BLE || ZMK_SPLIT_BLE
|
||||
|
||||
#Initialization Priorities
|
||||
endmenu
|
||||
endmenu # Initialization Priorities
|
||||
|
||||
config ZMK_PHYSICAL_LAYOUT_KEY_ROTATION
|
||||
bool "Support rotation of keys in physical layouts"
|
||||
default y
|
||||
|
||||
menuconfig ZMK_KSCAN
|
||||
bool "ZMK KScan Integration"
|
||||
@@ -611,8 +578,7 @@ config USB_CDC_ACM_RINGBUF_SIZE
|
||||
config LOG_PROCESS_THREAD_STARTUP_DELAY_MS
|
||||
default 1000
|
||||
|
||||
#ZMK_USB_LOGGING
|
||||
endif
|
||||
endif # ZMK_USB_LOGGING
|
||||
|
||||
config ZMK_RTT_LOGGING
|
||||
bool "Enable RTT logging to help debug"
|
||||
@@ -628,8 +594,7 @@ if ZMK_RTT_LOGGING
|
||||
config SEGGER_RTT_BUFFER_SIZE_UP
|
||||
default 8192
|
||||
|
||||
#ZMK_RTT_LOGGING
|
||||
endif
|
||||
endif # ZMK_RTT_LOGGING
|
||||
|
||||
if ZMK_USB_LOGGING || ZMK_RTT_LOGGING
|
||||
|
||||
@@ -639,11 +604,9 @@ config LOG_BUFFER_SIZE
|
||||
config LOG_PROCESS_THREAD_SLEEP_MS
|
||||
default 100
|
||||
|
||||
#ZMK_USB_LOGGING || ZMK_RTT_LOGGING
|
||||
endif
|
||||
endif # ZMK_USB_LOGGING || ZMK_RTT_LOGGING
|
||||
|
||||
#Logging
|
||||
endmenu
|
||||
endmenu # Logging
|
||||
|
||||
if SETTINGS
|
||||
|
||||
@@ -659,21 +622,17 @@ config ZMK_SETTINGS_RESET_ON_START_INIT_PRIORITY
|
||||
Initialization priority for the settings reset on start. Must be lower priority/
|
||||
higher value than FLASH_INIT_PRIORITY if using the NVS/Flash settings backend.
|
||||
|
||||
|
||||
endif
|
||||
|
||||
endif # ZMK_SETTINGS_RESET_ON_START
|
||||
|
||||
config ZMK_SETTINGS_SAVE_DEBOUNCE
|
||||
int "Milliseconds to debounce settings saves"
|
||||
default 60000
|
||||
|
||||
#SETTINGS
|
||||
endif
|
||||
endif # SETTINGS
|
||||
|
||||
config ZMK_BATTERY_REPORT_INTERVAL
|
||||
depends on ZMK_BATTERY_REPORTING
|
||||
int "Battery level report interval in seconds"
|
||||
default 60
|
||||
|
||||
config ZMK_LOW_PRIORITY_WORK_QUEUE
|
||||
bool "Work queue for low priority items"
|
||||
@@ -688,13 +647,11 @@ config ZMK_LOW_PRIORITY_THREAD_PRIORITY
|
||||
int "Low priority thread priority"
|
||||
default 10
|
||||
|
||||
endif
|
||||
endif # ZMK_LOW_PRIORITY_WORK_QUEUE
|
||||
|
||||
#Advanced
|
||||
endmenu
|
||||
endmenu # Advanced
|
||||
|
||||
#ZMK
|
||||
endmenu
|
||||
endmenu # ZMK
|
||||
|
||||
config KERNEL_BIN_NAME
|
||||
default "zmk"
|
||||
@@ -739,12 +696,22 @@ module = ZMK
|
||||
module-str = zmk
|
||||
source "subsys/logging/Kconfig.template.log_config"
|
||||
|
||||
# This loads ZMK's internal board and shield Kconfigs
|
||||
rsource "boards/Kconfig"
|
||||
rsource "boards/shields/*/Kconfig.defconfig"
|
||||
rsource "boards/shields/*/Kconfig.shield"
|
||||
|
||||
# This loads custom shields defconfigs (from BOARD_ROOT)
|
||||
# Duplicated from Kconfig.zephyr
|
||||
osource "$(KCONFIG_BINARY_DIR)/Kconfig.shield.defconfig"
|
||||
|
||||
source "$(BOARD_DIR)/Kconfig.defconfig"
|
||||
|
||||
# This loads board and shield Kconfigs found under zmk-config/config/
|
||||
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.defconfig"
|
||||
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.shield"
|
||||
|
||||
# This loads ZMK's sensible defaults
|
||||
rsource "Kconfig.defaults"
|
||||
|
||||
source "Kconfig.zephyr"
|
||||
|
||||
@@ -51,13 +51,11 @@ if ZMK_BEHAVIOR_HOLD_TAP
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_HELD
|
||||
int "Hold Tap Max Held"
|
||||
default 10
|
||||
help
|
||||
Max number of simultaneously held hold-taps
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_CAPTURED_EVENTS
|
||||
int "Hold Tap Max Captured Events"
|
||||
default 40
|
||||
help
|
||||
Max number of captured system events while waiting to resolve hold taps
|
||||
|
||||
@@ -71,8 +69,7 @@ config ZMK_BEHAVIOR_KEY_TOGGLE
|
||||
config ZMK_BEHAVIOR_MOUSE_KEY_PRESS
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_MOUSE_KEY_PRESS_ENABLED
|
||||
imply ZMK_MOUSE
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_MOUSE_KEY_PRESS_ENABLED && ZMK_POINTING
|
||||
|
||||
config ZMK_BEHAVIOR_STICKY_KEY
|
||||
bool
|
||||
@@ -83,7 +80,6 @@ if ZMK_BEHAVIOR_STICKY_KEY
|
||||
|
||||
config ZMK_BEHAVIOR_STICKY_KEY_MAX_HELD
|
||||
int "Sticky Key Max Held"
|
||||
default 10
|
||||
help
|
||||
Max number of simultaneously held sticky keys
|
||||
|
||||
@@ -94,6 +90,26 @@ config ZMK_BEHAVIOR_SOFT_OFF
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_SOFT_OFF_ENABLED && ZMK_PM_SOFT_OFF
|
||||
|
||||
|
||||
config ZMK_BEHAVIOR_TAP_DANCE
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_TAP_DANCE_ENABLED
|
||||
|
||||
if ZMK_BEHAVIOR_TAP_DANCE
|
||||
|
||||
config ZMK_BEHAVIOR_TAP_DANCE_MAX_HELD
|
||||
int "Tap-Dance Max Held"
|
||||
help
|
||||
Max number of simultaneously held taps-dances
|
||||
|
||||
endif
|
||||
|
||||
config ZMK_BEHAVIOR_INPUT_TWO_AXIS
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_INPUT_TWO_AXIS_ENABLED && ZMK_POINTING
|
||||
|
||||
config ZMK_BEHAVIOR_SENSOR_ROTATE_COMMON
|
||||
bool
|
||||
|
||||
|
||||
109
app/Kconfig.defaults
Normal file
109
app/Kconfig.defaults
Normal file
@@ -0,0 +1,109 @@
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# HID
|
||||
if ZMK_HID_REPORT_TYPE_HKRO
|
||||
|
||||
config ZMK_HID_KEYBOARD_REPORT_SIZE
|
||||
default 6
|
||||
|
||||
endif
|
||||
|
||||
config ZMK_HID_CONSUMER_REPORT_SIZE
|
||||
default 6
|
||||
|
||||
# Behaviors
|
||||
|
||||
if ZMK_BEHAVIOR_HOLD_TAP
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_HELD
|
||||
default 10
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_CAPTURED_EVENTS
|
||||
default 40
|
||||
|
||||
endif
|
||||
|
||||
if ZMK_BEHAVIOR_STICKY_KEY
|
||||
|
||||
config ZMK_BEHAVIOR_STICKY_KEY_MAX_HELD
|
||||
default 10
|
||||
|
||||
endif
|
||||
|
||||
if ZMK_BEHAVIOR_TAP_DANCE
|
||||
|
||||
config ZMK_BEHAVIOR_TAP_DANCE_MAX_HELD
|
||||
default 10
|
||||
|
||||
endif
|
||||
|
||||
# Underglow
|
||||
if ZMK_RGB_UNDERGLOW
|
||||
|
||||
# This default value cuts down on tons of excess .conf files, if you're using GPIO, manually disable this
|
||||
config SPI
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EXT_POWER
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MIN
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_STEP
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_STEP
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_STEP
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_START
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_START
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_START
|
||||
default ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SPD_START
|
||||
default 3
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EFF_START
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_ON_START
|
||||
default y
|
||||
|
||||
endif # ZMK_RGB_UNDERGLOW
|
||||
|
||||
# Backlight
|
||||
if ZMK_BACKLIGHT
|
||||
|
||||
config ZMK_BACKLIGHT_BRT_STEP
|
||||
default 20
|
||||
|
||||
config ZMK_BACKLIGHT_BRT_START
|
||||
default 40
|
||||
|
||||
config ZMK_BACKLIGHT_ON_START
|
||||
default y
|
||||
|
||||
endif # ZMK_BACKLIGHT
|
||||
|
||||
# Ext_power
|
||||
config ZMK_EXT_POWER
|
||||
default y
|
||||
|
||||
# Battery
|
||||
config ZMK_BATTERY_REPORT_INTERVAL
|
||||
default 60
|
||||
|
||||
# Imports
|
||||
rsource "src/split/Kconfig.defaults"
|
||||
13
app/VERSION
Normal file
13
app/VERSION
Normal file
@@ -0,0 +1,13 @@
|
||||
# x-release-please-start-major
|
||||
VERSION_MAJOR = 0
|
||||
# x-release-please-end
|
||||
|
||||
# x-release-please-start-minor
|
||||
VERSION_MINOR = 2
|
||||
# x-release-please-end
|
||||
|
||||
# x-release-please-start-patch
|
||||
PATCHLEVEL = 0
|
||||
# x-release-please-end
|
||||
|
||||
VERSION_TWEAK = 0
|
||||
2
app/boards/aliases.cmake
Normal file
2
app/boards/aliases.cmake
Normal file
@@ -0,0 +1,2 @@
|
||||
# defines board aliases for shorter names (or for renaming boards)
|
||||
set(mikoto_520_BOARD_ALIAS "mikoto")
|
||||
87
app/boards/arm/adv360pro/adv360pro-layouts.dtsi
Normal file
87
app/boards/arm/adv360pro/adv360pro-layouts.dtsi
Normal file
@@ -0,0 +1,87 @@
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
/ {
|
||||
physical_layout0: physical_layout_0 {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "Default";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 125 100 0 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 125 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 225 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 325 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 425 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 525 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 625 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1075 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1175 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1275 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1375 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1475 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1575 25 0 0 0>
|
||||
, <&key_physical_attrs 125 100 1675 25 0 0 0>
|
||||
, <&key_physical_attrs 125 100 0 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 125 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 225 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 325 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 425 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 525 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 625 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1075 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1175 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1275 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1375 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1475 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1575 125 0 0 0>
|
||||
, <&key_physical_attrs 125 100 1675 125 0 0 0>
|
||||
, <&key_physical_attrs 125 100 0 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 125 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 225 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 325 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 425 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 525 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 625 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 675 400 1500 525 400>
|
||||
, <&key_physical_attrs 100 100 775 400 1500 525 400>
|
||||
, <&key_physical_attrs 100 100 925 400 (-1500) 1275 400>
|
||||
, <&key_physical_attrs 100 100 1025 400 (-1500) 1275 400>
|
||||
, <&key_physical_attrs 100 100 1075 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1175 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1275 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1375 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1475 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1575 225 0 0 0>
|
||||
, <&key_physical_attrs 125 100 1675 225 0 0 0>
|
||||
, <&key_physical_attrs 125 100 0 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 125 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 225 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 325 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 425 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 525 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 775 500 1500 525 400>
|
||||
, <&key_physical_attrs 100 100 925 500 (-1500) 1275 400>
|
||||
, <&key_physical_attrs 100 100 1175 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1275 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1375 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1475 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1575 325 0 0 0>
|
||||
, <&key_physical_attrs 125 100 1675 325 0 0 0>
|
||||
, <&key_physical_attrs 125 100 0 425 0 0 0>
|
||||
, <&key_physical_attrs 100 100 125 425 0 0 0>
|
||||
, <&key_physical_attrs 100 100 225 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 325 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 425 400 0 0 0>
|
||||
, <&key_physical_attrs 100 200 575 500 1500 525 400>
|
||||
, <&key_physical_attrs 100 200 675 500 1500 525 400>
|
||||
, <&key_physical_attrs 100 100 775 600 1500 525 400>
|
||||
, <&key_physical_attrs 100 100 925 600 (-1500) 1275 400>
|
||||
, <&key_physical_attrs 100 200 1025 500 (-1500) 1275 400>
|
||||
, <&key_physical_attrs 100 200 1125 500 (-1500) 1275 400>
|
||||
, <&key_physical_attrs 100 100 1275 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1375 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1475 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1575 425 0 0 0>
|
||||
, <&key_physical_attrs 125 100 1675 425 0 0 0>
|
||||
;
|
||||
};
|
||||
};
|
||||
@@ -11,8 +11,13 @@
|
||||
#include <dt-bindings/led/led.h>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include "adv360pro-layouts.dtsi"
|
||||
#include "adv360pro-pinctrl.dtsi"
|
||||
|
||||
&physical_layout0 {
|
||||
transform = <&matrix_transform0>;
|
||||
};
|
||||
|
||||
/ {
|
||||
model = "Adv360 Pro";
|
||||
compatible = "kinesis,adv360pro";
|
||||
@@ -21,14 +26,14 @@
|
||||
zephyr,code-partition = &code_partition;
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,backlight = &backlight;
|
||||
zmk,battery = &vbatt;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &physical_layout0;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
matrix_transform0: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <20>;
|
||||
rows = <5>;
|
||||
|
||||
@@ -8,6 +8,7 @@ features:
|
||||
- keys
|
||||
- underglow
|
||||
- backlight
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -36,6 +36,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
&default_transform {
|
||||
&matrix_transform0 {
|
||||
col-offset = <10>;
|
||||
};
|
||||
|
||||
20
app/boards/arm/bdn9/bdn9_rev2-layouts.dtsi
Normal file
20
app/boards/arm/bdn9/bdn9_rev2-layouts.dtsi
Normal file
@@ -0,0 +1,20 @@
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
/ {
|
||||
physical_layout0: physical_layout_0 {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "BDN9";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 0 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 200 0 0 0>
|
||||
;
|
||||
};
|
||||
};
|
||||
@@ -9,6 +9,14 @@
|
||||
#include <st/f0/stm32f072c(8-b)tx-pinctrl.dtsi>
|
||||
#include <dt-bindings/led/led.h>
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include "bdn9_rev2-layouts.dtsi"
|
||||
|
||||
&physical_layout0 {
|
||||
transform = <&matrix_transform0>;
|
||||
};
|
||||
|
||||
/ {
|
||||
model = "Keeb.io BDN9 rev2";
|
||||
compatible = "keebio,bdn9", "st,stm32f072";
|
||||
@@ -16,11 +24,23 @@
|
||||
chosen {
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan;
|
||||
zmk,underglow = &led_strip;
|
||||
zmk,physical-layout = &physical_layout0;
|
||||
zmk,kscan = &kscan0;
|
||||
};
|
||||
|
||||
kscan: kscan {
|
||||
matrix_transform0: matrix_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <3>;
|
||||
rows = <3>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2)
|
||||
RC(0,3) RC(0,4) RC(0,5)
|
||||
RC(0,6) RC(0,7) RC(0,8)
|
||||
>;
|
||||
};
|
||||
|
||||
kscan0: kscan_0 {
|
||||
compatible = "zmk,kscan-gpio-direct";
|
||||
|
||||
input-gpios
|
||||
|
||||
@@ -17,8 +17,6 @@
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,battery = &vbatt;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
};
|
||||
|
||||
sensors: sensors {
|
||||
|
||||
@@ -6,12 +6,16 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include "bt60.dtsi"
|
||||
#include <layouts/common/60percent/all1u.dtsi>
|
||||
#include <layouts/common/60percent/ansi.dtsi>
|
||||
#include <layouts/common/60percent/hhkb.dtsi>
|
||||
#include <layouts/common/60percent/iso.dtsi>
|
||||
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
zmk,physical-layout = &layout_60_ansi;
|
||||
};
|
||||
|
||||
ansi_transform: keymap_transform_0 {
|
||||
@@ -66,19 +70,6 @@
|
||||
>;
|
||||
};
|
||||
|
||||
split_transform: keymap_transform_4 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <15>;
|
||||
rows = <5>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13) RC(0,14)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,13)
|
||||
RC(3,0) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12) RC(3,14)
|
||||
RC(4,0) RC(4,1) RC(4,2) RC(4,6) RC(4,10) RC(4,11) RC(4,12) RC(4,13)
|
||||
>;
|
||||
};
|
||||
|
||||
kscan0: kscan_0 {
|
||||
compatible = "zmk,kscan-gpio-matrix";
|
||||
wakeup-source;
|
||||
@@ -112,3 +103,19 @@
|
||||
;
|
||||
};
|
||||
};
|
||||
|
||||
&layout_60_ansi {
|
||||
transform = <&ansi_transform>;
|
||||
};
|
||||
|
||||
&layout_60_iso {
|
||||
transform = <&iso_transform>;
|
||||
};
|
||||
|
||||
&layout_60_all1u {
|
||||
transform = <&all_1u_transform>;
|
||||
};
|
||||
|
||||
&layout_60_hhkb {
|
||||
transform = <&hhkb_transform>;
|
||||
};
|
||||
|
||||
@@ -2,26 +2,25 @@
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
|
||||
#define ANSI true
|
||||
//#define HHKB true
|
||||
//#define ISO true
|
||||
//#define ALL_1U true
|
||||
//#define SPLIT_BKSP_RSHFT true
|
||||
#define ANSI
|
||||
//#define HHKB
|
||||
//#define ISO
|
||||
//#define ALL_1U
|
||||
|
||||
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
#ifdef ANSI
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
#elif defined(HHKB)
|
||||
zmk,matrix-transform = &hhkb_transform;
|
||||
zmk,physical-layout = &layout_60_ansi;
|
||||
#elif defined(ISO)
|
||||
zmk,matrix-transform = &iso_transform;
|
||||
zmk,physical-layout = &layout_60_iso;
|
||||
#elif defined(ALL_1U)
|
||||
zmk,matrix-transform = &all_1u_transform;
|
||||
zmk,physical-layout = &layout_60_all1u;
|
||||
#elif defined(HHKB)
|
||||
zmk,physical-layout = &layout_60_hhkb;
|
||||
#else
|
||||
zmk,matrix-transform = &split_transform;
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60_v1.keymap"
|
||||
#endif
|
||||
};
|
||||
|
||||
@@ -148,33 +147,7 @@
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
#else
|
||||
default_layer {
|
||||
// ------------------------------------------------------------------------------------------
|
||||
// | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = |BSPC| DEL |
|
||||
// | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
|
||||
// | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER |
|
||||
// | SHIFT | Z | X | C | V | B | N | M | , | . | / | SHIFT | 1 |
|
||||
// | CTL | WIN | ALT | SPACE | ALT | 1 | CTRL |
|
||||
// ------------------------------------------------------------------------------------------
|
||||
bindings = <
|
||||
&kp ESC &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS &kp EQUAL &kp BSPC &kp DEL
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &kp RBKT &kp BSLH
|
||||
&kp CLCK &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT &kp RET
|
||||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT &mo 1
|
||||
&kp LCTRL &kp LGUI &kp LALT &kp SPACE &kp RALT &kp RGUI &kp C_MENU &kp RCTRL
|
||||
>;
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
raise {
|
||||
bindings = <
|
||||
&kp GRAVE &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &kp DEL &trans
|
||||
&trans &trans &kp UP &trans &trans &trans &trans &trans &kp INS &trans &kp PSCRN &kp SLCK &kp PAUSE_BREAK &sys_reset
|
||||
&trans &kp LEFT &kp DOWN &kp RIGHT &trans &trans &trans &trans &trans &trans &kp HOME &kp PG_UP &bootloader
|
||||
&kp C_PREV &kp C_VOL_DN &kp C_VOL_UP &kp C_MUTE &trans &trans &trans &trans &trans &kp END &kp PG_DN &kp C_NEXT &trans
|
||||
&bt BT_PRV &bt BT_NXT &trans &trans &trans &trans &trans &bt BT_CLR
|
||||
>;
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60_v2.keymap"
|
||||
#endif
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,6 +6,7 @@ arch: arm
|
||||
features:
|
||||
- keys
|
||||
- encoder
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include "bt60.dtsi"
|
||||
|
||||
#include <layouts/common/60percent/ansi.dtsi>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &layout_60_ansi;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
@@ -60,3 +60,7 @@
|
||||
;
|
||||
};
|
||||
};
|
||||
|
||||
&layout_60_ansi {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
|
||||
default_layer {
|
||||
// ------------------------------------------------------------------------------------------
|
||||
// | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BSPC | DEL
|
||||
// | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | | |
|
||||
// | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BSPC |
|
||||
// | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | | |
|
||||
// | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER |
|
||||
// | SHIFT | Z | X | C | V | B | N | M | , | . | / | SHIFT |
|
||||
// | CTL | WIN | ALT | SPACE | ALT | 1 | MENU | CTRL |
|
||||
// | CTL | WIN | ALT | SPACE | ALT | 1 | MENU | CTRL |
|
||||
// ------------------------------------------------------------------------------------------
|
||||
bindings = <
|
||||
&kp ESC &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS &kp EQUAL &kp BSPC &bt BT_CLR
|
||||
&kp ESC &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS &kp EQUAL &kp BSPC
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &kp RBKT &kp BSLH
|
||||
&kp CLCK &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT &kp RET
|
||||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT
|
||||
@@ -25,7 +25,7 @@
|
||||
};
|
||||
raise {
|
||||
bindings = <
|
||||
&kp GRAVE &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &kp DEL &trans
|
||||
&kp GRAVE &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &kp DEL
|
||||
&trans &trans &kp UP &trans &trans &trans &trans &trans &kp INS &trans &kp PSCRN &kp SLCK &kp PAUSE_BREAK &sys_reset
|
||||
&trans &kp LEFT &kp DOWN &kp RIGHT &trans &trans &trans &trans &trans &trans &kp HOME &kp PG_UP &bootloader
|
||||
&kp C_PREV &kp C_VOL_DN &kp C_VOL_UP &kp C_MUTE &trans &trans &trans &trans &trans &kp END &kp PG_DN &kp C_NEXT
|
||||
|
||||
@@ -6,6 +6,7 @@ arch: arm
|
||||
features:
|
||||
- keys
|
||||
- encoder
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -6,6 +6,10 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include "ckp.dtsi"
|
||||
#include <layouts/common/60percent/all1u.dtsi>
|
||||
#include <layouts/common/60percent/ansi.dtsi>
|
||||
#include <layouts/common/60percent/hhkb.dtsi>
|
||||
#include <layouts/common/60percent/iso.dtsi>
|
||||
|
||||
|
||||
/ {
|
||||
@@ -13,7 +17,7 @@
|
||||
compatible = "polarityworks,bt60_v2";
|
||||
|
||||
chosen {
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
zmk,physical-layout = &layout_60_ansi;
|
||||
};
|
||||
|
||||
|
||||
@@ -69,3 +73,19 @@
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&layout_60_ansi {
|
||||
transform = <&ansi_transform>;
|
||||
};
|
||||
|
||||
&layout_60_iso {
|
||||
transform = <&iso_transform>;
|
||||
};
|
||||
|
||||
&layout_60_all1u {
|
||||
transform = <&all_1u_transform>;
|
||||
};
|
||||
|
||||
&layout_60_hhkb {
|
||||
transform = <&hhkb_transform>;
|
||||
};
|
||||
|
||||
@@ -12,13 +12,13 @@
|
||||
/ {
|
||||
chosen {
|
||||
#ifdef ANSI
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
zmk,physical-layout = &layout_60_ansi;
|
||||
#elif defined(ISO)
|
||||
zmk,matrix-transform = &iso_transform;
|
||||
zmk,physical-layout = &layout_60_iso;
|
||||
#elif defined(ALL_1U)
|
||||
zmk,matrix-transform = &all_1u_transform;
|
||||
zmk,physical-layout = &layout_60_all1u;
|
||||
#elif defined(HHKB)
|
||||
zmk,matrix-transform = &hhkb_transform;
|
||||
zmk,physical-layout = &layout_60_hhkb;
|
||||
#else
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60_v2.keymap"
|
||||
#endif
|
||||
|
||||
@@ -8,6 +8,7 @@ features:
|
||||
- encoder
|
||||
- underglow
|
||||
- backlight
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -6,6 +6,10 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include "ckp.dtsi"
|
||||
#include <layouts/common/65percent/all1u.dtsi>
|
||||
#include <layouts/common/65percent/ansi.dtsi>
|
||||
#include <layouts/common/65percent/iso.dtsi>
|
||||
#include <layouts/common/65percent/hhkb.dtsi>
|
||||
|
||||
|
||||
/ {
|
||||
@@ -13,7 +17,7 @@
|
||||
compatible = "polarityworks,bt65_v1";
|
||||
|
||||
chosen {
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
zmk,physical-layout = &layout_65_ansi;
|
||||
};
|
||||
|
||||
|
||||
@@ -69,3 +73,19 @@
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&layout_65_ansi {
|
||||
transform = <&ansi_transform>;
|
||||
};
|
||||
|
||||
&layout_65_iso {
|
||||
transform = <&iso_transform>;
|
||||
};
|
||||
|
||||
&layout_65_all1u {
|
||||
transform = <&all_1u_transform>;
|
||||
};
|
||||
|
||||
&layout_65_hhkb {
|
||||
transform = <&hhkb_transform>;
|
||||
};
|
||||
|
||||
@@ -12,13 +12,13 @@
|
||||
/ {
|
||||
chosen {
|
||||
#ifdef ANSI
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
zmk,physical-layout = &layout_65_ansi;
|
||||
#elif defined(ISO)
|
||||
zmk,matrix-transform = &iso_transform;
|
||||
zmk,physical-layout = &layout_65_iso;
|
||||
#elif defined(ALL_1U)
|
||||
zmk,matrix-transform = &all_1u_transform;
|
||||
zmk,physical-layout = &layout_65_all1u;
|
||||
#elif defined(HHKB)
|
||||
zmk,matrix-transform = &hhkb_transform;
|
||||
zmk,physical-layout = &layout_65_hhkb;
|
||||
#else
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt65_v1.keymap"
|
||||
#endif
|
||||
|
||||
@@ -8,6 +8,7 @@ features:
|
||||
- encoder
|
||||
- underglow
|
||||
- backlight
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -6,6 +6,9 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include "ckp.dtsi"
|
||||
#include <layouts/common/75percent/all1u.dtsi>
|
||||
#include <layouts/common/75percent/ansi.dtsi>
|
||||
#include <layouts/common/75percent/iso.dtsi>
|
||||
|
||||
|
||||
/ {
|
||||
@@ -13,7 +16,7 @@
|
||||
compatible = "polarityworks,bt75_v1";
|
||||
|
||||
chosen {
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
zmk,physical-layout = &layout_75_ansi;
|
||||
};
|
||||
|
||||
|
||||
@@ -59,3 +62,15 @@
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&layout_75_ansi {
|
||||
transform = <&ansi_transform>;
|
||||
};
|
||||
|
||||
&layout_75_iso {
|
||||
transform = <&iso_transform>;
|
||||
};
|
||||
|
||||
&layout_75_all1u {
|
||||
transform = <&all_1u_transform>;
|
||||
};
|
||||
|
||||
@@ -11,11 +11,11 @@
|
||||
/ {
|
||||
chosen {
|
||||
#ifdef ANSI
|
||||
zmk,matrix-transform = &ansi_transform;
|
||||
zmk,physical-layout = &layout_75_ansi;
|
||||
#elif defined(ISO)
|
||||
zmk,matrix-transform = &iso_transform;
|
||||
zmk,physical-layout = &layout_75_iso;
|
||||
#elif defined(ALL_1U)
|
||||
zmk,matrix-transform = &all_1u_transform;
|
||||
zmk,physical-layout = &layout_75_all1u;
|
||||
#else
|
||||
#error "Layout not defined, please define a layout using by uncommenting the appropriate line in bt75_v1.keymap"
|
||||
#endif
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
file_format: "1"
|
||||
id: bt75_v1
|
||||
name: BT75_V1
|
||||
name: BT75 V1
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
@@ -8,6 +8,7 @@ features:
|
||||
- encoder
|
||||
- underglow
|
||||
- backlight
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -10,6 +10,17 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/foostan/corne/5column.dtsi>
|
||||
#include <layouts/foostan/corne/6column.dtsi>
|
||||
|
||||
&foostan_corne_6col_layout {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
&foostan_corne_5col_layout {
|
||||
transform = <&five_column_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
model = "Corne-ish Zen";
|
||||
compatible = "corneish_zen";
|
||||
@@ -20,7 +31,7 @@
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,display = &epd;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &foostan_corne_6col_layout;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,matrix-transform = &default_transform;
|
||||
// zmk,matrix-transform = &five_column_transform;
|
||||
zmk,physical-layout = &foostan_corne_6col_layout;
|
||||
// zmk,physical-layout = &foostan_corne_5col_layout;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ arch: arm
|
||||
features:
|
||||
- keys
|
||||
- display
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -7,6 +7,7 @@ arch: arm
|
||||
features:
|
||||
- keys
|
||||
- display
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -68,7 +68,7 @@ void battery_status_update_cb(struct battery_status_state state) {
|
||||
static struct battery_status_state battery_status_get_state(const zmk_event_t *eh) {
|
||||
const struct zmk_battery_state_changed *ev = as_zmk_battery_state_changed(eh);
|
||||
|
||||
return (struct battery_status_state) {
|
||||
return (struct battery_status_state){
|
||||
.level = (ev != NULL) ? ev->state_of_charge : zmk_battery_state_of_charge(),
|
||||
#if IS_ENABLED(CONFIG_USB_DEVICE_STACK)
|
||||
.usb_present = zmk_usb_is_powered(),
|
||||
|
||||
@@ -19,15 +19,15 @@ LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||
static sys_slist_t widgets = SYS_SLIST_STATIC_INIT(&widgets);
|
||||
|
||||
struct layer_status_state {
|
||||
uint8_t index;
|
||||
zmk_keymap_layer_index_t index;
|
||||
const char *label;
|
||||
};
|
||||
|
||||
static void set_layer_symbol(lv_obj_t *label, struct layer_status_state state) {
|
||||
const char *layer_label = state.label;
|
||||
uint8_t active_layer_index = state.index;
|
||||
zmk_keymap_layer_index_t active_layer_index = state.index;
|
||||
|
||||
if (layer_label == NULL) {
|
||||
if (layer_label == NULL || strlen(layer_label) == 0) {
|
||||
char text[6] = {};
|
||||
|
||||
sprintf(text, " %i", active_layer_index);
|
||||
@@ -44,8 +44,9 @@ static void layer_status_update_cb(struct layer_status_state state) {
|
||||
}
|
||||
|
||||
static struct layer_status_state layer_status_get_state(const zmk_event_t *eh) {
|
||||
uint8_t index = zmk_keymap_highest_layer_active();
|
||||
return (struct layer_status_state){.index = index, .label = zmk_keymap_layer_name(index)};
|
||||
zmk_keymap_layer_index_t index = zmk_keymap_highest_layer_active();
|
||||
return (struct layer_status_state){
|
||||
.index = index, .label = zmk_keymap_layer_name(zmk_keymap_layer_index_to_id(index))};
|
||||
}
|
||||
|
||||
ZMK_DISPLAY_WIDGET_LISTENER(widget_layer_status, struct layer_status_state, layer_status_update_cb,
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
#include <layouts/cuddlykeyboards/ferris.dtsi>
|
||||
|
||||
&cuddlykeyboards_ferris_layout {
|
||||
transform = <&transform>;
|
||||
transform = <&matrix_transform0>;
|
||||
};
|
||||
|
||||
/ {
|
||||
@@ -23,13 +23,14 @@
|
||||
chosen {
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,physical-layout = &cuddlykeyboards_ferris_layout;
|
||||
/* TODO: Enable once we support the IC for underglow
|
||||
zmk,underglow = &led_strip;
|
||||
*/
|
||||
};
|
||||
|
||||
transform: transform {
|
||||
matrix_transform0: matrix_transform0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
rows = <4>;
|
||||
columns = <10>;
|
||||
@@ -42,7 +43,7 @@
|
||||
>;
|
||||
};
|
||||
|
||||
kscan: kscan {
|
||||
kscan0: kscan0 {
|
||||
compatible = "zmk,kscan-composite";
|
||||
rows = <4>;
|
||||
columns = <10>;
|
||||
@@ -53,7 +54,7 @@
|
||||
|
||||
right {
|
||||
kscan = <&kscan_right>;
|
||||
column-offset = <5>;
|
||||
col-offset = <5>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
91
app/boards/arm/glove80/glove80-layouts.dtsi
Normal file
91
app/boards/arm/glove80/glove80-layouts.dtsi
Normal file
@@ -0,0 +1,91 @@
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
/ {
|
||||
physical_layout0: physical_layout_0 {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "Default";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 0 50 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 50 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 50 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1700 50 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 150 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 150 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 150 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1700 150 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 250 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 250 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 250 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1700 250 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 350 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 350 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 350 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1700 350 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 450 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 450 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 450 3000 450 925>
|
||||
, <&key_physical_attrs 100 100 400 450 4500 450 925>
|
||||
, <&key_physical_attrs 100 100 400 450 6000 450 925>
|
||||
, <&key_physical_attrs 100 100 1300 450 (-6000) 1350 925>
|
||||
, <&key_physical_attrs 100 100 1300 450 (-4500) 1350 925>
|
||||
, <&key_physical_attrs 100 100 1300 450 (-3000) 1350 925>
|
||||
, <&key_physical_attrs 100 100 1200 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 400 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 450 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1700 450 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 550 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 550 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 500 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 500 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 500 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 550 2000 450 925>
|
||||
, <&key_physical_attrs 100 100 400 550 4000 450 925>
|
||||
, <&key_physical_attrs 100 100 400 550 6000 450 925>
|
||||
, <&key_physical_attrs 100 100 1300 550 (-6000) 1350 925>
|
||||
, <&key_physical_attrs 100 100 1300 550 (-4000) 1350 925>
|
||||
, <&key_physical_attrs 100 100 1300 550 (-2000) 1350 925>
|
||||
, <&key_physical_attrs 100 100 1300 500 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 500 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 500 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 550 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1700 550 0 0 0>
|
||||
;
|
||||
};
|
||||
};
|
||||
@@ -7,17 +7,23 @@
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
#include "glove80-layouts.dtsi"
|
||||
|
||||
&physical_layout0 {
|
||||
transform = <&matrix_transform0>;
|
||||
};
|
||||
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &physical_layout0;
|
||||
zephyr,code-partition = &code_partition;
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
matrix_transform0: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <14>;
|
||||
rows = <6>;
|
||||
@@ -39,7 +45,6 @@
|
||||
debounce-press-ms = <4>;
|
||||
debounce-release-ms = <20>;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&adc {
|
||||
|
||||
@@ -8,6 +8,7 @@ features:
|
||||
- keys
|
||||
- underglow
|
||||
- backlight
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -36,6 +36,21 @@
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-nrf-vddh";
|
||||
};
|
||||
|
||||
glove80_ext: connector {
|
||||
compatible = "moergo,glove80-ext";
|
||||
#gpio-cells = <2>;
|
||||
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||
gpio-map-pass-thru = <0 0x3f>;
|
||||
gpio-map
|
||||
= <1 0 &gpio0 22 0> /* EXT1 */
|
||||
, <2 0 &gpio0 21 0> /* EXT2 */
|
||||
, <3 0 &gpio0 24 0> /* EXT3 */
|
||||
, <4 0 &gpio0 20 0> /* EXT4 */
|
||||
, <5 0 &gpio0 25 0> /* EXT5 */
|
||||
, <6 0 &gpio1 00 0> /* EXT6 */
|
||||
;
|
||||
};
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
|
||||
@@ -37,6 +37,21 @@
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-nrf-vddh";
|
||||
};
|
||||
|
||||
glove80_ext: connector {
|
||||
compatible = "moergo,glove80-ext";
|
||||
#gpio-cells = <2>;
|
||||
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||
gpio-map-pass-thru = <0 0x3f>;
|
||||
gpio-map
|
||||
= <1 0 &gpio0 21 0> /* EXT1 */
|
||||
, <2 0 &gpio0 24 0> /* EXT2 */
|
||||
, <3 0 &gpio0 20 0> /* EXT3 */
|
||||
, <4 0 &gpio0 25 0> /* EXT4 */
|
||||
, <5 0 &gpio0 22 0> /* EXT5 */
|
||||
, <6 0 &gpio1 00 0> /* EXT6 */
|
||||
;
|
||||
};
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
@@ -79,7 +94,7 @@
|
||||
};
|
||||
|
||||
/* For right hand, the columns are offset by 7 */
|
||||
&default_transform {
|
||||
&matrix_transform0 {
|
||||
col-offset = <7>;
|
||||
};
|
||||
|
||||
|
||||
@@ -8,6 +8,8 @@
|
||||
#include <rpi_pico/rp2040.dtsi>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/common/65percent/ansi.dtsi>
|
||||
|
||||
/ {
|
||||
|
||||
chosen {
|
||||
@@ -15,7 +17,7 @@
|
||||
zephyr,flash = &flash0;
|
||||
zephyr,code-partition = &code_partition;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &layout_65_ansi;
|
||||
};
|
||||
|
||||
xtal_clk: xtal-clk {
|
||||
@@ -115,3 +117,6 @@ zephyr_udc0: &usbd {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&layout_65_ansi {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
@@ -2,17 +2,17 @@ config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on (BOARD_MIKOTO_520)
|
||||
depends on (BOARD_MIKOTO)
|
||||
|
||||
config BOARD_ENABLE_DCDC_HV
|
||||
bool "High voltage DCDC converter"
|
||||
select SOC_DCDC_NRF52X_HV
|
||||
default y
|
||||
depends on (BOARD_MIKOTO_520)
|
||||
depends on (BOARD_MIKOTO)
|
||||
|
||||
choice BOARD_MIKOTO_CHARGER_CURRENT
|
||||
prompt "Charge current to supply to attached batteries"
|
||||
depends on (BOARD_MIKOTO_520)
|
||||
depends on (BOARD_MIKOTO)
|
||||
|
||||
config BOARD_MIKOTO_CHARGER_CURRENT_40MA
|
||||
bool "40mA charge current, for battery capacity 40mAh or higher"
|
||||
@@ -32,4 +32,4 @@ config BOARD_MIKOTO_CHARGER_CURRENT_350MA
|
||||
config BOARD_MIKOTO_CHARGER_CURRENT_NONE
|
||||
bool "Disable charge current"
|
||||
|
||||
endchoice
|
||||
endchoice
|
||||
|
||||
@@ -3,6 +3,6 @@
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_MIKOTO_520
|
||||
bool "mikoto_520"
|
||||
config BOARD_MIKOTO
|
||||
bool "mikoto"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
if BOARD_MIKOTO_520
|
||||
if BOARD_MIKOTO
|
||||
|
||||
config BOARD
|
||||
default "mikoto"
|
||||
@@ -25,4 +25,4 @@ choice BOARD_MIKOTO_CHARGER_CURRENT
|
||||
default BOARD_MIKOTO_CHARGER_CURRENT_100MA
|
||||
endchoice
|
||||
|
||||
endif # BOARD_MIKOTO_520
|
||||
endif # BOARD_MIKOTO
|
||||
|
||||
59
app/boards/arm/mikoto/arduino_pro_micro_pins_v6.dtsi
Normal file
59
app/boards/arm/mikoto/arduino_pro_micro_pins_v6.dtsi
Normal file
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
|
||||
/ {
|
||||
pro_micro: connector {
|
||||
compatible = "arduino-pro-micro";
|
||||
#gpio-cells = <2>;
|
||||
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||
gpio-map-pass-thru = <0 0x3f>;
|
||||
gpio-map
|
||||
= <0 0 &gpio0 4 0> /* D0 */
|
||||
, <1 0 &gpio0 8 0> /* D1 */
|
||||
, <2 0 &gpio0 17 0> /* D2 */
|
||||
, <3 0 &gpio0 20 0> /* D3 */
|
||||
, <4 0 &gpio0 22 0> /* D4/A6 */
|
||||
, <5 0 &gpio0 24 0> /* D5 */
|
||||
, <6 0 &gpio1 8 0> /* D6/A7 */
|
||||
, <7 0 &gpio1 2 0> /* D7 */
|
||||
, <8 0 &gpio1 4 0> /* D8/A8 */
|
||||
, <9 0 &gpio1 6 0> /* D9/A9 */
|
||||
, <10 0 &gpio0 9 0> /* D10/A10 */
|
||||
, <16 0 &gpio0 10 0> /* D16 */
|
||||
, <14 0 &gpio1 13 0> /* D14 */
|
||||
, <15 0 &gpio0 2 0> /* D15 */
|
||||
, <18 0 &gpio0 29 0> /* D18/A0 */
|
||||
, <19 0 &gpio0 31 0> /* D19/A1 */
|
||||
, <20 0 &gpio0 25 0> /* D20/A2 */
|
||||
, <21 0 &gpio0 11 0> /* D21/A3 */
|
||||
;
|
||||
};
|
||||
|
||||
pro_micro_a: connector_a {
|
||||
compatible = "arduino-pro-micro";
|
||||
#gpio-cells = <2>;
|
||||
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||
gpio-map-pass-thru = <0 0x3f>;
|
||||
gpio-map
|
||||
= <0 0 &gpio0 29 0> /* D18/A0 */
|
||||
, <1 0 &gpio0 31 0> /* D19/A1 */
|
||||
, <2 0 &gpio0 25 0> /* D20/A2 */
|
||||
, <3 0 &gpio0 11 0> /* D21/A3 */
|
||||
, <6 0 &gpio0 22 0> /* D4/A6 */
|
||||
, <7 0 &gpio1 8 0> /* D6/A7 */
|
||||
, <8 0 &gpio1 4 0> /* D8/A8 */
|
||||
, <9 0 &gpio1 6 0> /* D9/A9 */
|
||||
, <10 0 &gpio0 9 0> /* D10/A10 */
|
||||
;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
pro_micro_d: &pro_micro {};
|
||||
pro_micro_i2c: &i2c0 {};
|
||||
pro_micro_spi: &spi0 {};
|
||||
pro_micro_serial: &uart0 {};
|
||||
@@ -17,7 +17,7 @@
|
||||
uart0_sleep: uart0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(UART_RX, 0, 4)>,
|
||||
<NRF_PSEL(UART_TX, 0, 8)>;
|
||||
<NRF_PSEL(UART_TX, 0, 8)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
@@ -25,14 +25,14 @@
|
||||
i2c0_default: i2c0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(TWIM_SDA, 0, 17)>,
|
||||
<NRF_PSEL(TWIM_SCL, 0, 20)>;
|
||||
<NRF_PSEL(TWIM_SCL, 0, 20)>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c0_sleep: i2c0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(TWIM_SDA, 0, 17)>,
|
||||
<NRF_PSEL(TWIM_SCL, 0, 20)>;
|
||||
<NRF_PSEL(TWIM_SCL, 0, 20)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
@@ -6,8 +6,6 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
#include "arduino_pro_micro_pins.dtsi"
|
||||
#include "mikoto_520-pinctrl.dtsi"
|
||||
|
||||
/ {
|
||||
model = "mikoto";
|
||||
@@ -1,5 +1,5 @@
|
||||
identifier: mikoto_520
|
||||
name: mikoto_520
|
||||
identifier: mikoto
|
||||
name: mikoto
|
||||
type: mcu
|
||||
arch: arm
|
||||
toolchain:
|
||||
@@ -1,6 +1,6 @@
|
||||
file_format: "1"
|
||||
id: mikoto_520
|
||||
name: Mikoto 5.20
|
||||
id: mikoto
|
||||
name: Mikoto
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
@@ -8,3 +8,9 @@ outputs:
|
||||
- ble
|
||||
url: https://github.com/zhiayang/mikoto
|
||||
exposes: [pro_micro]
|
||||
revisions:
|
||||
- "5.20"
|
||||
- "6.1"
|
||||
- "6.3"
|
||||
- "7.2"
|
||||
default_revision: "5.20"
|
||||
8
app/boards/arm/mikoto/mikoto_5_20_0.overlay
Normal file
8
app/boards/arm/mikoto/mikoto_5_20_0.overlay
Normal file
@@ -0,0 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "mikoto-pinctrl.dtsi"
|
||||
#include "arduino_pro_micro_pins_v5.dtsi"
|
||||
8
app/boards/arm/mikoto/mikoto_6_1_0.overlay
Normal file
8
app/boards/arm/mikoto/mikoto_6_1_0.overlay
Normal file
@@ -0,0 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "mikoto-pinctrl.dtsi"
|
||||
#include "arduino_pro_micro_pins_v6.dtsi"
|
||||
2
app/boards/arm/mikoto/mikoto_7_2_0.conf
Normal file
2
app/boards/arm/mikoto/mikoto_7_2_0.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
CONFIG_I2C=y
|
||||
CONFIG_ZMK_MAX17048=y
|
||||
47
app/boards/arm/mikoto/mikoto_7_2_0.overlay
Normal file
47
app/boards/arm/mikoto/mikoto_7_2_0.overlay
Normal file
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "mikoto-pinctrl.dtsi"
|
||||
#include "arduino_pro_micro_pins_v6.dtsi"
|
||||
|
||||
&pinctrl {
|
||||
i2c1_default: i2c1_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(TWIM_SDA, 0, 23)>,
|
||||
<NRF_PSEL(TWIM_SCL, 0, 19)>;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
i2c1_sleep: i2c1_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(TWIM_SDA, 0, 23)>,
|
||||
<NRF_PSEL(TWIM_SCL, 0, 19)>;
|
||||
low-power-enable;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
compatible = "nordic,nrf-twi";
|
||||
pinctrl-0 = <&i2c1_default>;
|
||||
pinctrl-1 = <&i2c1_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
builtin_fuel_gauge: max17048@36 {
|
||||
compatible = "zmk,maxim-max17048";
|
||||
status = "okay";
|
||||
reg = <0x36>;
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,battery = &builtin_fuel_gauge;
|
||||
};
|
||||
};
|
||||
@@ -2,11 +2,10 @@
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_MIKOTO_520=y
|
||||
CONFIG_BOARD_MIKOTO=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
CONFIG_PINCTRL=y
|
||||
|
||||
# enable GPIO
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
static int pinmux_mikoto_init(void) {
|
||||
|
||||
#if CONFIG_BOARD_MIKOTO_520
|
||||
#if CONFIG_BOARD_MIKOTO
|
||||
const struct device *p0 = DEVICE_DT_GET(DT_NODELABEL(gpio0));
|
||||
const struct device *p1 = DEVICE_DT_GET(DT_NODELABEL(gpio1));
|
||||
#if CONFIG_BOARD_MIKOTO_CHARGER_CURRENT_40MA
|
||||
|
||||
7
app/boards/arm/mikoto/revision.cmake
Normal file
7
app/boards/arm/mikoto/revision.cmake
Normal file
@@ -0,0 +1,7 @@
|
||||
board_check_revision(FORMAT MAJOR.MINOR.PATCH
|
||||
DEFAULT_REVISION 5.20.0
|
||||
VALID_REVISIONS
|
||||
5.20.0 # first public release
|
||||
6.1.0 6.3.0 # incompatible pinout change from v5+
|
||||
7.2.0 # addition of MAX17048; compatible pinout with v6+
|
||||
)
|
||||
@@ -10,6 +10,8 @@
|
||||
#include <dt-bindings/led/led.h>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/common/60percent/ansi.dtsi>
|
||||
|
||||
#include "nice60-pinctrl.dtsi"
|
||||
|
||||
/ {
|
||||
@@ -22,7 +24,7 @@
|
||||
zephyr,flash = &flash0;
|
||||
zmk,battery = &vbatt;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &layout_60_ansi;
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
|
||||
@@ -169,3 +171,7 @@ zephyr_udc0: &usbd {
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&layout_60_ansi {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
@@ -6,6 +6,7 @@ arch: arm
|
||||
features:
|
||||
- keys
|
||||
- underglow
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
|
||||
@@ -9,6 +9,11 @@
|
||||
#include <st/f3/stm32f303c(b-c)tx-pinctrl.dtsi>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/common/ortho_4x12/1x2u.dtsi>
|
||||
#include <layouts/common/ortho_4x12/2x2u.dtsi>
|
||||
#include <layouts/common/ortho_4x12/all1u.dtsi>
|
||||
|
||||
|
||||
/ {
|
||||
model = "Plack PCD, rev6";
|
||||
compatible = "planck,rev6", "st,stm32f303";
|
||||
@@ -17,7 +22,7 @@
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &layout_grid_transform;
|
||||
zmk,physical-layout = &layout_ortho_4x12_all1u;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
@@ -137,3 +142,15 @@ zephyr_udc0: &usb {
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&layout_ortho_4x12_all1u {
|
||||
transform = <&layout_grid_transform>;
|
||||
};
|
||||
|
||||
&layout_ortho_4x12_1x2u {
|
||||
transform = <&layout_mit_transform>;
|
||||
};
|
||||
|
||||
&layout_ortho_4x12_2x2u {
|
||||
transform = <&layout_2x2u_transform>;
|
||||
};
|
||||
|
||||
@@ -9,6 +9,9 @@
|
||||
#include <st/f3/stm32f303c(b-c)tx-pinctrl.dtsi>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/common/ortho_5x12/1x2u.dtsi>
|
||||
#include <layouts/common/ortho_5x12/2x2u.dtsi>
|
||||
#include <layouts/common/ortho_5x12/all1u.dtsi>
|
||||
|
||||
/ {
|
||||
model = "Preonic PCD, rev3";
|
||||
@@ -18,7 +21,7 @@
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &layout_grid_transform;
|
||||
zmk,physical-layout = &layout_ortho_5x12_all1u;
|
||||
};
|
||||
|
||||
kscan0: kscan_0 {
|
||||
@@ -131,3 +134,15 @@ zephyr_udc0: &usb {
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&layout_ortho_5x12_all1u {
|
||||
transform = <&layout_grid_transform>;
|
||||
};
|
||||
|
||||
&layout_ortho_5x12_1x2u {
|
||||
transform = <&layout_mit_transform>;
|
||||
};
|
||||
|
||||
&layout_ortho_5x12_2x2u {
|
||||
transform = <&layout_2x2u_transform>;
|
||||
};
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
#define RAISE 2
|
||||
|
||||
/ {
|
||||
chosen { zmk,matrix-transform = &layout_grid_transform; };
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
default_layer {
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
&xiao_serial { status = "disabled"; };
|
||||
|
||||
&adc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -6,9 +6,25 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/common/ortho_5x12/all1u.dtsi>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,physical-layout = &layout_ortho_5x12_all1u;
|
||||
};
|
||||
|
||||
matrix_transform_50_all1u: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <5>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11)
|
||||
RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11)
|
||||
>;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
@@ -40,4 +56,8 @@
|
||||
, <&pro_micro 6 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&layout_ortho_5x12_all1u {
|
||||
transform = <&matrix_transform_50_all1u>;
|
||||
};
|
||||
|
||||
@@ -6,3 +6,4 @@ url: https://boardsource.xyz/store/5ecb802c86879c9a0c22db61
|
||||
requires: [pro_micro]
|
||||
features:
|
||||
- keys
|
||||
- studio
|
||||
|
||||
@@ -4,9 +4,26 @@
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/common/ortho_4x12/all1u.dtsi>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,physical-layout = &layout_ortho_4x12_all1u;
|
||||
};
|
||||
|
||||
matrix_transform_40_all1u: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <4>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11)
|
||||
>;
|
||||
};
|
||||
|
||||
kscan0: kscan_0 {
|
||||
@@ -37,4 +54,8 @@
|
||||
, <&pro_micro 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&layout_ortho_4x12_all1u {
|
||||
transform = <&matrix_transform_40_all1u>;
|
||||
};
|
||||
|
||||
@@ -6,3 +6,4 @@ url: https://github.com/ai03-2725/Contra
|
||||
requires: [pro_micro]
|
||||
features:
|
||||
- keys
|
||||
- studio
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/foostan/corne.dtsi>
|
||||
#include <layouts/foostan/corne/5column.dtsi>
|
||||
#include <layouts/foostan/corne/6column.dtsi>
|
||||
|
||||
&foostan_corne_6col_layout {
|
||||
transform = <&default_transform>;
|
||||
|
||||
@@ -9,6 +9,7 @@ features:
|
||||
- keys
|
||||
- display
|
||||
- underglow
|
||||
- studio
|
||||
siblings:
|
||||
- corne_left
|
||||
- corne_right
|
||||
|
||||
@@ -7,6 +7,7 @@ requires: [pro_micro]
|
||||
exposes: [i2c_oled]
|
||||
features:
|
||||
- keys
|
||||
- studio
|
||||
siblings:
|
||||
- cradio_left
|
||||
- cradio_right
|
||||
|
||||
@@ -6,9 +6,24 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/common/ortho_4x12/all1u.dtsi>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,physical-layout = &layout_ortho_4x12_all1u;
|
||||
};
|
||||
|
||||
matrix_transform_40_all1u: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <4>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11)
|
||||
>;
|
||||
};
|
||||
|
||||
kscan0: kscan_0 {
|
||||
@@ -54,3 +69,7 @@
|
||||
triggers-per-rotation = <20>;
|
||||
};
|
||||
};
|
||||
|
||||
&layout_ortho_4x12_all1u {
|
||||
transform = <&matrix_transform_40_all1u>;
|
||||
};
|
||||
|
||||
@@ -7,3 +7,4 @@ requires: [pro_micro]
|
||||
features:
|
||||
- keys
|
||||
- encoder
|
||||
- studio
|
||||
|
||||
41
app/boards/shields/hummingbird/hummingbird-layouts.dtsi
Normal file
41
app/boards/shields/hummingbird/hummingbird-layouts.dtsi
Normal file
@@ -0,0 +1,41 @@
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
/ {
|
||||
physical_layout0: physical_layout_0 {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "Default";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 0 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 700 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 800 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 700 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 800 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 700 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 800 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 325 350 0 0 0>
|
||||
, <&key_physical_attrs 100 100 425 375 0 0 0>
|
||||
, <&key_physical_attrs 100 100 575 375 0 0 0>
|
||||
, <&key_physical_attrs 100 100 675 350 0 0 0>
|
||||
;
|
||||
};
|
||||
};
|
||||
@@ -5,15 +5,19 @@
|
||||
*/
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
#include "hummingbird-layouts.dtsi"
|
||||
|
||||
#include <physical_layouts.dtsi>
|
||||
&physical_layout0 {
|
||||
transform = <&matrix_transform0>;
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,physical-layout = &physical_layout0;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
matrix_transform0: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <7>;
|
||||
rows = <6>;
|
||||
@@ -49,46 +53,4 @@
|
||||
, <&xiao_d 5 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
|
||||
layout_0: layout_0 {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "Default";
|
||||
|
||||
transform = <&default_transform>;
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 0 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 700 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 800 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 700 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 800 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 700 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 800 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 325 350 0 0 0>
|
||||
, <&key_physical_attrs 100 100 425 375 0 0 0>
|
||||
, <&key_physical_attrs 100 100 575 375 0 0 0>
|
||||
, <&key_physical_attrs 100 100 675 350 0 0 0>
|
||||
;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
@@ -6,3 +6,4 @@ url: https://github.com/PJE66/hummingbird
|
||||
requires: [seeed_xiao]
|
||||
features:
|
||||
- keys
|
||||
- studio
|
||||
|
||||
@@ -6,10 +6,26 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/kgoh/jian/full.dtsi>
|
||||
#include <layouts/kgoh/jian/6column.dtsi>
|
||||
#include <layouts/kgoh/jian/5column.dtsi>
|
||||
|
||||
&kgoh_jian_full_layout {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
&kgoh_jian_6col_layout {
|
||||
transform = <&crkbd_transform>;
|
||||
};
|
||||
|
||||
&kgoh_jian_5col_layout {
|
||||
transform = <&five_column_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &kgoh_jian_full_layout;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
@@ -56,7 +72,7 @@
|
||||
RC(0,1) RC(1,2) RC(0,2) RC(0,3) RC(0,4) RC(0,7) RC(0,8) RC(0,9) RC(1,9) RC(0,10)
|
||||
RC(1,1) RC(2,2) RC(1,3) RC(1,4) RC(0,5) RC(0,6) RC(1,7) RC(1,8) RC(2,9) RC(1,10)
|
||||
RC(3,2) RC(3,3) RC(2,3) RC(2,4) RC(1,5) RC(1,6) RC(2,7) RC(2,8) RC(3,8) RC(3,9)
|
||||
RC(3,4) RC(2,5) RC(3,5) RC(3,6) RC(2,6) RC(3,7)
|
||||
RC(3,4) RC(2,5) RC(3,5) RC(3,6) RC(2,6) RC(3,7)
|
||||
>;
|
||||
};
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
|
||||
#define DEF 0
|
||||
#define LWR 1
|
||||
@@ -17,60 +18,72 @@
|
||||
&mt { quick-tap-ms = <200>; };
|
||||
|
||||
/ {
|
||||
conditional_layers {
|
||||
compatible = "zmk,conditional-layers";
|
||||
tri_layer {
|
||||
if-layers = <LWR RSE>;
|
||||
then-layer = <ADJ>;
|
||||
};
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
display-name = "MAIN";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | GUI | ~ | Q | W | E | R | T | | Y | U | I | O | P | [ | GUI/] |
|
||||
// | CTRL | A | S | D | F | G | | H | J | K | L | ; |CTRL/'|
|
||||
// | LALT | Z | X | C | V | B | | N | M | , | . | / | RALT |
|
||||
// | LALT | Z | X | C | V | B | | N | M | , | . | / |RALT/\|
|
||||
// | RSE | SPC | LWR | | LWR | BSPC | RSE |
|
||||
bindings = <
|
||||
&kp LWIN &kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &mt RWIN RBKT
|
||||
&kp LCTRL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &mt RCTRL SQT
|
||||
&kp LALT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &mt RALT BSLH
|
||||
< RSE TAB &mt LSHFT SPACE < LWR RET < LWR ESC &mt RSHFT BSPC < RSE DEL
|
||||
< RSE TAB &mt LSHFT SPACE < LWR RET < LWR ESC &mt RSHFT BSPC < RSE DEL
|
||||
>;
|
||||
};
|
||||
lower_layer {
|
||||
display-name = "SYM";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | | _ | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
// | + | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - |
|
||||
// | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
|
||||
// | GUI | | SPC | | ENT | | ALT |
|
||||
// | ADJ | | | | | | ADJ |
|
||||
bindings = <
|
||||
&trans &kp UNDER &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &mt RGUI F12
|
||||
&mt LCTRL PLUS &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp STAR &kp LPAR &kp RPAR &mt RCTRL MINUS
|
||||
&mt LALT EQUAL &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &trans
|
||||
< ADJ TAB &trans &trans &trans &trans < ADJ DEL
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
};
|
||||
|
||||
raise_layer {
|
||||
display-name = "NUM";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | | NMLK | / | 7 | 8 | 9 | - | | VOLU| HOME| PRSC| PGUP| SCLK| CLCK| |
|
||||
// | CTRL | * | 4 | 5 | 6 | + | | MUT | LEFT| UP | RGHT| INS | APP |
|
||||
// |CTRL/=| * | 4 | 5 | 6 | + | | MUT | LEFT| UP | RGHT| INS | APP |
|
||||
// | | 0 | 1 | 2 | 3 | . | | VOLD| END | DOWN| PGDN| PAUS| |
|
||||
// | | | ADJ | | ADJ | | |
|
||||
bindings = <
|
||||
&trans &kp KP_NUM &kp KP_SLASH &kp KP_N7 &kp KP_N8 &kp KP_N9 &kp KP_MINUS &kp C_VOL_UP &kp HOME &kp PSCRN &kp PG_UP &kp SLCK &kp CAPS &trans
|
||||
&mt LCTRL EQUAL &kp KP_MULTIPLY &kp KP_N4 &kp KP_N5 &kp KP_N6 &kp KP_PLUS &kp C_MUTE &kp LEFT &kp UP &kp RIGHT &kp INS &mt RCTRL K_APP
|
||||
&trans &kp KP_N0 &kp KP_N1 &kp KP_N2 &kp KP_N3 &kp KP_DOT &kp C_VOL_DN &kp END &kp DOWN &kp PG_DN &kp PAUSE_BREAK &trans
|
||||
&trans &trans < ADJ RET < ADJ ESC &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
};
|
||||
adjust_layer {
|
||||
display-name = "ADJ";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | RST | BLDR | | | | | | | | | | | | BLDR | RST |
|
||||
// | RST | BLDR | STU | | | | | | | | | | STU | BLDR | RST |
|
||||
// | BTCLR| BT0 | BT1 | BT2 | BT3 | BT4 | | BT4 | BT3 | BT2 | BT1 | BT0 | BTCLR|
|
||||
// | | | | | | | | | | | | | |
|
||||
// | OUT | | | | | | | | | | | | OUT |
|
||||
// | | | | | | | |
|
||||
bindings = <
|
||||
&sys_reset &bootloader &none &none &none &none &none &none &none &none &none &none &bootloader &sys_reset
|
||||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_SEL 4 &bt BT_SEL 3 &bt BT_SEL 2 &bt BT_SEL 1 &bt BT_SEL 0 &bt BT_CLR
|
||||
&none &none &none &none &none &none &none &none &none &none &none &none
|
||||
&trans &none &trans &trans &none &trans
|
||||
&sys_reset &bootloader &studio_unlock &none &none &none &none &none &none &none &none &studio_unlock &bootloader &sys_reset
|
||||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_SEL 4 &bt BT_SEL 3 &bt BT_SEL 2 &bt BT_SEL 1 &bt BT_SEL 0 &bt BT_CLR
|
||||
&out OUT_TOG &none &none &none &none &none &none &none &none &none &none &out OUT_TOG
|
||||
&trans &none &trans &trans &none &trans
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,6 +6,7 @@ url: https://github.com/KGOH/Jian-Info
|
||||
requires: [pro_micro]
|
||||
features:
|
||||
- keys
|
||||
- studio
|
||||
siblings:
|
||||
- jian_left
|
||||
- jian_right
|
||||
|
||||
103
app/boards/shields/jiran/jiran-layouts.dtsi
Normal file
103
app/boards/shields/jiran/jiran-layouts.dtsi
Normal file
@@ -0,0 +1,103 @@
|
||||
#include <layouts/kgoh/jian/6column.dtsi>
|
||||
#include <layouts/kgoh/jian/full.dtsi>
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
&layouts_kgoh_jian_position_map {
|
||||
ladniy_jiran_full_posmap: full_jiran {
|
||||
physical-layout = <&ladniy_jiran_full_layout>;
|
||||
positions
|
||||
= < 0 1 2 3 4 5 6 7 8 9 10 11 >
|
||||
, <12 13 14 15 16 17 18 19 20 21 22 23 24 25>
|
||||
, < 26 27 28 29 30 31 32 33 34 35 36 37 >
|
||||
, < 38 39 40 41 42 43 44 45 46 47 48 49 >
|
||||
, < 50 51 52 53 54 55 >;
|
||||
};
|
||||
};
|
||||
|
||||
&kgoh_jian_full_posmap {
|
||||
positions
|
||||
= < 44 45 46 47 48 49 50 51 52 53 54 55 >
|
||||
, < 0 1 2 3 4 5 6 7 8 9 10 11 12 13>
|
||||
, < 14 15 16 17 18 19 20 21 22 23 24 25 >
|
||||
, < 26 27 28 29 30 31 32 33 34 35 36 37 >
|
||||
, < 38 39 40 41 42 43 >;
|
||||
};
|
||||
|
||||
&kgoh_jian_6col_posmap {
|
||||
positions
|
||||
= < 42 43 44 45 46 47 48 49 50 51 52 53 >
|
||||
, <54 0 1 2 3 4 5 6 7 8 9 10 11 55>
|
||||
, < 12 13 14 15 16 17 18 19 20 21 22 23 >
|
||||
, < 24 25 26 27 28 29 30 31 32 33 34 35 >
|
||||
, < 36 37 38 39 40 41 >;
|
||||
};
|
||||
|
||||
&kgoh_jian_full_layout {
|
||||
display-name = "Jian (with pinky)";
|
||||
};
|
||||
|
||||
/ {
|
||||
ladniy_jiran_full_layout: ladniy_jiran_full_layout {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "Full (with pinky/numbers)";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 100 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 62 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 62 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 250 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 162 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 162 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 250 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 262 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 262 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 375 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 362 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 337 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 337 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 300 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 362 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 375 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 425 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 437 0 0 0>
|
||||
, <&key_physical_attrs 100 100 700 450 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 450 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 437 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 425 0 0 0>
|
||||
;
|
||||
};
|
||||
};
|
||||
@@ -6,13 +6,27 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include "jiran-layouts.dtsi"
|
||||
|
||||
&ladniy_jiran_full_layout {
|
||||
transform = <&jiran_transform>;
|
||||
};
|
||||
|
||||
&kgoh_jian_full_layout {
|
||||
transform = <&jian_transform>;
|
||||
};
|
||||
|
||||
&kgoh_jian_6col_layout {
|
||||
transform = <&crkbd_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &ladniy_jiran_full_layout;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
jiran_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <5>;
|
||||
|
||||
@@ -25,11 +25,11 @@
|
||||
lower_layer {
|
||||
bindings = <
|
||||
&kp GRAVE &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp EQUAL
|
||||
&kp F11 &kp TAB &bt BT_CLR &kp HOME &sys_reset &kp PG_UP &kp C_VOL_UP &kp C_VOL_UP &kp PG_UP &sys_reset &kp HOME &kp INS &kp DEL &kp F12
|
||||
&kp F11 &kp TAB &bt BT_CLR &kp HOME &sys_reset &kp PG_UP &kp C_VOL_UP &kp C_VOL_UP &kp PG_UP &studio_unlock &kp HOME &kp INS &kp DEL &kp F12
|
||||
&kp LSHIFT &bt BT_NXT &kp LEFT &kp UP &kp RIGHT &kp C_MUTE &kp C_MUTE &kp LEFT &kp UP &kp RIGHT &kp PSCRN &mt RSHIFT SLCK
|
||||
&kp LCTRL &bt BT_PRV &kp END &kp DOWN &kp PG_DN &kp C_VOL_DN &kp C_VOL_DN &kp PG_DN &kp DOWN &kp END &kp PAUSE_BREAK &mt RCTRL KP_NUM
|
||||
&trans &kp SPACE &kp LALT &mt RALT RET &kp BSPC &trans
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,6 +6,7 @@ url: https://github.com/Ladniy/jiran
|
||||
requires: [pro_micro]
|
||||
features:
|
||||
- keys
|
||||
- studio
|
||||
siblings:
|
||||
- jiran_left
|
||||
- jiran_right
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
#include "jiran.dtsi"
|
||||
|
||||
&default_transform {
|
||||
&jiran_transform {
|
||||
col-offset = <6>;
|
||||
};
|
||||
|
||||
|
||||
84
app/boards/shields/jorne/jorne-layouts.dtsi
Normal file
84
app/boards/shields/jorne/jorne-layouts.dtsi
Normal file
@@ -0,0 +1,84 @@
|
||||
#include <layouts/foostan/corne/6column.dtsi>
|
||||
#include <layouts/foostan/corne/5column.dtsi>
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
&layouts_foostan_corne_position_map {
|
||||
joric_jorne_full_posmap: full {
|
||||
physical-layout = <&joric_jorne_full_layout>;
|
||||
positions
|
||||
= < 0 1 2 3 4 5 6 7 8 9 10 11 12 13>
|
||||
, < 14 15 16 17 18 19 20 21 22 23 24 25 >
|
||||
, < 26 27 28 29 30 31 32 33 34 35 36 37 >
|
||||
, < 38 39 40 41 42 43 >;
|
||||
};
|
||||
};
|
||||
|
||||
&foostan_corne_6col_posmap {
|
||||
positions
|
||||
= <42 0 1 2 3 4 5 6 7 8 9 10 11 43>
|
||||
, < 12 13 14 15 16 17 18 19 20 21 22 23 >
|
||||
, < 24 25 26 27 28 29 30 31 32 33 34 35 >
|
||||
, < 36 37 38 39 40 41 >;
|
||||
};
|
||||
|
||||
&foostan_corne_5col_posmap {
|
||||
positions
|
||||
= <36 37 0 1 2 3 4 5 6 7 8 9 38 39>
|
||||
, < 40 10 11 12 13 14 15 16 17 18 19 41 >
|
||||
, < 42 20 21 22 23 24 25 26 27 28 29 43 >
|
||||
, < 30 31 32 33 34 35 >;
|
||||
};
|
||||
|
||||
/ {
|
||||
joric_jorne_full_layout: joric_jorne_full_layout {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "Full (with pinky)";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 0 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 24 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 24 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 124 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 124 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 600 224 0 0 0>
|
||||
, <&key_physical_attrs 100 100 900 224 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 450 312 0 0 0>
|
||||
, <&key_physical_attrs 100 100 550 312 1200 550 412>
|
||||
, <&key_physical_attrs 100 150 648 283 2400 648 433>
|
||||
, <&key_physical_attrs 100 150 852 283 (-2400) 952 433>
|
||||
, <&key_physical_attrs 100 100 950 312 (-1200) 1050 412>
|
||||
, <&key_physical_attrs 100 100 1050 312 0 0 0>
|
||||
;
|
||||
};
|
||||
};
|
||||
@@ -6,14 +6,28 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include "jorne-layouts.dtsi"
|
||||
|
||||
&joric_jorne_full_layout {
|
||||
transform = <&jorne_transform>;
|
||||
};
|
||||
|
||||
&foostan_corne_6col_layout {
|
||||
transform = <&crkbd_transform>;
|
||||
};
|
||||
|
||||
&foostan_corne_5col_layout {
|
||||
transform = <&five_column_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zephyr,display = &oled;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,physical-layout = &joric_jorne_full_layout;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
jorne_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <4>;
|
||||
@@ -57,7 +71,7 @@
|
||||
RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10)
|
||||
RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10)
|
||||
RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
|
||||
@@ -7,67 +7,83 @@
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
|
||||
#define DEF 0
|
||||
#define LWR 1
|
||||
#define RSE 2
|
||||
#define ADJ 3
|
||||
|
||||
< { quick-tap-ms = <200>; };
|
||||
&mt { quick-tap-ms = <200>; };
|
||||
|
||||
/ {
|
||||
conditional_layers {
|
||||
compatible = "zmk,conditional-layers";
|
||||
tri_layer {
|
||||
if-layers = <LWR RSE>;
|
||||
then-layer = <ADJ>;
|
||||
};
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
display-name = "MAIN";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | GUI | ~ | Q | W | E | R | T | | Y | U | I | O | P | [ | GUI/] |
|
||||
// | CTRL | A | S | D | F | G | | H | J | K | L | ; |CTRL/'|
|
||||
// | LALT | Z | X | C | V | B | | N | M | , | . | / | RALT |
|
||||
// | LALT | Z | X | C | V | B | | N | M | , | . | / |RALT/\|
|
||||
// | RSE | SPC | LWR | | LWR | BSPC | RSE |
|
||||
bindings = <
|
||||
&kp LWIN &kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &mt RWIN RBKT
|
||||
&kp LCTRL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &mt RCTRL SQT
|
||||
&kp LALT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp BSLH
|
||||
< RSE TAB &mt LSHFT SPACE < LWR RET < LWR ESC &mt RSHFT BSPC < RSE DEL
|
||||
&kp LALT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &mt RALT BSLH
|
||||
< RSE TAB &mt LSHFT SPACE < LWR RET < LWR ESC &mt RSHFT BSPC < RSE DEL
|
||||
>;
|
||||
};
|
||||
lower_layer {
|
||||
display-name = "SYM";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | | _ | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
// | + | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - |
|
||||
// | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
|
||||
// | GUI | | SPC | | ENT | | ALT |
|
||||
// | ADJ | | | | | | ADJ |
|
||||
bindings = <
|
||||
&trans &kp UNDER &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &mt RGUI F12
|
||||
&mt LCTRL PLUS &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp STAR &kp LPAR &kp RPAR &mt RCTRL MINUS
|
||||
&mt LALT EQUAL &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &trans
|
||||
< ADJ TAB &trans &trans &trans &trans < ADJ DEL
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
};
|
||||
|
||||
raise_layer {
|
||||
display-name = "NUM";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | | NMLK | / | 7 | 8 | 9 | - | | VOLU| HOME| PRSC| PGUP| SCLK| CLCK| |
|
||||
// | CTRL | * | 4 | 5 | 6 | + | | MUT | LEFT| UP | RGHT| INS | APP |
|
||||
// |CTRL/=| * | 4 | 5 | 6 | + | | MUT | LEFT| UP | RGHT| INS | APP |
|
||||
// | | 0 | 1 | 2 | 3 | . | | VOLD| END | DOWN| PGDN| PAUS| |
|
||||
// | | | ADJ | | ADJ | | |
|
||||
bindings = <
|
||||
&trans &kp KP_NUM &kp KP_SLASH &kp KP_N7 &kp KP_N8 &kp KP_N9 &kp KP_MINUS &kp C_VOL_UP &kp HOME &kp PSCRN &kp PG_UP &kp SLCK &kp CAPS &trans
|
||||
&mt LCTRL EQUAL &kp KP_MULTIPLY &kp KP_N4 &kp KP_N5 &kp KP_N6 &kp KP_PLUS &kp C_MUTE &kp LEFT &kp UP &kp RIGHT &kp INS &mt RCTRL K_APP
|
||||
&trans &kp KP_N0 &kp KP_N1 &kp KP_N2 &kp KP_N3 &kp KP_DOT &kp C_VOL_DN &kp END &kp DOWN &kp PG_DN &kp PAUSE_BREAK &trans
|
||||
&trans &trans < ADJ RET < ADJ ESC &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
};
|
||||
adjust_layer {
|
||||
display-name = "ADJ";
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | RST | BLDR | | | | | | | | | | | | BLDR | RST |
|
||||
// | RST | BLDR | STU | | | | | | | | | | STU | BLDR | RST |
|
||||
// | BTCLR| BT0 | BT1 | BT2 | BT3 | BT4 | | BT4 | BT3 | BT2 | BT1 | BT0 | BTCLR|
|
||||
// | | | | | | | | | | | | | |
|
||||
// | OUT | | | | | | | | | | | | OUT |
|
||||
// | | | | | | | |
|
||||
bindings = <
|
||||
&sys_reset &bootloader &none &none &none &none &none &none &none &none &none &none &bootloader &sys_reset
|
||||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_SEL 4 &bt BT_SEL 3 &bt BT_SEL 2 &bt BT_SEL 1 &bt BT_SEL 0 &bt BT_CLR
|
||||
&none &none &none &none &none &none &none &none &none &none &none &none
|
||||
&trans &none &trans &trans &none &trans
|
||||
&sys_reset &bootloader &studio_unlock &none &none &none &none &none &none &none &none &studio_unlock &bootloader &sys_reset
|
||||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_SEL 4 &bt BT_SEL 3 &bt BT_SEL 2 &bt BT_SEL 1 &bt BT_SEL 0 &bt BT_CLR
|
||||
&out OUT_TOG &none &none &none &none &none &none &none &none &none &none &out OUT_TOG
|
||||
&trans &none &trans &trans &none &trans
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -9,6 +9,7 @@ features:
|
||||
- keys
|
||||
- display
|
||||
- underglow
|
||||
- studio
|
||||
siblings:
|
||||
- jorne_left
|
||||
- jorne_right
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
#include "jorne.dtsi"
|
||||
|
||||
&default_transform {
|
||||
&jorne_transform {
|
||||
col-offset = <6>;
|
||||
};
|
||||
|
||||
|
||||
137
app/boards/shields/kyria/kyria-layouts.dtsi
Normal file
137
app/boards/shields/kyria/kyria-layouts.dtsi
Normal file
@@ -0,0 +1,137 @@
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
/ {
|
||||
splitkb_kyria_6col_layout: splitkb_kyria_6col_layout {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "6 Column";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 0 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 350 225 3000 400 792>
|
||||
, <&key_physical_attrs 100 100 350 225 4500 400 792>
|
||||
, <&key_physical_attrs 100 100 1250 225 (-4500) 1300 792>
|
||||
, <&key_physical_attrs 100 100 1250 225 (-3000) 1300 792>
|
||||
, <&key_physical_attrs 100 100 1100 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1500 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1600 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 250 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 350 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 350 325 1500 400 792>
|
||||
, <&key_physical_attrs 100 100 350 325 3000 400 792>
|
||||
, <&key_physical_attrs 100 100 350 325 4500 400 792>
|
||||
, <&key_physical_attrs 100 100 1250 325 (-4500) 1300 792>
|
||||
, <&key_physical_attrs 100 100 1250 325 (-3000) 1300 792>
|
||||
, <&key_physical_attrs 100 100 1250 325 (-1500) 1300 792>
|
||||
, <&key_physical_attrs 100 100 1250 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1350 325 0 0 0>
|
||||
;
|
||||
};
|
||||
|
||||
splitkb_kyria_5col_layout: splitkb_kyria_5col_layout {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "5 Column";
|
||||
|
||||
keys // w h x y rot rx ry
|
||||
= <&key_physical_attrs 100 100 0 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 25 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 75 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1000 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 125 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 175 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 250 225 3000 300 792>
|
||||
, <&key_physical_attrs 100 100 250 225 4500 300 792>
|
||||
, <&key_physical_attrs 100 100 1150 225 (-4500) 1200 792>
|
||||
, <&key_physical_attrs 100 100 1150 225 (-3000) 1200 792>
|
||||
, <&key_physical_attrs 100 100 1000 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1100 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1200 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1300 225 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1400 275 0 0 0>
|
||||
, <&key_physical_attrs 100 100 150 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 250 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 250 325 1500 300 792>
|
||||
, <&key_physical_attrs 100 100 250 325 3000 300 792>
|
||||
, <&key_physical_attrs 100 100 250 325 4500 300 792>
|
||||
, <&key_physical_attrs 100 100 1150 325 (-4500) 1200 792>
|
||||
, <&key_physical_attrs 100 100 1150 325 (-3000) 1200 792>
|
||||
, <&key_physical_attrs 100 100 1150 325 (-1500) 1200 792>
|
||||
, <&key_physical_attrs 100 100 1150 325 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1250 325 0 0 0>
|
||||
;
|
||||
};
|
||||
|
||||
splitkb_kyria_position_map {
|
||||
compatible = "zmk,physical-layout-position-map";
|
||||
|
||||
complete;
|
||||
|
||||
twelve {
|
||||
physical-layout = <&splitkb_kyria_6col_layout>;
|
||||
positions
|
||||
= < 0 1 2 3 4 5 6 7 8 9 10 11>
|
||||
, <12 13 14 15 16 17 18 19 20 21 22 23>
|
||||
, <24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39>
|
||||
, < 40 41 42 43 44 45 46 47 48 49 >;
|
||||
};
|
||||
|
||||
ten {
|
||||
physical-layout = <&splitkb_kyria_5col_layout>;
|
||||
positions
|
||||
= <44 0 1 2 3 4 5 6 7 8 9 47>
|
||||
, <45 10 11 12 13 14 15 16 17 18 19 48>
|
||||
, <46 20 21 22 23 24 25 26 27 28 29 30 31 32 33 49>
|
||||
, < 34 35 36 37 38 39 40 41 42 43 >;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -6,11 +6,15 @@
|
||||
|
||||
#include "kyria_common.dtsi"
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,matrix-transform = &default_transform;
|
||||
};
|
||||
&splitkb_kyria_6col_layout {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
&splitkb_kyria_5col_layout {
|
||||
transform = <&five_column_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <16>;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user