mirror of
https://github.com/zmkfirmware/zmk.git
synced 2026-03-20 04:55:20 -05:00
Compare commits
1 Commits
release-pl
...
dependabot
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f40e7a4441 |
@@ -1,4 +1,4 @@
|
||||
FROM docker.io/zmkfirmware/zmk-dev-arm:4.1-branch
|
||||
FROM docker.io/zmkfirmware/zmk-dev-arm:3.5
|
||||
|
||||
COPY .bashrc tmp
|
||||
RUN mv /tmp/.bashrc ~/.bashrc
|
||||
|
||||
6
.github/workflows/ble-test.yml
vendored
6
.github/workflows/ble-test.yml
vendored
@@ -21,7 +21,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
- name: Find test directories
|
||||
id: test-dirs
|
||||
run: |
|
||||
@@ -35,10 +35,10 @@ jobs:
|
||||
test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }}
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: docker.io/zmkfirmware/zmk-build-arm:4.1
|
||||
image: docker.io/zmkfirmware/zmk-build-arm:3.5
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
- name: Cache west modules
|
||||
uses: actions/cache@v4
|
||||
env:
|
||||
|
||||
69
.github/workflows/build-user-config.yml
vendored
69
.github/workflows/build-user-config.yml
vendored
@@ -30,28 +30,17 @@ jobs:
|
||||
name: Fetch Build Keyboards
|
||||
outputs:
|
||||
build_matrix: ${{ env.build_matrix }}
|
||||
has_valid_build_matrix: ${{ steps.fetch.outputs.has_valid_build_matrix }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Fetch Build Matrix
|
||||
id: fetch
|
||||
run: |
|
||||
matrix_content=$(yq -oj -I0 '${{ inputs.build_matrix_path }}')
|
||||
|
||||
if [ -z "$matrix_content" ] || [ "$matrix_content" = "null" ]; then
|
||||
echo "::notice file=${{inputs.build_matrix_path}},title=Empty build matrix file::To add a keyboard to the build, see https://zmk.dev/docs/user-setup#add-a-keyboard."
|
||||
echo "has_valid_build_matrix=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "build_matrix=$matrix_content" >> $GITHUB_ENV
|
||||
echo "has_valid_build_matrix=true" >> $GITHUB_OUTPUT
|
||||
echo "$matrix_content"
|
||||
fi
|
||||
echo "build_matrix=$(yq -oj -I0 '${{ inputs.build_matrix_path }}')" >> $GITHUB_ENV
|
||||
yq -oj "${{ inputs.build_matrix_path }}"
|
||||
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
if: needs.matrix.outputs.has_valid_build_matrix == 'true'
|
||||
container:
|
||||
image: zmkfirmware/zmk-build-arm:stable
|
||||
needs: matrix
|
||||
@@ -60,21 +49,15 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix: ${{ fromJson(needs.matrix.outputs.build_matrix) }}
|
||||
steps:
|
||||
- name: Act Workaround # https://github.com/nektos/act/issues/973
|
||||
if: ${{ env.ACT }}
|
||||
run: |
|
||||
apt-get update && apt-get install -y curl unzip
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x | bash && apt install -y nodejs
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Create build directory
|
||||
run: |
|
||||
echo "build_dir=$(mktemp -d)" >> $GITHUB_ENV
|
||||
|
||||
- name: Prepare variables
|
||||
shell: bash -x {0}
|
||||
shell: sh -x {0}
|
||||
env:
|
||||
board: ${{ matrix.board }}
|
||||
shield: ${{ matrix.shield }}
|
||||
@@ -98,7 +81,7 @@ jobs:
|
||||
echo "extra_west_args=${extra_west_args}" >> $GITHUB_ENV
|
||||
echo "extra_cmake_args=${shield:+-DSHIELD=\"$shield\"}${zmk_load_arg}" >> $GITHUB_ENV
|
||||
echo "display_name=${shield:+$shield - }${board}" >> $GITHUB_ENV
|
||||
echo "artifact_name=${artifact_name:-${shield:+$shield-}${board//\//_}-zmk}" >> $GITHUB_ENV
|
||||
echo "artifact_name=${artifact_name:-${shield:+$shield-}${board}-zmk}" >> $GITHUB_ENV
|
||||
|
||||
- name: Copy config files to isolated temporary directory
|
||||
run: |
|
||||
@@ -133,13 +116,6 @@ jobs:
|
||||
working-directory: ${{ env.base_dir }}
|
||||
run: west update --fetch-opt=--filter=tree:0
|
||||
|
||||
- name: Check ZMK revision
|
||||
working-directory: ${{ env.base_dir }}
|
||||
run: |
|
||||
zmk_revision=$(west list -f "{revision}" zmk)
|
||||
echo "zmk_revision=${zmk_revision}" >> $GITHUB_ENV
|
||||
echo "ZMK revision: ${zmk_revision}"
|
||||
|
||||
- name: West Zephyr export
|
||||
working-directory: ${{ env.base_dir }}
|
||||
run: west zephyr-export
|
||||
@@ -149,38 +125,6 @@ jobs:
|
||||
shell: sh -x {0}
|
||||
run: west build -s zmk/app -d "${{ env.build_dir }}" -b "${{ matrix.board }}" ${{ env.extra_west_args }} -- -DZMK_CONFIG=${{ env.base_dir }}/${{ inputs.config_path }} ${{ env.extra_cmake_args }} ${{ matrix.cmake-args }}
|
||||
|
||||
- name: Warn about building from main if build fails
|
||||
if: failure() && env.zmk_revision == 'main'
|
||||
run: |
|
||||
echo "# Consider Pinning ZMK" >> $GITHUB_STEP_SUMMARY
|
||||
echo "Your recent build failure might be the result of breaking changes made to ZMK's main branch." >> $GITHUB_STEP_SUMMARY
|
||||
echo "Consider [pinning your ZMK version](https://zmk.dev/blog/2025/06/20/pinned-zmk) to a release for increased stability." >> $GITHUB_STEP_SUMMARY
|
||||
echo "See also the [list of released versions](https://github.com/zmkfirmware/zmk/releases)." >> $GITHUB_STEP_SUMMARY
|
||||
echo "If you wish to stay on main, check the most recent pending release PR for breaking changes. [Our blog](https://zmk.dev/blog) may have upgrade information if breaking changes are significant." >> $GITHUB_STEP_SUMMARY
|
||||
|
||||
- name: Check if building a board without explicit ZMK compat
|
||||
if: always()
|
||||
working-directory: "${{ env.base_dir }}/${{ inputs.config_path }}"
|
||||
run: |
|
||||
if ! (grep "CONFIG_ZMK_BOARD_COMPAT=y" "${{ env.build_dir }}/zephyr/.config" > /dev/null)
|
||||
then
|
||||
original_board=$(echo "${{ matrix.board }}" | sed -e 's$/.*$$')
|
||||
west_board=$(west boards --board-root ${{ env.base_dir }}/zmk/app/module --board-root ${{ env.base_dir }}/zmk/app --board "${original_board}")
|
||||
if [ -z "$west_board" ]; then
|
||||
echo "Not found the board listed with west boards. Skipping further checking."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
west boards --board-root ${{ env.base_dir }}/zmk/app/module --board-root ${{ env.base_dir }}/zmk/app --board "${original_board}" --format "{qualifiers}" | grep "zmk" > /dev/null
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "::warning file=build/zephyr/.config,title=Missing ZMK Compat::The selected board does not report explicit ZMK compat. Please verify you've selected the correct board and ZMK variant if one exists"
|
||||
else
|
||||
echo "::error file=build/zephyr/.config,title=Missing ZMK Compat::The selected board is not set up for ZMK and there is a ZMK variant available. See https://zmk.dev/blog/2025/12/09/zephyr-4-1#zmk-board-variant."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
- name: ${{ env.display_name }} Kconfig file
|
||||
run: |
|
||||
if [ -f "${{ env.build_dir }}/zephyr/.config" ]
|
||||
@@ -224,7 +168,6 @@ jobs:
|
||||
|
||||
merge:
|
||||
runs-on: ubuntu-latest
|
||||
if: needs.matrix.outputs.has_valid_build_matrix == 'true'
|
||||
needs: build
|
||||
name: Merge Output Artifacts
|
||||
steps:
|
||||
|
||||
37
.github/workflows/build.yml
vendored
37
.github/workflows/build.yml
vendored
@@ -23,14 +23,14 @@ jobs:
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: docker.io/zmkfirmware/zmk-build-arm:4.1
|
||||
image: docker.io/zmkfirmware/zmk-build-arm:3.5
|
||||
needs: compile-matrix
|
||||
strategy:
|
||||
matrix:
|
||||
include: ${{ fromJSON(needs.compile-matrix.outputs.include-list) }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
- name: Cache west modules
|
||||
@@ -61,9 +61,9 @@ jobs:
|
||||
with:
|
||||
node-version: "14.x"
|
||||
- name: Install @actions/artifact
|
||||
run: npm install @actions/artifact@5.0.3
|
||||
run: npm install @actions/artifact
|
||||
- name: Build
|
||||
uses: actions/github-script@v7
|
||||
uses: actions/github-script@v8
|
||||
id: boards-list
|
||||
with:
|
||||
script: |
|
||||
@@ -95,7 +95,7 @@ jobs:
|
||||
throw new Error('Failed to build one or more configurations');
|
||||
}
|
||||
- name: Upload artifacts
|
||||
uses: actions/github-script@v7
|
||||
uses: actions/github-script@v8
|
||||
continue-on-error: ${{ github.event_name == 'pull_request' }}
|
||||
id: boards-upload
|
||||
with:
|
||||
@@ -123,7 +123,7 @@ jobs:
|
||||
}
|
||||
|
||||
const cmakeName = shieldArgs['cmake-args'] ? '-' + (shieldArgs.nickname || shieldArgs['cmake-args'].split(' ').join('')) : '';
|
||||
const artifactName = `${{ matrix.board }}${shieldArgs.shield ? '-' + shieldArgs.shield : ''}${cmakeName}-zmk`.replaceAll('/', '_');
|
||||
const artifactName = `${{ matrix.board }}${shieldArgs.shield ? '-' + shieldArgs.shield : ''}${cmakeName}-zmk`;
|
||||
|
||||
await artifact.uploadArtifact(artifactName, files, rootDirectory, options);
|
||||
} catch (e) {
|
||||
@@ -146,7 +146,7 @@ jobs:
|
||||
include-list: ${{ steps.compile-list.outputs.result }}
|
||||
steps:
|
||||
- name: Join build lists
|
||||
uses: actions/github-script@v7
|
||||
uses: actions/github-script@v8
|
||||
id: compile-list
|
||||
with:
|
||||
script: |
|
||||
@@ -187,7 +187,7 @@ jobs:
|
||||
core-include: ${{ steps.core-list.outputs.result }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
- name: Use Node.js
|
||||
@@ -196,7 +196,7 @@ jobs:
|
||||
node-version: "14.x"
|
||||
- name: Install js-yaml
|
||||
run: npm install js-yaml
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v8
|
||||
id: core-list
|
||||
with:
|
||||
script: |
|
||||
@@ -218,14 +218,14 @@ jobs:
|
||||
boards-include: ${{ steps.boards-list.outputs.result }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
- name: Use Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: "14.x"
|
||||
- name: Install js-yaml
|
||||
run: npm install js-yaml
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v8
|
||||
id: boards-list
|
||||
with:
|
||||
script: |
|
||||
@@ -277,7 +277,6 @@ jobs:
|
||||
);
|
||||
} else {
|
||||
console.error("Board without keys or interconnect");
|
||||
return [];
|
||||
}
|
||||
break;
|
||||
case "shield":
|
||||
@@ -303,7 +302,7 @@ jobs:
|
||||
nightly-include: ${{ steps.nightly-list.outputs.result }}
|
||||
steps:
|
||||
- name: Create nightly list
|
||||
uses: actions/github-script@v7
|
||||
uses: actions/github-script@v8
|
||||
id: nightly-list
|
||||
with:
|
||||
script: |
|
||||
@@ -346,7 +345,7 @@ jobs:
|
||||
organized-metadata: ${{ steps.organize-metadata.outputs.result }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
- name: Use Node.js
|
||||
@@ -356,7 +355,7 @@ jobs:
|
||||
- name: Install js-yaml
|
||||
run: npm install js-yaml
|
||||
- name: Aggregate Metadata
|
||||
uses: actions/github-script@v7
|
||||
uses: actions/github-script@v8
|
||||
id: aggregate-metadata
|
||||
with:
|
||||
script: |
|
||||
@@ -374,7 +373,7 @@ jobs:
|
||||
result-encoding: string
|
||||
|
||||
- name: Organize Metadata
|
||||
uses: actions/github-script@v7
|
||||
uses: actions/github-script@v8
|
||||
id: organize-metadata
|
||||
with:
|
||||
script: |
|
||||
@@ -428,7 +427,7 @@ jobs:
|
||||
core-changes: ${{ steps.core-changes.outputs.result }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
- uses: tj-actions/changed-files@9200e69727eb73eb060652b19946b8a2fdfb654b # pin to v45.0.8 due to https://github.com/tj-actions/changed-files/issues/2463 https://www.stepsecurity.io/blog/harden-runner-detection-tj-actions-changed-files-action-is-compromised
|
||||
@@ -436,7 +435,7 @@ jobs:
|
||||
with:
|
||||
json: true
|
||||
escape_json: false
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v8
|
||||
id: board-changes
|
||||
with:
|
||||
script: |
|
||||
@@ -444,7 +443,7 @@ jobs:
|
||||
const boardChanges = changedFiles.filter(f => f.startsWith('app/boards'));
|
||||
return boardChanges.length ? 'true' : 'false';
|
||||
result-encoding: string
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v8
|
||||
id: core-changes
|
||||
with:
|
||||
script: |
|
||||
|
||||
4
.github/workflows/doc-checks.yml
vendored
4
.github/workflows/doc-checks.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v4
|
||||
- uses: bahmutov/npm-install@v1
|
||||
with:
|
||||
working-directory: docs
|
||||
@@ -24,7 +24,7 @@ jobs:
|
||||
typecheck:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v4
|
||||
- uses: bahmutov/npm-install@v1
|
||||
with:
|
||||
working-directory: docs
|
||||
|
||||
@@ -18,9 +18,9 @@ jobs:
|
||||
validate-metadata:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: docker.io/zmkfirmware/zmk-dev-arm:4.1
|
||||
image: docker.io/zmkfirmware/zmk-dev-arm:3.5
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install dependencies
|
||||
run: pip install --break-system-packages -r app/scripts/requirements.txt
|
||||
- name: West init
|
||||
|
||||
2
.github/workflows/pre-commit.yml
vendored
2
.github/workflows/pre-commit.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
||||
pre-commit:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: 3.x
|
||||
|
||||
2
.github/workflows/release-please.yml
vendored
2
.github/workflows/release-please.yml
vendored
@@ -35,7 +35,7 @@ jobs:
|
||||
ZMK_RELEASE_PLEASE_TOKEN: ${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}
|
||||
VERSION: v${{ needs.handle-commit.outputs.major }}.${{ needs.handle-commit.outputs.minor }}
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Create major.minor branch
|
||||
if: ${{ needs.handle-commit.outputs.patch == '0' }}
|
||||
|
||||
8
.github/workflows/test.yml
vendored
8
.github/workflows/test.yml
vendored
@@ -23,7 +23,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
- name: Find test directories
|
||||
id: test-dirs
|
||||
run: |
|
||||
@@ -37,10 +37,10 @@ jobs:
|
||||
test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }}
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: docker.io/zmkfirmware/zmk-build-arm:4.1
|
||||
image: docker.io/zmkfirmware/zmk-build-arm:3.5
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v4
|
||||
- name: Cache west modules
|
||||
uses: actions/cache@v4
|
||||
env:
|
||||
@@ -66,7 +66,7 @@ jobs:
|
||||
run: west zephyr-export
|
||||
- name: Test ${{ matrix.test }}
|
||||
working-directory: app
|
||||
run: ZMK_TESTS_VERBOSE=1 west test tests/${{ matrix.test }}
|
||||
run: west test tests/${{ matrix.test }}
|
||||
- name: Archive artifacts
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v4
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,7 +1,6 @@
|
||||
/.west
|
||||
/bootloader
|
||||
/modules
|
||||
/optional
|
||||
/tools
|
||||
/zephyr
|
||||
/zmk-config
|
||||
|
||||
@@ -1 +1 @@
|
||||
{".":"0.4.0"}
|
||||
{".":"0.3.0"}
|
||||
|
||||
95
CHANGELOG.md
95
CHANGELOG.md
@@ -1,100 +1,5 @@
|
||||
# Changelog
|
||||
|
||||
## [0.4.0](https://github.com/zmkfirmware/zmk/compare/v0.3.0...v0.4.0) (2026-03-20)
|
||||
|
||||
|
||||
### ⚠ BREAKING CHANGES
|
||||
|
||||
* Move to zephyr v4.1 ([#3060](https://github.com/zmkfirmware/zmk/issues/3060))
|
||||
* **core:** Allow layer behaviors to "lock" layers on (https://github.com/zmkfirmware/zmk/pull/2717)
|
||||
|
||||
### Features
|
||||
|
||||
* Add double tap to enter bootloader functionality ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* Add nBOOT_SEL bit setup for STM32 G0/C0 targets ([f85ec7e](https://github.com/zmkfirmware/zmk/commit/f85ec7e7a24be10f1cf59025a192569dc0b33167))
|
||||
* Add ZMK_BOARD_COMPAT Kconfig symbol, and check for it ([a23aa00](https://github.com/zmkfirmware/zmk/commit/a23aa009d7a07d67fe5609caca7372e16610f238))
|
||||
* Allow layer behaviors to "lock" layers on (https://github.com/zmkfirmware/zmk/pull/2717) ([5138c6f](https://github.com/zmkfirmware/zmk/commit/5138c6fb14783b756c5a3e61581625c700f3555b))
|
||||
* **behaviors:** Add retention boot mode to reset. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **ble:** Use appearance set in the BT_DEVICE_APPEARANCE config ([#3115](https://github.com/zmkfirmware/zmk/issues/3115)) ([ad7fbfe](https://github.com/zmkfirmware/zmk/commit/ad7fbfef920d9907ca8f143e273fa9eb7d84b25a))
|
||||
* **boards/shields:** Add settings for Rpi Pico and add tester_rpi_pico shield ([#2900](https://github.com/zmkfirmware/zmk/issues/2900)) ([ccf20a1](https://github.com/zmkfirmware/zmk/commit/ccf20a1f5c1534a197d32279abbe0eaf651099d8))
|
||||
* **boards:** add support for nrf52840dongle_nrf52840 ([#3011](https://github.com/zmkfirmware/zmk/issues/3011)) ([c7fae18](https://github.com/zmkfirmware/zmk/commit/c7fae18ae122b2465080507380dd55d096edd666))
|
||||
* **core:** (Optionally) use Zephyr keyboard input devices ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **core:** mapper for magic bootloader values. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **display:** Add thread name to dedicated display queue. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **docs:** Update New Behavior Guide ([#3107](https://github.com/zmkfirmware/zmk/issues/3107)) ([e34793e](https://github.com/zmkfirmware/zmk/commit/e34793e8c7193bc868b95ec38d78f67956f759cb))
|
||||
* **endpoints:** add "no endpoint" value ([6e7e0de](https://github.com/zmkfirmware/zmk/commit/6e7e0de2b621073392816b284ab4931bee709ee8))
|
||||
* **endpoints:** add "no endpoint" value ([#3140](https://github.com/zmkfirmware/zmk/issues/3140)) ([6e7e0de](https://github.com/zmkfirmware/zmk/commit/6e7e0de2b621073392816b284ab4931bee709ee8))
|
||||
* **layouts:** Add physical layout for Redox shield ([61de01a](https://github.com/zmkfirmware/zmk/commit/61de01abb00a73349a188ef2e10ad1cd040d31b3))
|
||||
* Move to zephyr v4.1 ([#3060](https://github.com/zmkfirmware/zmk/issues/3060)) ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **pointing:** Handle INPUT_BTN_TOUCH codes for mouse buttons ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **pointing:** Release pressed keys on disconnect ([#3204](https://github.com/zmkfirmware/zmk/issues/3204)) ([24487bd](https://github.com/zmkfirmware/zmk/commit/24487bd9744f504724089f0e1cec98431a2d3333))
|
||||
* **shields:** Add Studio support to boardsource3x4 ([#3154](https://github.com/zmkfirmware/zmk/issues/3154)) ([40e06f3](https://github.com/zmkfirmware/zmk/commit/40e06f3c0084751f7ae012a71d92d5801ac3b7a0))
|
||||
* **split:** Add HID indicators and physical layout set to Wired split ([#3103](https://github.com/zmkfirmware/zmk/issues/3103)) ([7738924](https://github.com/zmkfirmware/zmk/commit/773892434931b74bdf54474b73c909779daa9471))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* Add "optional" folder to .gitignore ([#3141](https://github.com/zmkfirmware/zmk/issues/3141)) ([c099041](https://github.com/zmkfirmware/zmk/commit/c0990410da4c0a0c3776448e8c05ca2ce8778c8a))
|
||||
* **behaviors:** correctly handle sensor rotation remainder ([#3084](https://github.com/zmkfirmware/zmk/issues/3084)) ([958fa78](https://github.com/zmkfirmware/zmk/commit/958fa788067e18c2228d016fcd826000bb8f0320))
|
||||
* **boards:** Add xiao_ble sd_partition label for nosd snippet compat ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **boards:** Fix pillbug board.yml to report extension ([a23aa00](https://github.com/zmkfirmware/zmk/commit/a23aa009d7a07d67fe5609caca7372e16610f238))
|
||||
* **boards:** Remove nano overlays for old nice_nano_v2 board ID. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **boards:** Remove some references to old nice_nano_v2 board ID. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **boards:** Retore bootloader support on XIAO BLE. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **ci:** Better safeguards for ZMK variant build check ([#3277](https://github.com/zmkfirmware/zmk/issues/3277)) ([8feeb52](https://github.com/zmkfirmware/zmk/commit/8feeb52eafc716c1697cfe0515e98b78281c3543))
|
||||
* **ci:** disable nrf5340dk from being built in our CI ([#3066](https://github.com/zmkfirmware/zmk/issues/3066)) ([522971f](https://github.com/zmkfirmware/zmk/commit/522971f41d62d7e5d6664eb61c84d190781feeb9))
|
||||
* **ci:** Fix release please template bump ([#3021](https://github.com/zmkfirmware/zmk/issues/3021)) ([f3233c1](https://github.com/zmkfirmware/zmk/commit/f3233c1b60e4cb4c095572740bcbcaf7111eb804))
|
||||
* **ci:** Pin @actions/artifact to a compatible release ([#3230](https://github.com/zmkfirmware/zmk/issues/3230)) ([ada1542](https://github.com/zmkfirmware/zmk/commit/ada1542940c3a01c0866c9fe9c30f489bc087328))
|
||||
* **ci:** Prevent slash characters in artifact names. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **ci:** Skip build on empty build matrix ([#3271](https://github.com/zmkfirmware/zmk/issues/3271)) ([df2e979](https://github.com/zmkfirmware/zmk/commit/df2e979d7e03ba84a503e3d90975a599d484b9e0)), closes [#3179](https://github.com/zmkfirmware/zmk/issues/3179)
|
||||
* **core:** Don't force CBPRINTF_NANO, for proper formatting. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **core:** Generate correct keymap layer names for all builds ([#3047](https://github.com/zmkfirmware/zmk/issues/3047)) ([0b5a103](https://github.com/zmkfirmware/zmk/commit/0b5a103c187ad337b9f50d824667866c4d7252e1)), closes [#3045](https://github.com/zmkfirmware/zmk/issues/3045)
|
||||
* **core:** One tick kscan wait on RP2350 ([#3255](https://github.com/zmkfirmware/zmk/issues/3255)) ([9278505](https://github.com/zmkfirmware/zmk/commit/9278505975759e9cf01b4e6e8ead359b14a11400))
|
||||
* **core:** Set a system work queue stack size of 2048 by default ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **core:** support magic bootloader values for nRF52833 ([#3163](https://github.com/zmkfirmware/zmk/issues/3163)) ([308de56](https://github.com/zmkfirmware/zmk/commit/308de56fb938057da7648a411ce0dce780dfc3f1))
|
||||
* Disable Nordic dt-bindings header checks. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **display:** Adjust stack sizes for display usage. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **display:** Fix setting the small font for the mono theme. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **display:** port nice!view display code ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **docs:** Improve ZMK setup instructions ([#3209](https://github.com/zmkfirmware/zmk/issues/3209)) ([354cff9](https://github.com/zmkfirmware/zmk/commit/354cff9c36b49eee6abbb8a61e6b927539aebbf2))
|
||||
* **docs:** Tweak layer tap example to be clearer ([#3023](https://github.com/zmkfirmware/zmk/issues/3023)) ([919bce7](https://github.com/zmkfirmware/zmk/commit/919bce7962db78139415ccf0e80fb858c89adb3d))
|
||||
* Don't enable ZMK Display by default for a few shields ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **endpoints:** Add endpoint setting upgrade ([6e7e0de](https://github.com/zmkfirmware/zmk/commit/6e7e0de2b621073392816b284ab4931bee709ee8))
|
||||
* Fix redundant const warning ([#3139](https://github.com/zmkfirmware/zmk/issues/3139)) ([8987f39](https://github.com/zmkfirmware/zmk/commit/8987f3979d7877114ede2f34edb5570a6b454460))
|
||||
* **hid:** initialize missing d_scroll_x field in mouse report ([#3196](https://github.com/zmkfirmware/zmk/issues/3196)) ([abce9de](https://github.com/zmkfirmware/zmk/commit/abce9deab76124d72c61a824aaa1affc3dbc1260))
|
||||
* **keymap:** Fix overflow in get/set bindings ([#3205](https://github.com/zmkfirmware/zmk/issues/3205)) ([ab46f48](https://github.com/zmkfirmware/zmk/commit/ab46f48dde8aa70e44a2fc2d2a1b81ae703d4981))
|
||||
* nice!view built-in widgets render failure from insufficient memory ([#3243](https://github.com/zmkfirmware/zmk/issues/3243)) ([536375e](https://github.com/zmkfirmware/zmk/commit/536375e45ef6d01a9c194803525bf9dd5e119421)), closes [#3219](https://github.com/zmkfirmware/zmk/issues/3219)
|
||||
* **pointing:** Refactor for changes to input API ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* Refactor for new Zephyr PM API ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* Remove usage of renamed Kconfig from core coverage. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* replace removed `K_THREAD_STACK_MEMBER` with `K_KERNEL_STACK_MEMBER` ([#3218](https://github.com/zmkfirmware/zmk/issues/3218)) ([f6c629e](https://github.com/zmkfirmware/zmk/commit/f6c629e895bbe3957ec243afb80b11e1e4b4e503))
|
||||
* **sensors:** Initialize sensor data to 0 before fetching. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* Set default transport according to enabled transports ([6e7e0de](https://github.com/zmkfirmware/zmk/commit/6e7e0de2b621073392816b284ab4931bee709ee8))
|
||||
* **shields:** Proper transparent binding in sofle raise layer ([#3238](https://github.com/zmkfirmware/zmk/issues/3238)) ([5cfc67a](https://github.com/zmkfirmware/zmk/commit/5cfc67a33402b24ab893b8d71cef1af2a869adbb))
|
||||
* **split:** correct async UART RX buffer definition ([#3193](https://github.com/zmkfirmware/zmk/issues/3193)) ([36dbf46](https://github.com/zmkfirmware/zmk/commit/36dbf467644d4b4b6b9176241d42261d27fb18f2))
|
||||
* **split:** int to pointer cast in bas proxy ([#3105](https://github.com/zmkfirmware/zmk/issues/3105)) ([ece2ce1](https://github.com/zmkfirmware/zmk/commit/ece2ce11b8c7245fbe2b4e41ec9fa7a870632e6c))
|
||||
* **split:** Properly return from command handler ([#3120](https://github.com/zmkfirmware/zmk/issues/3120)) ([d32ffb0](https://github.com/zmkfirmware/zmk/commit/d32ffb0a335ece70a9ce3dc3ce014676534ee99b))
|
||||
* **split:** Use correct Kconfig for bumping TX buffers for discovery ([#3216](https://github.com/zmkfirmware/zmk/issues/3216)) ([9490391](https://github.com/zmkfirmware/zmk/commit/9490391e1e4010c83291d437b7f9a71ace244581)), closes [#3156](https://github.com/zmkfirmware/zmk/issues/3156)
|
||||
* **studio:** Allow setting UART RPC thread priority ([#3290](https://github.com/zmkfirmware/zmk/issues/3290)) ([e4fb39d](https://github.com/zmkfirmware/zmk/commit/e4fb39d4a6514fe90d44b1570f908bddc5df0ad2))
|
||||
* **studio:** avoid decoding buffer overflow ([#3185](https://github.com/zmkfirmware/zmk/issues/3185)) ([70ab6b2](https://github.com/zmkfirmware/zmk/commit/70ab6b243a90b556d113fcdd0c8de1ef3dccdc1e))
|
||||
* **studio:** Correct `memset` usage. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **studio:** Correct usage of thread analyzer API ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **studio:** Properly serialize GATT RPC indications. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **tests:** Fix BLE test to account for Zephyr changes ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **underglow:** Remove use of removed Kconfig WS2812 symbol ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **usb:** Adjust Kconfig settings for USB. ([c06fa48](https://github.com/zmkfirmware/zmk/commit/c06fa48ce59e016105d79c20942d085314502d8d))
|
||||
* **usb:** Prevent unexpected USB disconnection caused by USB SOF ([#3070](https://github.com/zmkfirmware/zmk/issues/3070)) ([118359c](https://github.com/zmkfirmware/zmk/commit/118359c83efa0758144489fd5e12cc6f5bdbad4c))
|
||||
|
||||
|
||||
### Documentation
|
||||
|
||||
* Added documentation note on locking layers ([5138c6f](https://github.com/zmkfirmware/zmk/commit/5138c6fb14783b756c5a3e61581625c700f3555b))
|
||||
|
||||
|
||||
### Code Refactoring
|
||||
|
||||
* **core:** Allow layer behaviors to "lock" layers on (https://github.com/zmkfirmware/zmk/pull/2717) ([5138c6f](https://github.com/zmkfirmware/zmk/commit/5138c6fb14783b756c5a3e61581625c700f3555b))
|
||||
|
||||
## [0.3.0](https://github.com/zmkfirmware/zmk/compare/v0.2.1...v0.3.0) (2025-08-01)
|
||||
|
||||
|
||||
|
||||
@@ -23,7 +23,6 @@ zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/ext_power.h)
|
||||
# Add your source file to the "app" target. This must come after
|
||||
# find_package(Zephyr) which defines the target.
|
||||
target_include_directories(app PRIVATE include)
|
||||
add_subdirectory(src/boot)
|
||||
target_sources(app PRIVATE src/stdlib.c)
|
||||
target_sources(app PRIVATE src/activity.c)
|
||||
target_sources(app PRIVATE src/behavior.c)
|
||||
|
||||
44
app/Kconfig
44
app/Kconfig
@@ -5,17 +5,6 @@ mainmenu "ZMK Firmware"
|
||||
|
||||
menu "ZMK"
|
||||
|
||||
config ZMK_BOARD_COMPAT
|
||||
bool
|
||||
help
|
||||
Hidden symbol used to hint that a board has been specifically
|
||||
set up with various ZMK requirements in mind, e.g. settings
|
||||
storage, bootloader integration, etc.
|
||||
|
||||
Failure to set this will warn users they may want to verify they
|
||||
used a ZMK variant of an upstream board, or are using a board
|
||||
properly migrated to a newer ZMK version.
|
||||
|
||||
menu "Basic Keyboard Setup"
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
@@ -42,10 +31,10 @@ config BT_DIS_PNP_VID
|
||||
config BT_DIS_PNP_PID
|
||||
default 0x615E
|
||||
|
||||
config BT_DIS_MODEL_NUMBER_STR
|
||||
config BT_DIS_MODEL
|
||||
default ZMK_KEYBOARD_NAME
|
||||
|
||||
config BT_DIS_MANUF_NAME_STR
|
||||
config BT_DIS_MANUF
|
||||
default "ZMK Project"
|
||||
|
||||
# Hardware specific overrides
|
||||
@@ -140,9 +129,7 @@ config ZMK_USB_BOOT
|
||||
bool "USB Boot Protocol Support"
|
||||
depends on ZMK_USB
|
||||
select USB_HID_BOOT_PROTOCOL
|
||||
|
||||
config USB_DEVICE_INITIALIZE_AT_BOOT
|
||||
default n
|
||||
select USB_DEVICE_SOF
|
||||
|
||||
if ZMK_USB
|
||||
|
||||
@@ -198,6 +185,10 @@ config BT_SMP_ALLOW_UNAUTH_OVERWRITE
|
||||
config BT_CTLR_PHY_2M
|
||||
default n if ZMK_BLE_EXPERIMENTAL_CONN
|
||||
|
||||
# BT_TINYCRYPT_ECC is required for BT_SMP_SC_PAIR_ONLY when using HCI
|
||||
config BT_TINYCRYPT_ECC
|
||||
default y if BT_HCI && !BT_CTLR
|
||||
|
||||
config ZMK_BLE_THREAD_STACK_SIZE
|
||||
int "BLE notify thread stack size"
|
||||
default 768
|
||||
@@ -228,6 +219,9 @@ config BT_GATT_NOTIFY_MULTIPLE
|
||||
config BT_GATT_AUTO_SEC_REQ
|
||||
default (ZMK_SPLIT_BLE && !ZMK_SPLIT_ROLE_CENTRAL)
|
||||
|
||||
config BT_DEVICE_APPEARANCE
|
||||
default 961
|
||||
|
||||
config BT_PERIPHERAL_PREF_MIN_INT
|
||||
default 6
|
||||
|
||||
@@ -484,15 +478,13 @@ endmenu
|
||||
|
||||
menu "Advanced"
|
||||
|
||||
rsource "src/boot/Kconfig"
|
||||
|
||||
menu "Initialization Priorities"
|
||||
|
||||
if USB_DEVICE_STACK
|
||||
|
||||
config ZMK_USB_INIT_PRIORITY
|
||||
int "USB Init Priority"
|
||||
default 96
|
||||
default 94
|
||||
|
||||
config ZMK_USB_HID_INIT_PRIORITY
|
||||
int "USB HID Init Priority"
|
||||
@@ -661,13 +653,6 @@ endmenu # Advanced
|
||||
|
||||
endmenu # ZMK
|
||||
|
||||
if SOC_FAMILY_NORDIC_NRF
|
||||
|
||||
config NRF_SOC_VALIDATE_HEADERS_DISABLED
|
||||
default y
|
||||
|
||||
endif
|
||||
|
||||
config KERNEL_BIN_NAME
|
||||
default "zmk"
|
||||
|
||||
@@ -702,6 +687,11 @@ config ZMK_KEYMAP_SENSORS_DEFAULT_TRIGGERS_PER_ROTATION
|
||||
|
||||
endif # ZMK_KEYMAP_SENSORS
|
||||
|
||||
choice CBPRINTF_IMPLEMENTATION
|
||||
default CBPRINTF_NANO
|
||||
|
||||
endchoice
|
||||
|
||||
module = ZMK
|
||||
module-str = zmk
|
||||
source "subsys/logging/Kconfig.template.log_config"
|
||||
@@ -715,6 +705,8 @@ rsource "boards/shields/*/Kconfig.shield"
|
||||
# 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"
|
||||
|
||||
@@ -2,12 +2,8 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config SYSTEM_WORKQUEUE_STACK_SIZE
|
||||
default 3072 if ZMK_DISPLAY
|
||||
default 2048
|
||||
|
||||
# Basic
|
||||
config BT_DEVICE_APPEARANCE
|
||||
default 961
|
||||
default 2048 if SOC_RP2040
|
||||
default 2048 if ZMK_BLE
|
||||
|
||||
# HID
|
||||
if ZMK_HID_REPORT_TYPE_HKRO
|
||||
@@ -114,5 +110,4 @@ config ZMK_BATTERY_REPORT_INTERVAL
|
||||
default 60
|
||||
|
||||
# Imports
|
||||
rsource "src/boot/Kconfig.defaults"
|
||||
rsource "src/split/Kconfig.defaults"
|
||||
rsource "src/split/Kconfig.defaults"
|
||||
@@ -3,7 +3,7 @@ VERSION_MAJOR = 0
|
||||
# x-release-please-end
|
||||
|
||||
# x-release-please-start-minor
|
||||
VERSION_MINOR = 4
|
||||
VERSION_MINOR = 3
|
||||
# x-release-please-end
|
||||
|
||||
# x-release-please-start-patch
|
||||
|
||||
6
app/boards/01space_rp2040_042lcd.conf
Normal file
6
app/boards/01space_rp2040_042lcd.conf
Normal file
@@ -0,0 +1,6 @@
|
||||
CONFIG_ZMK_DISPLAY=y
|
||||
CONFIG_LV_FONT_UNSCII_8=n
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_DW=y
|
||||
CONFIG_LV_Z_VDB_SIZE=50
|
||||
7
app/boards/01space_rp2040_042lcd.overlay
Normal file
7
app/boards/01space_rp2040_042lcd.overlay
Normal file
@@ -0,0 +1,7 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
&xiao_serial { status = "disabled"; };
|
||||
@@ -1,9 +0,0 @@
|
||||
# Copyright (c) 2026 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ADAFRUIT_KB2040
|
||||
select ZMK_BOARD_COMPAT if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
imply RETAINED_MEM if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
imply RETENTION if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
imply RETENTION_BOOT_MODE if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=125000000
|
||||
|
||||
# Enable reset by default
|
||||
CONFIG_RESET=y
|
||||
|
||||
# Enable clock control by default
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Code partition needed to target the correct flash range
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
|
||||
# Output UF2 by default, native bootloader supports it.
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
|
||||
# USB HID
|
||||
CONFIG_ZMK_USB=y
|
||||
|
||||
# Bootloader Support
|
||||
CONFIG_RETAINED_MEM=y
|
||||
CONFIG_RETENTION=y
|
||||
CONFIG_RETENTION_BOOT_MODE=y
|
||||
@@ -1,5 +0,0 @@
|
||||
board:
|
||||
extend: adafruit_kb2040
|
||||
variants:
|
||||
- name: zmk
|
||||
qualifier: rp2040
|
||||
@@ -1,9 +0,0 @@
|
||||
# Copyright (c) 2026 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ADAFRUIT_QT_PY_RP2040
|
||||
select ZMK_BOARD_COMPAT if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
imply RETAINED_MEM if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
imply RETENTION if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
imply RETENTION_BOOT_MODE if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/adafruit/qt_py_rp2040/adafruit_qt_py_rp2040.dts>
|
||||
#include <arm/raspberrypi/rp2040-boot-mode-retention.dtsi>
|
||||
|
||||
&xiao_serial { status = "disabled"; };
|
||||
@@ -1,23 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=125000000
|
||||
|
||||
# Enable reset by default
|
||||
CONFIG_RESET=y
|
||||
|
||||
# Enable clock control by default
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Code partition needed to target the correct flash range
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
|
||||
# Output UF2 by default, native bootloader supports it.
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
|
||||
# USB HID
|
||||
CONFIG_ZMK_USB=y
|
||||
|
||||
# Bootloader Support
|
||||
CONFIG_RETAINED_MEM=y
|
||||
CONFIG_RETENTION=y
|
||||
CONFIG_RETENTION_BOOT_MODE=y
|
||||
@@ -1,5 +0,0 @@
|
||||
board:
|
||||
extend: adafruit_qt_py_rp2040
|
||||
variants:
|
||||
- name: zmk
|
||||
qualifier: rp2040
|
||||
4
app/boards/adafruit_kb2040.conf
Normal file
4
app/boards/adafruit_kb2040.conf
Normal file
@@ -0,0 +1,4 @@
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_ZMK_USB=y
|
||||
@@ -4,7 +4,4 @@
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/adafruit/kb2040/adafruit_kb2040.dts>
|
||||
#include <arm/raspberrypi/rp2040-boot-mode-retention.dtsi>
|
||||
|
||||
&pro_micro_serial { status = "disabled"; };
|
||||
4
app/boards/adafruit_qt_py_rp2040.conf
Normal file
4
app/boards/adafruit_qt_py_rp2040.conf
Normal file
@@ -0,0 +1,4 @@
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_ZMK_USB=y
|
||||
7
app/boards/adafruit_qt_py_rp2040.overlay
Normal file
7
app/boards/adafruit_qt_py_rp2040.overlay
Normal file
@@ -0,0 +1,7 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
&xiao_serial { status = "disabled"; };
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: adafruit_kb2040//zmk
|
||||
id: adafruit_kb2040
|
||||
name: Adafruit KB2040
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: adafruit_qt_py_rp2040//zmk
|
||||
id: adafruit_qt_py_rp2040
|
||||
name: Adafruit QT Py RP2040
|
||||
type: board
|
||||
arch: arm
|
||||
7
app/boards/arm/adv360pro/Kconfig
Normal file
7
app/boards/arm/adv360pro/Kconfig
Normal file
@@ -0,0 +1,7 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on BOARD_ADV360PRO_LEFT || BOARD_ADV360PRO_RIGHT
|
||||
12
app/boards/arm/adv360pro/Kconfig.board
Normal file
12
app/boards/arm/adv360pro/Kconfig.board
Normal file
@@ -0,0 +1,12 @@
|
||||
#
|
||||
# Copyright (c) 2023 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
config BOARD_ADV360PRO_LEFT
|
||||
bool "adv360pro_left"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_ADV360PRO_RIGHT
|
||||
bool "adv360pro_right"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -7,7 +7,6 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
||||
|
||||
#include <dt-bindings/led/led.h>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
@@ -72,10 +71,6 @@
|
||||
|
||||
};
|
||||
|
||||
®1 {
|
||||
regulator-initial-mode = <NRF5X_REG_MODE_DCDC>;
|
||||
};
|
||||
|
||||
&pwm0 {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pwm0_default>;
|
||||
@@ -13,5 +13,5 @@ outputs:
|
||||
- usb
|
||||
- ble
|
||||
siblings:
|
||||
- adv360pro_left//zmk
|
||||
- adv360pro_right//zmk
|
||||
- adv360pro_left
|
||||
- adv360pro_right
|
||||
@@ -3,6 +3,10 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_ADV360PRO_LEFT=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -28,6 +32,7 @@ CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y
|
||||
|
||||
#RGB leds config
|
||||
CONFIG_WS2812_STRIP=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
||||
@@ -3,6 +3,10 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_ADV360PRO_RIGHT=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -28,6 +32,7 @@ CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y
|
||||
|
||||
#RGB leds config
|
||||
CONFIG_WS2812_STRIP=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
||||
8
app/boards/arm/bdn9/Kconfig.board
Normal file
8
app/boards/arm/bdn9/Kconfig.board
Normal file
@@ -0,0 +1,8 @@
|
||||
# keeb.io BDN9 board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BDN9
|
||||
bool "BDN9 rev2"
|
||||
depends on SOC_STM32F072XB
|
||||
@@ -11,4 +11,8 @@ config BOARD
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "BDN9 Rev2"
|
||||
|
||||
config ZMK_RGB_UNDERGLOW
|
||||
select SPI
|
||||
select WS2812_STRIP
|
||||
|
||||
endif # BOARD_BDN9
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include "bdn9-layouts.dtsi"
|
||||
#include "bdn9_rev2-layouts.dtsi"
|
||||
|
||||
&physical_layout0 {
|
||||
transform = <&matrix_transform0>;
|
||||
11
app/boards/arm/bdn9/bdn9_rev2.yml
Normal file
11
app/boards/arm/bdn9/bdn9_rev2.yml
Normal file
@@ -0,0 +1,11 @@
|
||||
file_format: "1"
|
||||
id: bdn9_rev2
|
||||
name: BDN9 Rev2
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
- keys
|
||||
- encoder
|
||||
outputs:
|
||||
- usb
|
||||
url: https://keeb.io/products/bdn9-rev-2-3x3-9-key-macropad-rotary-encoder-and-rgb
|
||||
@@ -1,6 +1,6 @@
|
||||
file_format: "1"
|
||||
id: bdn9//zmk
|
||||
name: BDN9 (Rev2)
|
||||
id: bdn9_rev2
|
||||
name: BDN9 Rev2
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
@@ -9,6 +9,3 @@ features:
|
||||
- keys
|
||||
- encoder
|
||||
url: https://keeb.io/collections/bdn9-collection/products/bdn9-rev-2-3x3-9-key-macropad-rotary-encoder-and-rgb
|
||||
revisions:
|
||||
- "2.0.0"
|
||||
default_revision: "2.0.0"
|
||||
@@ -1,5 +1,7 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_STM32F0X=y
|
||||
CONFIG_SOC_STM32F072XB=y
|
||||
# 72MHz system clock
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
|
||||
|
||||
@@ -12,7 +14,6 @@ CONFIG_PINCTRL=y
|
||||
# Poll to avoid interrupt overlap issues
|
||||
CONFIG_ZMK_KSCAN_DIRECT_POLLING=y
|
||||
|
||||
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=1536
|
||||
CONFIG_ISR_STACK_SIZE=1024
|
||||
|
||||
# clock configuration
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: blackpill_f401cc//zmk
|
||||
id: blackpill_f401cc
|
||||
name: BlackPill F401CC
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: blackpill_f401ce//zmk
|
||||
id: blackpill_f401ce
|
||||
name: BlackPill F401CE
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: blackpill_f411ce//zmk
|
||||
id: blackpill_f411ce
|
||||
name: BlackPill F411CE
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -4,5 +4,5 @@ config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on BOARD_BLUEMICRO840
|
||||
depends on BOARD_BLUEMICRO840_V1
|
||||
|
||||
8
app/boards/arm/bluemicro840/Kconfig.board
Normal file
8
app/boards/arm/bluemicro840/Kconfig.board
Normal file
@@ -0,0 +1,8 @@
|
||||
# BlueMicro840 board configuration
|
||||
|
||||
# Copyright (c) 2020 Pete Johanson, Derek Schmell
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BLUEMICRO840_V1
|
||||
bool "BlueMicro840_V1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -3,7 +3,10 @@
|
||||
# Copyright (c) 2020 Pete Johanson, Derek Schmell
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
if BOARD_BLUEMICRO840
|
||||
if BOARD_BLUEMICRO840_V1
|
||||
|
||||
config BOARD
|
||||
default "bluemicro840_v1"
|
||||
|
||||
if USB_DEVICE_STACK
|
||||
|
||||
@@ -15,4 +18,4 @@ endif # USB_DEVICE_STACK
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
endif # BOARD_BLUEMICRO840
|
||||
endif # BOARD_BLUEMICRO840_V1
|
||||
@@ -6,9 +6,8 @@
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
|
||||
#include "arduino_pro_micro_pins.dtsi"
|
||||
#include "bluemicro840-pinctrl.dtsi"
|
||||
#include "bluemicro840_v1-pinctrl.dtsi"
|
||||
|
||||
/ {
|
||||
model = "BlueMicro840_V1";
|
||||
@@ -18,6 +17,7 @@
|
||||
zephyr,code-partition = &code_partition;
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,battery = &vbatt;
|
||||
};
|
||||
|
||||
leds {
|
||||
@@ -26,6 +26,21 @@
|
||||
gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
// Node name must match original "EXT_POWER" label to preserve user settings.
|
||||
EXT_POWER {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
init-delay-ms = <20>;
|
||||
control-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-voltage-divider";
|
||||
io-channels = <&adc 7>;
|
||||
output-ohms = <2000000>;
|
||||
full-ohms = <(2000000 + 806000)>;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&adc {
|
||||
@@ -1,4 +1,4 @@
|
||||
identifier: bluemicro840
|
||||
identifier: bluemicro840_v1
|
||||
name: BlueMicro840_V1
|
||||
type: mcu
|
||||
arch: arm
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: bluemicro840//zmk
|
||||
id: bluemicro840_v1
|
||||
name: BlueMicro840 v1
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -1,5 +1,9 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_BLUEMICRO840_V1=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -17,8 +21,6 @@ CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
CONFIG_CLOCK_CONTROL_NRF=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
9
app/boards/arm/boardsource_blok/boardsource_blok.zmk.yml
Normal file
9
app/boards/arm/boardsource_blok/boardsource_blok.zmk.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
file_format: "1"
|
||||
id: boardsource_blok
|
||||
name: BoardSource blok
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
- usb
|
||||
url: https://peg.software/docs/blok
|
||||
exposes: [pro_micro]
|
||||
7
app/boards/arm/bt60/Kconfig
Normal file
7
app/boards/arm/bt60/Kconfig
Normal file
@@ -0,0 +1,7 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on (BOARD_BT60_V1_HS || BOARD_BT60_V1)
|
||||
12
app/boards/arm/bt60/Kconfig.board
Normal file
12
app/boards/arm/bt60/Kconfig.board
Normal file
@@ -0,0 +1,12 @@
|
||||
# BT60 board configuration
|
||||
|
||||
# Copyright (c) 2021 Polarity Works
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BT60_V1
|
||||
bool "bt60"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_BT60_V1_HS
|
||||
bool "bt60 hotswap"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,10 +1,10 @@
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# Copyright (c) 2021 Polarity Works
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "BT75" if BOARD_BT75
|
||||
if BOARD_BT60_V1_HS || BOARD_BT60_V1
|
||||
|
||||
if BOARD_BT75
|
||||
config BOARD
|
||||
default "bt60"
|
||||
|
||||
if USB
|
||||
|
||||
@@ -19,4 +19,7 @@ endif # USB
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
endif # BOARD_BT75
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "BT60"
|
||||
|
||||
endif # BOARD_BT60
|
||||
@@ -1,14 +1,17 @@
|
||||
/*
|
||||
* Copyright (c) 2022 The ZMK Contributors
|
||||
* Copyright (c) 2021 Polarity Works
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
/ {
|
||||
model = "BT60";
|
||||
compatible = "polarityworks,bt60";
|
||||
|
||||
chosen {
|
||||
zephyr,code-partition = &code_partition;
|
||||
zephyr,sram = &sram0;
|
||||
@@ -16,9 +19,35 @@
|
||||
zmk,battery = &vbatt;
|
||||
};
|
||||
|
||||
sensors: sensors {
|
||||
compatible = "zmk,keymap-sensors";
|
||||
sensors = <&left_encoder>;
|
||||
triggers-per-rotation = <20>;
|
||||
};
|
||||
|
||||
|
||||
|
||||
left_encoder: encoder_left {
|
||||
compatible = "alps,ec11";
|
||||
a-gpios = <&gpio1 1 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
b-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
steps = <80>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
blue_led: led_0 {
|
||||
gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-voltage-divider";
|
||||
io-channels = <&adc 2>;
|
||||
output-ohms = <2000000>;
|
||||
full-ohms = <(2000000 + 806000)>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -42,6 +71,7 @@ zephyr_udc0: &usbd {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
&flash0 {
|
||||
/*
|
||||
* For more information, see:
|
||||
@@ -4,7 +4,8 @@
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "bt60_1_0_0.dtsi"
|
||||
/dts-v1/;
|
||||
#include "bt60.dtsi"
|
||||
#include <layouts/common/60percent/all1u.dtsi>
|
||||
#include <layouts/common/60percent/ansi.dtsi>
|
||||
#include <layouts/common/60percent/hhkb.dtsi>
|
||||
@@ -20,7 +20,7 @@
|
||||
#elif defined(HHKB)
|
||||
zmk,physical-layout = &layout_60_hhkb;
|
||||
#else
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60.keymap"
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60_v1.keymap"
|
||||
#endif
|
||||
};
|
||||
|
||||
@@ -147,7 +147,7 @@
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
#else
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60.keymap"
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60_v2.keymap"
|
||||
#endif
|
||||
};
|
||||
};
|
||||
@@ -1,5 +1,5 @@
|
||||
identifier: puchi_ble
|
||||
name: puchi_ble
|
||||
identifier: bt60_v1
|
||||
name: BT60 V1 Soldered
|
||||
type: mcu
|
||||
arch: arm
|
||||
toolchain:
|
||||
13
app/boards/arm/bt60/bt60_v1.zmk.yml
Normal file
13
app/boards/arm/bt60/bt60_v1.zmk.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
file_format: "1"
|
||||
id: bt60_v1
|
||||
name: BT60 V1 Soldered
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
- keys
|
||||
- encoder
|
||||
- studio
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
url: https://polarityworks.com
|
||||
@@ -1,5 +1,9 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_BT60_V1=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -21,4 +25,4 @@ CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
@@ -4,8 +4,8 @@
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "bt60_nrf52840_zmk.dts"
|
||||
#include "bt60_1_0_0.dtsi"
|
||||
/dts-v1/;
|
||||
#include "bt60.dtsi"
|
||||
#include <layouts/common/60percent/ansi.dtsi>
|
||||
|
||||
/ {
|
||||
15
app/boards/arm/bt60/bt60_v1_hs.yaml
Normal file
15
app/boards/arm/bt60/bt60_v1_hs.yaml
Normal file
@@ -0,0 +1,15 @@
|
||||
identifier: bt60_v1_hs
|
||||
name: BT60 V1 Hotswap
|
||||
type: mcu
|
||||
arch: arm
|
||||
toolchain:
|
||||
- zephyr
|
||||
- gnuarmemb
|
||||
- xtools
|
||||
supported:
|
||||
- adc
|
||||
- usb_device
|
||||
- ble
|
||||
- ieee802154
|
||||
- pwm
|
||||
- watchdog
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: bt60_hs//zmk
|
||||
id: bt60_v1_hs
|
||||
name: BT60 V1 Hotswap
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -1,5 +1,9 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_BT60_V1_HS=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -21,4 +25,4 @@ CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
8
app/boards/arm/ckp/Kconfig
Normal file
8
app/boards/arm/ckp/Kconfig
Normal file
@@ -0,0 +1,8 @@
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1
|
||||
16
app/boards/arm/ckp/Kconfig.board
Normal file
16
app/boards/arm/ckp/Kconfig.board
Normal file
@@ -0,0 +1,16 @@
|
||||
# CKP boards configuration
|
||||
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BT60_V2
|
||||
bool "bt60_v2"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_BT65_V1
|
||||
bool "bt65_v1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_BT75_V1
|
||||
bool "bt75_v1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
28
app/boards/arm/ckp/Kconfig.defconfig
Normal file
28
app/boards/arm/ckp/Kconfig.defconfig
Normal file
@@ -0,0 +1,28 @@
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD
|
||||
default "bt60_v2" if BOARD_BT60_V2
|
||||
default "bt65_v1" if BOARD_BT65_V1
|
||||
default "bt75_v1" if BOARD_BT75_V1
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "BT60 V2" if BOARD_BT60_V2
|
||||
default "BT65" if BOARD_BT65_V1
|
||||
default "BT75" if BOARD_BT75_V1
|
||||
|
||||
if BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1
|
||||
|
||||
if USB
|
||||
|
||||
config USB_NRFX
|
||||
default y
|
||||
|
||||
config USB_DEVICE_STACK
|
||||
default y
|
||||
|
||||
endif # USB
|
||||
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
endif # BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1
|
||||
@@ -4,7 +4,8 @@
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "../common/ckp.dtsi"
|
||||
/dts-v1/;
|
||||
#include "ckp.dtsi"
|
||||
#include <layouts/common/60percent/all1u.dtsi>
|
||||
#include <layouts/common/60percent/ansi.dtsi>
|
||||
#include <layouts/common/60percent/hhkb.dtsi>
|
||||
@@ -13,7 +14,7 @@
|
||||
|
||||
/ {
|
||||
model = "BT60_V2";
|
||||
compatible = "polarityworks,bt60";
|
||||
compatible = "polarityworks,bt60_v2";
|
||||
|
||||
chosen {
|
||||
zmk,physical-layout = &layout_60_ansi;
|
||||
@@ -20,7 +20,7 @@
|
||||
#elif defined(HHKB)
|
||||
zmk,physical-layout = &layout_60_hhkb;
|
||||
#else
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60.keymap"
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60_v2.keymap"
|
||||
#endif
|
||||
};
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
#else
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60.keymap"
|
||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt60_v2.keymap"
|
||||
#endif
|
||||
|
||||
};
|
||||
@@ -1,4 +1,4 @@
|
||||
identifier: bt60
|
||||
identifier: bt60_v2
|
||||
name: BT60 V2
|
||||
type: mcu
|
||||
arch: arm
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: bt60//zmk
|
||||
id: bt60_v2
|
||||
name: BT60 V2
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -12,7 +12,4 @@ features:
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
revisions:
|
||||
- 2.0.0
|
||||
- 1.0.0
|
||||
url: https://polarityworks.com/btckp
|
||||
@@ -1,5 +1,9 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_BT60_V2=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -28,6 +32,8 @@ CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=262
|
||||
CONFIG_WS2812_STRIP=y
|
||||
CONFIG_SPI=y
|
||||
|
||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
|
||||
@@ -5,11 +5,7 @@
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
||||
|
||||
#include "../common/ckp-base.dtsi"
|
||||
#include "../common/ckp.dtsi"
|
||||
#include "ckp.dtsi"
|
||||
#include <layouts/common/65percent/all1u.dtsi>
|
||||
#include <layouts/common/65percent/ansi.dtsi>
|
||||
#include <layouts/common/65percent/iso.dtsi>
|
||||
@@ -18,7 +14,7 @@
|
||||
|
||||
/ {
|
||||
model = "BT65_V1";
|
||||
compatible = "polarityworks,bt65";
|
||||
compatible = "polarityworks,bt65_v1";
|
||||
|
||||
chosen {
|
||||
zmk,physical-layout = &layout_65_ansi;
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user