aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbuild.sh43
-rw-r--r--build.yaml17
-rw-r--r--config/corne.conf2
-rw-r--r--config/corne.keymap54
-rw-r--r--config/corneish_zen_v1.conf2
-rw-r--r--config/corneish_zen_v1.keymap54
-rw-r--r--config/flake.conf2
-rw-r--r--config/flake.keymap10
-rw-r--r--config/revxlp.conf2
-rw-r--r--config/splitkb_aurora_sweep.conf2
-rw-r--r--config/splitkb_aurora_sweep.keymap55
-rw-r--r--config/util.h33
-rw-r--r--config/west.yml5
-rw-r--r--flake/boards/shields/flake/Kconfig.defconfig15
-rw-r--r--flake/boards/shields/flake/flake.dtsi19
-rw-r--r--flake/boards/shields/flake/flake_left.overlay6
-rw-r--r--flake/boards/shields/flake/flake_right.overlay8
-rw-r--r--flake_dongle/boards/shields/flake_dongle/Kconfig.defconfig10
-rw-r--r--flake_dongle/boards/shields/flake_dongle/Kconfig.shield2
-rw-r--r--flake_dongle/boards/shields/flake_dongle/flake_dongle.overlay33
-rw-r--r--flake_dongle/config/west.yml11
-rw-r--r--flake_dongle/zephyr/module.yml4
-rw-r--r--readme.md2
-rw-r--r--revxlp/boards/shields/revxlp/Kconfig.defconfig6
24 files changed, 123 insertions, 274 deletions
diff --git a/build.sh b/build.sh
index 84314a9..d094eb4 100755
--- a/build.sh
+++ b/build.sh
@@ -16,55 +16,32 @@ build() {
if [ "$3" ]; then
MODULE_CMD="-DZMK_EXTRA_MODULES=$HOME/git/zmk_build/$3"
fi
- west build -p always -b $2 -- -DSHIELD=$1 \
+ west build -p -b $2 -- -DSHIELD=$1 \
-DZMK_CONFIG=$HOME/git/zmk_build/config $MODULE_CMD
-
- read -p "${BOLD}flash? (y/n) ${NORMAL}" yn
- case $yn in
- [Yy]*)
- printf "${YELLOW}enter bootloader${NORMAL}...\n"
- sleep 5
- udisksctl mount -b /dev/sdb
- west flash
- ;;
- [Nn]*) cp build/zephyr/zmk.uf2 ~/$1.uf2 ;;
- * ) printf "${RED}invalid entry${NORMAL}\n" ;;
- esac
+ cp build/zephyr/zmk.uf2 ~/$1.uf2
)
printf "${GREEN}complete${NORMAL}\n"
}
printf "${BOLD}firmware to build${NORMAL}...\n"
-printf "(1) corne\t(2) corne-ish zen\t(3) revxlp\t(4) sweep\t(5) flake\t(6) settings reset:\t"
+printf "(1) flake\t(2) revxlp\t(3) settings reset:\t"
read opt;
case $opt in
1)
- build corne_left nice_nano
- build corne_right nice_nano_v2
+ build flake_dongle nice_nano_v2 "flake_dongle"
+ build flake_left nice_nano_v2 "flake"
+ build flake_right nice_nano_v2 "flake"
;;
2)
- build corneish_zen_v1_left
- build corneish_zen_v1_right
- ;;
- 3)
build revxlp seeeduino_xiao_ble "revxlp"
;;
- 4)
- build splitkb_aurora_sweep_left nice_nano_v2
- build splitkb_aurora_sweep_right nice_nano_v2
- ;;
- 5)
- build flake_left nice_nano_v2 "flake"
- build flake_right nice_nano_v2 "flake"
- ;;
- 6)
+ 3)
printf "${BOLD}select microcontroller${NORMAL}...\n"
- printf "(1) nice nano\t(2) nice nano v2\t(3) xiao ble:\t"
+ printf "(1) nice nano v2\t(2) xiao ble:\t"
read val;
case $val in
- 1) MCU="nice_nano" ;;
- 2) MCU="nice_nano_v2" ;;
- 3) MCU="seeeduino_xiao_ble" ;;
+ 1) MCU="nice_nano_v2" ;;
+ 2) MCU="seeeduino_xiao_ble" ;;
*) printf "${RED}invalid entry${NORMAL}\n" ;;
esac
build settings_reset $MCU
diff --git a/build.yaml b/build.yaml
index 41fcc43..ed97d53 100644
--- a/build.yaml
+++ b/build.yaml
@@ -1,18 +1 @@
---
-include:
- - board: nice_nano
- shield: corne_left
- - board: nice_nano_v2
- shield: corne_right
- - board: nice_nano_v2
- shield: splitkb_aurora_sweep_left
- - board: corneish_zen_v1_left
- - board: corneish_zen_v1_right
- - board: nice_nano_v2
- shield: splitkb_aurora_sweep_right
- - board: seeeduino_xiao_ble
- shield: revxlp
- - board: nice_nano
- shield: settings_reset
- - board: nice_nano_v2
- shield: settings_reset
diff --git a/config/corne.conf b/config/corne.conf
deleted file mode 100644
index d85021a..0000000
--- a/config/corne.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_ZMK_SLEEP=y
-CONFIG_ZMK_USB_LOGGING=n
diff --git a/config/corne.keymap b/config/corne.keymap
deleted file mode 100644
index 7b27e3d..0000000
--- a/config/corne.keymap
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright 2025 [email protected]
-// SPDX-License-Identifier: MIT
-#include <behaviors.dtsi>
-#include <dt-bindings/zmk/keys.h>
-#include <dt-bindings/zmk/bt.h>
-#include "util.h"
-
-/ {
- keymap {
- compatible = "zmk,keymap";
- 0 {
- bindings = <
- &none &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &none
- &none HRML(A, S, D, F) &kp G &kp H HRMR(J, K, L, SEMI) &none
- &none &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &trans
- &updir &lt 1 ESC &kp SPACE &kp BSPC &lt 2 RS(RC(V)) &pnp
- >;
- };
- 1 {
- bindings = <
- &trans &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &trans
- &trans HRML(EXCL, AT, HASH, DLLR) &kp PRCNT &kp CARET HRMR(AMPS, ASTRK, LPAR, RPAR) &trans
- &trans &kp C_VOL_DN &kp TAB &kp CAPS &kp TILDE &kp GRAVE &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp C_VOL_UP &trans
- &none &trans &none &none &none &none
- >;
- };
- 2 {
- bindings = <
- &trans &bootloader &bt BT_NXT &none &none &none &none &none &none &none &none &trans
- &trans &bt BT_CLR &bt BT_PRV &none &none &none &none &none &none &none &none &trans
- &trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &trans
- &none &none &none &none &trans &none
- >;
- };
- };
-
- combos {
- compatible = "zmk,combos";
- // name output pos.
- COMBO(we_eqal, &kp EQUAL, 2 3)
- COMBO(er_cbkt, &td_cbrkt, 3 4)
- COMBO(rt_bsls, &kp BSLH, 4 5)
- COMBO(yu_quot, &kp QUOT, 6 7)
- COMBO(ui_brkt, &td_brkt, 7 8)
- COMBO(io_mins, &td_min_dash, 8 9)
- COMBO(sd_plus, &kp PLUS, 14 15)
- COMBO(df_coln, &kp COLON, 15 16)
- COMBO(fg_pipe, &kp PIPE, 16 17)
- COMBO(hj_dquo, &kp DQT, 18 19)
- COMBO(jk_entr, &kp ENTER, 19 20)
- COMBO(kl_unds, &kp UNDER, 20 21)
- COMBO(fj_capw, &caps_word, 16 19)
- };
-};
diff --git a/config/corneish_zen_v1.conf b/config/corneish_zen_v1.conf
deleted file mode 100644
index d85021a..0000000
--- a/config/corneish_zen_v1.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_ZMK_SLEEP=y
-CONFIG_ZMK_USB_LOGGING=n
diff --git a/config/corneish_zen_v1.keymap b/config/corneish_zen_v1.keymap
deleted file mode 100644
index 7b27e3d..0000000
--- a/config/corneish_zen_v1.keymap
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright 2025 [email protected]
-// SPDX-License-Identifier: MIT
-#include <behaviors.dtsi>
-#include <dt-bindings/zmk/keys.h>
-#include <dt-bindings/zmk/bt.h>
-#include "util.h"
-
-/ {
- keymap {
- compatible = "zmk,keymap";
- 0 {
- bindings = <
- &none &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &none
- &none HRML(A, S, D, F) &kp G &kp H HRMR(J, K, L, SEMI) &none
- &none &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &trans
- &updir &lt 1 ESC &kp SPACE &kp BSPC &lt 2 RS(RC(V)) &pnp
- >;
- };
- 1 {
- bindings = <
- &trans &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &trans
- &trans HRML(EXCL, AT, HASH, DLLR) &kp PRCNT &kp CARET HRMR(AMPS, ASTRK, LPAR, RPAR) &trans
- &trans &kp C_VOL_DN &kp TAB &kp CAPS &kp TILDE &kp GRAVE &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp C_VOL_UP &trans
- &none &trans &none &none &none &none
- >;
- };
- 2 {
- bindings = <
- &trans &bootloader &bt BT_NXT &none &none &none &none &none &none &none &none &trans
- &trans &bt BT_CLR &bt BT_PRV &none &none &none &none &none &none &none &none &trans
- &trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &trans
- &none &none &none &none &trans &none
- >;
- };
- };
-
- combos {
- compatible = "zmk,combos";
- // name output pos.
- COMBO(we_eqal, &kp EQUAL, 2 3)
- COMBO(er_cbkt, &td_cbrkt, 3 4)
- COMBO(rt_bsls, &kp BSLH, 4 5)
- COMBO(yu_quot, &kp QUOT, 6 7)
- COMBO(ui_brkt, &td_brkt, 7 8)
- COMBO(io_mins, &td_min_dash, 8 9)
- COMBO(sd_plus, &kp PLUS, 14 15)
- COMBO(df_coln, &kp COLON, 15 16)
- COMBO(fg_pipe, &kp PIPE, 16 17)
- COMBO(hj_dquo, &kp DQT, 18 19)
- COMBO(jk_entr, &kp ENTER, 19 20)
- COMBO(kl_unds, &kp UNDER, 20 21)
- COMBO(fj_capw, &caps_word, 16 19)
- };
-};
diff --git a/config/flake.conf b/config/flake.conf
deleted file mode 100644
index d85021a..0000000
--- a/config/flake.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_ZMK_SLEEP=y
-CONFIG_ZMK_USB_LOGGING=n
diff --git a/config/flake.keymap b/config/flake.keymap
index bcfac85..594e1c5 100644
--- a/config/flake.keymap
+++ b/config/flake.keymap
@@ -10,10 +10,10 @@
compatible = "zmk,keymap";
0 {
bindings = <
- &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
- HRML(A, S, D, F) &kp G &kp H HRMR(J, K, L, SEMI)
- &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
- &none &updir &lt 1 ESC &kp SPACE &none &none &kp BSPC &lt 2 RS(RC(V)) &pnp &none
+ &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
+ HRML(A, S, D, F) &kp G &kp H HRMR(J, K, L, SEMI)
+ &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
+ &none &none &updir &lt 1 ESC &kp SPACE &kp BSPC &lt 2 RS(RC(V)) &pnp &none &none
>;
};
1 {
@@ -50,7 +50,7 @@
COMBO(hj_dquo, &kp DQT, 15 16)
COMBO(jk_entr, &kp ENTER, 16 17)
COMBO(kl_unds, &kp UNDER, 17 18)
- COMBO(fj_capw, &caps_word, 15 18)
+ COMBO(fj_capw, &caps_word, 13 16)
};
};
diff --git a/config/revxlp.conf b/config/revxlp.conf
deleted file mode 100644
index d85021a..0000000
--- a/config/revxlp.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_ZMK_SLEEP=y
-CONFIG_ZMK_USB_LOGGING=n
diff --git a/config/splitkb_aurora_sweep.conf b/config/splitkb_aurora_sweep.conf
deleted file mode 100644
index d85021a..0000000
--- a/config/splitkb_aurora_sweep.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_ZMK_SLEEP=y
-CONFIG_ZMK_USB_LOGGING=n
diff --git a/config/splitkb_aurora_sweep.keymap b/config/splitkb_aurora_sweep.keymap
deleted file mode 100644
index 0ef0e7a..0000000
--- a/config/splitkb_aurora_sweep.keymap
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright 2025 [email protected]
-// SPDX-License-Identifier: MIT
-#include <behaviors.dtsi>
-#include <dt-bindings/zmk/keys.h>
-#include <dt-bindings/zmk/bt.h>
-#include "util.h"
-
-/ {
- keymap {
- compatible = "zmk,keymap";
- 0 {
- bindings = <
- &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
- HRML(A, S, D, F) &kp G &kp H HRMR(J, K, L, SEMI)
- &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
- &lt 1 ESC &kp SPACE &kp BSPC &lt 2 RS(RC(V))
- >;
- };
- 1 {
- bindings = <
- &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0
- HRML(EXCL, AT, HASH, DLLR) &kp PRCNT &kp CARET HRMR(AMPS, ASTRK, LPAR, RPAR)
- &kp C_VOL_DN &kp TAB &kp CAPS &kp TILDE &kp GRAVE &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp C_VOL_UP
- &trans &trans &trans &pnp
- >;
- };
- 2 {
- bindings = <
- &bootloader &bt BT_NXT &none &none &none &none &none &none &none &none
- &bt BT_CLR &bt BT_PRV &none &none &none &none &none &none &none &none
- &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10
- &trans &trans &trans &trans
- >;
- };
- };
-
- combos {
- compatible = "zmk,combos";
- // name output pos.
- COMBO(we_eqal, &kp EQUAL, 1 2)
- COMBO(er_cbkt, &td_cbrkt, 2 3)
- COMBO(rt_bsls, &kp BSLH, 3 4)
- COMBO(yu_quot, &kp QUOT, 5 6)
- COMBO(ui_brkt, &td_brkt, 6 7)
- COMBO(io_mins, &td_min_dash, 7 8)
- COMBO(sd_plus, &kp PLUS, 11 12)
- COMBO(df_coln, &kp COLON, 12 13)
- COMBO(fg_pipe, &kp PIPE, 13 14)
- COMBO(hj_dquo, &kp DQT, 15 16)
- COMBO(jk_entr, &kp ENTER, 16 17)
- COMBO(kl_unds, &kp UNDER, 17 18)
- COMBO(fj_capw, &caps_word, 15 18)
-
- };
-};
diff --git a/config/util.h b/config/util.h
index a658ea1..f515d75 100644
--- a/config/util.h
+++ b/config/util.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: MIT
// clang-format off
@@ -9,13 +9,12 @@ combo_##name { \
key-positions = <keypos>; \
};
-#define TAP_DANCE(name, keypress1, keypress2) \
-td_##name: name { \
- compatible = "zmk,behavior-tap-dance"; \
- label = ###name; \
- #binding-cells = <0>; \
- tapping-term-ms = <200>; \
- bindings = <keypress1>, <keypress2>; \
+#define TAP_DANCE(name, kp1, kp2, kp3) \
+td_##name: name { \
+ compatible = "zmk,behavior-tap-dance"; \
+ #binding-cells = <0>; \
+ tapping-term-ms = <200>; \
+ bindings = <kp1>, <kp2>, <kp3>; \
};
#define HRML(k1,k2,k3,k4) &hm LALT k1 &hm LGUI k2 &hm LCTRL k3 &hm LSHFT k4
@@ -29,7 +28,6 @@ td_##name: name { \
behaviors {
hm: homerow_mods {
compatible = "zmk,behavior-hold-tap";
- label = "HOMEROW_MODS";
#binding-cells = <2>;
tapping-term-ms = <130>;
quick-tap-ms = <160>;
@@ -39,30 +37,33 @@ td_##name: name { \
pnp: play_next_prev {
compatible = "zmk,behavior-tap-dance";
- label = "PLAY_NEXT_PREV";
#binding-cells = <0>;
tapping-term-ms = <210>;
bindings = <&kp C_PLAY>, <&kp C_NEXT>, <&kp C_PREV>;
};
- TAP_DANCE(cbrkt, &kp LBRC, &kp RBRC)
- TAP_DANCE(brkt, &kp LBKT, &kp RBKT)
- TAP_DANCE(min_dash, &kp MINUS, &emdash)
+ TAP_DANCE(cbrkt, &kp LBRC, &kp RBRC, &none)
+ TAP_DANCE(brkt, &kp LBKT, &kp RBKT, &none)
+ TAP_DANCE(min_dash, &kp MINUS, &dbl_min, &emdash)
};
macros {
updir: updir {
- label = "UP_DIR";
compatible = "zmk,behavior-macro";
#binding-cells = <0>;
bindings = <&macro_tap &kp DOT &kp DOT &kp FSLH>;
};
+ dbl_min: dbl_min {
+ compatible = "zmk,behavior-macro";
+ #binding-cells = <0>;
+ bindings = <&macro_tap &kp MINUS &kp MINUS>;
+ };
emdash: emdash {
- label = "EM_DASH";
compatible = "zmk,behavior-macro";
#binding-cells = <0>;
bindings = <&macro_press &kp LSHFT &kp LCTRL>,
<&macro_tap &kp U &kp N2 &kp N0 &kp N1 &kp N4>,
- <&macro_release &kp LSHFT &kp LCTRL>;
+ <&macro_release &kp LSHFT &kp LCTRL>,
+ <&macro_tap &kp SPACE &kp SPACE>;
};
};
};
diff --git a/config/west.yml b/config/west.yml
index 8657bf9..379d291 100644
--- a/config/west.yml
+++ b/config/west.yml
@@ -2,15 +2,10 @@ manifest:
remotes:
- name: zmkfirmware
url-base: https://github.com/zmkfirmware
- - name: petejohanson
- url-base: https://github.com/petejohanson
projects:
- name: zmk
remote: zmkfirmware
revision: main
import: app/west.yml
- - name: revxlp-config
- remote: petejohanson
- revision: main
self:
path: config
diff --git a/flake/boards/shields/flake/Kconfig.defconfig b/flake/boards/shields/flake/Kconfig.defconfig
index 4a655c3..eb45294 100644
--- a/flake/boards/shields/flake/Kconfig.defconfig
+++ b/flake/boards/shields/flake/Kconfig.defconfig
@@ -1,11 +1,8 @@
-if SHIELD_FLAKE_LEFT
-config ZMK_KEYBOARD_NAME
- default "flake"
-config ZMK_SPLIT_ROLE_CENTRAL
- default y
-endif
-
if SHIELD_FLAKE_LEFT || SHIELD_FLAKE_RIGHT
-config ZMK_SPLIT
- default y
+ config ZMK_SLEEP
+ default y
+ config ZMK_SPLIT
+ default y
+ config ZMK_SPLIT_ROLE_CENTRAL
+ default n
endif
diff --git a/flake/boards/shields/flake/flake.dtsi b/flake/boards/shields/flake/flake.dtsi
index f426b0a..651e976 100644
--- a/flake/boards/shields/flake/flake.dtsi
+++ b/flake/boards/shields/flake/flake.dtsi
@@ -9,18 +9,25 @@
chosen {
zmk,kscan = &kscan0;
- zmk,matrix_transform = &default_transform;
+ zmk,physical-layout = &physical_layout0;
};
- default_transform: keymap_transform_0 {
+ physical_layout0: physical_layout_0 {
+ compatible = "zmk,physical-layout";
+ display-name = "Default Layout";
+ kscan = <&kscan0>;
+ transform = <&default_transform>;
+ };
+
+ default_transform: keymap_transform0 {
compatible = "zmk,matrix-transform";
columns = <10>;
rows = <4>;
map = <
- 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(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(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10)
- RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10)
+ 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(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(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(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9)
>;
};
};
diff --git a/flake/boards/shields/flake/flake_left.overlay b/flake/boards/shields/flake/flake_left.overlay
index 49ea9de..dad7240 100644
--- a/flake/boards/shields/flake/flake_left.overlay
+++ b/flake/boards/shields/flake/flake_left.overlay
@@ -2,8 +2,7 @@
&kscan0 {
col-gpios
- = <&pro_micro 2 GPIO_ACTIVE_HIGH>
- , <&pro_micro 3 GPIO_ACTIVE_HIGH>
+ = <&pro_micro 3 GPIO_ACTIVE_HIGH>
, <&pro_micro 4 GPIO_ACTIVE_HIGH>
, <&pro_micro 5 GPIO_ACTIVE_HIGH>
, <&pro_micro 6 GPIO_ACTIVE_HIGH>
@@ -11,8 +10,7 @@
;
row-gpios
- = <&pro_micro 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
- , <&pro_micro 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
+ = <&pro_micro 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 16 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
diff --git a/flake/boards/shields/flake/flake_right.overlay b/flake/boards/shields/flake/flake_right.overlay
index 040d55b..b5fd4f4 100644
--- a/flake/boards/shields/flake/flake_right.overlay
+++ b/flake/boards/shields/flake/flake_right.overlay
@@ -1,5 +1,9 @@
#include "flake.dtsi"
+&default_transform {
+ col-offset = <5>;
+};
+
&kscan0 {
col-gpios
= <&pro_micro 14 GPIO_ACTIVE_HIGH>
@@ -7,12 +11,10 @@
, <&pro_micro 18 GPIO_ACTIVE_HIGH>
, <&pro_micro 19 GPIO_ACTIVE_HIGH>
, <&pro_micro 20 GPIO_ACTIVE_HIGH>
- , <&pro_micro 21 GPIO_ACTIVE_HIGH>
;
row-gpios
- = <&pro_micro 16 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
- , <&pro_micro 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
+ = <&pro_micro 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 7 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
diff --git a/flake_dongle/boards/shields/flake_dongle/Kconfig.defconfig b/flake_dongle/boards/shields/flake_dongle/Kconfig.defconfig
new file mode 100644
index 0000000..13a0644
--- /dev/null
+++ b/flake_dongle/boards/shields/flake_dongle/Kconfig.defconfig
@@ -0,0 +1,10 @@
+if SHIELD_FLAKE_DONGLE
+ config ZMK_KEYBOARD_NAME
+ default "Flake Dongle"
+ config ZMK_SPLIT_ROLE_CENTRAL
+ default y
+ config ZMK_SPLIT
+ default y
+ config ZMK_SPLIT_BLE_CENTRAL_PERIPHERALS
+ default 2
+endif
diff --git a/flake_dongle/boards/shields/flake_dongle/Kconfig.shield b/flake_dongle/boards/shields/flake_dongle/Kconfig.shield
new file mode 100644
index 0000000..f6a5a2d
--- /dev/null
+++ b/flake_dongle/boards/shields/flake_dongle/Kconfig.shield
@@ -0,0 +1,2 @@
+config SHIELD_FLAKE_DONGLE
+ def_bool $(shields_list_contains,flake_dongle)
diff --git a/flake_dongle/boards/shields/flake_dongle/flake_dongle.overlay b/flake_dongle/boards/shields/flake_dongle/flake_dongle.overlay
new file mode 100644
index 0000000..34441c6
--- /dev/null
+++ b/flake_dongle/boards/shields/flake_dongle/flake_dongle.overlay
@@ -0,0 +1,33 @@
+#include <dt-bindings/zmk/matrix_transform.h>
+
+/ {
+ chosen {
+ zmk,kscan = &mock_kscan;
+ zmk,physical-layout = &physical_layout0;
+ };
+
+ mock_kscan: mock_kscan_0 {
+ compatible= "zmk,kscan-mock";
+ columns = <0>;
+ rows = <0>;
+ events = <0>;
+ };
+
+ default_transform: keymap_transform0 {
+ compatible = "zmk,matrix-transform";
+ columns = <10>;
+ rows = <4>;
+ map = <
+ 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(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(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(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9)
+ >;
+ };
+
+ physical_layout0: physical_layout_0 {
+ compatible = "zmk,physical-layout";
+ display-name = "Default Layout";
+ transform = <&default_transform>;
+ };
+};
diff --git a/flake_dongle/config/west.yml b/flake_dongle/config/west.yml
new file mode 100644
index 0000000..379d291
--- /dev/null
+++ b/flake_dongle/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
diff --git a/flake_dongle/zephyr/module.yml b/flake_dongle/zephyr/module.yml
new file mode 100644
index 0000000..f49c952
--- /dev/null
+++ b/flake_dongle/zephyr/module.yml
@@ -0,0 +1,4 @@
+name: flake
+build:
+ settings:
+ board_root: .
diff --git a/readme.md b/readme.md
index 68e99be..0b3e78c 100644
--- a/readme.md
+++ b/readme.md
@@ -4,6 +4,6 @@ my [zmk](https://zmk.dev) configuration & keyboard code
![keyboard](https://i.imgur.com/bCRPsDy.jpg)
### misc
-* [`util.h`](util.h) contains some simple c macros for combos, 2-key tap dance, & home-row mods.
+* [`util.h`](config/util.h) contains some simple c macros for combos, 3-key tap dance, & home-row mods.
* [`build.sh`](build.sh) is an interactive script to build and flash firmware using a local build environment.
* **layout** is near identical to my layout [here (keymapdb)](https://keymapdb.com/keymaps/waffle87), sans a couple things like unicode.
diff --git a/revxlp/boards/shields/revxlp/Kconfig.defconfig b/revxlp/boards/shields/revxlp/Kconfig.defconfig
index c7ed43f..84fb149 100644
--- a/revxlp/boards/shields/revxlp/Kconfig.defconfig
+++ b/revxlp/boards/shields/revxlp/Kconfig.defconfig
@@ -1,4 +1,6 @@
if SHIELD_REVXLP
-config ZMK_KEYBOARD_NAME
- default "revxlp"
+ config ZMK_KEYBOARD_NAME
+ default "revxlp"
+ config ZMK_SLEEP
+ default y
endif