a fancy pants keyboard i'm making
6
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: add zmk config

+271
+6
.github/workflows/build.yml
··· 1 + name: Build ZMK firmware 2 + on: [push, pull_request, workflow_dispatch] 3 + 4 + jobs: 5 + build: 6 + uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@main
zmk-config/boards/shields/.gitkeep

This is a binary file and will not be displayed.

+5
zmk-config/boards/shields/thyme/.Kconfig.shield
··· 1 + config SHIELD_THYME_LEFT 2 + def_bool $(shields_list_contains,thyme_left) 3 + 4 + config SHIELD_THYME_RIGHT 5 + def_bool $(shields_list_contains,thyme_right)
+16
zmk-config/boards/shields/thyme/Kconfig.defconfig
··· 1 + if SHIELD_THYME_LEFT 2 + 3 + config ZMK_KEYBOARD_NAME 4 + default "Thyme" 5 + 6 + config ZMK_SPLIT_ROLE_CENTRAL 7 + default y 8 + 9 + endif 10 + 11 + if SHIELD_THYME_LEFT || SHIELD_THYME_RIGHT 12 + 13 + config ZMK_SPLIT 14 + default y 15 + 16 + endif
+19
zmk-config/boards/shields/thyme/thyme-left.overlay
··· 1 + #include "thyme.dtsi" 2 + 3 + &kscan0 { 4 + row-gpios 5 + = <&pro_micro 17 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 6 + , <&pro_micro 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 7 + , <&pro_micro 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 8 + , <&pro_micro 18 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 9 + ; 10 + 11 + col-gpios 12 + = <&pro_micro 5 GPIO_ACTIVE_HIGH> 13 + , <&pro_micro 6 GPIO_ACTIVE_HIGH> 14 + , <&pro_micro 10 GPIO_ACTIVE_HIGH> 15 + , <&pro_micro 7 GPIO_ACTIVE_HIGH> 16 + , <&pro_micro 8 GPIO_ACTIVE_HIGH> 17 + , <&pro_micro 9 GPIO_ACTIVE_HIGH> 18 + ; 19 + };
+23
zmk-config/boards/shields/thyme/thyme-right.overlay
··· 1 + #include "thyme.dtsi" 2 + 3 + &default_transform { 4 + col-offset = <6>; 5 + }; 6 + 7 + &kscan0 { 8 + row-gpios 9 + = <&pro_micro 17 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 10 + , <&pro_micro 24 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 11 + , <&pro_micro 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 12 + , <&pro_micro 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> 13 + ; 14 + 15 + col-gpios 16 + = <&pro_micro 18 GPIO_ACTIVE_HIGH> 17 + , <&pro_micro 19 GPIO_ACTIVE_HIGH> 18 + , <&pro_micro 20 GPIO_ACTIVE_HIGH> 19 + , <&pro_micro 21 GPIO_ACTIVE_HIGH> 20 + , <&pro_micro 22 GPIO_ACTIVE_HIGH> 21 + , <&pro_micro 23 GPIO_ACTIVE_HIGH> 22 + ; 23 + };
+37
zmk-config/boards/shields/thyme/thyme.dtsi
··· 1 + #include <dt-bindings/zmk/matrix_transform.h> 2 + 3 + #include <layouts/foostan/corne/6column.dtsi> 4 + 5 + &foostan_corne_6col_layout { 6 + transform = <&default_transform>; 7 + }; 8 + 9 + / { 10 + chosen { 11 + zmk,kscan = &kscan0; 12 + zmk,physical-layout = &foostan_corne_6col_layout; 13 + }; 14 + 15 + default_transform: keymap_transform_0 { 16 + compatible = "zmk,matrix-transform"; 17 + columns = <12>; 18 + rows = <4>; 19 + // | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | | SW22 | SW23 | SW26 | SW29 | SW32 | SW35 | 20 + // | SW7 | SW8 | SW9 | SW10 | SW11 | SW12 | | SW23 | SW24 | SW27 | SW30 | SW33 | SW36 | 21 + // | SW13 | SW14 | SW15 | SW16 | SW17 | SW18 | | SW24 | SW25 | SW28 | SW31 | SW34 | SW37 | 22 + // | SW19 | SW20 | SW21 | | SW38 | SW39 | SW40 | 23 + map = < 24 + RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) 25 + RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) 26 + RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) 27 + RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) 28 + >; 29 + }; 30 + 31 + kscan0: kscan { 32 + compatible = "zmk,kscan-gpio-matrix"; 33 + wakeup-source; 34 + 35 + diode-direction = "col2row"; 36 + }; 37 + };
+50
zmk-config/boards/shields/thyme/thyme.keymap
··· 1 + #include <behaviors.dtsi> 2 + #include <dt-bindings/zmk/keys.h> 3 + #include <dt-bindings/zmk/bt.h> 4 + 5 + / { 6 + keymap { 7 + compatible = "zmk,keymap"; 8 + 9 + default_layer { 10 + // ----------------------------------------------------------------------------------------- 11 + // | TAB | Q | W | E | R | T | | Y | U | I | O | P | BSPC | 12 + // | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' | 13 + // | SHFT | Z | X | C | V | B | | N | M | , | . | / | ESC | 14 + // | GUI | LWR | SPC | | ENT | RSE | ALT | 15 + bindings = < 16 + &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC 17 + &kp LCTRL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT 18 + &kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESC 19 + &kp LGUI &mo 1 &kp SPACE &kp RET &mo 2 &kp RALT 20 + >; 21 + }; 22 + lower_layer { 23 + // ----------------------------------------------------------------------------------------- 24 + // | TAB | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BSPC | 25 + // | BTCLR| BT1 | BT2 | BT3 | BT4 | BT5 | | LFT | DWN | UP | RGT | | | 26 + // | SHFT | | | | | | | | | | | | | 27 + // | GUI | | SPC | | ENT | | ALT | 28 + bindings = < 29 + &kp TAB &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC 30 + &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 31 + &kp LSHFT &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans 32 + &kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT 33 + >; 34 + }; 35 + 36 + raise_layer { 37 + // ----------------------------------------------------------------------------------------- 38 + // | TAB | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BSPC | 39 + // | CTRL | | | | | | | - | = | [ | ] | \ | ` | 40 + // | SHFT | | | | | | | _ | + | { | } | "|" | ~ | 41 + // | GUI | | SPC | | ENT | | ALT | 42 + bindings = < 43 + &kp TAB &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &kp BSPC 44 + &kp LCTRL &trans &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH &kp GRAVE 45 + &kp LSHFT &trans &trans &trans &trans &trans &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE &kp TILDE 46 + &kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT 47 + >; 48 + }; 49 + }; 50 + };
+11
zmk-config/boards/shields/thyme/thyme.zmk.yml
··· 1 + file_format: "1" 2 + id: thyme 3 + name: Thyme 4 + type: shield 5 + url: https://github.com/taciturnaxolotl/thyme 6 + requires: [pro_micro] 7 + features: 8 + - keys 9 + siblings: 10 + - thyme_left 11 + - thyme_right
+25
zmk-config/build.yaml
··· 1 + # This file generates the GitHub Actions matrix. 2 + # For simple board + shield combinations, add them to the top level board and 3 + # shield arrays, for more control, add individual board + shield combinations 4 + # to the `include` property. You can also use the `cmake-args` property to 5 + # pass flags to the build command, `snippet` to add a Zephyr snippet, and 6 + # `artifact-name` to assign a name to distinguish build outputs from each other: 7 + # 8 + # board: [ "nice_nano_v2" ] 9 + # shield: [ "corne_left", "corne_right" ] 10 + # include: 11 + # - board: bdn9_rev2 12 + # - board: nice_nano_v2 13 + # shield: reviung41 14 + # - board: nice_nano_v2 15 + # shield: corne_left 16 + # snippet: studio-rpc-usb-uart 17 + # cmake-args: -DCONFIG_ZMK_STUDIO=y 18 + # artifact-name: corne_left_with_studio 19 + # 20 + --- 21 + include: 22 + - board: nice_nano 23 + shield: thyme_left 24 + - board: nice_nano 25 + shield: thyme_right
+6
zmk-config/config/thyme.conf
··· 1 + # Uncomment the following lines to enable the Corne RGB Underglow 2 + # CONFIG_ZMK_RGB_UNDERGLOW=y 3 + # CONFIG_WS2812_STRIP=y 4 + 5 + # Uncomment the following line to enable the Corne OLED Display 6 + # CONFIG_ZMK_DISPLAY=y
+56
zmk-config/config/thyme.keymap
··· 1 + /* 2 + * Copyright (c) 2020 The ZMK Contributors 3 + * 4 + * SPDX-License-Identifier: MIT 5 + */ 6 + 7 + #include <behaviors.dtsi> 8 + #include <dt-bindings/zmk/keys.h> 9 + #include <dt-bindings/zmk/bt.h> 10 + 11 + / { 12 + keymap { 13 + compatible = "zmk,keymap"; 14 + 15 + default_layer { 16 + // ----------------------------------------------------------------------------------------- 17 + // | TAB | Q | W | E | R | T | | Y | U | I | O | P | BSPC | 18 + // | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' | 19 + // | SHFT | Z | X | C | V | B | | N | M | , | . | / | ESC | 20 + // | GUI | LWR | SPC | | ENT | RSE | ALT | 21 + bindings = < 22 + &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC 23 + &kp LCTRL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT 24 + &kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESC 25 + &kp LGUI &mo 1 &kp SPACE &kp RET &mo 2 &kp RALT 26 + >; 27 + }; 28 + lower_layer { 29 + // ----------------------------------------------------------------------------------------- 30 + // | TAB | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BSPC | 31 + // | BTCLR| BT1 | BT2 | BT3 | BT4 | BT5 | | LFT | DWN | UP | RGT | | | 32 + // | SHFT | | | | | | | | | | | | | 33 + // | GUI | | SPC | | ENT | | ALT | 34 + bindings = < 35 + &kp TAB &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC 36 + &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 37 + &kp LSHFT &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans 38 + &kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT 39 + >; 40 + }; 41 + 42 + raise_layer { 43 + // ----------------------------------------------------------------------------------------- 44 + // | TAB | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BSPC | 45 + // | CTRL | | | | | | | - | = | [ | ] | \ | ` | 46 + // | SHFT | | | | | | | _ | + | { | } | "|" | ~ | 47 + // | GUI | | SPC | | ENT | | ALT | 48 + bindings = < 49 + &kp TAB &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &kp BSPC 50 + &kp LCTRL &trans &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH &kp GRAVE 51 + &kp LSHFT &trans &trans &trans &trans &trans &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE &kp TILDE 52 + &kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT 53 + >; 54 + }; 55 + }; 56 + };
+13
zmk-config/config/west.yml
··· 1 + manifest: 2 + remotes: 3 + - name: zmkfirmware 4 + url-base: https://github.com/zmkfirmware 5 + # Additional modules containing boards/shields/custom code can be listed here as well 6 + # See https://docs.zephyrproject.org/3.2.0/develop/west/manifest.html#projects 7 + projects: 8 + - name: zmk 9 + remote: zmkfirmware 10 + revision: main 11 + import: app/west.yml 12 + self: 13 + path: config
+4
zmk-config/zephyr/module.yml
··· 1 + name: zmk-keyboard-thyme 2 + build: 3 + settings: 4 + board_root: .