From f59457cf87b565937be4b9a25cf77591eacbdcdc Mon Sep 17 00:00:00 2001 From: Glen Date: Fri, 1 Apr 2022 22:33:47 -0400 Subject: [PATCH] rework --- .github/workflows/build.yml | 68 +++++-- build.yaml | 23 +++ config/base.keymap | 171 ++++++++++++++++++ config/berylline.conf | 0 config/berylline.keymap | 1 + .../shields/berylline/Kconfig.defconfig | 19 ++ .../boards/shields/berylline/Kconfig.shield | 8 + .../boards/shields/berylline/berylline.conf | 2 + .../boards/shields/berylline/berylline.dtsi | 32 ++++ .../shields/berylline/berylline_left.conf | 2 + .../shields/berylline/berylline_left.overlay | 27 +++ .../shields/berylline/berylline_right.conf | 2 + .../shields/berylline/berylline_right.overlay | 31 ++++ .../hummingbird/boards/seeeduino_xiao.conf | 2 +- .../boards/seeeduino_xiao_ble.conf | 5 + .../shields/hummingbird/hummingbird.conf | 2 +- .../shields/hummingbird/hummingbird.overlay | 27 +-- config/hummingbird.conf | 1 + config/hummingbird.keymap | 1 + config/west.yml | 24 +-- 20 files changed, 409 insertions(+), 39 deletions(-) create mode 100644 build.yaml create mode 100644 config/base.keymap create mode 100644 config/berylline.conf create mode 100644 config/berylline.keymap create mode 100644 config/boards/shields/berylline/Kconfig.defconfig create mode 100644 config/boards/shields/berylline/Kconfig.shield create mode 100644 config/boards/shields/berylline/berylline.conf create mode 100644 config/boards/shields/berylline/berylline.dtsi create mode 100644 config/boards/shields/berylline/berylline_left.conf create mode 100644 config/boards/shields/berylline/berylline_left.overlay create mode 100644 config/boards/shields/berylline/berylline_right.conf create mode 100644 config/boards/shields/berylline/berylline_right.overlay create mode 100644 config/boards/shields/hummingbird/boards/seeeduino_xiao_ble.conf create mode 100644 config/hummingbird.conf create mode 100644 config/hummingbird.keymap diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 80c6932..31e04ea 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -3,12 +3,47 @@ on: [pull_request, workflow_dispatch] name: Build jobs: + matrix: + runs-on: ubuntu-latest + name: Fetch Build Keyboards + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Install yaml2json + run: python3 -m pip install remarshal + - id: set-matrix + name: Fetch Build Matrix + run: | + matrix=$(yaml2json build.yaml | jq -c .) + yaml2json build.yaml + echo "::set-output name=matrix::${matrix}" build: runs-on: ubuntu-latest container: - image: zmkfirmware/zmk-build-arm:2.4 + image: petejohanson/zmk-build-arm:3.0-branch + needs: matrix name: Build + strategy: + fail-fast: false + matrix: ${{fromJson(needs.matrix.outputs.matrix)}} steps: + - name: Prepare variables + id: variables + run: | + if [ -n "${{ matrix.shield }}" ]; then + EXTRA_CMAKE_ARGS="-DSHIELD=${{ matrix.shield }}" + ARTIFACT_NAME="${{ matrix.shield }}-${{ matrix.board }}-zmk" + DISPLAY_NAME="${{ matrix.shield }} - ${{ matrix.board }}" + else + EXTRA_CMAKE_ARGS= + DISPLAY_NAME="${{ matrix.board }}" + ARTIFACT_NAME="${{ matrix.board }}-zmk" + fi + echo ::set-output name=extra-cmake-args::${EXTRA_CMAKE_ARGS} + echo ::set-output name=artifact-name::${ARTIFACT_NAME} + echo ::set-output name=display-name::${DISPLAY_NAME} - name: Checkout uses: actions/checkout@v2 - name: Cache west modules @@ -33,19 +68,28 @@ jobs: run: west update - name: West Zephyr export run: west zephyr-export - - name: West Build (Hummingbird) - run: west build -s zmk/app -b seeeduino_xiao -- -DSHIELD=hummingbird -DZMK_CONFIG="${GITHUB_WORKSPACE}/config" - - name: UF2 Build - run: python3 ./tools/uf2/utils/uf2conv.py -c -f SAMD21 -o build/zephyr/zmk.uf2 build/zephyr/zmk.bin - - name: Hummingbird DTS File + - name: West Build (${{ steps.variables.outputs.display-name }}) + run: | + west build -s zmk/app -b ${{ matrix.board }} -- -DZMK_CONFIG=${GITHUB_WORKSPACE}/config ${{ steps.variables.outputs.extra-cmake-args }} ${{ matrix.cmake-args }} + - name: ${{ steps.variables.outputs.display-name }} DTS File if: ${{ always() }} - run: cat -n build/zephyr/seeeduino_xiao.dts.pre.tmp - - name: Hummingbird Kconfig file + run: | + if [ -f "build/zephyr/${{ matrix.board }}.dts.pre.tmp" ]; then cat -n build/zephyr/${{ matrix.board }}.dts.pre.tmp; fi + if [ -f "build/zephyr/zephyr.dts" ]; then cat -n build/zephyr/zephyr.dts; fi + - name: ${{ steps.variables.outputs.display-name }} Kconfig file run: cat build/zephyr/.config | grep -v "^#" | grep -v "^$" - - name: Rename zmk.uf2 - run: cp build/zephyr/zmk.uf2 hummingbird.uf2 - - name: Archive (Hummingbird) + - name: Rename artifacts + run: | + mkdir build/artifacts + if [ -f build/zephyr/zmk.uf2 ] + then + cp build/zephyr/zmk.uf2 "build/artifacts/${{ steps.variables.outputs.artifact-name }}.uf2" + elif [ -f build/zephyr/zmk.hex ] + then + cp build/zephyr/zmk.hex "build/artifacts/${{ steps.variables.outputs.artifact-name }}.hex" + fi + - name: Archive (${{ steps.variables.outputs.display-name }}) uses: actions/upload-artifact@v2 with: name: firmware - path: hummingbird.uf2 + path: build/artifacts diff --git a/build.yaml b/build.yaml new file mode 100644 index 0000000..2c979b1 --- /dev/null +++ b/build.yaml @@ -0,0 +1,23 @@ +# This file generates the GitHub Actions matrix +# For simple board + shield combinations, add them +# to the top level board and shield arrays, for more +# control, add individual board + shield combinations to +# the `include` property, e.g: +# +# board: [ "nice_nano_v2" ] +# shield: [ "corne_left", "corne_right" ] +# include: +# - board: bdn9_rev2 +# - board: nice_nano_v2 +# shield: reviung41 +# +--- +include: + - board: nice_nano_v2 + shield: berylline_left + - board: nice_nano_v2 + shield: berylline_right + - board: seeeduino_xiao + shield: hummingbird + - board: seeeduino_xiao_ble + shield: hummingbird \ No newline at end of file diff --git a/config/base.keymap b/config/base.keymap new file mode 100644 index 0000000..85617f1 --- /dev/null +++ b/config/base.keymap @@ -0,0 +1,171 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +#include +#include + +/* Layers */ +#define DEF_L 0 +#define NAV_L 1 +#define UPP_L 2 +#define SYM_L 3 +#define NUM_L 4 + +/* Behavior Settings */ +&caps_word { + continue-list = ; +}; + +&sk { + release-after-ms = <60000>; +}; + +/ { + ZMK_MACRO(mo_nav, + wait-ms = <0>; + tap-ms = <0>; + bindings + = <¯o_tap &kp K_CANCEL> + , <¯o_press &mo NAV_L> + , <¯o_pause_for_release> + , <¯o_release &mo NAV_L>;) + + ZMK_MACRO(mo_upp, + wait-ms = <0>; + tap-ms = <0>; + bindings + = <¯o_tap &kp K_CANCEL> + , <¯o_press &mo UPP_L> + , <¯o_pause_for_release> + , <¯o_release &mo UPP_L>;) + + ZMK_MACRO(mo_sym, + wait-ms = <0>; + tap-ms = <0>; + bindings + = <¯o_tap &kp K_CANCEL> + , <¯o_press &mo SYM_L> + , <¯o_pause_for_release> + , <¯o_release &mo SYM_L>;) + + combos { + compatible = "zmk,combos"; + + #define COMBO(NAME, BINDINGS, KEYPOS, LAYERS) \ + combo_##NAME { \ + bindings = ; \ + key-positions = ; \ + layers = ; \ + }; + + /* KEY POSITIONS + + ╭────────────────────╮ ╭────────────────────╮ + │ 0 1 2 3 4 │ │ 5 6 7 8 9 │ + │ 10 11 12 13 14 │ │ 15 16 17 18 19 │ + │ 20 21 22 │ │ 23 24 25 │ + ╰───────────╮ 26 27 │ │ 28 29 ╭───────────╯ + ╰────────╯ ╰────────╯ */ + + /* Letters */ + COMBO(lower_v, &kp V, 1 2, DEF_L) + COMBO(lower_q, &kp Q, 1 3, DEF_L) + COMBO(lower_z, &kp Z, 20 21, DEF_L) + COMBO(upper_v, &kp LS(V), 1 2, UPP_L) + COMBO(upper_q, &kp LS(Q), 1 3, UPP_L) + COMBO(upper_z, &kp LS(Z), 20 21, UPP_L) + + /* Brackets */ + COMBO(left_bracket, &kp LBKT, 1 11, DEF_L UPP_L SYM_L NUM_L) + COMBO(right_bracket, &kp RBKT, 8 18, DEF_L UPP_L SYM_L NUM_L) + COMBO(left_parenthesis, &kp LPAR, 2 12, DEF_L UPP_L SYM_L NUM_L) + COMBO(right_parenthesis, &kp RPAR, 7 17, DEF_L UPP_L SYM_L NUM_L) + COMBO(left_brace, &kp LBRC, 3 13, DEF_L UPP_L SYM_L NUM_L) + COMBO(right_brace, &kp RBRC, 6 16, DEF_L UPP_L SYM_L NUM_L) + + /* Convenience */ + COMBO(esc, &kp ESC, 3 4, DEF_L) + COMBO(del, &kp DEL, 13 14, DEF_L) + COMBO(select_all, &kp LC(A), 20 21, NAV_L) + }; + + conditional_layers { + compatible = "zmk,conditional-layers"; + tri_layer { + if-layers = ; + then-layer = ; + }; + }; + + keymap { + compatible = "zmk,keymap"; + + default_layer { + bindings = < + // ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ + &kp J &kp P &kp U &kp O &kp K &kp B &kp D &kp R &kp F &kp Q + &kp W &kp I &kp E &kp A &kp DOT &kp G &kp T &kp N &kp S &kp H + &kp Y &kp QUOT &kp COMMA &kp M &kp L &kp C + // ╰─────────────┴─────────────┴─────────────╮ ╭─────────────┴─────────────┴─────────────╯ + &mo_nav &kp SPACE &mo_upp &mo_sym + // ╰─────────────┴─────────────╯ ╰─────────────┴─────────────╯ + + >; + }; + + nav_layer { + label = "Nav"; + bindings = < + // ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ + &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp PG_UP &kp HOME &kp UARW &kp END &caps_word + &sk LGUI &sk LALT &sk LSHFT &sk LCTRL &kp LC(Z) &kp PG_DN &kp LARW &kp ENTER &kp RARW &kp ESC + &kp LC(X) &kp LC(C) &kp LC(V) &kp TAB &kp DARW &key_repeat + // ╰─────────────┴─────────────┴─────────────╮ ╭─────────────┴─────────────┴─────────────╯ + &trans &trans &kp BSPC &kp DEL + // ╰─────────────┴─────────────╯ ╰─────────────┴─────────────╯ + >; + }; + + upper_layer { + label = "Upp"; + bindings = < + // ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ + &kp LS(J) &kp LS(P) &kp LS(U) &kp LS(O) &kp LS(K) &kp LS(B) &kp LS(D) &kp LS(R) &kp LS(F) &kp LS(Q) + &kp LS(W) &kp LS(I) &kp LS(E) &kp LS(A) &kp LS(GT) &kp LS(G) &kp LS(T) &kp LS(N) &kp LS(S) &kp LS(H) + &kp LS(Y) &kp DQT &kp LT &kp LS(M) &kp LS(L) &kp LS(C) + // ╰─────────────┴─────────────┴─────────────╮ ╭─────────────┴─────────────┴─────────────╯ + &trans &kp LS(SPACE) &trans &trans + // ╰─────────────┴─────────────╯ ╰─────────────┴─────────────╯ + >; + }; + + sym_layer { + label = "Sym"; + bindings = < + // ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ + &kp EXCL &kp AT &kp POUND &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp SEMI &kp COLON &kp DQT + &kp MINUS &kp PLUS &kp EQUAL &kp ASTRK &kp FSLH &kp BSLH &sk LCTRL &sk LSHFT &sk LALT &sk LGUI + &kp TILDE &kp GRAVE &kp QMARK &kp PIPE &kp LT &kp GT + // ╰─────────────┴─────────────┴─────────────╮ ╭─────────────┴─────────────┴─────────────╯ + &trans &kp UNDER &trans &trans + // ╰─────────────┴─────────────╯ ╰─────────────┴─────────────╯ + >; + }; + + num_layer { + label = "Num"; + bindings = < + // ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ + &none &kp N7 &kp N4 &kp N3 &none &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 + &kp MINUS &kp N2 &kp N1 &kp N0 &kp SLASH &kp F11 &sk LCTRL &sk LSHFT &sk LALT &sk LGUI + &kp N8 &kp N6 &kp N5 &kp F12 &kp COMMA &kp DOT + // ╰─────────────┴─────────────┴─────────────╮ ╭─────────────┴─────────────┴─────────────╯ + &trans &kp N9 &trans &trans + // ╰─────────────┴─────────────╯ ╰─────────────┴─────────────╯ + >; + }; + }; +}; diff --git a/config/berylline.conf b/config/berylline.conf new file mode 100644 index 0000000..e69de29 diff --git a/config/berylline.keymap b/config/berylline.keymap new file mode 100644 index 0000000..e71f927 --- /dev/null +++ b/config/berylline.keymap @@ -0,0 +1 @@ +#include "base.keymap" \ No newline at end of file diff --git a/config/boards/shields/berylline/Kconfig.defconfig b/config/boards/shields/berylline/Kconfig.defconfig new file mode 100644 index 0000000..17c9094 --- /dev/null +++ b/config/boards/shields/berylline/Kconfig.defconfig @@ -0,0 +1,19 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT + +if SHIELD_BERYLLINE_LEFT + +config ZMK_KEYBOARD_NAME + default "Berylline" + +config ZMK_SPLIT_BLE_ROLE_CENTRAL + default y + +endif + +if SHIELD_BERYLLINE_LEFT || SHIELD_BERYLLINE_RIGHT + +config ZMK_SPLIT + default y + +endif diff --git a/config/boards/shields/berylline/Kconfig.shield b/config/boards/shields/berylline/Kconfig.shield new file mode 100644 index 0000000..63b861e --- /dev/null +++ b/config/boards/shields/berylline/Kconfig.shield @@ -0,0 +1,8 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config SHIELD_BERYLLINE_LEFT + def_bool $(shields_list_contains,berylline_left) + +config SHIELD_BERYLLINE_RIGHT + def_bool $(shields_list_contains,berylline_right) diff --git a/config/boards/shields/berylline/berylline.conf b/config/boards/shields/berylline/berylline.conf new file mode 100644 index 0000000..124f36b --- /dev/null +++ b/config/boards/shields/berylline/berylline.conf @@ -0,0 +1,2 @@ +CONFIG_ZMK_KSCAN_DEBOUNCE_RELEASE_MS=10 +CONFIG_ZMK_SLEEP=y diff --git a/config/boards/shields/berylline/berylline.dtsi b/config/boards/shields/berylline/berylline.dtsi new file mode 100644 index 0000000..4d41a19 --- /dev/null +++ b/config/boards/shields/berylline/berylline.dtsi @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +#include + +/ { + chosen { + zmk,kscan = &kscan0; + zmk,matrix_transform = &default_transform; + }; + + default_transform: keymap_transform_0 { + compatible = "zmk,matrix-transform"; + columns = <30>; + rows = <1>; + map = < + RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,15) RC(0,16) RC(0,17) RC(0,18) RC(0,19) + RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,20) RC(0,21) RC(0,22) RC(0,23) RC(0,24) + RC(0,10) RC(0,11) RC(0,12) RC(0,25) RC(0,26) RC(0,27) + RC(0,13) RC(0,14) RC(0,28) RC(0,29) + >; + }; + + kscan0: kscan { + compatible = "zmk,kscan-gpio-direct"; + label = "KSCAN"; + }; + +}; diff --git a/config/boards/shields/berylline/berylline_left.conf b/config/boards/shields/berylline/berylline_left.conf new file mode 100644 index 0000000..c9f7988 --- /dev/null +++ b/config/boards/shields/berylline/berylline_left.conf @@ -0,0 +1,2 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT diff --git a/config/boards/shields/berylline/berylline_left.overlay b/config/boards/shields/berylline/berylline_left.overlay new file mode 100644 index 0000000..00ae668 --- /dev/null +++ b/config/boards/shields/berylline/berylline_left.overlay @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +#include "berylline.dtsi" + +&kscan0 { + input-gpios + = <&pro_micro 20 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 19 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 21 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 16 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 18 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + ; +}; diff --git a/config/boards/shields/berylline/berylline_right.conf b/config/boards/shields/berylline/berylline_right.conf new file mode 100644 index 0000000..c9f7988 --- /dev/null +++ b/config/boards/shields/berylline/berylline_right.conf @@ -0,0 +1,2 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT diff --git a/config/boards/shields/berylline/berylline_right.overlay b/config/boards/shields/berylline/berylline_right.overlay new file mode 100644 index 0000000..51f6427 --- /dev/null +++ b/config/boards/shields/berylline/berylline_right.overlay @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +#include "berylline.dtsi" + +&default_transform { + col-offset = <15>; +}; + +&kscan0 { + input-gpios + = <&pro_micro 19 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 18 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 16 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 20 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&pro_micro 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + ; +}; diff --git a/config/boards/shields/hummingbird/boards/seeeduino_xiao.conf b/config/boards/shields/hummingbird/boards/seeeduino_xiao.conf index fdc8f47..76bc71f 100644 --- a/config/boards/shields/hummingbird/boards/seeeduino_xiao.conf +++ b/config/boards/shields/hummingbird/boards/seeeduino_xiao.conf @@ -1,4 +1,4 @@ CONFIG_CONSOLE=n CONFIG_UART_CONSOLE=n CONFIG_UART_INTERRUPT_DRIVEN=n -CONFIG_SERIAL=n +CONFIG_SERIAL=n \ No newline at end of file diff --git a/config/boards/shields/hummingbird/boards/seeeduino_xiao_ble.conf b/config/boards/shields/hummingbird/boards/seeeduino_xiao_ble.conf new file mode 100644 index 0000000..ac18990 --- /dev/null +++ b/config/boards/shields/hummingbird/boards/seeeduino_xiao_ble.conf @@ -0,0 +1,5 @@ +CONFIG_CONSOLE=n +CONFIG_UART_CONSOLE=n +CONFIG_UART_INTERRUPT_DRIVEN=n +CONFIG_ZMK_USB=y +CONFIG_ZMK_BLE=y \ No newline at end of file diff --git a/config/boards/shields/hummingbird/hummingbird.conf b/config/boards/shields/hummingbird/hummingbird.conf index 8a8b862..8b13789 100644 --- a/config/boards/shields/hummingbird/hummingbird.conf +++ b/config/boards/shields/hummingbird/hummingbird.conf @@ -1 +1 @@ -CONFIG_ZMK_COMBO_MAX_COMBOS_PER_KEY=6 + diff --git a/config/boards/shields/hummingbird/hummingbird.overlay b/config/boards/shields/hummingbird/hummingbird.overlay index d733b09..d3c1547 100644 --- a/config/boards/shields/hummingbird/hummingbird.overlay +++ b/config/boards/shields/hummingbird/hummingbird.overlay @@ -33,24 +33,25 @@ diode-direction = "row2col"; col-gpios - = <&portb 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&portb 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&porta 7 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&porta 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&porta 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + = <&xiao_d 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&xiao_d 7 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&xiao_d 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&xiao_d 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&xiao_d 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> ; row-gpios - = <&porta 2 GPIO_ACTIVE_HIGH> - , <&porta 4 GPIO_ACTIVE_HIGH> - , <&porta 10 GPIO_ACTIVE_HIGH> - , <&porta 11 GPIO_ACTIVE_HIGH> - , <&porta 8 GPIO_ACTIVE_HIGH> - , <&porta 9 GPIO_ACTIVE_HIGH> + = <&xiao_d 0 GPIO_ACTIVE_HIGH> + , <&xiao_d 1 GPIO_ACTIVE_HIGH> + , <&xiao_d 2 GPIO_ACTIVE_HIGH> + , <&xiao_d 3 GPIO_ACTIVE_HIGH> + , <&xiao_d 4 GPIO_ACTIVE_HIGH> + , <&xiao_d 5 GPIO_ACTIVE_HIGH> ; }; }; -&sercom0 { status = "disabled"; }; -&sercom4 { status = "disabled"; }; +&xiao_spi { status = "disabled"; }; +&xiao_i2c { status = "disabled"; }; +&xiao_serial { status = "disabled"; }; diff --git a/config/hummingbird.conf b/config/hummingbird.conf new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/config/hummingbird.conf @@ -0,0 +1 @@ + diff --git a/config/hummingbird.keymap b/config/hummingbird.keymap new file mode 100644 index 0000000..e71f927 --- /dev/null +++ b/config/hummingbird.keymap @@ -0,0 +1 @@ +#include "base.keymap" \ No newline at end of file diff --git a/config/west.yml b/config/west.yml index 089fa92..091ee51 100644 --- a/config/west.yml +++ b/config/west.yml @@ -1,13 +1,13 @@ -manifest: - remotes: - - name: zmkfirmware - url-base: https://github.com/zmkfirmware - - name: petejohanson - url-base: https://github.com/petejohanson - projects: - - name: zmk - remote: petejohanson - revision: core/zephyr-v3.0.0-update - import: app/west.yml - self: +manifest: + remotes: + - name: zmkfirmware + url-base: https://github.com/zmkfirmware + - name: petejohanson + url-base: https://github.com/petejohanson + projects: + - name: zmk + remote: petejohanson + revision: core/zephyr-v3.0.0-update + import: app/west.yml + self: path: config \ No newline at end of file