commit c36c214dae92c1eccb6c9469fb7ba67fb641f8c3
Author: Chris <chris@echoz.io>
Date: Thu, 11 Dec 2025 04:35:17 +0100
feat: init
Diffstat:
7 files changed, 145 insertions(+), 0 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
@@ -0,0 +1,6 @@
+name: Build ZMK firmware
+on: [push, pull_request, workflow_dispatch]
+
+jobs:
+ build:
+ uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@v0.3
diff --git a/boards/shields/.gitkeep b/boards/shields/.gitkeep
diff --git a/build.yaml b/build.yaml
@@ -0,0 +1,25 @@
+# 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. You can also use the `cmake-args` property to
+# pass flags to the build command, `snippet` to add a Zephyr snippet, and
+# `artifact-name` to assign a name to distinguish build outputs from each other:
+#
+# board: [ "nice_nano_v2" ]
+# shield: [ "corne_left", "corne_right" ]
+# include:
+# - board: bdn9_rev2
+# - board: nice_nano_v2
+# shield: reviung41
+# - board: nice_nano_v2
+# shield: corne_left
+# snippet: studio-rpc-usb-uart
+# cmake-args: -DCONFIG_ZMK_STUDIO=y
+# artifact-name: corne_left_with_studio
+#
+---
+include:
+ - board: nice_nano@2.0.0
+ shield: helix_left
+ - board: nice_nano@2.0.0
+ shield: helix_right
diff --git a/config/helix.conf b/config/helix.conf
@@ -0,0 +1,5 @@
+# Copyright (c) 2020 The ZMK Contributors
+# SPDX-License-Identifier: MIT
+
+# Enables RGB functionality (Uncomment lines below to enable.)
+# CONFIG_ZMK_RGB_UNDERGLOW=y
diff --git a/config/helix.keymap b/config/helix.keymap
@@ -0,0 +1,92 @@
+/*
+ * 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>
+ #include <dt-bindings/zmk/rgb.h>
+ #include <dt-bindings/zmk/ext_power.h>
+ #include <dt-bindings/zmk/outputs.h>
+
+ #define DEFAULT 0
+ #define LOWER 1
+ #define RAISE 2
+ #define ADJUST 3
+
+/* NOTE: At the time of the creation of this keymap, there are no specified codes for 'eisuu' and 'kana' input in ZMK.
+However, 'LANG1' and 'LANG2' are fully-functioning candidates for 'kana' and 'eisuu' input respectively.
+As such, those are in use within the default layer at this time.*/
+
+/ {
+ keymap {
+ compatible = "zmk,keymap";
+
+ default_layer {
+ display-name = "Default Layer";
+ // ---------------------------------------------------------------------------------------------------------------------------------
+ // | GRAVE | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | DEL |
+ // | TAB | Q | W | E | R | T | | Y | U | I | O | P | BSPC |
+ // | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' |
+ // | SHIFT | Z | X | C | V | B | LBKT | | RBKT | N | M | , | . | / | RET |
+ // | ADJUST | ESC | ALT | LGUI | EISUU | LOWER | SPACE | | SPACE | RAISE | KANA | LEFT | DOWN | UP | RIGHT |
+ bindings = <
+ &kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DEL
+ &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp 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 LBKT &kp RBKT &kp N &kp M &kp COMMA &kp PERIOD &kp SLASH &kp RET
+ &mo ADJUST &kp ESC &kp LALT &kp LGUI &kp LANG2 &mo LOWER &kp SPACE &kp SPACE &mo RAISE &kp LANG1 &kp LEFT &kp DOWN &kp UP &kp RIGHT
+ >;
+ };
+ lower_layer {
+ display-name = "Lower Layer";
+ // ---------------------------------------------------------------------------------------------------------------------------------
+ // | | | | | | | | | | | | | |
+ // | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | |
+ // | | | | | | | | | _ | + | { | } | PIPE |
+ // | | | | | | | ( | | ) | | | | HOME | END | |
+ // | | | | | | | | | | | | | | | |
+ bindings = <
+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
+ &kp TILDE &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &trans
+ &trans &trans &trans &trans &trans &trans &trans &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE
+ &trans &trans &trans &trans &trans &trans &kp LPAR &kp RPAR &trans &trans &trans &kp HOME &kp END &trans
+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
+ >;
+ };
+ raise_layer {
+ display-name = "Raise Layer";
+ // ---------------------------------------------------------------------------------------------------------------------------------
+ // | | | | | | | | | | | | | |
+ // | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | DEL |
+ // | | F1 | F2 | F3 | F4 | F5 | | F6 | - | = | [ | ] | \ |
+ // | | F7 | F8 | F9 | F10 | F11 | | | | F12 | | PSCRN | PG_DN | PG_UP | |
+ // | | | | | | | | | | | | NEXT | VOL- | VOL+ | PLAY |
+ bindings = <
+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
+ &kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DEL
+ &trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH
+ &trans &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &trans &trans &kp F12 &trans &kp PSCRN &kp PG_DN &kp PG_UP &trans
+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp C_NEXT &kp C_VOL_DN &kp C_VOL_UP &kp C_PP
+ >;
+ };
+ adjust_layer {
+ display-name = "Adjust Layer";
+ // ---------------------------------------------------------------------------------------------------------------------------------
+ // | ` | ! | @ | # | $ | % | | ^ | & | * | ( | ) | EP TOG |
+ // | BT CLR | BT SEL0 | BT SEL1 | BT SEL2 | BGT SEL3 | BT SEL4 | | RGB EFF+ | RGB HUE+ | RGB SAT+ | RGB SPD+ | RGB BRI+ | RGB TOG |
+ // | BT NXT | OUT TOG | OUT USB | OUT BLE | | | | RGB EFF- | RGB HUE- | RGB SAT- | RGB SPD- | RGB BRI- | |
+ // | BT PRV | | | | | | { | | } | | | | | | |
+ // | | | | | | | | | | | | | | | |
+ bindings = <
+ &kp GRAVE &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &ext_power EP_TOG
+ &bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &rgb_ug RGB_EFF &rgb_ug RGB_HUI &rgb_ug RGB_SAI &rgb_ug RGB_SPI &rgb_ug RGB_BRI &rgb_ug RGB_TOG
+ &bt BT_NXT &out OUT_TOG &out OUT_USB &out OUT_BLE &trans &trans &rgb_ug RGB_EFR &rgb_ug RGB_HUD &rgb_ug RGB_SAD &rgb_ug RGB_SPD &rgb_ug RGB_BRD &trans
+ &bt BT_PRV &trans &trans &trans &trans &trans &kp LBRC &kp RBRC &trans &trans &trans &trans &trans &trans
+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
+ >;
+ };
+ };
+};
diff --git a/config/west.yml b/config/west.yml
@@ -0,0 +1,14 @@
+manifest:
+ defaults:
+ revision: v0.3
+ remotes:
+ - name: zmkfirmware
+ url-base: https://github.com/zmkfirmware
+ # Additional modules containing boards/shields/custom code can be listed here as well
+ # See https://docs.zephyrproject.org/3.2.0/develop/west/manifest.html#projects
+ projects:
+ - name: zmk
+ remote: zmkfirmware
+ import: app/west.yml
+ self:
+ path: config
diff --git a/zephyr/module.yml b/zephyr/module.yml
@@ -0,0 +1,3 @@
+build:
+ settings:
+ board_root: .