diff options
| -rw-r--r-- | keyboards/gummykey/config.h | 26 | ||||
| -rw-r--r-- | keyboards/gummykey/gummykey.c | 4 | ||||
| -rw-r--r-- | keyboards/gummykey/gummykey.h | 28 | ||||
| -rw-r--r-- | keyboards/gummykey/info.json | 89 | ||||
| -rw-r--r-- | keyboards/gummykey/keymaps/default/keymap.c | 32 | ||||
| -rw-r--r-- | keyboards/gummykey/readme.md | 27 | ||||
| -rw-r--r-- | keyboards/gummykey/rules.mk | 13 | 
7 files changed, 219 insertions, 0 deletions
| diff --git a/keyboards/gummykey/config.h b/keyboards/gummykey/config.h new file mode 100644 index 0000000000..30f6269abc --- /dev/null +++ b/keyboards/gummykey/config.h @@ -0,0 +1,26 @@ +// Copyright 2023 Gummor (@gumorr) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + + +#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B2 } + +#define USE_I2C + +/* + * Feature disable options + *  These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT diff --git a/keyboards/gummykey/gummykey.c b/keyboards/gummykey/gummykey.c new file mode 100644 index 0000000000..3669d08057 --- /dev/null +++ b/keyboards/gummykey/gummykey.c @@ -0,0 +1,4 @@ +// Copyright 2023 Gummor (@gumorr) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "gummykey.h" diff --git a/keyboards/gummykey/gummykey.h b/keyboards/gummykey/gummykey.h new file mode 100644 index 0000000000..79d36dc8a5 --- /dev/null +++ b/keyboards/gummykey/gummykey.h @@ -0,0 +1,28 @@ +// Copyright 2023 Gummor (@gumorr) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +#define ___ KC_NO + +#define LAYOUT_split_4x6_5( \ +    L00, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, R00, \ +    L10, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, R10, \ +    L20, L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, R20, \ +    L30, L31, L32, L33, L34, L35, R35, R34, R33, R32, R31, R30, \ +	L40, L41, L42, 		L44, L45, R45, R44, 	 R42, R41, R40 \ +) \ +{ \ +    { L00, L01, L02, L03, L04, L05 }, \ +    { L10, L11, L12, L13, L14, L15 }, \ +    { L20, L21, L22, L23, L24, L25 }, \ +    { L30, L31, L32, L33, L34, L35 }, \ +    { L40, L41, L42, ___, L44, L45 }, \ +    { R00, R01, R02, R03, R04, R05 }, \ +    { R10, R11, R12, R13, R14, R15 }, \ +    { R20, R21, R22, R23, R24, R25 }, \ +    { R30, R31, R32, R33, R34, R35 }, \ +    { R40, R41, R42, ___, R44, R45 } \ +} diff --git a/keyboards/gummykey/info.json b/keyboards/gummykey/info.json new file mode 100644 index 0000000000..4f2136f358 --- /dev/null +++ b/keyboards/gummykey/info.json @@ -0,0 +1,89 @@ +{ +    "keyboard_name": "GummyKey", +    "manufacturer": "Gumorr", +    "url": "https://github.com/gumorr/GummyKey", +    "maintainer": "Gumorr", +    "usb": { +        "vid": "0xAA12", +        "pid": "0x0001", +        "device_version": "1.0.0" +    }, +    "processor": "atmega32u4", +    "bootloader": "caterina", +    "diode_direction": "ROW2COL", +    "layouts": { +        "LAYOUT_split_4x6_5": { +            "layout": +				[ +					{"x":0.25, "y":0}, +					{"x":1.25, "y":0},  +					{"x":2.25, "y":0},  +					{"x":3.25, "y":0},  +					{"x":4.25, "y":0.125},  +					{"x":5.25, "y":0.25},  +					 +					{"x":0.25, "y":1},  +					{"x":1.25, "y":1},  +					{"x":2.25, "y":1},  +					{"x":3.25, "y":1}, 					 +					{"x":4.25, "y":1.125},  +					{"x":5.25, "y":1.25},  +					 +					{"x":0, "y":2, "w":1.25},  +					{"x":1.25, "y":2},  +					{"x":2.25, "y":2},  +					{"x":3.25, "y":2},  +					{"x":4.25, "y":2.125},  +					{"x":5.25, "y":2.25},  +					 +					{"x":0, "y":3, "w":1.25},  +					{"x":1.25, "y":3},  +					{"x":2.25, "y":3},  +					{"x":3.25, "y":3}, +					{"x":4.25, "y":3.125},  +					{"x":5.25, "y":3.25},  +					 +					{"x":0, "y":4, "w":1.25},  +					{"x":1.25, "y":4},  +					{"x":2.25, "y":4},  +					{"x":3.5, "y":4.25, "w":2.25},  +					{"x":6.75, "y":4.25},  +					 + +					{"x":13.25, "y":0},   +					{"x":12.25, "y":0},  +					{"x":11.25, "y":0}, +					{"x":10.25, "y":0},  +					{"x":9.25, "y":0.125},  +					{"x":8.25, "y":0.25},  + +					{"x":13.25, "y":1}, 					 +					{"x":12.25, "y":1},  +					{"x":11.25, "y":1},  +					{"x":10.25, "y":1},  +					{"x":9.25, "y":1.125}, +					{"x":8.25, "y":1.25},  + +					{"x":13.25, "y":2, "w":1.25},  +					{"x":12.25, "y":2},  +					{"x":11.25, "y":2},  +					{"x":10.25, "y":2}, 					 +					{"x":9.25, "y":2.125},  +					{"x":8.25, "y":2.25},  + +					{"x":13.25, "y":3, "w":1.25},  +					{"x":12.25, "y":3},  +					{"x":11.25, "y":3},  +					{"x":10.25, "y":3},  +					{"x":9.25, "y":3.125},  +					{"x":8.25, "y":3.25},  + +					{"x":13.25, "y":4, "w":1.25},  +					{"x":12.25, "y":4},  +					{"x":11.25, "y":4},  +					{"x":8, "y":4.25, "w":2.25},  +					{"x":7, "y":4.25} +				] +        } +    } +} diff --git a/keyboards/gummykey/keymaps/default/keymap.c b/keyboards/gummykey/keymaps/default/keymap.c new file mode 100644 index 0000000000..d950e3b59a --- /dev/null +++ b/keyboards/gummykey/keymaps/default/keymap.c @@ -0,0 +1,32 @@ +// Copyright 2023 Gummor (@gumorr) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { +    _BASE, +    _FUNCTION +}; + +#define FUNCT MO(_FUNCTION) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_BASE] = LAYOUT_split_4x6_5( +    KC_ESC,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,      KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, +    KC_GRV,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,      KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSLS, +    KC_TAB,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,      KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_ENT, +    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,      KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, +    KC_LCTL, KC_LGUI, KC_LALT,          KC_SPC,  FUNCT,     FUNCT,   KC_SPC, 	       KC_RALT, KC_APP,  KC_RCTL +), + +[_FUNCTION] = LAYOUT_split_4x6_5( +    _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,     KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,   KC_DEL, +    _______, _______, _______, _______, _______, _______,   _______, _______, KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, +    KC_CAPS, _______, _______, _______, _______, _______,   _______, _______, _______, _______, KC_QUOT, KC_CAPS, +    KC_LSFT, _______, _______, _______, _______, _______,   _______, _______, _______, _______, KC_UP,   KC_RSFT, +    _______, _______, _______,          _______, _______,   _______, _______, 	       KC_LEFT, KC_DOWN, KC_RIGHT +), + +}; diff --git a/keyboards/gummykey/readme.md b/keyboards/gummykey/readme.md new file mode 100644 index 0000000000..80558ee330 --- /dev/null +++ b/keyboards/gummykey/readme.md @@ -0,0 +1,27 @@ +# GummyKey + + + +a 4x6+5 split keyboard i made + +* Keyboard Maintainer: [Gummor](https://github.com/gumorr) +* Hardware Supported: Pro Micro +* Hardware Availability: [Github](https://github.com/gumorr/GummyKey) + +Make example for this keyboard (after setting up your build environment): + +    make gummykey:default + +Flashing example for this keyboard: + +	make gummykey:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
\ No newline at end of file diff --git a/keyboards/gummykey/rules.mk b/keyboards/gummykey/rules.mk new file mode 100644 index 0000000000..b043543633 --- /dev/null +++ b/keyboards/gummykey/rules.mk @@ -0,0 +1,13 @@ +# Build Options +#   change yes to no to disable +# +BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes       # Mouse keys +EXTRAKEY_ENABLE = yes       # Audio control and System control +CONSOLE_ENABLE = no        # Console for debug +COMMAND_ENABLE = no        # Commands for debug and configuration +NKRO_ENABLE = no            # Enable N-Key Rollover +BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow +AUDIO_ENABLE = no           # Audio output +SPLIT_KEYBOARD = yes | 
