mirror of
https://github.com/zmkfirmware/zmk.git
synced 2026-03-20 04:55:20 -05:00
Compare commits
1 Commits
main
...
dependabot
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
259c40b5d0 |
@@ -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
|
COPY .bashrc tmp
|
||||||
RUN mv /tmp/.bashrc ~/.bashrc
|
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
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Find test directories
|
- name: Find test directories
|
||||||
id: test-dirs
|
id: test-dirs
|
||||||
run: |
|
run: |
|
||||||
@@ -35,10 +35,10 @@ jobs:
|
|||||||
test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }}
|
test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }}
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: docker.io/zmkfirmware/zmk-build-arm:4.1
|
image: docker.io/zmkfirmware/zmk-build-arm:3.5
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Cache west modules
|
- name: Cache west modules
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
env:
|
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
|
name: Fetch Build Keyboards
|
||||||
outputs:
|
outputs:
|
||||||
build_matrix: ${{ env.build_matrix }}
|
build_matrix: ${{ env.build_matrix }}
|
||||||
has_valid_build_matrix: ${{ steps.fetch.outputs.has_valid_build_matrix }}
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Fetch Build Matrix
|
- name: Fetch Build Matrix
|
||||||
id: fetch
|
|
||||||
run: |
|
run: |
|
||||||
matrix_content=$(yq -oj -I0 '${{ inputs.build_matrix_path }}')
|
echo "build_matrix=$(yq -oj -I0 '${{ inputs.build_matrix_path }}')" >> $GITHUB_ENV
|
||||||
|
yq -oj "${{ 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
|
|
||||||
|
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
if: needs.matrix.outputs.has_valid_build_matrix == 'true'
|
|
||||||
container:
|
container:
|
||||||
image: zmkfirmware/zmk-build-arm:stable
|
image: zmkfirmware/zmk-build-arm:stable
|
||||||
needs: matrix
|
needs: matrix
|
||||||
@@ -60,21 +49,15 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix: ${{ fromJson(needs.matrix.outputs.build_matrix) }}
|
matrix: ${{ fromJson(needs.matrix.outputs.build_matrix) }}
|
||||||
steps:
|
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
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Create build directory
|
- name: Create build directory
|
||||||
run: |
|
run: |
|
||||||
echo "build_dir=$(mktemp -d)" >> $GITHUB_ENV
|
echo "build_dir=$(mktemp -d)" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: Prepare variables
|
- name: Prepare variables
|
||||||
shell: bash -x {0}
|
shell: sh -x {0}
|
||||||
env:
|
env:
|
||||||
board: ${{ matrix.board }}
|
board: ${{ matrix.board }}
|
||||||
shield: ${{ matrix.shield }}
|
shield: ${{ matrix.shield }}
|
||||||
@@ -98,7 +81,7 @@ jobs:
|
|||||||
echo "extra_west_args=${extra_west_args}" >> $GITHUB_ENV
|
echo "extra_west_args=${extra_west_args}" >> $GITHUB_ENV
|
||||||
echo "extra_cmake_args=${shield:+-DSHIELD=\"$shield\"}${zmk_load_arg}" >> $GITHUB_ENV
|
echo "extra_cmake_args=${shield:+-DSHIELD=\"$shield\"}${zmk_load_arg}" >> $GITHUB_ENV
|
||||||
echo "display_name=${shield:+$shield - }${board}" >> $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
|
- name: Copy config files to isolated temporary directory
|
||||||
run: |
|
run: |
|
||||||
@@ -133,13 +116,6 @@ jobs:
|
|||||||
working-directory: ${{ env.base_dir }}
|
working-directory: ${{ env.base_dir }}
|
||||||
run: west update --fetch-opt=--filter=tree:0
|
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
|
- name: West Zephyr export
|
||||||
working-directory: ${{ env.base_dir }}
|
working-directory: ${{ env.base_dir }}
|
||||||
run: west zephyr-export
|
run: west zephyr-export
|
||||||
@@ -149,38 +125,6 @@ jobs:
|
|||||||
shell: sh -x {0}
|
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 }}
|
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
|
- name: ${{ env.display_name }} Kconfig file
|
||||||
run: |
|
run: |
|
||||||
if [ -f "${{ env.build_dir }}/zephyr/.config" ]
|
if [ -f "${{ env.build_dir }}/zephyr/.config" ]
|
||||||
@@ -224,7 +168,6 @@ jobs:
|
|||||||
|
|
||||||
merge:
|
merge:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
if: needs.matrix.outputs.has_valid_build_matrix == 'true'
|
|
||||||
needs: build
|
needs: build
|
||||||
name: Merge Output Artifacts
|
name: Merge Output Artifacts
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
25
.github/workflows/build.yml
vendored
25
.github/workflows/build.yml
vendored
@@ -23,14 +23,14 @@ jobs:
|
|||||||
if: ${{ always() }}
|
if: ${{ always() }}
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: docker.io/zmkfirmware/zmk-build-arm:4.1
|
image: docker.io/zmkfirmware/zmk-build-arm:3.5
|
||||||
needs: compile-matrix
|
needs: compile-matrix
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include: ${{ fromJSON(needs.compile-matrix.outputs.include-list) }}
|
include: ${{ fromJSON(needs.compile-matrix.outputs.include-list) }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Cache west modules
|
- name: Cache west modules
|
||||||
@@ -57,11 +57,11 @@ jobs:
|
|||||||
- name: Export Zephyr CMake package (west zephyr-export)
|
- name: Export Zephyr CMake package (west zephyr-export)
|
||||||
run: west zephyr-export
|
run: west zephyr-export
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v6
|
||||||
with:
|
with:
|
||||||
node-version: "14.x"
|
node-version: "14.x"
|
||||||
- name: Install @actions/artifact
|
- name: Install @actions/artifact
|
||||||
run: npm install @actions/artifact@5.0.3
|
run: npm install @actions/artifact
|
||||||
- name: Build
|
- name: Build
|
||||||
uses: actions/github-script@v7
|
uses: actions/github-script@v7
|
||||||
id: boards-list
|
id: boards-list
|
||||||
@@ -123,7 +123,7 @@ jobs:
|
|||||||
}
|
}
|
||||||
|
|
||||||
const cmakeName = shieldArgs['cmake-args'] ? '-' + (shieldArgs.nickname || shieldArgs['cmake-args'].split(' ').join('')) : '';
|
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);
|
await artifact.uploadArtifact(artifactName, files, rootDirectory, options);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
@@ -187,11 +187,11 @@ jobs:
|
|||||||
core-include: ${{ steps.core-list.outputs.result }}
|
core-include: ${{ steps.core-list.outputs.result }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v6
|
||||||
with:
|
with:
|
||||||
node-version: "14.x"
|
node-version: "14.x"
|
||||||
- name: Install js-yaml
|
- name: Install js-yaml
|
||||||
@@ -218,9 +218,9 @@ jobs:
|
|||||||
boards-include: ${{ steps.boards-list.outputs.result }}
|
boards-include: ${{ steps.boards-list.outputs.result }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v6
|
||||||
with:
|
with:
|
||||||
node-version: "14.x"
|
node-version: "14.x"
|
||||||
- name: Install js-yaml
|
- name: Install js-yaml
|
||||||
@@ -277,7 +277,6 @@ jobs:
|
|||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
console.error("Board without keys or interconnect");
|
console.error("Board without keys or interconnect");
|
||||||
return [];
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "shield":
|
case "shield":
|
||||||
@@ -346,11 +345,11 @@ jobs:
|
|||||||
organized-metadata: ${{ steps.organize-metadata.outputs.result }}
|
organized-metadata: ${{ steps.organize-metadata.outputs.result }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v6
|
||||||
with:
|
with:
|
||||||
node-version: "14.x"
|
node-version: "14.x"
|
||||||
- name: Install js-yaml
|
- name: Install js-yaml
|
||||||
@@ -428,7 +427,7 @@ jobs:
|
|||||||
core-changes: ${{ steps.core-changes.outputs.result }}
|
core-changes: ${{ steps.core-changes.outputs.result }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
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
|
- 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
|
||||||
|
|||||||
4
.github/workflows/doc-checks.yml
vendored
4
.github/workflows/doc-checks.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
|||||||
lint:
|
lint:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
- uses: bahmutov/npm-install@v1
|
- uses: bahmutov/npm-install@v1
|
||||||
with:
|
with:
|
||||||
working-directory: docs
|
working-directory: docs
|
||||||
@@ -24,7 +24,7 @@ jobs:
|
|||||||
typecheck:
|
typecheck:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
- uses: bahmutov/npm-install@v1
|
- uses: bahmutov/npm-install@v1
|
||||||
with:
|
with:
|
||||||
working-directory: docs
|
working-directory: docs
|
||||||
|
|||||||
@@ -18,9 +18,9 @@ jobs:
|
|||||||
validate-metadata:
|
validate-metadata:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: docker.io/zmkfirmware/zmk-dev-arm:4.1
|
image: docker.io/zmkfirmware/zmk-dev-arm:3.5
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: pip install --break-system-packages -r app/scripts/requirements.txt
|
run: pip install --break-system-packages -r app/scripts/requirements.txt
|
||||||
- name: West init
|
- name: West init
|
||||||
|
|||||||
2
.github/workflows/pre-commit.yml
vendored
2
.github/workflows/pre-commit.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
|||||||
pre-commit:
|
pre-commit:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
- uses: actions/setup-python@v5
|
- uses: actions/setup-python@v5
|
||||||
with:
|
with:
|
||||||
python-version: 3.x
|
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 }}
|
ZMK_RELEASE_PLEASE_TOKEN: ${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}
|
||||||
VERSION: v${{ needs.handle-commit.outputs.major }}.${{ needs.handle-commit.outputs.minor }}
|
VERSION: v${{ needs.handle-commit.outputs.major }}.${{ needs.handle-commit.outputs.minor }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Create major.minor branch
|
- name: Create major.minor branch
|
||||||
if: ${{ needs.handle-commit.outputs.patch == '0' }}
|
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
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Find test directories
|
- name: Find test directories
|
||||||
id: test-dirs
|
id: test-dirs
|
||||||
run: |
|
run: |
|
||||||
@@ -37,10 +37,10 @@ jobs:
|
|||||||
test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }}
|
test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }}
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: docker.io/zmkfirmware/zmk-build-arm:4.1
|
image: docker.io/zmkfirmware/zmk-build-arm:3.5
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
- name: Cache west modules
|
- name: Cache west modules
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
env:
|
env:
|
||||||
@@ -66,7 +66,7 @@ jobs:
|
|||||||
run: west zephyr-export
|
run: west zephyr-export
|
||||||
- name: Test ${{ matrix.test }}
|
- name: Test ${{ matrix.test }}
|
||||||
working-directory: app
|
working-directory: app
|
||||||
run: ZMK_TESTS_VERBOSE=1 west test tests/${{ matrix.test }}
|
run: west test tests/${{ matrix.test }}
|
||||||
- name: Archive artifacts
|
- name: Archive artifacts
|
||||||
if: ${{ always() }}
|
if: ${{ always() }}
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
|
|||||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,7 +1,6 @@
|
|||||||
/.west
|
/.west
|
||||||
/bootloader
|
/bootloader
|
||||||
/modules
|
/modules
|
||||||
/optional
|
|
||||||
/tools
|
/tools
|
||||||
/zephyr
|
/zephyr
|
||||||
/zmk-config
|
/zmk-config
|
||||||
|
|||||||
@@ -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
|
# Add your source file to the "app" target. This must come after
|
||||||
# find_package(Zephyr) which defines the target.
|
# find_package(Zephyr) which defines the target.
|
||||||
target_include_directories(app PRIVATE include)
|
target_include_directories(app PRIVATE include)
|
||||||
add_subdirectory(src/boot)
|
|
||||||
target_sources(app PRIVATE src/stdlib.c)
|
target_sources(app PRIVATE src/stdlib.c)
|
||||||
target_sources(app PRIVATE src/activity.c)
|
target_sources(app PRIVATE src/activity.c)
|
||||||
target_sources(app PRIVATE src/behavior.c)
|
target_sources(app PRIVATE src/behavior.c)
|
||||||
|
|||||||
44
app/Kconfig
44
app/Kconfig
@@ -5,17 +5,6 @@ mainmenu "ZMK Firmware"
|
|||||||
|
|
||||||
menu "ZMK"
|
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"
|
menu "Basic Keyboard Setup"
|
||||||
|
|
||||||
config ZMK_KEYBOARD_NAME
|
config ZMK_KEYBOARD_NAME
|
||||||
@@ -42,10 +31,10 @@ config BT_DIS_PNP_VID
|
|||||||
config BT_DIS_PNP_PID
|
config BT_DIS_PNP_PID
|
||||||
default 0x615E
|
default 0x615E
|
||||||
|
|
||||||
config BT_DIS_MODEL_NUMBER_STR
|
config BT_DIS_MODEL
|
||||||
default ZMK_KEYBOARD_NAME
|
default ZMK_KEYBOARD_NAME
|
||||||
|
|
||||||
config BT_DIS_MANUF_NAME_STR
|
config BT_DIS_MANUF
|
||||||
default "ZMK Project"
|
default "ZMK Project"
|
||||||
|
|
||||||
# Hardware specific overrides
|
# Hardware specific overrides
|
||||||
@@ -140,9 +129,7 @@ config ZMK_USB_BOOT
|
|||||||
bool "USB Boot Protocol Support"
|
bool "USB Boot Protocol Support"
|
||||||
depends on ZMK_USB
|
depends on ZMK_USB
|
||||||
select USB_HID_BOOT_PROTOCOL
|
select USB_HID_BOOT_PROTOCOL
|
||||||
|
select USB_DEVICE_SOF
|
||||||
config USB_DEVICE_INITIALIZE_AT_BOOT
|
|
||||||
default n
|
|
||||||
|
|
||||||
if ZMK_USB
|
if ZMK_USB
|
||||||
|
|
||||||
@@ -198,6 +185,10 @@ config BT_SMP_ALLOW_UNAUTH_OVERWRITE
|
|||||||
config BT_CTLR_PHY_2M
|
config BT_CTLR_PHY_2M
|
||||||
default n if ZMK_BLE_EXPERIMENTAL_CONN
|
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
|
config ZMK_BLE_THREAD_STACK_SIZE
|
||||||
int "BLE notify thread stack size"
|
int "BLE notify thread stack size"
|
||||||
default 768
|
default 768
|
||||||
@@ -228,6 +219,9 @@ config BT_GATT_NOTIFY_MULTIPLE
|
|||||||
config BT_GATT_AUTO_SEC_REQ
|
config BT_GATT_AUTO_SEC_REQ
|
||||||
default (ZMK_SPLIT_BLE && !ZMK_SPLIT_ROLE_CENTRAL)
|
default (ZMK_SPLIT_BLE && !ZMK_SPLIT_ROLE_CENTRAL)
|
||||||
|
|
||||||
|
config BT_DEVICE_APPEARANCE
|
||||||
|
default 961
|
||||||
|
|
||||||
config BT_PERIPHERAL_PREF_MIN_INT
|
config BT_PERIPHERAL_PREF_MIN_INT
|
||||||
default 6
|
default 6
|
||||||
|
|
||||||
@@ -484,15 +478,13 @@ endmenu
|
|||||||
|
|
||||||
menu "Advanced"
|
menu "Advanced"
|
||||||
|
|
||||||
rsource "src/boot/Kconfig"
|
|
||||||
|
|
||||||
menu "Initialization Priorities"
|
menu "Initialization Priorities"
|
||||||
|
|
||||||
if USB_DEVICE_STACK
|
if USB_DEVICE_STACK
|
||||||
|
|
||||||
config ZMK_USB_INIT_PRIORITY
|
config ZMK_USB_INIT_PRIORITY
|
||||||
int "USB Init Priority"
|
int "USB Init Priority"
|
||||||
default 96
|
default 94
|
||||||
|
|
||||||
config ZMK_USB_HID_INIT_PRIORITY
|
config ZMK_USB_HID_INIT_PRIORITY
|
||||||
int "USB HID Init Priority"
|
int "USB HID Init Priority"
|
||||||
@@ -661,13 +653,6 @@ endmenu # Advanced
|
|||||||
|
|
||||||
endmenu # ZMK
|
endmenu # ZMK
|
||||||
|
|
||||||
if SOC_FAMILY_NORDIC_NRF
|
|
||||||
|
|
||||||
config NRF_SOC_VALIDATE_HEADERS_DISABLED
|
|
||||||
default y
|
|
||||||
|
|
||||||
endif
|
|
||||||
|
|
||||||
config KERNEL_BIN_NAME
|
config KERNEL_BIN_NAME
|
||||||
default "zmk"
|
default "zmk"
|
||||||
|
|
||||||
@@ -702,6 +687,11 @@ config ZMK_KEYMAP_SENSORS_DEFAULT_TRIGGERS_PER_ROTATION
|
|||||||
|
|
||||||
endif # ZMK_KEYMAP_SENSORS
|
endif # ZMK_KEYMAP_SENSORS
|
||||||
|
|
||||||
|
choice CBPRINTF_IMPLEMENTATION
|
||||||
|
default CBPRINTF_NANO
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
|
||||||
module = ZMK
|
module = ZMK
|
||||||
module-str = zmk
|
module-str = zmk
|
||||||
source "subsys/logging/Kconfig.template.log_config"
|
source "subsys/logging/Kconfig.template.log_config"
|
||||||
@@ -715,6 +705,8 @@ rsource "boards/shields/*/Kconfig.shield"
|
|||||||
# Duplicated from Kconfig.zephyr
|
# Duplicated from Kconfig.zephyr
|
||||||
osource "$(KCONFIG_BINARY_DIR)/Kconfig.shield.defconfig"
|
osource "$(KCONFIG_BINARY_DIR)/Kconfig.shield.defconfig"
|
||||||
|
|
||||||
|
source "$(BOARD_DIR)/Kconfig.defconfig"
|
||||||
|
|
||||||
# This loads board and shield Kconfigs found under zmk-config/config/
|
# This loads board and shield Kconfigs found under zmk-config/config/
|
||||||
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.defconfig"
|
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.defconfig"
|
||||||
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.shield"
|
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.shield"
|
||||||
|
|||||||
@@ -2,12 +2,8 @@
|
|||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
config SYSTEM_WORKQUEUE_STACK_SIZE
|
config SYSTEM_WORKQUEUE_STACK_SIZE
|
||||||
default 3072 if ZMK_DISPLAY
|
default 2048 if SOC_RP2040
|
||||||
default 2048
|
default 2048 if ZMK_BLE
|
||||||
|
|
||||||
# Basic
|
|
||||||
config BT_DEVICE_APPEARANCE
|
|
||||||
default 961
|
|
||||||
|
|
||||||
# HID
|
# HID
|
||||||
if ZMK_HID_REPORT_TYPE_HKRO
|
if ZMK_HID_REPORT_TYPE_HKRO
|
||||||
@@ -114,5 +110,4 @@ config ZMK_BATTERY_REPORT_INTERVAL
|
|||||||
default 60
|
default 60
|
||||||
|
|
||||||
# Imports
|
# Imports
|
||||||
rsource "src/boot/Kconfig.defaults"
|
|
||||||
rsource "src/split/Kconfig.defaults"
|
rsource "src/split/Kconfig.defaults"
|
||||||
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
|
* SPDX-License-Identifier: MIT
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <../boards/adafruit/kb2040/adafruit_kb2040.dts>
|
|
||||||
#include <arm/raspberrypi/rp2040-boot-mode-retention.dtsi>
|
|
||||||
|
|
||||||
&pro_micro_serial { status = "disabled"; };
|
&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"
|
file_format: "1"
|
||||||
id: adafruit_kb2040//zmk
|
id: adafruit_kb2040
|
||||||
name: Adafruit KB2040
|
name: Adafruit KB2040
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
file_format: "1"
|
file_format: "1"
|
||||||
id: adafruit_qt_py_rp2040//zmk
|
id: adafruit_qt_py_rp2040
|
||||||
name: Adafruit QT Py RP2040
|
name: Adafruit QT Py RP2040
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
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/;
|
/dts-v1/;
|
||||||
#include <nordic/nrf52840_qiaa.dtsi>
|
#include <nordic/nrf52840_qiaa.dtsi>
|
||||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
|
||||||
|
|
||||||
#include <dt-bindings/led/led.h>
|
#include <dt-bindings/led/led.h>
|
||||||
#include <dt-bindings/zmk/matrix_transform.h>
|
#include <dt-bindings/zmk/matrix_transform.h>
|
||||||
@@ -72,10 +71,6 @@
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
®1 {
|
|
||||||
regulator-initial-mode = <NRF5X_REG_MODE_DCDC>;
|
|
||||||
};
|
|
||||||
|
|
||||||
&pwm0 {
|
&pwm0 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
pinctrl-0 = <&pwm0_default>;
|
pinctrl-0 = <&pwm0_default>;
|
||||||
@@ -13,5 +13,5 @@ outputs:
|
|||||||
- usb
|
- usb
|
||||||
- ble
|
- ble
|
||||||
siblings:
|
siblings:
|
||||||
- adv360pro_left//zmk
|
- adv360pro_left
|
||||||
- adv360pro_right//zmk
|
- adv360pro_right
|
||||||
@@ -3,6 +3,10 @@
|
|||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
#
|
#
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_ADV360PRO_LEFT=y
|
||||||
|
|
||||||
# Enable MPU
|
# Enable MPU
|
||||||
CONFIG_ARM_MPU=y
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
@@ -28,6 +32,7 @@ CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
|||||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y
|
CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y
|
||||||
|
|
||||||
#RGB leds config
|
#RGB leds config
|
||||||
|
CONFIG_WS2812_STRIP=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
||||||
@@ -3,6 +3,10 @@
|
|||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
#
|
#
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_ADV360PRO_RIGHT=y
|
||||||
|
|
||||||
# Enable MPU
|
# Enable MPU
|
||||||
CONFIG_ARM_MPU=y
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
@@ -28,6 +32,7 @@ CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
|||||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y
|
CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y
|
||||||
|
|
||||||
#RGB leds config
|
#RGB leds config
|
||||||
|
CONFIG_WS2812_STRIP=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
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
|
config ZMK_KEYBOARD_NAME
|
||||||
default "BDN9 Rev2"
|
default "BDN9 Rev2"
|
||||||
|
|
||||||
|
config ZMK_RGB_UNDERGLOW
|
||||||
|
select SPI
|
||||||
|
select WS2812_STRIP
|
||||||
|
|
||||||
endif # BOARD_BDN9
|
endif # BOARD_BDN9
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
#include <dt-bindings/zmk/matrix_transform.h>
|
#include <dt-bindings/zmk/matrix_transform.h>
|
||||||
|
|
||||||
#include "bdn9-layouts.dtsi"
|
#include "bdn9_rev2-layouts.dtsi"
|
||||||
|
|
||||||
&physical_layout0 {
|
&physical_layout0 {
|
||||||
transform = <&matrix_transform0>;
|
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"
|
file_format: "1"
|
||||||
id: bdn9//zmk
|
id: bdn9_rev2
|
||||||
name: BDN9 (Rev2)
|
name: BDN9 Rev2
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
outputs:
|
outputs:
|
||||||
@@ -9,6 +9,3 @@ features:
|
|||||||
- keys
|
- keys
|
||||||
- encoder
|
- encoder
|
||||||
url: https://keeb.io/collections/bdn9-collection/products/bdn9-rev-2-3x3-9-key-macropad-rotary-encoder-and-rgb
|
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
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_STM32F0X=y
|
||||||
|
CONFIG_SOC_STM32F072XB=y
|
||||||
# 72MHz system clock
|
# 72MHz system clock
|
||||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
|
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
|
||||||
|
|
||||||
@@ -12,7 +14,6 @@ CONFIG_PINCTRL=y
|
|||||||
# Poll to avoid interrupt overlap issues
|
# Poll to avoid interrupt overlap issues
|
||||||
CONFIG_ZMK_KSCAN_DIRECT_POLLING=y
|
CONFIG_ZMK_KSCAN_DIRECT_POLLING=y
|
||||||
|
|
||||||
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=1536
|
|
||||||
CONFIG_ISR_STACK_SIZE=1024
|
CONFIG_ISR_STACK_SIZE=1024
|
||||||
|
|
||||||
# clock configuration
|
# clock configuration
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
file_format: "1"
|
file_format: "1"
|
||||||
id: blackpill_f401cc//zmk
|
id: blackpill_f401cc
|
||||||
name: BlackPill F401CC
|
name: BlackPill F401CC
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
file_format: "1"
|
file_format: "1"
|
||||||
id: blackpill_f401ce//zmk
|
id: blackpill_f401ce
|
||||||
name: BlackPill F401CE
|
name: BlackPill F401CE
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
file_format: "1"
|
file_format: "1"
|
||||||
id: blackpill_f411ce//zmk
|
id: blackpill_f411ce
|
||||||
name: BlackPill F411CE
|
name: BlackPill F411CE
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -4,5 +4,5 @@ config BOARD_ENABLE_DCDC
|
|||||||
bool "Enable DCDC mode"
|
bool "Enable DCDC mode"
|
||||||
select SOC_DCDC_NRF52X
|
select SOC_DCDC_NRF52X
|
||||||
default y
|
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
|
# Copyright (c) 2020 Pete Johanson, Derek Schmell
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
if BOARD_BLUEMICRO840
|
if BOARD_BLUEMICRO840_V1
|
||||||
|
|
||||||
|
config BOARD
|
||||||
|
default "bluemicro840_v1"
|
||||||
|
|
||||||
if USB_DEVICE_STACK
|
if USB_DEVICE_STACK
|
||||||
|
|
||||||
@@ -15,4 +18,4 @@ endif # USB_DEVICE_STACK
|
|||||||
config BT_CTLR
|
config BT_CTLR
|
||||||
default BT
|
default BT
|
||||||
|
|
||||||
endif # BOARD_BLUEMICRO840
|
endif # BOARD_BLUEMICRO840_V1
|
||||||
@@ -6,9 +6,8 @@
|
|||||||
|
|
||||||
/dts-v1/;
|
/dts-v1/;
|
||||||
#include <nordic/nrf52840_qiaa.dtsi>
|
#include <nordic/nrf52840_qiaa.dtsi>
|
||||||
|
|
||||||
#include "arduino_pro_micro_pins.dtsi"
|
#include "arduino_pro_micro_pins.dtsi"
|
||||||
#include "bluemicro840-pinctrl.dtsi"
|
#include "bluemicro840_v1-pinctrl.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "BlueMicro840_V1";
|
model = "BlueMicro840_V1";
|
||||||
@@ -18,6 +17,7 @@
|
|||||||
zephyr,code-partition = &code_partition;
|
zephyr,code-partition = &code_partition;
|
||||||
zephyr,sram = &sram0;
|
zephyr,sram = &sram0;
|
||||||
zephyr,flash = &flash0;
|
zephyr,flash = &flash0;
|
||||||
|
zmk,battery = &vbatt;
|
||||||
};
|
};
|
||||||
|
|
||||||
leds {
|
leds {
|
||||||
@@ -26,6 +26,21 @@
|
|||||||
gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
|
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 {
|
&adc {
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
identifier: bluemicro840
|
identifier: bluemicro840_v1
|
||||||
name: BlueMicro840_V1
|
name: BlueMicro840_V1
|
||||||
type: mcu
|
type: mcu
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
file_format: "1"
|
file_format: "1"
|
||||||
id: bluemicro840//zmk
|
id: bluemicro840_v1
|
||||||
name: BlueMicro840 v1
|
name: BlueMicro840 v1
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,9 @@
|
|||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_BLUEMICRO840_V1=y
|
||||||
|
|
||||||
# Enable MPU
|
# Enable MPU
|
||||||
CONFIG_ARM_MPU=y
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
@@ -17,8 +21,6 @@ CONFIG_SETTINGS_NVS=y
|
|||||||
CONFIG_FLASH=y
|
CONFIG_FLASH=y
|
||||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||||
CONFIG_FLASH_MAP=y
|
CONFIG_FLASH_MAP=y
|
||||||
CONFIG_CLOCK_CONTROL_NRF=y
|
|
||||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
|
||||||
|
|
||||||
CONFIG_ZMK_USB=y
|
CONFIG_ZMK_USB=y
|
||||||
CONFIG_ZMK_BLE=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
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
config ZMK_KEYBOARD_NAME
|
if BOARD_BT60_V1_HS || BOARD_BT60_V1
|
||||||
default "BT75" if BOARD_BT75
|
|
||||||
|
|
||||||
if BOARD_BT75
|
config BOARD
|
||||||
|
default "bt60"
|
||||||
|
|
||||||
if USB
|
if USB
|
||||||
|
|
||||||
@@ -19,4 +19,7 @@ endif # USB
|
|||||||
config BT_CTLR
|
config BT_CTLR
|
||||||
default BT
|
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
|
* SPDX-License-Identifier: MIT
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/dts-v1/;
|
/dts-v1/;
|
||||||
#include <nordic/nrf52840_qiaa.dtsi>
|
#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 {
|
chosen {
|
||||||
zephyr,code-partition = &code_partition;
|
zephyr,code-partition = &code_partition;
|
||||||
zephyr,sram = &sram0;
|
zephyr,sram = &sram0;
|
||||||
@@ -16,9 +19,35 @@
|
|||||||
zmk,battery = &vbatt;
|
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 {
|
vbatt: vbatt {
|
||||||
compatible = "zmk,battery-voltage-divider";
|
compatible = "zmk,battery-voltage-divider";
|
||||||
io-channels = <&adc 2>;
|
io-channels = <&adc 2>;
|
||||||
|
output-ohms = <2000000>;
|
||||||
|
full-ohms = <(2000000 + 806000)>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -42,6 +71,7 @@ zephyr_udc0: &usbd {
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
&flash0 {
|
&flash0 {
|
||||||
/*
|
/*
|
||||||
* For more information, see:
|
* For more information, see:
|
||||||
@@ -4,7 +4,8 @@
|
|||||||
* SPDX-License-Identifier: MIT
|
* 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/all1u.dtsi>
|
||||||
#include <layouts/common/60percent/ansi.dtsi>
|
#include <layouts/common/60percent/ansi.dtsi>
|
||||||
#include <layouts/common/60percent/hhkb.dtsi>
|
#include <layouts/common/60percent/hhkb.dtsi>
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
#elif defined(HHKB)
|
#elif defined(HHKB)
|
||||||
zmk,physical-layout = &layout_60_hhkb;
|
zmk,physical-layout = &layout_60_hhkb;
|
||||||
#else
|
#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
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||||
};
|
};
|
||||||
#else
|
#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
|
#endif
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
identifier: puchi_ble
|
identifier: bt60_v1
|
||||||
name: puchi_ble
|
name: BT60 V1 Soldered
|
||||||
type: mcu
|
type: mcu
|
||||||
arch: arm
|
arch: arm
|
||||||
toolchain:
|
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
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_BT60_V1=y
|
||||||
|
|
||||||
# Enable MPU
|
# Enable MPU
|
||||||
CONFIG_ARM_MPU=y
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
@@ -4,8 +4,8 @@
|
|||||||
* SPDX-License-Identifier: MIT
|
* SPDX-License-Identifier: MIT
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "bt60_nrf52840_zmk.dts"
|
/dts-v1/;
|
||||||
#include "bt60_1_0_0.dtsi"
|
#include "bt60.dtsi"
|
||||||
#include <layouts/common/60percent/ansi.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"
|
file_format: "1"
|
||||||
id: bt60_hs//zmk
|
id: bt60_v1_hs
|
||||||
name: BT60 V1 Hotswap
|
name: BT60 V1 Hotswap
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,9 @@
|
|||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_BT60_V1_HS=y
|
||||||
|
|
||||||
# Enable MPU
|
# Enable MPU
|
||||||
CONFIG_ARM_MPU=y
|
CONFIG_ARM_MPU=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
|
* SPDX-License-Identifier: MIT
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "../common/ckp.dtsi"
|
/dts-v1/;
|
||||||
|
#include "ckp.dtsi"
|
||||||
#include <layouts/common/60percent/all1u.dtsi>
|
#include <layouts/common/60percent/all1u.dtsi>
|
||||||
#include <layouts/common/60percent/ansi.dtsi>
|
#include <layouts/common/60percent/ansi.dtsi>
|
||||||
#include <layouts/common/60percent/hhkb.dtsi>
|
#include <layouts/common/60percent/hhkb.dtsi>
|
||||||
@@ -13,7 +14,7 @@
|
|||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "BT60_V2";
|
model = "BT60_V2";
|
||||||
compatible = "polarityworks,bt60";
|
compatible = "polarityworks,bt60_v2";
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
zmk,physical-layout = &layout_60_ansi;
|
zmk,physical-layout = &layout_60_ansi;
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
#elif defined(HHKB)
|
#elif defined(HHKB)
|
||||||
zmk,physical-layout = &layout_60_hhkb;
|
zmk,physical-layout = &layout_60_hhkb;
|
||||||
#else
|
#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
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -170,7 +170,7 @@
|
|||||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||||
};
|
};
|
||||||
#else
|
#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
|
#endif
|
||||||
|
|
||||||
};
|
};
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
identifier: bt60
|
identifier: bt60_v2
|
||||||
name: BT60 V2
|
name: BT60 V2
|
||||||
type: mcu
|
type: mcu
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
file_format: "1"
|
file_format: "1"
|
||||||
id: bt60//zmk
|
id: bt60_v2
|
||||||
name: BT60 V2
|
name: BT60 V2
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -12,7 +12,4 @@ features:
|
|||||||
outputs:
|
outputs:
|
||||||
- usb
|
- usb
|
||||||
- ble
|
- ble
|
||||||
revisions:
|
|
||||||
- 2.0.0
|
|
||||||
- 1.0.0
|
|
||||||
url: https://polarityworks.com/btckp
|
url: https://polarityworks.com/btckp
|
||||||
@@ -1,5 +1,9 @@
|
|||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_BT60_V2=y
|
||||||
|
|
||||||
# Enable MPU
|
# Enable MPU
|
||||||
CONFIG_ARM_MPU=y
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
@@ -28,6 +32,8 @@ CONFIG_ZMK_RGB_UNDERGLOW=y
|
|||||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y
|
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y
|
||||||
CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=262
|
CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=262
|
||||||
|
CONFIG_WS2812_STRIP=y
|
||||||
|
CONFIG_SPI=y
|
||||||
|
|
||||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||||
|
|
||||||
@@ -5,11 +5,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/dts-v1/;
|
/dts-v1/;
|
||||||
#include <nordic/nrf52840_qiaa.dtsi>
|
#include "ckp.dtsi"
|
||||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
|
||||||
|
|
||||||
#include "../common/ckp-base.dtsi"
|
|
||||||
#include "../common/ckp.dtsi"
|
|
||||||
#include <layouts/common/65percent/all1u.dtsi>
|
#include <layouts/common/65percent/all1u.dtsi>
|
||||||
#include <layouts/common/65percent/ansi.dtsi>
|
#include <layouts/common/65percent/ansi.dtsi>
|
||||||
#include <layouts/common/65percent/iso.dtsi>
|
#include <layouts/common/65percent/iso.dtsi>
|
||||||
@@ -18,7 +14,7 @@
|
|||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "BT65_V1";
|
model = "BT65_V1";
|
||||||
compatible = "polarityworks,bt65";
|
compatible = "polarityworks,bt65_v1";
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
zmk,physical-layout = &layout_65_ansi;
|
zmk,physical-layout = &layout_65_ansi;
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
#elif defined(HHKB)
|
#elif defined(HHKB)
|
||||||
zmk,physical-layout = &layout_65_hhkb;
|
zmk,physical-layout = &layout_65_hhkb;
|
||||||
#else
|
#else
|
||||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt65.keymap"
|
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt65_v1.keymap"
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -170,7 +170,7 @@
|
|||||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||||
};
|
};
|
||||||
#else
|
#else
|
||||||
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt65.keymap"
|
#error "Layout not defined, please define a layout by uncommenting the appropriate line in bt65_v1.keymap"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
};
|
};
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
identifier: bt65
|
identifier: bt65_v1
|
||||||
name: BT65_V1
|
name: BT65_V1
|
||||||
type: mcu
|
type: mcu
|
||||||
arch: arm
|
arch: arm
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
file_format: "1"
|
file_format: "1"
|
||||||
id: bt65//zmk
|
id: bt65_v1
|
||||||
name: BT65
|
name: BT65
|
||||||
type: board
|
type: board
|
||||||
arch: arm
|
arch: arm
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user