aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack <[email protected]>2021-03-15 16:04:17 -0600
committerJack <[email protected]>2021-03-15 16:04:17 -0600
commitd0b2d85d74775f6c9cf7a4db657ac71031984cd8 (patch)
tree5e6c8317bbe7ebaa58e88ed659f5255f6bdbff37
parent616fdfebb57c2feee6724e1510c876bc157a7526 (diff)
downloadzmk_build-d0b2d85d74775f6c9cf7a4db657ac71031984cd8.tar.gz
zmk_build-d0b2d85d74775f6c9cf7a4db657ac71031984cd8.zip
Initialize ZMK config
-rw-r--r--.github/workflows/build.yml78
-rw-r--r--config/corne.conf6
-rw-r--r--config/corne.keymap56
-rw-r--r--config/microdox.conf6
-rw-r--r--config/microdox.keymap72
-rw-r--r--config/qaz.conf0
-rw-r--r--config/qaz.keymap58
-rw-r--r--config/west.yml11
8 files changed, 287 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..3df16e5
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,78 @@
+name: Build
+on:
+ - push
+ - pull_request
+ - workflow_dispatch
+jobs:
+ build:
+ runs-on: ubuntu-20.04
+ container:
+ image: zmkfirmware/zmk-build-arm:2.4
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - shield: corne_left
+ board: nice_nano
+ - shield: corne_right
+ board: nice_nano
+ - shield: microdox_left
+ board: nice_nano
+ - shield: microdox_right
+ board: nice_nano
+ - shield: qaz
+ board: nice_nano
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+ - name: Cache west modules
+ uses: actions/cache@v2
+ env:
+ cache-name: cache-zephyr-modules
+ with:
+ path: |
+ bootloader/
+ modules/
+ tools/
+ zephyr/
+ zmk/
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('config/west.yml') }}
+ restore-keys: |
+ ${{ runner.os }}-build-${{ env.cache-name }}-
+ ${{ runner.os }}-build-
+ ${{ runner.os }}-
+ timeout-minutes: 2
+ continue-on-error: true
+ - name: Initialize workspace (west init)
+ run: west init -l config
+ - name: Update modules (west update)
+ run: west update
+ - name: Export Zephyr CMake package (west zephyr-export)
+ run: west zephyr-export
+ - name: Prepare variables
+ id: variables
+ run: |
+ if [ -n "${{ matrix.shield }}" ]; then
+ SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
+ ARTIFACT_NAME="${{ matrix.shield }}-${{ matrix.board }}-zmk"
+ else
+ SHIELD_ARG=
+ ARTIFACT_NAME="${{ matrix.board }}-zmk"
+ fi
+
+ echo ::set-output name=shield-arg::${SHIELD_ARG}
+ echo ::set-output name=artifact-name::${ARTIFACT_NAME}
+ - name: Build (west build)
+ run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }}
+ -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
+ - name: Generated DTS file
+ if: always()
+ run: cat -n build/zephyr/${{ matrix.board }}.dts.pre.tmp
+ - name: Archive artifacts
+ uses: actions/upload-artifact@v2
+ with:
+ name: ${{ steps.variables.outputs.artifact-name }}
+ path: |
+ build/zephyr/zmk.hex
+ build/zephyr/zmk.uf2
+ continue-on-error: true
diff --git a/config/corne.conf b/config/corne.conf
new file mode 100644
index 0000000..974243c
--- /dev/null
+++ b/config/corne.conf
@@ -0,0 +1,6 @@
+# Uncomment the following lines to enable the Corne RGB Underglow
+# CONFIG_ZMK_RGB_UNDERGLOW=y
+# CONFIG_WS2812_STRIP=y
+
+# Uncomment the following line to enable the Corne OLED Display
+# CONFIG_ZMK_DISPLAY=y
diff --git a/config/corne.keymap b/config/corne.keymap
new file mode 100644
index 0000000..f6152db
--- /dev/null
+++ b/config/corne.keymap
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2020 The ZMK Contributors
+ *
+ * SPDX-License-Identifier: MIT
+ */
+
+#include <behaviors.dtsi>
+#include <dt-bindings/zmk/keys.h>
+#include <dt-bindings/zmk/bt.h>
+
+/ {
+ keymap {
+ compatible = "zmk,keymap";
+
+ default_layer {
+// -----------------------------------------------------------------------------------------
+// | TAB | Q | W | E | R | T | | Y | U | I | O | P | BKSP |
+// | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' |
+// | SHFT | Z | X | C | V | B | | N | M | , | . | / | SHFT |
+// | GUI | LWR | SPC | | ENT | RSE | ALT |
+ bindings = <
+ &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC
+ &kp LCTRL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
+ &kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT
+ &kp LGUI &mo 1 &kp SPACE &kp RET &mo 2 &kp RALT
+ >;
+ };
+ lower_layer {
+// -----------------------------------------------------------------------------------------
+// | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BKSP |
+// | BTCLR| BT1 | BT2 | BT3 | BT4 | BT5 | | LFT | DWN | UP | RGT | | |
+// | SHFT | | | | | | | | | | | | |
+// | GUI | | SPC | | ENT | | ALT |
+ bindings = <
+ &kp ESC &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
+ &bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans &trans
+ &kp LSHFT &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
+ &kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT
+ >;
+ };
+
+ raise_layer {
+// -----------------------------------------------------------------------------------------
+// | ESC | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BKSP |
+// | CTRL | | | | | | | - | = | { | } | "|" | ` |
+// | SHFT | | | | | | | _ | + | [ | ] | \ | ~ | // TODO: Fix this row when &mkp is committed
+// | GUI | | SPC | | ENT | | ALT |
+ bindings = <
+ &kp ESC &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp KP_MULTIPLY &kp LPAR &kp RPAR &kp BSPC
+ &kp LCTRL &trans &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp PIPE &kp GRAVE
+ &kp LSHFT &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp BSLH &kp TILDE
+ &kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT
+ >;
+ };
+ };
+};
diff --git a/config/microdox.conf b/config/microdox.conf
new file mode 100644
index 0000000..0d38398
--- /dev/null
+++ b/config/microdox.conf
@@ -0,0 +1,6 @@
+# Uncomment the following lines to enable the Microdox RGB Underglow
+# CONFIG_ZMK_RGB_UNDERGLOW=y
+# CONFIG_WS2812_STRIP=y
+
+# Uncomment the following line to enable the Microdox OLED Display
+# CONFIG_ZMK_DISPLAY=y
diff --git a/config/microdox.keymap b/config/microdox.keymap
new file mode 100644
index 0000000..c9298ff
--- /dev/null
+++ b/config/microdox.keymap
@@ -0,0 +1,72 @@
+/*
+ * Copyright (c) 2020 The ZMK Contributors
+ *
+ * SPDX-License-Identifier: MIT
+ */
+
+#include <behaviors.dtsi>
+#include <dt-bindings/zmk/keys.h>
+#include <dt-bindings/zmk/bt.h>
+
+/ {
+ keymap {
+ compatible = "zmk,keymap";
+
+ default_layer {
+// -----------------------------------------------------------------------------------------
+// | Q | W | E | R | T | | Y | U | I | O | P |
+// | A | S | D | F | G | | H | J | K | L | ; |
+// | Z | X | C | V | B | | N | M | , | . | / |
+// | GUI | NAV | SHFT | | SPC | SYM | ALT |
+ bindings = <
+ &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
+ &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI
+ &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
+ &kp LGUI &mo 1 &kp LSHFT &kp SPACE &mo 2 &kp RALT
+ >;
+ };
+ nav_layer {
+// -----------------------------------------------------------------------------------------
+// |BTCLR| | ESC | ~ | | | TAB | HOME | UP | END | DEL |
+// | BT1 | GUI | ALT | CTRL | NUM | | / | LEFT | DOWN | RGT | BKSP |
+// | BT2 | | | | | | \ | ENT | | | |
+// | | | | | | | |
+ bindings = <
+ &bt BT_CLR &trans &kp ESC &kp TILDE &trans &kp TAB &kp HOME &kp UP &kp END &kp DEL
+ &bt BT_SEL 0 &kp K_CMENU &kp RALT &kp LCTRL &mo 3 &kp FSLH &kp LEFT &kp DOWN &kp RIGHT &kp BSPC
+ &bt BT_SEL 1 &trans &trans &trans &trans &kp BSLH &kp RET &trans &trans &trans
+ &trans &trans &trans &trans &trans &trans
+ >;
+ };
+
+ sym_layer {
+// -----------------------------------------------------------------------------------------
+// | ! | @ | # | $ | % | | ^ | & | * | ( | ) |
+// | | | | | | | - | = | { | } | "|" |
+// | | | | | | | _ | + | [ | ] | \ |
+// | GUI | | SPC | | ENT | | ALT |
+ bindings = <
+ &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp KP_MULTIPLY &kp LPAR &kp RPAR
+ &trans &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp PIPE
+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp BSLH
+ &kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT
+ >;
+ };
+
+// This layer is unreachable until "tri layer state" is sorted out.
+// Leaving it here for completeness.
+ num_layer {
+// -----------------------------------------------------------------------------------------
+// | | | | | | | A | 7 | 8 | 9 | D |
+// | | | | | | | B | 4 | 5 | 6 | E |
+// | | | | | | | C | 1 | 2 | 3 | F |
+// | | | | | 0 | . | |
+ bindings = <
+ &trans &trans &trans &trans &trans &kp A &kp N7 &kp N8 &kp N9 &kp D
+ &trans &trans &trans &trans &trans &kp B &kp N4 &kp N5 &kp N6 &kp E
+ &trans &trans &trans &trans &trans &kp C &kp N1 &kp N2 &kp N3 &kp F
+ &trans &trans &trans &kp N0 &kp DOT &trans
+ >;
+ };
+ };
+};
diff --git a/config/qaz.conf b/config/qaz.conf
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/config/qaz.conf
diff --git a/config/qaz.keymap b/config/qaz.keymap
new file mode 100644
index 0000000..a832860
--- /dev/null
+++ b/config/qaz.keymap
@@ -0,0 +1,58 @@
+/*
+ * Copyright (c) 2020 The ZMK Contributors
+ *
+ * SPDX-License-Identifier: MIT
+ */
+
+#include <behaviors.dtsi>
+#include <dt-bindings/zmk/keys.h>
+#include <dt-bindings/zmk/bt.h>
+
+#define DEFAULT 0
+#define NUM_SYM 1
+#define NAV 2
+
+/ {
+ behaviors {
+ hm: homerow_mods {
+ compatible = "zmk,behavior-hold-tap";
+ label = "homerow mods";
+ #binding-cells = <2>;
+ tapping-term-ms = <225>;
+ flavor = "tap-preferred";
+ bindings = <&kp>, <&kp>;
+ };
+ };
+};
+
+/ {
+ keymap {
+ compatible = "zmk,keymap";
+
+ default_layer {
+ bindings = <
+ &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
+ &hm LGUI A &hm LALT S &hm LCTRL D &hm LSHFT F &kp G &kp H &hm RSHFT J &hm RCTRL K &hm RALT L &hm RGUI RET
+ &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT
+ &kp LSHFT &kp LGUI &kp LALT &lt NAV RET &lt NUM_SYM SPACE &kp COLON &kp SQT &kp FSLH
+ >;
+ };
+ num_sym {
+ bindings = <
+ &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0
+ &trans &trans &trans &trans &trans &trans &trans &trans &kp EQUAL &kp MINUS
+ &kp DEL &none &none &none &none &none &none &none &kp DOT
+ &bootloader &reset &none &trans &trans &kp RET &trans &kp FSLH
+ >;
+ };
+
+ nav {
+ bindings = <
+ &bt BT_CLR &bt BT_NXT &bt BT_PRV &none &none &none &none &kp UP &none &kp BSPC
+ &trans &trans &trans &trans &none &none &kp LEFT &kp DOWN &kp RIGHT &none
+ &none &none &none &none &none &none &none &none &none
+ &none &none &none &trans &trans &kp RET &trans &kp FSLH
+ >;
+ };
+ };
+}; \ No newline at end of file
diff --git a/config/west.yml b/config/west.yml
new file mode 100644
index 0000000..379d291
--- /dev/null
+++ b/config/west.yml
@@ -0,0 +1,11 @@
+manifest:
+ remotes:
+ - name: zmkfirmware
+ url-base: https://github.com/zmkfirmware
+ projects:
+ - name: zmk
+ remote: zmkfirmware
+ revision: main
+ import: app/west.yml
+ self:
+ path: config