diff --git a/README.md b/README.md index a062ba7..1d20d6c 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ This repository contains the custom keymaps for the Corne split keyboard. It als | BLE Address | `E8:9F:65:F3:75:D5` | | USB Vendor ID | `0x1D50` (OpenMoko) | | USB Product ID | `0x615E` (ZMK default) | -| Device Name | `AfiqZudinCorne42` | +| Device Name | `Afiq Zudin Corne42` | | Display | SSD1306 OLED 128x32 (nice_oled module) | | LEDs | WS2812 RGB underglow, 27 LEDs | | BT Profiles | 5 (BT0-BT4) | @@ -67,7 +67,7 @@ TAB D S T N R | I A E O H ' LSHFT Z X C V J | K P , . / RSHFT ESC CTRL GUI | SPC ALT [HUB] -Combos (layers 0+2): +Combos (layers 0+1): top+home row same col = 1-0, shift+combo = ! @ # $ % ^ & * ( ) E+O (K+L on QWRT) = BSPC A+E (J+K on QWRT) = ENTER @@ -75,17 +75,7 @@ Combos (layers 0+2): [HUB] = hold opens HUB layer, release goes back ``` -### Layer 1: HUB -``` -BT_CLR BT0 BT1 BT2 BT3 BT4 | + [ UP ] * = -USB/BT _ _ _ _ _ | - LEFT DOWN RIGHT / \ -LSHFT Z X C V _ | ->CARP ->QWRT ->STEN ->FPS ->L5 RSHFT - ESC CTRL GUI | SPC ALT _ - -Combo: SPC+ALT = ENTER -``` - -### Layer 2: QWRT (QWERTY) +### Layer 1: QWRT (QWERTY) ``` ` Q W E R T | Y U I O P ->HUB TAB A S D F G | H J K L ; ' @@ -96,7 +86,7 @@ Combos: same as CARP (top+home = 1-0, K+L = BSPC, J+K = ENTER, SPC+ALT = ENTER) [HUB] = hold opens HUB layer, release goes back ``` -### Layer 3: STEN (Plover keyboard mode) +### Layer 2: STEN (Plover keyboard mode) ``` _ # # # # # | # # # # # ->HUB _ S T P H * | * F P L T D @@ -104,7 +94,7 @@ _ S K W R * | * R B G S Z _ A O | E U _ ``` -### Layer 4: FPS (WASD shifted right for ortho) +### Layer 3: FPS (WASD shifted right for ortho) ``` 1/ESC 2 Q [W] E/3 R/4 | 5 6 7 8 9 ->HUB TAB SHFT [A] [S] [D] G | _ _ _ _ _ _ @@ -116,7 +106,17 @@ Combo: SPC+ALT = ENTER (if ALT held via T) [HUB] = hold opens HUB layer, release goes back ``` -### Layer 5: Reserved (ZMK Studio) +### Layer 4: Reserved (ZMK Studio) + +### Layer 5: HUB +``` +BT_CLR BT0 BT1 BT2 BT3 BT4 | + [ UP ] * = +USB/BT _ _ _ _ _ | - LEFT DOWN RIGHT / \ +LSHFT Z X C V _ | ->CARP ->QWRT ->STEN ->FPS ->L4 RSHFT + ESC CTRL GUI | SPC ALT _ + +Combo: SPC+ALT = ENTER +``` # Related Resources @@ -148,7 +148,7 @@ git clone git@github.com:afiqzudinhadi/zmk-config.git ZMK Studio is enabled on this keyboard. You can edit the keymap live: 1. Go to [zmk.studio](https://zmk.studio/) in Chrome -2. Connect to `AfiqZudinCorne42` via USB or BLE +2. Connect to `Afiq Zudin Corne42` via USB or BLE 3. Edit layers visually — changes apply instantly 4. Changes persist on the keyboard (survives power cycle) @@ -221,7 +221,7 @@ If you changed the keyboard name or did a settings reset: 1. Open **System Settings → Bluetooth** on macOS 2. Remove the old keyboard entry (e.g. `Corne_Oled_RGB`) 3. Put the keyboard in pairing mode (it should be discoverable automatically) -4. Pair with `AfiqZudinCorne42` +4. Pair with `Afiq Zudin Corne42` # Settings Reset diff --git a/config/corne.keymap b/config/corne.keymap index bf7f950..2aef9b6 100644 --- a/config/corne.keymap +++ b/config/corne.keymap @@ -22,22 +22,22 @@ combos { compatible = "zmk,combos"; // Top + home row combos = numbers (like ecosteno) - combo_1 { key-positions = <1 13>; bindings = <&kp N1>; layers = <0 2>; }; - combo_2 { key-positions = <2 14>; bindings = <&kp N2>; layers = <0 2>; }; - combo_3 { key-positions = <3 15>; bindings = <&kp N3>; layers = <0 2>; }; - combo_4 { key-positions = <4 16>; bindings = <&kp N4>; layers = <0 2>; }; - combo_5 { key-positions = <5 17>; bindings = <&kp N5>; layers = <0 2>; }; - combo_6 { key-positions = <6 18>; bindings = <&kp N6>; layers = <0 2>; }; - combo_7 { key-positions = <7 19>; bindings = <&kp N7>; layers = <0 2>; }; - combo_8 { key-positions = <8 20>; bindings = <&kp N8>; layers = <0 2>; }; - combo_9 { key-positions = <9 21>; bindings = <&kp N9>; layers = <0 2>; }; - combo_0 { key-positions = <10 22>; bindings = <&kp N0>; layers = <0 2>; }; + combo_1 { key-positions = <1 13>; bindings = <&kp N1>; layers = <0 1>; }; + combo_2 { key-positions = <2 14>; bindings = <&kp N2>; layers = <0 1>; }; + combo_3 { key-positions = <3 15>; bindings = <&kp N3>; layers = <0 1>; }; + combo_4 { key-positions = <4 16>; bindings = <&kp N4>; layers = <0 1>; }; + combo_5 { key-positions = <5 17>; bindings = <&kp N5>; layers = <0 1>; }; + combo_6 { key-positions = <6 18>; bindings = <&kp N6>; layers = <0 1>; }; + combo_7 { key-positions = <7 19>; bindings = <&kp N7>; layers = <0 1>; }; + combo_8 { key-positions = <8 20>; bindings = <&kp N8>; layers = <0 1>; }; + combo_9 { key-positions = <9 21>; bindings = <&kp N9>; layers = <0 1>; }; + combo_0 { key-positions = <10 22>; bindings = <&kp N0>; layers = <0 1>; }; // K+L (QWRT) / E+O (CARP) = BSPC - combo_bspc { key-positions = <20 21>; bindings = <&kp BSPC>; layers = <0 2>; }; + combo_bspc { key-positions = <20 21>; bindings = <&kp BSPC>; layers = <0 1>; }; // J+K (QWRT) / A+E (CARP) = ENTER - combo_enter { key-positions = <19 20>; bindings = <&kp RET>; layers = <0 2>; }; + combo_enter { key-positions = <19 20>; bindings = <&kp RET>; layers = <0 1>; }; // SPC+ALT = ENTER (all layers except steno) - combo_thumb_enter { key-positions = <39 40>; bindings = <&kp RET>; layers = <0 1 2 4>; }; + combo_thumb_enter { key-positions = <39 40>; bindings = <&kp RET>; layers = <0 5 1 3>; }; }; keymap { @@ -46,49 +46,27 @@ carpalx_layer { display-name = "CARP"; bindings = < -&kp GRAVE &kp Q &kp G &kp M &kp L &kp W &kp Y &kp F &kp U &kp B &kp SEMI &to 1 +&kp GRAVE &kp Q &kp G &kp M &kp L &kp W &kp Y &kp F &kp U &kp B &kp SEMI &to 5 &kp TAB &kp D &kp S &kp T &kp N &kp R &kp I &kp A &kp E &kp O &kp H &kp SQT &kp LSHFT &kp Z &kp X &kp C &kp V &kp J &kp K &kp P &kp COMMA &kp DOT &kp FSLH &kp RSHFT - &kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 1 - >; - }; - - hub_layer { - display-name = "HUB"; - // ----------------------------------------------------------------------------------------- - // | STUDIO| BT_CLR| BT0 | BT1 | BT2 | BT3 | | HOME | UP | END | { | } | DEL | - // | ->BAS | CTRL | SHFT | ALT | GUI |->RAI | | LEFT | DOWN | RIGHT| [ | ] |->STN | - // | RESET | RGB_T | RGB_E| RGB- | RGB+ | | | ( | ) | \ | ` | ~ | | - // | | | | | | | | - // Press LSHFT position (->BAS) to go back to base - - bindings = < -&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &kp PLUS &kp LBKT &kp UP &kp RBKT &kp ASTRK &kp EQUAL -&out OUT_TOG &none &none &none &none &none &kp MINUS &kp LEFT &kp DOWN &kp RIGHT &kp FSLH &kp BSLH -&kp LSHFT &kp Z &kp X &kp C &kp V &none &to 0 &to 2 &to 3 &to 4 &to 5 &kp RSHFT - &kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &none + &kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 5 >; }; qwerty_layer { display-name = "QWRT"; bindings = < -&kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &to 1 +&kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &to 5 &kp TAB &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 N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT - &kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 1 + &kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 5 >; }; steno_layer { display-name = "STEN"; - // Plover keyboard mode layout - // # bar: 1 2 3 4 5 | 6 7 8 9 0 - // Upper steno: S T P H * | * F P L T D - // Lower steno: S K W R * | * R B G S Z - // Vowels: A O | E U bindings = < -&none &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &to 1 +&none &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &to 5 &none &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &none &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT &none &kp C &kp V &kp N &kp M &none @@ -97,19 +75,26 @@ fps_layer { display-name = "FPS"; - // WASD shifted right 1 col for ortho comfort - // T, G, B remapped to left edge/thumbs - // Right side = macros (empty for now) bindings = < -&mt ESC N1 &kp N2 &kp Q &kp W &mt N3 E &mt N4 R &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &to 1 +&mt ESC N1 &kp N2 &kp Q &kp W &mt N3 E &mt N4 R &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &to 5 &kp TAB &kp LSHFT &kp A &kp S &kp D &kp G &none &none &none &none &none &none &kp M &kp Z &kp X &kp C &kp V &kp F &none &none &none &none &none &none - &mt LALT T &kp LCTRL &kp SPACE &none &none &mo 1 + &mt LALT T &kp LCTRL &kp SPACE &none &none &mo 5 >; }; extra_1 { status = "reserved"; }; + + hub_layer { + display-name = "HUB"; + bindings = < +&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &kp PLUS &kp LBKT &kp UP &kp RBKT &kp ASTRK &kp EQUAL +&out OUT_TOG &none &none &none &none &none &kp MINUS &kp LEFT &kp DOWN &kp RIGHT &kp FSLH &kp BSLH +&kp LSHFT &kp Z &kp X &kp C &kp V &none &to 0 &to 1 &to 2 &to 3 &to 4 &kp RSHFT + &kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &none + >; + }; }; };