From d162cd6254e18b7dca7aee7c1445de8b890a936c Mon Sep 17 00:00:00 2001 From: binaryDiv Date: Wed, 10 Jul 2024 14:26:11 +0200 Subject: [PATCH] [WIP] Firmware: Change pins and keymap for improvised eepyPad board prototype --- .../binarydiv/protoeepyboard/v1/info.json | 6 +-- .../v1/keymaps/default/keymap.c | 48 +++++++++++++------ 2 files changed, 36 insertions(+), 18 deletions(-) diff --git a/qmk_keyboards/binarydiv/protoeepyboard/v1/info.json b/qmk_keyboards/binarydiv/protoeepyboard/v1/info.json index dd0e468..5a04762 100644 --- a/qmk_keyboards/binarydiv/protoeepyboard/v1/info.json +++ b/qmk_keyboards/binarydiv/protoeepyboard/v1/info.json @@ -18,10 +18,10 @@ "mousekey": true, "nkro": true }, - "diode_direction": "COL2ROW", + "diode_direction": "ROW2COL", "matrix_pins": { - "cols": ["GP6", "GP7", "GP8", "GP9", "GP10", "GP5", "GP20", "GP25", "GP24", "GP23", "GP22", "GP21"], - "rows": ["GP17", "GP16", "GP15", "GP14", "GP13"] + "cols": ["GP10", "GP5", "GP6", "GP7", "GP8", "GP9", "GP24", "GP23", "GP22", "GP21", "GP20", "GP25"], + "rows": ["GP13", "GP17", "GP16", "GP15", "GP14"] }, "layouts": { "LAYOUT_ortho_5x12": { diff --git a/qmk_keyboards/binarydiv/protoeepyboard/v1/keymaps/default/keymap.c b/qmk_keyboards/binarydiv/protoeepyboard/v1/keymaps/default/keymap.c index c235c09..109e772 100644 --- a/qmk_keyboards/binarydiv/protoeepyboard/v1/keymaps/default/keymap.c +++ b/qmk_keyboards/binarydiv/protoeepyboard/v1/keymaps/default/keymap.c @@ -7,6 +7,9 @@ enum layer_names { // Base layer L_BASE, + // Layer for keys that should be on the base layer but don't fit on the prototype boards + L_MORE, + // "Hyper" key layer L_HYPER, @@ -17,28 +20,43 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Base layer [L_BASE] = LAYOUT_ortho_5x12( - KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQUAL, - KC_ESCAPE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SEMICOLON, KC_QUOTE, - KC_LEFT_SHIFT, KC_BACKSLASH, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, - KC_LEFT_CTRL, KC_LEFT_ALT, KC_LEFT_GUI, OSL(L_HYPER), KC_ENTER, KC_SPACE, KC_BACKSPACE, KC_RIGHT_ALT, MO(L_HYPER), MO(L_HYPER), MO(L_FN), KC_RIGHT_SHIFT + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQUAL, + KC_ESCAPE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SEMICOLON, KC_QUOTE, + KC_LEFT_SHIFT, KC_LEFT_SHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, + KC_LEFT_CTRL, KC_LEFT_CTRL, KC_LEFT_GUI, OSL(L_HYPER), KC_ENTER, KC_SPACE, KC_BACKSPACE, KC_RIGHT_ALT, MO(L_HYPER), MO(L_MORE), MO(L_FN), KC_RIGHT_SHIFT + ), + + // Layer for keys that should be on the base layer but don't fit on the prototype boards + [L_MORE] = LAYOUT_ortho_5x12( + _______, KC_GRAVE, KC_2, KC_3, KC_5, _______, KC_6, KC_7, KC_8, KC_0, _______, _______, + _______, KC_TAB, _______, _______, KC_F5, _______, _______, KC_F11, KC_F12, KC_MINUS, KC_EQUAL, _______, + _______, KC_ESCAPE, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_QUOTE, _______, + _______, KC_LEFT_SHIFT, _______, _______, _______, _______, _______, _______, _______, KC_BACKSLASH, KC_SLASH, _______, + _______, KC_LEFT_CTRL, KC_LEFT_GUI, OSL(L_HYPER), KC_ENTER, KC_SPACE, KC_BACKSPACE, KC_RIGHT_ALT, MO(L_HYPER), MO(L_HYPER), MO(L_FN), _______ ), // "Hyper" key layer [L_HYPER] = LAYOUT_ortho_5x12( - KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - _______, KC_HOME, KC_UP, KC_END, _______, _______, _______, _______, _______, KC_LEFT_BRACKET, KC_RIGHT_BRACKET, KC_F12, - _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, KC_LEFT_CURLY_BRACE, KC_RIGHT_CURLY_BRACE, KC_PIPE, - _______, KC_DELETE, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BACKSLASH, - _______, _______, _______, _______, _______, KC_SPACE, KC_ENTER, _______, _______, _______, _______, _______ + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______, KC_HOME, KC_UP, KC_END, _______, _______, _______, _______, _______, KC_LEFT_BRACKET, KC_RIGHT_BRACKET, KC_F12, + _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, KC_LEFT_CURLY_BRACE, KC_RIGHT_CURLY_BRACE, KC_PIPE, + _______, KC_DELETE, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BACKSLASH, + _______, _______, QK_BOOTLOADER, _______, _______, KC_SPACE, KC_ENTER, _______, _______, _______, _______, _______ ), // "Fn" key layer [L_FN] = LAYOUT_ortho_5x12( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOTLOADER, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_REBOOT, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_DEBUG_TOGGLE, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_CLEAR_EEPROM, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOTLOADER, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_REBOOT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; + +// TODO: Idea for leader keys: vim keybindings everywhere :D +// Examples: +// - leader dd -> Home, Shift+Down, Ctrl+X +// - leader D -> Shift+End, Ctrl+X +// - same for yy/Y, etc.