init
This commit is contained in:
commit
3fba4aba2d
13 changed files with 331 additions and 0 deletions
5
.github/workflows/build.yml
vendored
Normal file
5
.github/workflows/build.yml
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
on: [push, pull_request, workflow_dispatch]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@main
|
||||||
1
Readme.md
Normal file
1
Readme.md
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
# Wyatt 3x5
|
||||||
0
boards/shields/.gitkeep
Normal file
0
boards/shields/.gitkeep
Normal file
21
build.yaml
Normal file
21
build.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
# 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 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
|
||||||
|
# cmake-args: -DCONFIG_ZMK_USB_LOGGING=y
|
||||||
|
# artifact-name: corne_left_with_logging
|
||||||
|
#
|
||||||
|
include:
|
||||||
|
- board: nice_nano
|
||||||
|
shield: wyatt-3x5
|
||||||
12
config/boards/shields/wyatt-3x5/Kconfig.defconfig
Normal file
12
config/boards/shields/wyatt-3x5/Kconfig.defconfig
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
if SHIELD_wyatt-3x5
|
||||||
|
|
||||||
|
config ZMK_KEYBOARD_NAME
|
||||||
|
default "wyatt-3x5"
|
||||||
|
|
||||||
|
config USB_DEVICE_MANUFACTURER
|
||||||
|
default "Tickle My Keys"
|
||||||
|
|
||||||
|
config ZMK_MOUSE
|
||||||
|
default y
|
||||||
|
|
||||||
|
endif
|
||||||
2
config/boards/shields/wyatt-3x5/Kconfig.shield
Normal file
2
config/boards/shields/wyatt-3x5/Kconfig.shield
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
config SHIELD_wyatt-3x5
|
||||||
|
def_bool $(shields_list_contains,wyatt-3x5)
|
||||||
21
config/boards/shields/wyatt-3x5/wyatt-3x5.keymap
Normal file
21
config/boards/shields/wyatt-3x5/wyatt-3x5.keymap
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
#include <behaviors.dtsi>
|
||||||
|
#include <dt-bindings/zmk/keys.h>
|
||||||
|
#include <dt-bindings/zmk/bt.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
keymap {
|
||||||
|
compatible = "zmk,keymap";
|
||||||
|
label = "wyatt-3x5";
|
||||||
|
default_layer {
|
||||||
|
label = "Default";
|
||||||
|
bindings = <
|
||||||
|
&kp ESC &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BACKSPACE
|
||||||
|
&kp ESC &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI_COLON &kp QUOTE
|
||||||
|
&kp SHIFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp PERIOD &kp SLASH &kp CTRL
|
||||||
|
&kp CTRL &kp ALT &kp GUI &kp ENTER &kp SPACE &kp SHIFT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
42
config/boards/shields/wyatt-3x5/wyatt-3x5.overlay
Normal file
42
config/boards/shields/wyatt-3x5/wyatt-3x5.overlay
Normal file
|
|
@ -0,0 +1,42 @@
|
||||||
|
#include <dt-bindings/zmk/matrix_transform.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
chosen {
|
||||||
|
zmk,kscan = &default_kscan;
|
||||||
|
zmk,matrix_transform = &default_transform;
|
||||||
|
/delete-property/ zephyr,console;
|
||||||
|
/delete-property/ zephyr,shell-uart;
|
||||||
|
};
|
||||||
|
|
||||||
|
default_kscan: kscan {
|
||||||
|
compatible = "zmk,kscan-gpio-matrix";
|
||||||
|
label = "default_kscan";
|
||||||
|
diode-direction = "col2row";
|
||||||
|
|
||||||
|
col-gpios
|
||||||
|
= <&gpio0 09 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 10 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio1 11 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio1 13 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio1 15 GPIO_ACTIVE_HIGH>
|
||||||
|
;
|
||||||
|
|
||||||
|
row-gpios
|
||||||
|
= <&gpio1 06 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio1 04 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio0 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
|
default_transform: matrix_transform {
|
||||||
|
compatible = "zmk,matrix-transform";
|
||||||
|
columns = <5>;
|
||||||
|
rows = <3>;
|
||||||
|
map = <
|
||||||
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4)
|
||||||
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4)
|
||||||
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4)
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
13
config/west.yml
Normal file
13
config/west.yml
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
manifest:
|
||||||
|
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
|
||||||
|
revision: main
|
||||||
|
import: app/west.yml
|
||||||
|
self:
|
||||||
|
path: config
|
||||||
2
config/wyatt-3x5.conf
Normal file
2
config/wyatt-3x5.conf
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
CONFIG_BT_MAX_CONN=10
|
||||||
|
CONFIG_BT_MAX_PAIRED=10
|
||||||
55
config/wyatt-3x5.json
Normal file
55
config/wyatt-3x5.json
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"layouts": {
|
||||||
|
"default_layout": {
|
||||||
|
"name": "default_layout",
|
||||||
|
"layout": [
|
||||||
|
{ "row": 0, "col": 0, "x": 0, "y": 0 },
|
||||||
|
{ "row": 0, "col": 1, "x": 1, "y": 0 },
|
||||||
|
{ "row": 0, "col": 2, "x": 2, "y": 0 },
|
||||||
|
{ "row": 0, "col": 3, "x": 3, "y": 0 },
|
||||||
|
{ "row": 0, "col": 4, "x": 4, "y": 0 },
|
||||||
|
{ "row": 0, "col": 5, "x": 5, "y": 0 },
|
||||||
|
{ "row": 0, "col": 6, "x": 12, "y": 0 },
|
||||||
|
{ "row": 0, "col": 7, "x": 13, "y": 0 },
|
||||||
|
{ "row": 0, "col": 8, "x": 14, "y": 0 },
|
||||||
|
{ "row": 0, "col": 9, "x": 15, "y": 0 },
|
||||||
|
{ "row": 0, "col": 10, "x": 16, "y": 0 },
|
||||||
|
{ "row": 0, "col": 11, "x": 17, "y": 0 },
|
||||||
|
|
||||||
|
{ "row": 1, "col": 0, "x": 0, "y": 1 },
|
||||||
|
{ "row": 1, "col": 1, "x": 1, "y": 1 },
|
||||||
|
{ "row": 1, "col": 2, "x": 2, "y": 1 },
|
||||||
|
{ "row": 1, "col": 3, "x": 3, "y": 1 },
|
||||||
|
{ "row": 1, "col": 4, "x": 4, "y": 1 },
|
||||||
|
{ "row": 1, "col": 5, "x": 5, "y": 1 },
|
||||||
|
{ "row": 1, "col": 6, "x": 12, "y": 1 },
|
||||||
|
{ "row": 1, "col": 7, "x": 13, "y": 1 },
|
||||||
|
{ "row": 1, "col": 8, "x": 14, "y": 1 },
|
||||||
|
{ "row": 1, "col": 9, "x": 15, "y": 1 },
|
||||||
|
{ "row": 1, "col": 10, "x": 16, "y": 1 },
|
||||||
|
{ "row": 1, "col": 11, "x": 17, "y": 1 },
|
||||||
|
|
||||||
|
{ "row": 2, "col": 0, "x": 0, "y": 2 },
|
||||||
|
{ "row": 2, "col": 1, "x": 1, "y": 2 },
|
||||||
|
{ "row": 2, "col": 2, "x": 2, "y": 2 },
|
||||||
|
{ "row": 2, "col": 3, "x": 3, "y": 2 },
|
||||||
|
{ "row": 2, "col": 4, "x": 4, "y": 2 },
|
||||||
|
{ "row": 2, "col": 5, "x": 5, "y": 2 },
|
||||||
|
{ "row": 2, "col": 6, "x": 12, "y": 2 },
|
||||||
|
{ "row": 2, "col": 7, "x": 13, "y": 2 },
|
||||||
|
{ "row": 2, "col": 8, "x": 14, "y": 2 },
|
||||||
|
{ "row": 2, "col": 9, "x": 15, "y": 2 },
|
||||||
|
{ "row": 2, "col": 10, "x": 16, "y": 2 },
|
||||||
|
{ "row": 2, "col": 11, "x": 17, "y": 2 },
|
||||||
|
|
||||||
|
{ "row": 3, "col": 3, "x": 4, "y": 3 },
|
||||||
|
{ "row": 3, "col": 4, "x": 5, "y": 3 },
|
||||||
|
{ "row": 3, "col": 5, "x": 6, "y": 3 },
|
||||||
|
{ "row": 3, "col": 6, "x": 11, "y": 3 },
|
||||||
|
{ "row": 3, "col": 7, "x": 12, "y": 3 },
|
||||||
|
{ "row": 3, "col": 8, "x": 13, "y": 3 }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sensors": []
|
||||||
|
}
|
||||||
154
config/wyatt-3x5.keymap
Normal file
154
config/wyatt-3x5.keymap
Normal file
|
|
@ -0,0 +1,154 @@
|
||||||
|
#include <behaviors.dtsi>
|
||||||
|
#include <dt-bindings/zmk/bt.h>
|
||||||
|
#include <dt-bindings/zmk/keys.h>
|
||||||
|
#include <dt-bindings/zmk/outputs.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
behaviors {
|
||||||
|
gaming_active: gaming_active {
|
||||||
|
compatible = "zmk,behavior-tap-dance";
|
||||||
|
label = "GAMING_ACTIVE";
|
||||||
|
#binding-cells = <0>;
|
||||||
|
bindings = <&kp Q>, <&kp Q>, <&to 3>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gaming_deactive: gaming_deactive {
|
||||||
|
compatible = "zmk,behavior-tap-dance";
|
||||||
|
label = "GAMING_DEACTIVE";
|
||||||
|
#binding-cells = <0>;
|
||||||
|
bindings = <&kp RIGHT_SHIFT>, <&to 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
hm: homerow_mods {
|
||||||
|
compatible = "zmk,behavior-hold-tap";
|
||||||
|
label = "HOMEROW_MODS";
|
||||||
|
bindings = <&kp>, <&kp>;
|
||||||
|
|
||||||
|
#binding-cells = <2>;
|
||||||
|
tapping-term-ms = <150>;
|
||||||
|
flavor = "tap-preferred";
|
||||||
|
};
|
||||||
|
|
||||||
|
hl: homerow_layer {
|
||||||
|
compatible = "zmk,behavior-hold-tap";
|
||||||
|
label = "HOMEROW_LAYER";
|
||||||
|
bindings = <&mo>, <&kp>;
|
||||||
|
|
||||||
|
#binding-cells = <2>;
|
||||||
|
tapping-term-ms = <150>;
|
||||||
|
flavor = "tap-preferred";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
macros {
|
||||||
|
vim___0: vim___0 {
|
||||||
|
compatible = "zmk,behavior-macro";
|
||||||
|
#binding-cells = <0>;
|
||||||
|
bindings = <&kp END &kp ENTER>;
|
||||||
|
label = "vim___0";
|
||||||
|
};
|
||||||
|
|
||||||
|
vim___w: vim___w {
|
||||||
|
compatible = "zmk,behavior-macro";
|
||||||
|
#binding-cells = <0>;
|
||||||
|
bindings = <&none>;
|
||||||
|
label = "VIM___W";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
keymap {
|
||||||
|
compatible = "zmk,keymap";
|
||||||
|
label = "wyatt-3x5";
|
||||||
|
|
||||||
|
default_layer {
|
||||||
|
label = "Default";
|
||||||
|
bindings = <
|
||||||
|
&kp TAB &gaming_active &kp W &kp E &kp R < 8 T < 8 Y &kp U &kp I &kp O &kp P &kp BACKSPACE
|
||||||
|
&hl 4 ESC &hl 2 A &kp S &hm LEFT_SHIFT D &hm LCTRL F &kp G &kp H &hm RCTRL J &hm RIGHT_SHIFT K &kp L &kp SEMI &kp SQT
|
||||||
|
&kp LSHFT &kp Z &kp X < 5 C < 6 V < 7 B &kp N &kp M &kp COMMA &kp PERIOD &kp SLASH &kp LS(LG(LA(LCTRL)))
|
||||||
|
&kp LG(LGUI) &kp LALT &kp LCTRL &kp RET < 1 SPACE &kp RSHFT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
symbols {
|
||||||
|
bindings = <
|
||||||
|
&kp LS(EXCL) &kp LS(EXCL) &kp LS(AT) &kp LS(POUND) &kp LS(DLLR) &kp LS(PRCNT) &kp LS(CARET) &kp LS(AMPS) &kp LS(STAR) &kp LS(LPAR) &kp LS(RPAR) &kp DEL
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp LS(LBRC) &kp LS(RBRC) &kp LS(PIPE) &kp LS(TILDE)
|
||||||
|
&kp BACKSPACE &kp TAB &kp DEL &trans &trans &trans
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
numpad {
|
||||||
|
bindings = <
|
||||||
|
&kp TAB &trans &trans &kp LBKT &kp RBKT < 8 PERCENT &kp LS(PLUS) &kp N7 &kp N8 &kp N9 &kp STAR &kp BSPC
|
||||||
|
&trans &trans &kp UNDER &mt LEFT_SHIFT LEFT_PARENTHESIS &mt LS(LEFT_CONTROL) RIGHT_PARENTHESIS &kp LS(DLLR) &kp MINUS &kp N4 &kp N5 &kp N6 &kp LS(UNDER) &kp GRAVE
|
||||||
|
&trans &trans &kp DOT &kp LS(LEFT_BRACE) &kp LS(RIGHT_BRACE) &kp N0 &kp N0 &kp N1 &kp N2 &kp N3 &kp DOT &kp FSLH
|
||||||
|
&trans &trans &trans &trans &trans &trans
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gaming {
|
||||||
|
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 LSHFT &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp L &kp SQT
|
||||||
|
&mt LEFT_CONTROL ESCAPE &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &trans
|
||||||
|
&kp LSHFT &kp SPACE &kp LCTRL &kp ENTER &kp SPACE &gaming_deactive
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vimmy {
|
||||||
|
bindings = <
|
||||||
|
&kp TAB &trans &kp LC(RIGHT) &kp LC(RIGHT) &kp LEFT &trans &kp LC(C) &kp PG_UP &kp HOME &vim___0 &kp LC(V) &kp DEL
|
||||||
|
&trans &kp END &kp HOME &kp PG_DN &trans &trans &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans &trans
|
||||||
|
&trans &trans &trans &trans &kp GRAVE &kp LC(LEFT) &trans &trans &kp LBKT &kp RBKT &kp BSLH &kp LS(TILDE)
|
||||||
|
&trans &trans &trans &kp RET &trans &kp RSHFT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
switchwin {
|
||||||
|
bindings = <
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(N7) &kp LG(N8) &kp LG(N9) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(N4) &kp LG(N5) &kp LG(N6) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(N1) &kp LG(N2) &kp LG(N3) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
joinwin {
|
||||||
|
bindings = <
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(LC(N7)) &kp LG(LC(N8)) &kp LG(LC(N9)) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(LC(N4)) &kp LG(LC(N5)) &kp LG(LC(N6)) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(LC(N1)) &kp LG(LC(N2)) &kp LG(LC(N3)) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sendwin {
|
||||||
|
bindings = <
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(LS(N7)) &kp LG(LS(N8)) &kp LG(LS(N9)) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(LS(N4)) &kp LG(LS(N5)) &kp LG(LS(N6)) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp LG(LS(N1)) &kp LG(LS(N2)) &kp LG(LS(N3)) &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
fkeys {
|
||||||
|
bindings = <
|
||||||
|
&bootloader &trans &bt BT_SEL 7 &bt BT_SEL 8 &bt BT_SEL 9 &out OUT_USB &trans &kp F7 &kp F8 &kp F9 &trans &trans
|
||||||
|
&bt BT_CLR &trans &bt BT_SEL 4 &bt BT_SEL 5 &bt BT_SEL 6 &out OUT_BLE &trans &kp F4 &kp F5 &kp F6 &kp F11 &kp F12
|
||||||
|
&trans &trans &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 0 &kp F10 &kp F1 &kp F2 &kp F3 &trans &trans
|
||||||
|
&trans &trans &mo 9 &trans &trans &trans
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
media {
|
||||||
|
bindings = <
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &kp K_PREVIOUS &kp K_NEXT &trans &trans &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||||
|
&trans &trans &trans &trans &kp K_PLAY_PAUSE &trans
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
3
zephyr/module.yml
Normal file
3
zephyr/module.yml
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
build:
|
||||||
|
settings:
|
||||||
|
board_root: .
|
||||||
Loading…
Add table
Add a link
Reference in a new issue