diff --git a/Readme.md b/Readme.md
new file mode 100644
index 0000000..1cdc54e
--- /dev/null
+++ b/Readme.md
@@ -0,0 +1,95 @@
+# Ninepad
+
+This is my zmk config for my handwired ninepad macropad
+
+* layer 0: default - window switcher - layer picker
+* layer 1: media
+* layer 2: bluetooth
+* layer 3: minecraft_1
+* layer 4: minecraft_2
+* layer 5: arrows
+* layer 6: empty
+* layer 7: reset
+* layer 8: numbers
+* layer 9: empty
+
+
+
+
+
+
+
+> (Left) fully assembled ninepad
+> (Right) plate with switches inserted ready for wiring
+
+
+## Getting back to default
+
+No matter what layer you are in, holding 7 (top left) will bring you to the 7th
+layer (reset). Now tap 9 (to right) and you will go back to the default layer.
+
+## layer 0: default - window switcher - layer picker
+
+Once plugged in you will be brought to the default layer. Tapping on any key
+in this layer will press Left Gui (Super) plus the corresponding number. I
+have my window manager set up so that this will take you to workspace 1-9.
+
+Double tapping any key on this layer will take you to the layer with the corresponding number
+layer 1-9.
+
+
+
+
+## layer 1: media
+
+This layer has media keys, play/pause, next track, previous track, and volume.
+
+
+
+## layer 2: bluetooth
+
+This layer has bluetooth select profile for 1-4, bluetooth clear, backlight
+toggle, and rgb toggle.
+
+
+
+## layer 3: minecraft_1
+
+This layer is for minecraft. It has wasd, q, e, shift, control, and space.
+Holding space will take you to minecraft_2.
+
+
+
+
+## layer 4: minecraft_2
+
+This layer has less critical minecraft keys, b, f5, f3, esc, f, and grave.
+
+
+
+## layer 5: arrows
+
+This layer is for navigation, it has arrows, page up, page down, home, end, and escape.
+
+
+
+
+## layer 6: empty
+
+This layer is left unused.
+
+## layer 7: reset
+
+This is a critical layer that allows me to hold 7 and tap nine from any layer to get back to layer zero. Notice the &to 0, this is what does that.
+
+
+
+## layer 8: numbers
+
+numbers 1-9
+
+
+
+## layer 9: empty
+
+This layer is left unused.
diff --git a/build.yaml b/build.yaml
index bc090db..9af7fdd 100644
--- a/build.yaml
+++ b/build.yaml
@@ -17,10 +17,10 @@
# artifact-name: corne_left_with_logging
#
include:
- - board: adafruit_kb2040
- shield: ninepad
- - board: sparkfun_pro_micro_rp2040
- shield: ninepad
+ # - board: adafruit_kb2040
+ # shield: ninepad
+ # - board: sparkfun_pro_micro_rp2040
+ # shield: ninepad
- board: nice_nano
shield: ninepad
- board: nice_nano_v2
diff --git a/config/boards/shields/ninepad/Kconfig.shield b/config/boards/shields/ninepad/Kconfig.shield
index 41cd6fc..f2b1b91 100644
--- a/config/boards/shields/ninepad/Kconfig.shield
+++ b/config/boards/shields/ninepad/Kconfig.shield
@@ -1,2 +1,2 @@
config SHIELD_NINEPAD
- def_bool $(shields_list_contains, ninepad)
+ def_bool $(shields_list_contains,ninepad)
diff --git a/config/boards/shields/ninepad/ninepad.overlay b/config/boards/shields/ninepad/ninepad.overlay
index 89df3dc..c1a59e2 100644
--- a/config/boards/shields/ninepad/ninepad.overlay
+++ b/config/boards/shields/ninepad/ninepad.overlay
@@ -14,15 +14,15 @@
diode-direction = "col2row";
col-gpios
- = <&gpio0 0 GPIO_ACTIVE_HIGH>
- , <&gpio0 1 GPIO_ACTIVE_HIGH>
+ = <&gpio0 31 GPIO_ACTIVE_HIGH>
+ , <&gpio0 29 GPIO_ACTIVE_HIGH>
, <&gpio0 2 GPIO_ACTIVE_HIGH>
;
row-gpios
- = <&gpio0 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
- , <&gpio0 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
- , <&gpio0 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
+ = <&gpio1 15 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
+ , <&gpio1 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
+ , <&gpio1 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
;
};
diff --git a/config/ninepad.config b/config/ninepad.config
new file mode 100644
index 0000000..8e98773
--- /dev/null
+++ b/config/ninepad.config
@@ -0,0 +1 @@
+CONFIG_ZMK_MOUSE=y
diff --git a/config/ninepad.keymap b/config/ninepad.keymap
index cd69245..4792b9f 100644
--- a/config/ninepad.keymap
+++ b/config/ninepad.keymap
@@ -1,7 +1,9 @@
#include
+#include
#include
#include
-#include
+#include
+#include
/ {
behaviors {
@@ -102,8 +104,8 @@
bt_layer {
label = "bt";
bindings = <
-< 7 A &none &bootloader
-&none &kp A &bt BT_CLR
+< 7 A &bl BL_TOG &rgb_ug RGB_TOG
+&bt BT_SEL 3 &bt BT_SEL 4 &bt BT_CLR
&bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2
>;
};
@@ -112,7 +114,7 @@
bindings = <
< 7 Q &kp W &kp E
&kp A &kp S &kp D
-&kp LSHFT &kp LCTRL &kp SPACE
+&kp LSHFT &kp LCTRL < 4 SPACE
>;
};
@@ -134,17 +136,17 @@
mouse {
bindings = <
-< 7 A &trans &trans
-&trans &trans &trans
-&trans &trans &trans
+< 7 A &trans &trans
+&trans &trans &trans
+&trans &trans &trans
>;
};
reset {
bindings = <
-&trans &trans &to 0
-&trans &trans &trans
-&to 1 &to 2 &bootloader
+&trans &trans &to 0
+&trans &trans &trans
+&out OUT_USB &out OUT_USB &bootloader
>;
};