diff --git a/keyboards/crkbd/keymaps/bcat/config.h b/keyboards/crkbd/keymaps/bcat/config.h new file mode 100644 index 000000000..fd5fce542 --- /dev/null +++ b/keyboards/crkbd/keymaps/bcat/config.h @@ -0,0 +1,6 @@ +#pragma once + +#define EE_HANDS + +/* Limit max RGB LED current to avoid tripping controller fuse. */ +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 diff --git a/keyboards/crkbd/keymaps/bcat/keymap.c b/keyboards/crkbd/keymaps/bcat/keymap.c new file mode 100644 index 000000000..59ed00b5d --- /dev/null +++ b/keyboards/crkbd/keymaps/bcat/keymap.c @@ -0,0 +1,51 @@ +#include QMK_KEYBOARD_H + +enum layer { + LAYER_DEFAULT, + LAYER_LOWER, + LAYER_RAISE, + LAYER_ADJUST, +}; + +#define LY_LWR MO(LAYER_LOWER) +#define LY_RSE MO(LAYER_RAISE) + +#define KY_CESC LCTL_T(KC_ESC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Default layer: http://www.keyboard-layout-editor.com/#/gists/08d9827d916662a9414f48805aa895a5 */ + [LAYER_DEFAULT] = LAYOUT( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KY_CESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + 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_LALT, LY_LWR, KC_SPC, KC_ENT, LY_RSE, KC_RGUI + ), + + /* Lower layer: http://www.keyboard-layout-editor.com/#/gists/c3fba5eaa2cd70fdfbdbc0f9e34d3bc0 */ + [LAYER_LOWER] = LAYOUT( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, KC_PIPE, KC_TILD, KC_DEL, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + _______, _______, _______, KC_BSLS, KC_GRV, KC_INS, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, _______, _______, _______, _______ + ), + + /* Raise layer: http://www.keyboard-layout-editor.com/#/gists/08b44355d4ca85d294bad9e2821f91d7 */ + [LAYER_RAISE] = LAYOUT( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_HOME, KC_PGUP, + _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, KC_END, KC_PGDN, + _______, _______, _______, _______, _______, _______ + ), + + /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/77e7572e077b36a23eb2086017e16fee */ + [LAYER_ADJUST] = LAYOUT( + KC_CAPS, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, EEP_RST, RESET, KC_PSCR, KC_SLCK, KC_PAUS, _______, + _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, RGB_RMOD, RGB_VAD, RGB_VAI, RGB_MOD, RGB_HUI, RGB_SAI, + _______, _______, _______, KC_MUTE, _______, _______, RGB_SPD, RGB_SPI, _______, _______, RGB_HUD, RGB_SAD, + _______, _______, _______, RGB_TOG, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, LAYER_LOWER, LAYER_RAISE, LAYER_ADJUST); +} diff --git a/keyboards/crkbd/keymaps/bcat/readme.md b/keyboards/crkbd/keymaps/bcat/readme.md new file mode 100644 index 000000000..aa2d943d1 --- /dev/null +++ b/keyboards/crkbd/keymaps/bcat/readme.md @@ -0,0 +1,30 @@ +# bcat's Corne layout + +This split ergo layout mirrors +[my Lily58 layout](https://github.com/qmk/qmk_firmware/tree/master/keyboards/lily58/keymaps/bcat) +with the number row removed and RGB controls added. See that layout's docs for +more details on the principles that went into the layout. + +## Default layer + +![Default layer layout](https://i.imgur.com/s1LDlSQ.png) + +([KLE](http://www.keyboard-layout-editor.com/#/gists/08d9827d916662a9414f48805aa895a5)) + +## Lower layer + +![Lower layer layout](https://i.imgur.com/9ShGkJI.png) + +([KLE](http://www.keyboard-layout-editor.com/#/gists/c3fba5eaa2cd70fdfbdbc0f9e34d3bc0)) + +## Raise layer + +![Raise layer layout](https://i.imgur.com/HcmW99r.png) + +([KLE](http://www.keyboard-layout-editor.com/#/gists/08b44355d4ca85d294bad9e2821f91d7)) + +## Adjust layer + +![Adjust layer layout](https://i.imgur.com/53qLnxo.png) + +([KLE](http://www.keyboard-layout-editor.com/#/gists/77e7572e077b36a23eb2086017e16fee)) diff --git a/keyboards/crkbd/keymaps/bcat/rules.mk b/keyboards/crkbd/keymaps/bcat/rules.mk new file mode 100644 index 000000000..cd3418dab --- /dev/null +++ b/keyboards/crkbd/keymaps/bcat/rules.mk @@ -0,0 +1,3 @@ +BOOTLOADER = atmel-dfu # Elite-C + +RGB_MATRIX_ENABLE = WS2812 # per-key RGB and underglow diff --git a/users/bcat/config.h b/users/bcat/config.h index f6be07bf6..6b132a429 100644 --- a/users/bcat/config.h +++ b/users/bcat/config.h @@ -22,6 +22,26 @@ */ #define TAPPING_FORCE_HOLD +#if defined(RGB_MATRIX_ENABLE) + /* Turn off per-key RGB when the host goes to sleep. */ + #define RGB_DISABLE_WHEN_USB_SUSPENDED true + + /* Keep per-key RGB increments consistent across keyboards. */ + #undef RGB_MATRIX_HUE_STEP + #undef RGB_MATRIX_SAT_STEP + #undef RGB_MATRIX_VAL_STEP + #undef RGB_MATRIX_SPD_STEP + + #define RGB_MATRIX_HUE_STEP 8 + #define RGB_MATRIX_SAT_STEP 17 + #define RGB_MATRIX_VAL_STEP 17 + #define RGB_MATRIX_SPD_STEP 17 + + /* Turn on additional RGB animations. */ + #define RGB_MATRIX_FRAMEBUFFER_EFFECTS + #define RGB_MATRIX_KEYPRESSES +#endif + #if defined(RGBLIGHT_ENABLE) /* Turn off RGB underglow when the host goes to sleep. */ #define RGBLIGHT_SLEEP