From 050472a4d07d07c1d9ae17d2fd26d44e9d95d950 Mon Sep 17 00:00:00 2001 From: Eric Gebhart Date: Sat, 12 Nov 2022 00:09:41 +0100 Subject: Eric Gebhart user space and keymaps (#17487) Co-authored-by: Drashna Jaelre --- keyboards/crkbd/keymaps/ericgebhart/keymap.c | 46 +------ keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c | 34 +---- keyboards/ergodox_ez/keymaps/ericgebhart/layouts.h | 139 --------------------- .../keebio/viterbi/keymaps/ericgebhart/keymap.c | 34 +---- keyboards/kinesis/keymaps/ericgebhart/keymap.c | 39 +----- keyboards/kinesis/keymaps/ericgebhart/rules.mk | 3 +- .../rebound/rev4/keymaps/ericgebhart/keymap.c | 87 +------------ .../rebound/rev4/keymaps/ericgebhart/layouts.h | 113 ----------------- .../rebound/rev4/keymaps/ericgebhart/rules.mk | 2 + .../splitkb/kyria/keymaps/ericgebhart/config.h | 25 ++++ .../splitkb/kyria/keymaps/ericgebhart/keymap.c | 18 +++ .../splitkb/kyria/keymaps/ericgebhart/rules.mk | 3 + keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c | 125 +----------------- keyboards/xiudi/xd75/keymaps/ericgebhart/readme.md | 1 - keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk | 2 +- 15 files changed, 62 insertions(+), 609 deletions(-) mode change 100755 => 100644 keyboards/crkbd/keymaps/ericgebhart/keymap.c delete mode 100644 keyboards/ergodox_ez/keymaps/ericgebhart/layouts.h delete mode 100644 keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/layouts.h create mode 100755 keyboards/splitkb/kyria/keymaps/ericgebhart/config.h create mode 100644 keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c create mode 100644 keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk delete mode 100644 keyboards/xiudi/xd75/keymaps/ericgebhart/readme.md (limited to 'keyboards') diff --git a/keyboards/crkbd/keymaps/ericgebhart/keymap.c b/keyboards/crkbd/keymaps/ericgebhart/keymap.c old mode 100755 new mode 100644 index e893ec596b..c534fe3c6d --- a/keyboards/crkbd/keymaps/ericgebhart/keymap.c +++ b/keyboards/crkbd/keymaps/ericgebhart/keymap.c @@ -1,5 +1,5 @@ /* - Copyright 2018 Eric Gebhart + Copyright 2018-2022 Eric Gebhart This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -14,47 +14,5 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include "ericgebhart.h" -#define Crkbd_base(...) Base_3x6_3(__VA_ARGS__) -#define Crkbd_bepo(...) Base_bepo_3x6_3(__VA_ARGS__) -#define Crkbd_bepo6(...) Base_bepo6_3x6_3(__VA_ARGS__) -#define Crkbd_transient(...) Transient6_3x6_3(__VA_ARGS__) - -/* - * The `Crkbd_base` macro is a template to allow the use of identical - * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so - * that there is no need to set them up for each layout, and modify all of - * them if I want to change them. This helps to keep consistency and ease - * of use. K## is a placeholder to pass through the individual keycodes - */ - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // Qwerty based Base layers - [_DVORAK] = Crkbd_base(___DVORAK___), - [_BEAKL] = Crkbd_base(___BEAKL15___), - [_COLEMAK] = Crkbd_base(___COLEMAK_DH___), - [_QWERTY] = Crkbd_base(___QWERTY___), - - // Bepo base layers - [_BEAKL_BP] = Crkbd_bepo(___BEAKL15_FR___), - [_DVORAK_BP] = Crkbd_bepo(___DVORAK_FR___), - [_BEPO] = Crkbd_bepo6(___BEPO6___), - - // Transient layers. - [_SYMB] = Crkbd_transient(___SYMB_BEAKLB_3x12___), - [_SYMB_BP] = Crkbd_transient(___SYMB_BEAKLB_BP_3x12___), - - [_KEYPAD] = Crkbd_transient(___KP_C_3x12___), - [_KEYPAD_BP] = Crkbd_transient(___KP_C_BP_3x12___), - - [_TOPROWS] = Crkbd_transient(___TOPROWS_3x12___), - [_TOPROWS_BP] = Crkbd_transient(___TOPROWS_BP_3x12___), - - [_NAV] = Crkbd_transient(___NAV_3x12___), - - [_LAYERS] = Crkbd_transient(___LAYERS_3x12___), - //[_RGB] = Crkbd_transient(___RGB_3x12___), - [_ADJUST] = Crkbd_transient(___ADJUST_3x12___), - ///HPT_TOG, KC_NUKE, ___, ___, TG_MODS, HPT_FBK -}; +// See: users/ericgebhart. diff --git a/keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c b/keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c index e76e3296bf..c534fe3c6d 100644 --- a/keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c +++ b/keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c @@ -1,5 +1,5 @@ /* - Copyright 2018 Eric Gebhart + Copyright 2018-2022 Eric Gebhart This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -14,35 +14,5 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include "keymap_bepo.h" -#include "ericgebhart.h" -#include "layouts.h" -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - // Qwerty Base layers - [_DVORAK] = Dox_base(___NUMS___, ___DVORAK___), - [_QWERTY] = Dox_base(___NUMS___, ___QWERTY___), - [_COLEMAK] = Dox_base(___NUMS___, ___COLEMAK_DH___), - [_BEAKL] = Dox_base(___NUMS___, ___BEAKL15___), - // Bepo Base layers - [_DVORAK_BP] = Dox_bepo_base(___NUMS_BP___, ___DVORAK_FR___), - [_BEAKL_BP] = Dox_bepo_base(___BKLNUMS_BP___, ___BEAKL15_FR___), - [_BEPO] = Dox_bepo_base6(___BEPO6___), - - - // transient layers. - // Switch to using a transient layer macro - [_SYMB] = Dox_transient(___12_FUNC___, ___SYMB_BEAKLA_3x12___), - [_SYMB_BP] = Dox_transient(___12_FUNC___, ___SYMB_BEAKLA_BP_3x12___), - - [_TOPROWS] = Dox_transient(___12___, ___TOPROWS_3x12___), - [_TOPROWS_BP] = Dox_transient(___12___, ___TOPROWS_BP_3x12___), - - [_KEYPAD] = Dox_transient(___KEYPAD_BKL_FUNC_4x12___), - [_KEYPAD_BP] = Dox_transient(___KEYPAD_BKL_FUNC_BP_4x12___), - - [_NAV] = Dox_transient(___12___, ___NAV_3x12___), - [_LAYERS] = Dox_transient(___12___, ___LAYERS_3x12___), - [_RGB] = Dox_transient(___12___, ___RGB_3x12___), -}; +// See: users/ericgebhart. diff --git a/keyboards/ergodox_ez/keymaps/ericgebhart/layouts.h b/keyboards/ergodox_ez/keymaps/ericgebhart/layouts.h deleted file mode 100644 index dd8f193dfc..0000000000 --- a/keyboards/ergodox_ez/keymaps/ericgebhart/layouts.h +++ /dev/null @@ -1,139 +0,0 @@ -/* - Copyright 2018 Eric Gebhart - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/********************************************************************/ -/* Ergodox EZ */ -/********************************************************************/ -// This one is is set up to pass in the number row. -// Beakl and bepo both change the number row. -// Left, middle, right, bottom, and thumbs all stay the same. -#define Base_dox( \ - K01, K02, K03, K04, K05, \ - K06, K07, K08, K09, K0A, \ - K11, K12, K13, K14, K15, \ - K16, K17, K18, K19, K1A, \ - K21, K22, K23, K24, K25, \ - K26, K27, K28, K29, K2A, \ - K31, K32, K33, K34, K35, \ - K36, K37, K38, K39, K3A \ - ) \ - LVARG_edox( \ - ROW0_LEFT(K01, K02, K03, K04, K05), \ - ___2_MIDDLE_1___, \ - ROW0_RIGHT(K06, K07, K08, K09, K0A), \ - \ - ROW1_LEFT(K11, K12, K13, K14, K15), \ - ___2_MIDDLE_2___, \ - ROW1_RIGHT(K16, K17, K18, K19, K1A), \ - \ - ROW2_LEFT(K21, K22, K23, K24, K25), \ - ROW2_RIGHT(K26, K27, K28, K29, K2A), \ - \ - ROW3_LEFT(K31, K32, K33, K34, K35), \ - ___2_MIDDLE_3___, \ - ROW3_RIGHT(K36, K37, K38, K39, K3A), \ - ___5_BOTTOM_LEFT___, ___5_BOTTOM_RIGHT___, \ - ___12_DOX_ALL_THUMBS___ \ - ) - -#define Base_dox_bepo( \ - K01, K02, K03, K04, K05, \ - K06, K07, K08, K09, K0A, \ - K11, K12, K13, K14, K15, \ - K16, K17, K18, K19, K1A, \ - K21, K22, K23, K24, K25, \ - K26, K27, K28, K29, K2A, \ - K31, K32, K33, K34, K35, \ - K36, K37, K38, K39, K3A \ - ) \ - LVARG_edox( \ - ROW0_LEFT(K01, K02, K03, K04, K05), \ - ___2_MIDDLE_1___, \ - ROW0_RIGHT(K06, K07, K08, K09, K0A), \ - \ - ROW1_LEFT(K11, K12, K13, K14, K15), \ - ___2_MIDDLE_2___, \ - ROW1_RIGHT(K16, K17, K18, K19, K1A), \ - \ - ROW2_LEFT(K21, K22, K23, K24, K25), \ - ROW2_RIGHT(K26, K27, K28, K29, K2A), \ - \ - ROW3_LEFT(K31, K32, K33, K34, K35), \ - ___2_MIDDLE_3___, \ - ROW3_RIGHT(K36, K37, K38, K39, K3A), \ - ___5_BOTTOM_LEFT___, ___5_BOTTOM_RIGHT___, \ - ___12_DOX_ALL_THUMBS_BP___ \ - ) - - -#define Base_dox_bepo6( \ - K01, K02, K03, K04, K05, K06, \ - K07, K08, K09, K0A, K0B, K0C, \ - K11, K12, K13, K14, K15, K16, \ - K17, K18, K19, K1A, K1B, K1C, \ - K21, K22, K23, K24, K25, K26, \ - K27, K28, K29, K2A, K2B, K2C \ - ) \ - LVARG_edox( \ - ___6SYMBOL_BEPO_L___, \ - ___2_MIDDLE_T_BP___, \ - ___6SYMBOL_BEPO_R___, \ - ROW1_LEFT_BP6(K01, K02, K03, K04, K05, K06), \ - ___2_MIDDLE_2_BP___, \ - ROW1_RIGHT_BP6(K07, K08, K09, K0A, K0B, K0C), \ - \ - ROW2_LEFT_BP6(K11, K12, K13, K14, K15, K16), \ - ROW2_RIGHT_BP6(K17, K18, K19, K1A, K1B, K1C), \ - \ - ROW3_LEFT_BP6(K21, K22, K23, K24, K25, K26), \ - ___2_MIDDLE_3_BP___, \ - ROW3_RIGHT_BP6(K27, K28, K29, K2A, K2B, K2C), \ - \ - ___5_BOTTOM_LEFT_BP___, ___5_BOTTOM_RIGHT_BP___, \ - ___12_DOX_ALL_THUMBS_BP___ \ - ) - -#define Transient_dox6( \ - K01, K02, K03, K04, K05, K06, \ - K07, K08, K09, K0A, K0B, K0C, \ - K11, K12, K13, K14, K15, K16, \ - K17, K18, K19, K1A, K1B, K1C, \ - K21, K22, K23, K24, K25, K26, \ - K27, K28, K29, K2A, K2B, K2C, \ - K31, K32, K33, K34, K35, K36, \ - K37, K38, K39, K3A, K3B, K3C \ - ) \ - LVARG_edox( \ - K01, K02, K03, K04, K05, K06, \ - ___2___, \ - K07, K08, K09, K0A, K0B, K0C, \ - K11, K12, K13, K14, K15, K16, \ - ___2___, \ - K17, K18, K19, K1A, K1B, K1C, \ - K21, K22, K23, K24, K25, K26, \ - K27, K28, K29, K2A, K2B, K2C, \ - K31, K32, K33, K34, K35, K36, \ - ___2___, \ - K37, K38, K39, K3A, K3B, K3C, \ - ___5___, ___5___, \ - ___12___ \ - ) - -#define Dox_base(...) Base_dox(__VA_ARGS__) -#define Dox_bepo_base(...) Base_dox_bepo(__VA_ARGS__) -#define Dox_bepo_base6(...) Base_dox_bepo6(__VA_ARGS__) -#define Dox_transient(...) Transient_dox6(__VA_ARGS__) diff --git a/keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c b/keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c index 60f7b74bc0..c534fe3c6d 100644 --- a/keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c +++ b/keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c @@ -1,5 +1,5 @@ /* - Copyright 2018 Eric Gebhart + Copyright 2018-2022 Eric Gebhart This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -15,34 +15,4 @@ along with this program. If not, see . */ -#include "keymap_bepo.h" -#include "ericgebhart.h" - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // 4x10 - [_DVORAK] = BASE_5x14(___NUMS___, ___DVORAK___), - [_QWERTY] = BASE_5x14(___NUMS___, ___QWERTY___), - [_COLEMAK] = BASE_5x14(___NUMS___, ___COLEMAK_DH___), - [_BEAKL] = BASE_5x14(___BKLNUMS___, ___BEAKL15___), - - //[_DVORAK_BP] = BASE_5x14_bepo(___DVORAK_FR___), - //[_BEAKL_BP] = BASE_5x14_bepo(___BEAKL15_FR___), - - // 4x12 - //[_BEPO] = BASE_5x14_bepo6(___BEPO6_FR___), - - // transient macro takes a 3x12 for args - [_SYMB] = TRANSIENT_5x14(___12___, ___SYMB_BEAKLA_3x12___), - //[_SYMB_BP] = TRANSIENT_5x14(___SYMB_BEAKLA_BP_3x12___), - - [_TOPROWS] = TRANSIENT_5x14(___12___, ___TOPROWS_3x12___), - //[_TOPROWS_BP] = TRANSIENT_5x14(___TOPROWS_BP_3x12___), - - [_KEYPAD] = TRANSIENT_5x14(___12___, ___KP_C_3x12___), - //[_KEYPAD_BP] = TRANSIENT_5x14(___KP_C_BP_3x12___), - - // Navigation and control - [_NAV] = TRANSIENT_5x14(___12___, ___NAV_3x12___), - [_LAYERS] = TRANSIENT_5x14(___12___, ___LAYERS_3x12___), - //[_RGB] = TRANSIENT_5x14(___12___, ___RGB_3x12___), -}; +// See: users/ericgebhart. diff --git a/keyboards/kinesis/keymaps/ericgebhart/keymap.c b/keyboards/kinesis/keymaps/ericgebhart/keymap.c index 731e257b05..c534fe3c6d 100644 --- a/keyboards/kinesis/keymaps/ericgebhart/keymap.c +++ b/keyboards/kinesis/keymaps/ericgebhart/keymap.c @@ -1,5 +1,5 @@ /* - Copyright 2018 Eric Gebhart + Copyright 2018-2022 Eric Gebhart This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -14,40 +14,5 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include "keymap_bepo.h" -#include "ericgebhart.h" -#define LAYOUT_PVARG(...) LAYOUT_pretty(__VA_ARGS__) - -#define Kinesis_base(...) Base_4x6_4_6(__VA_ARGS__) -#define Kinesis_bepo_base(...) Base_bepo_4x6_4_6(__VA_ARGS__) -#define Kinesis_bepo_base6(...) Base_bepo6_4x6_4_6(__VA_ARGS__) -#define Kinesis_transient(...) Transient6_4x6_4_6(__VA_ARGS__) - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - // Qwerty Base layers - [_DVORAK] = Kinesis_base(___NUMS___, ___DVORAK___), - [_QWERTY] = Kinesis_base(___NUMS___, ___QWERTY___), - [_COLEMAK] = Kinesis_base(___NUMS___, ___COLEMAK_DH___), - [_BEAKL] = Kinesis_base(___BKLNUMS___, ___BEAKL15___), - // Bepo Base layers - [_DVORAK_BP] = Kinesis_bepo_base(___NUMS_BP___, ___DVORAK_FR___), - [_BEAKL_BP] = Kinesis_bepo_base(___BKLNUMS_BP___, ___BEAKL15_FR___), - - [_BEPO] = Kinesis_bepo_base6(___BEPO6___), - - // transient layers. - // Switch to using a transient layer macro - [_SYMB] = Kinesis_transient(___12_FUNC___, ___SYMB_BEAKLA_3x12___), - [_SYMB_BP] = Kinesis_transient(___12_FUNC___, ___SYMB_BEAKLA_BP_3x12___), - - [_TOPROWS] = Kinesis_transient(___12___, ___TOPROWS_3x12___), - [_TOPROWS_BP] = Kinesis_transient(___12___, ___TOPROWS_BP_3x12___), - - [_NAV] = Kinesis_transient(___12___, ___NAV_3x12___), - [_LAYERS] = Kinesis_transient(___12___, ___LAYERS_3x12___), - [_ADJUST] = Kinesis_transient(___12___, ___ADJUST_3x12___), - //[_RGB] = Kinesis_transient(___12___, ___RGB_3x12___), -}; +// See: users/ericgebhart. diff --git a/keyboards/kinesis/keymaps/ericgebhart/rules.mk b/keyboards/kinesis/keymaps/ericgebhart/rules.mk index 61115e927a..dd62550343 100644 --- a/keyboards/kinesis/keymaps/ericgebhart/rules.mk +++ b/keyboards/kinesis/keymaps/ericgebhart/rules.mk @@ -11,6 +11,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output UNICODE_ENABLE = no # Unicode -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - diff --git a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c index 59f2a23733..c534fe3c6d 100644 --- a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c +++ b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c @@ -1,5 +1,5 @@ /* - Copyright 2018 Eric Gebhart + Copyright 2018-2022 Eric Gebhart This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -14,88 +14,5 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include "ericgebhart.h" -#include "layouts.h" - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // Qwerty based Base layers - [_DVORAK] = Rebound_base(___DVORAK___), - [_BEAKL] = Rebound_base(___BEAKL15___), - [_COLEMAK] = Rebound_base(___COLEMAK_DH___), - [_QWERTY] = Rebound_base(___QWERTY___), - - // Bepo base layers - [_BEAKL_BP] = Rebound_base_bepo(___BEAKL15_FR___), - [_DVORAK_BP] = Rebound_base_bepo(___DVORAK_FR___), - [_BEPO] = Rebound_base_bepo6(___BEPO6___), - - // Transient layers. - [_SYMB] = Rebound_transient(___SYMB_BEAKLA_3x12___), - [_SYMB_BP] = Rebound_transient(___SYMB_BEAKLA_BP_3x12___), - - [_KEYPAD] = Rebound_transient(___KP_C_3x12___), - [_KEYPAD_BP] = Rebound_transient(___KP_C_BP_3x12___), - - [_TOPROWS] = Rebound_transient(___TOPROWS_3x12___), - [_TOPROWS_BP] = Rebound_transient(___TOPROWS_BP_3x12___), - [_NAV] = Rebound_transient(___NAV_3x12___), - [_LAYERS] = Rebound_transient(___LAYERS_3x12___), -}; - - -bool encoder_update_user(uint8_t index, bool clockwise) { - switch(get_highest_layer(layer_state)){ - case _DVORAK: - if (clockwise) { - tap_code16(KC_VOLD); - } else { - tap_code16(KC_VOLU); - } - break; - - case _NAV: - if (clockwise) { - tap_code16(S(KC_TAB)); - } else { - tap_code16(KC_TAB); - } - break; - } - return true; -} - -#ifdef OLED_ENABLE -void oled_task_user(void) { - // Host Keyboard Layer Status - oled_write_P(PSTR(""), false); - - switch (get_highest_layer(layer_state)) { - case _BASE: - oled_write_P(PSTR("Rebound\n"), false); - oled_write_P(PSTR("Rev4\n"), false); - break; - case _NAV: - oled_write_P(PSTR("Nav\n"), false); - break; - case _SYMB_BEAKL: - case _SYMB: - oled_write_P(PSTR("Symbols\n"), false); - break; - case _KEYPAD: - oled_write_P(PSTR("Top Rows\n"), false); - break; - default: - // Or use the write_ln shortcut over adding '\n' to the end of your string - oled_write_ln_P(PSTR("Undefined"), false); - } - - // Host Keyboard LED Status - led_t led_state = host_keyboard_led_state(); - oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); - oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false); - oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); - -} - -#endif +// See: users/ericgebhart. diff --git a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/layouts.h b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/layouts.h deleted file mode 100644 index f6b7fc1513..0000000000 --- a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/layouts.h +++ /dev/null @@ -1,113 +0,0 @@ -/* - Copyright 2018 Eric Gebhart - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/********************************************************************/ -/* Rebound 4 rows, 1x12, 3x13 */ -/********************************************************************/ - -#define LVARG_rebound(...) LAYOUT_all(__VA_ARGS__) -#define LAYOUT_rebound_base( \ - K01, K02, K03, K04, K05, \ - K06, K07, K08, K09, K0A, \ - K11, K12, K13, K14, K15, \ - K16, K17, K18, K19, K1A, \ - K21, K22, K23, K24, K25, \ - K26, K27, K28, K29, K2A \ - ) \ - LVARG_rebound( \ - ROW1_LEFT(K01, K02, K03, K04, K05), \ - ROW1_RIGHT(K06, K07, K08, K09, K0A), \ - \ - ROW2_LEFT(K11, K12, K13, K14, K15), \ - KC_CCCV, \ - ROW2_RIGHT(K16, K17, K18, K19, K1A), \ - \ - ROW3_LEFT(K21, K22, K23, K24, K25), \ - MO(_ADJUST), \ - ROW3_RIGHT(K26, K27, K28, K29, K2A), \ - ___13_BOTTOM___ \ - ) - -#define LAYOUT_rebound_base_bepo( \ - K01, K02, K03, K04, K05, \ - K06, K07, K08, K09, K0A, \ - K11, K12, K13, K14, K15, \ - K16, K17, K18, K19, K1A, \ - K21, K22, K23, K24, K25, \ - K26, K27, K28, K29, K2A \ - ) \ - LVARG_rebound( \ - ROW1_LEFT_BP(K01, K02, K03, K04, K05), \ - ROW1_RIGHT_BP(K06, K07, K08, K09, K0A), \ - \ - ROW2_LEFT_BP(K11, K12, K13, K14, K15), \ - KC_CCCV, \ - ROW2_RIGHT_BP(K16, K17, K18, K19, K1A), \ - \ - ROW3_LEFT_BP(K21, K22, K23, K24, K25), \ - MO(_ADJUST), \ - ROW3_RIGHT_BP(K26, K27, K28, K29, K2A), \ - ___13_BOTTOM_BP___ \ - ) - -// Just for bepo because it's a 3x6 matrix on each side. -// So 3 pairs of 6 keys, left and right. -#define LAYOUT_rebound_base_bepo6( \ - K01, K02, K03, K04, K05, K06, \ - K07, K08, K09, K0A, K0B, K0C, \ - K11, K12, K13, K14, K15, K16, \ - K17, K18, K19, K1A, K1B, K1C, \ - K21, K22, K23, K24, K25, K26, \ - K27, K28, K29, K2A, K2B, K2C \ - ) \ - LVARG_rebound( \ - ROW1_LEFT_BP6(K01, K02, K03, K04, K05, K06), \ - ROW1_RIGHT_BP6(K07, K08, K09, K0A, K0B, K0C), \ - \ - ROW2_LEFT_BP6(K11, K12, K13, K14, K15, K16), \ - KC_CCCV, \ - ROW2_RIGHT_BP6(K17, K18, K19, K1A, K1B, K1C), \ - \ - ROW3_LEFT_BP6(K21, K22, K23, K24, K25, K26), \ - MO(_ADJUST), \ - ROW3_RIGHT_BP6(K27, K28, K29, K2A, K2B, K2C), \ - ___13_BOTTOM_BP___ \ - ) - -#define LAYOUT_rebound_transient( \ - K01, K02, K03, K04, K05, K06, \ - K07, K08, K09, K0A, K0B, K0C, \ - K11, K12, K13, K14, K15, K16, \ - K17, K18, K19, K1A, K1B, K1C, \ - K21, K22, K23, K24, K25, K26, \ - K27, K28, K29, K2A, K2B, K2C \ - ) \ - LVARG_rebound( \ - K01, K02, K03, K04, K05, K06, \ - K07, K08, K09, K0A, K0B, K0C, \ - K11, K12, K13, K14, K15, K16, \ - ___, \ - K17, K18, K19, K1A, K1B, K1C, \ - K21, K22, K23, K24, K25, K26, \ - ___, \ - K27, K28, K29, K2A, K2B, K2C, \ - ___, ___12___) - -#define Rebound_base(...) LAYOUT_rebound_base(__VA_ARGS__) -#define Rebound_base_bepo(...) LAYOUT_rebound_base_bepo(__VA_ARGS__) -#define Rebound_base_bepo6(...) LAYOUT_rebound_base_bepo6(__VA_ARGS__) -#define Rebound_transient(...) LAYOUT_rebound_transient(__VA_ARGS__) diff --git a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk index cf27df39b8..28b8714100 100644 --- a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk +++ b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk @@ -1,6 +1,7 @@ # Build Options # change yes to no to disable # +# BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control @@ -11,6 +12,7 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = no # Audio output UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend TAP_DANCE_ENABLE = yes # Enable the tap dance feature. diff --git a/keyboards/splitkb/kyria/keymaps/ericgebhart/config.h b/keyboards/splitkb/kyria/keymaps/ericgebhart/config.h new file mode 100755 index 0000000000..6f7578aa5d --- /dev/null +++ b/keyboards/splitkb/kyria/keymaps/ericgebhart/config.h @@ -0,0 +1,25 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +// otherwise the other promicro v3 isn't found +#define SPLIT_USB_DETECT +#define OLED_DISPLAY_128X64 diff --git a/keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c b/keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c new file mode 100644 index 0000000000..c534fe3c6d --- /dev/null +++ b/keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c @@ -0,0 +1,18 @@ +/* + Copyright 2018-2022 Eric Gebhart + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +// See: users/ericgebhart. diff --git a/keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk b/keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk new file mode 100644 index 0000000000..1946c18729 --- /dev/null +++ b/keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk @@ -0,0 +1,3 @@ +EXTRAKEY_ENABLE = no # Audio control and System control +ENCODER_ENABLE = no # Enables the use of one or more encoders +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow diff --git a/keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c b/keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c index a500e4b682..c534fe3c6d 100644 --- a/keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c +++ b/keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c @@ -1,5 +1,5 @@ /* - Copyright 2018 Eric Gebhart + Copyright 2018-2022 Eric Gebhart This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -15,125 +15,4 @@ along with this program. If not, see . */ -#include "keymap_bepo.h" -#include "ericgebhart.h" - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // 4x10 - [_DVORAK] = BASE_5x15(___NUMS___, ___DVORAK___), - [_QWERTY] = BASE_5x15(___NUMS___, ___QWERTY___), - [_COLEMAK] = BASE_5x15(___NUMS___, ___COLEMAK_DH___), - [_BEAKL] = BASE_5x15(___BKLNUMS___, ___BEAKL15___), - - //[_DVORAK_BP] = BASE_5x15_bepo(___DVORAK_FR___), - //[_BEAKL_BP] = BASE_5x15_bepo(___BEAKL15_FR___), - - // 4x12 - //[_BEPO] = BASE_5x15_bepo6(___BEPO6_FR___), - - // transient macro takes a 4x12 for args - [_SYMB] = TRANSIENT_5x15(___12___, ___SYMB_BEAKLA_3x12___), - //[_SYMB_BP] = TRANSIENT_5x15(___12___, ___SYMB_BEAKLA_BP_3x12___), - - [_TOPROWS] = TRANSIENT_5x15(___12___, ___TOPROWS_3x12___), - //[_TOPROWS_BP] = TRANSIENT_5x15(___12___, ___TOPROWS_BP_3x12___), - - [_KEYPAD] = TRANSIENT_5x15(___12___, ___KP_C_3x12___), - //[_KEYPAD_BP] = TRANSIENT_5x15(___12___, ___KP_C_BP_3x12___), - - // Navigation and control - [_NAV] = TRANSIENT_5x15(___12___, ___NAV_3x12___), - [_LAYERS] = TRANSIENT_5x15(___12___, ___LAYERS_3x12___), - //[_RGB] = TRANSIENT_5x15(___12___, ___RGB_3x12___), - [_ADJUST] = TRANSIENT_5x15(___12___, ___ADJUST_3x12___), -}; - - -/********************************************************************************/ -/* Using layers to do RGB underlighting */ -/********************************************************************************/ - -const rgblight_segment_t PROGMEM on_bepo[] = RGBLIGHT_LAYER_SEGMENTS( - {0, 2, HSV_AZURE} - ); - -const rgblight_segment_t PROGMEM bepo[] = RGBLIGHT_LAYER_SEGMENTS( - {3, 2, HSV_MAGENTA} - ); - -const rgblight_segment_t PROGMEM dvorak[] = RGBLIGHT_LAYER_SEGMENTS( - {3, 2, HSV_AZURE} - ); - -const rgblight_segment_t PROGMEM media[] = RGBLIGHT_LAYER_SEGMENTS( - {5, 1, HSV_GREEN} - ); - -const rgblight_segment_t PROGMEM symbol[] = RGBLIGHT_LAYER_SEGMENTS( - {4, 2, HSV_GOLD} - ); - -const rgblight_segment_t PROGMEM keypad[] = RGBLIGHT_LAYER_SEGMENTS( - {4, 2, HSV_BLUE} - ); - -const rgblight_segment_t PROGMEM layers[] = RGBLIGHT_LAYER_SEGMENTS( - {5, 1, HSV_RED} - ); - -const rgblight_segment_t PROGMEM rgb[] = RGBLIGHT_LAYER_SEGMENTS( - {5, 1, HSV_ORANGE} - ); - -const rgblight_segment_t* const PROGMEM rgb_layers[] = RGBLIGHT_LAYERS_LIST(on_bepo, bepo, dvorak, media, symbol, - keypad, layers, rgb); - -void keyboard_post_init_user(void) { - rgblight_sethsv_noeeprom(HSV_PURPLE); - rgblight_layers = rgb_layers; -} - -layer_state_t layer_state_set_user(layer_state_t state) { - // rgblight_set_layer_state(0, !on_qwerty()); - rgblight_set_layer_state(0, layer_state_cmp(state, _DVORAK)); - - rgblight_set_layer_state(1, layer_state_cmp(state, _BEPO)); - rgblight_set_layer_state(2, layer_state_cmp(state, _DVORAK)); - //|| layer_state_cmp(state, DVORAK_ON_BEPO))); - rgblight_set_layer_state(3, layer_state_cmp(state, _NAV)); - rgblight_set_layer_state(4, layer_state_cmp(state, _SYMB) ); - - //(layer_state_cmp(state, SYMB) || (layer_state_cmp(state, SYMB_ON_BEPO)))); - rgblight_set_layer_state(5, layer_state_cmp(state, _KEYPAD) ); - ///(layer_state_cmp(state, KEYPAD) || (layer_state_cmp(state, KEYPAD_ON_BEPO)))); - rgblight_set_layer_state(6, layer_state_cmp(state, _LAYERS)); - rgblight_set_layer_state(7, layer_state_cmp(state, _RGB)); - return state; -} - -/* void suspend_power_down_user(void) { */ -/* rgblight_disable(); */ -/* } */ - -/* void suspend_wakeup_init_user(void) { */ -/* rgblight_enable(); */ -/* } */ - -/* bool is_shift_pressed = false; */ - -/* bool led_update_user(led_t led_state) { */ -/* rgblight_set_layer_state(2, is_shift_pressed != led_state.caps_lock); */ -/* return true; */ -/* } */ - -/* bool process_record_user(uint16_t keycode, keyrecord_t* record) { */ -/* switch (keycode) { */ -/* case KC_LSFT: */ -/* case KC_RSFT: */ -/* is_shift_pressed = record->event.pressed; */ -/* rgblight_set_layer_state(2, is_shift_pressed != host_keyboard_led_state().caps_lock); */ -/* default: */ -/* return true; */ -/* } */ -/* } */ +// See: users/ericgebhart. diff --git a/keyboards/xiudi/xd75/keymaps/ericgebhart/readme.md b/keyboards/xiudi/xd75/keymaps/ericgebhart/readme.md deleted file mode 100644 index a1c0236ed9..0000000000 --- a/keyboards/xiudi/xd75/keymaps/ericgebhart/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for xd75, with led controls \ No newline at end of file diff --git a/keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk b/keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk index 11871f9c9d..f171387f29 100644 --- a/keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk +++ b/keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk @@ -1,3 +1,3 @@ RGBLIGHT_ENABLE = yes -RGBLIGHT_ANIMATION = yes +RGBLIGHT_ANIMATION = no # BACKLIGHT_ENABLE = yes -- cgit v1.2.3 From b7c6d6d79faddf06e0d3471ad7cbcbd2a98a2e5e Mon Sep 17 00:00:00 2001 From: jels <66403163+Jels02@users.noreply.github.com> Date: Sun, 13 Nov 2022 08:56:21 +1000 Subject: [Keyboard] Add pumpkin pad (#18897) Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre --- keyboards/laser_ninja/pumpkin_pad/config.h | 60 +++++++++++++++++ keyboards/laser_ninja/pumpkin_pad/info.json | 78 ++++++++++++++++++++++ .../pumpkin_pad/keymaps/default/keymap.c | 31 +++++++++ .../laser_ninja/pumpkin_pad/keymaps/via/keymap.c | 41 ++++++++++++ .../laser_ninja/pumpkin_pad/keymaps/via/rules.mk | 1 + keyboards/laser_ninja/pumpkin_pad/readme.md | 23 +++++++ keyboards/laser_ninja/pumpkin_pad/rules.mk | 1 + 7 files changed, 235 insertions(+) create mode 100644 keyboards/laser_ninja/pumpkin_pad/config.h create mode 100644 keyboards/laser_ninja/pumpkin_pad/info.json create mode 100644 keyboards/laser_ninja/pumpkin_pad/keymaps/default/keymap.c create mode 100644 keyboards/laser_ninja/pumpkin_pad/keymaps/via/keymap.c create mode 100644 keyboards/laser_ninja/pumpkin_pad/keymaps/via/rules.mk create mode 100644 keyboards/laser_ninja/pumpkin_pad/readme.md create mode 100644 keyboards/laser_ninja/pumpkin_pad/rules.mk (limited to 'keyboards') diff --git a/keyboards/laser_ninja/pumpkin_pad/config.h b/keyboards/laser_ninja/pumpkin_pad/config.h new file mode 100644 index 0000000000..926d8788c1 --- /dev/null +++ b/keyboards/laser_ninja/pumpkin_pad/config.h @@ -0,0 +1,60 @@ +/* Copyright 2022 Joah Nelson (Jels) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#include "config_common.h" + +#ifdef RGB_MATRIX_ENABLE +# define RGB_DI_PIN A10 +# define RGBLED_NUM 28 +# define DRIVER_LED_TOTAL RGBLED_NUM +# define BACKLIGHT_LIMIT_VAL 200 +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_RAINDROPS +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +# define ENABLE_RGB_MATRIX_HUE_BREATHING +# define ENABLE_RGB_MATRIX_HUE_PENDULUM +# define ENABLE_RGB_MATRIX_HUE_WAVE +# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +# define ENABLE_RGB_MATRIX_PIXEL_FLOW +# define ENABLE_RGB_MATRIX_PIXEL_RAIN +#endif + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/laser_ninja/pumpkin_pad/info.json b/keyboards/laser_ninja/pumpkin_pad/info.json new file mode 100644 index 0000000000..cf37ffd9a5 --- /dev/null +++ b/keyboards/laser_ninja/pumpkin_pad/info.json @@ -0,0 +1,78 @@ +{ + "keyboard_name": "Pumpkin Pad", + "manufacturer": "Laser Ninja", + "url": "", + "maintainer": "Jels", + "processor": "STM32F072", + "bootloader": "stm32-dfu", + "debounce": 5, + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": false, + "mousekey": false, + "nkro": false, + "rgb_matrix": true + }, + "matrix_pins": { + "direct": [ + ["A9", "B3", "B9", "NO_PIN"], + ["A8", "B12", "A2", "A1"], + ["B15", "B14", "B13", "NO_PIN"] + ] + }, + "usb": { + "vid": "0x6C6E", + "pid": "0x7070", + "device_version": "0.0.1" + }, + "layouts": { + "LAYOUT": { + "layout": [ + { "matrix": [0, 0], "x": 0.5, "y": 0 }, + { "matrix": [0, 1], "x": 1.5, "y": 0 }, + { "matrix": [0, 2], "x": 2.5, "y": 0 }, + { "matrix": [1, 0], "x": 0, "y": 1 }, + { "matrix": [1, 1], "x": 1, "y": 1 }, + { "matrix": [1, 2], "x": 2, "y": 1 }, + { "matrix": [1, 3], "x": 3, "y": 1 }, + { "matrix": [2, 0], "x": 0.5, "y": 2 }, + { "matrix": [2, 1], "x": 1.5, "y": 2 }, + { "matrix": [2, 2], "x": 2.5, "y": 2 } + ] + } + }, + "rgb_matrix": { + "driver": "WS2812", + "layout": [ + { "flags": 2, "x": 36, "y": 3 }, + { "flags": 2, "x": 86, "y": 2 }, + { "flags": 2, "x": 138, "y": 2 }, + { "flags": 2, "x": 188, "y": 2 }, + { "flags": 2, "x": 215, "y": 16 }, + { "flags": 2, "x": 215, "y": 16 }, + { "flags": 4, "matrix": [0, 2], "x": 167, "y": 17 }, + { "flags": 4, "matrix": [0, 1], "x": 112, "y": 17 }, + { "flags": 4, "matrix": [0, 0], "x": 57, "y": 17 }, + { "flags": 2, "x": 9, "y": 15 }, + { "flags": 2, "x": 9, "y": 15 }, + { "flags": 2, "x": 6, "y": 34 }, + { "flags": 2, "x": 9, "y": 48 }, + { "flags": 2, "x": 9, "y": 48 }, + { "flags": 4, "matrix": [1, 0], "x": 29, "y": 38 }, + { "flags": 4, "matrix": [1, 1], "x": 84, "y": 38 }, + { "flags": 4, "matrix": [1, 2], "x": 140, "y": 38 }, + { "flags": 2, "x": 218, "y": 34 }, + { "flags": 2, "x": 215, "y": 48 }, + { "flags": 2, "x": 215, "y": 48 }, + { "flags": 2, "x": 188, "y": 61 }, + { "flags": 4, "matrix": [2, 2], "x": 167, "y": 59 }, + { "flags": 2, "x": 138, "y": 61 }, + { "flags": 4, "matrix": [2, 1], "x": 112, "y": 59 }, + { "flags": 2, "x": 86, "y": 61 }, + { "flags": 4, "matrix": [2, 0], "x": 57, "y": 59 }, + { "flags": 2, "x": 36, "y": 61 } + ] + } +} diff --git a/keyboards/laser_ninja/pumpkin_pad/keymaps/default/keymap.c b/keyboards/laser_ninja/pumpkin_pad/keymaps/default/keymap.c new file mode 100644 index 0000000000..8b60519b90 --- /dev/null +++ b/keyboards/laser_ninja/pumpkin_pad/keymaps/default/keymap.c @@ -0,0 +1,31 @@ + /* Copyright 2022 Joah Nelson (Jels) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT( + KC_F1, KC_F2, KC_F3, + KC_F4, KC_F5, KC_F6, KC_F7, + KC_F8, MO(1), KC_F10 +), +[1] = LAYOUT( + RGB_TOG, RGB_MOD, RGB_RMOD, + RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, + RGB_VAI, RGB_VAD, _______ +) +}; diff --git a/keyboards/laser_ninja/pumpkin_pad/keymaps/via/keymap.c b/keyboards/laser_ninja/pumpkin_pad/keymaps/via/keymap.c new file mode 100644 index 0000000000..a63a5a0047 --- /dev/null +++ b/keyboards/laser_ninja/pumpkin_pad/keymaps/via/keymap.c @@ -0,0 +1,41 @@ + /* Copyright 2022 Joah Nelson (Jels) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT( + KC_F1, KC_F2, KC_F3, + KC_F4, KC_F5, KC_F6, KC_F7, + KC_F8, MO(1), KC_F10 +), +[1] = LAYOUT( + RGB_TOG, RGB_MOD, RGB_RMOD, + RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, + RGB_VAI, RGB_VAD, _______ +), +[2] = LAYOUT( + _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______ +), +[3] = LAYOUT( + _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______ +) +}; diff --git a/keyboards/laser_ninja/pumpkin_pad/keymaps/via/rules.mk b/keyboards/laser_ninja/pumpkin_pad/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/laser_ninja/pumpkin_pad/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/laser_ninja/pumpkin_pad/readme.md b/keyboards/laser_ninja/pumpkin_pad/readme.md new file mode 100644 index 0000000000..452f4f6723 --- /dev/null +++ b/keyboards/laser_ninja/pumpkin_pad/readme.md @@ -0,0 +1,23 @@ +# Pumpkin Pad + +![pumpkin-pad](https://i.imgur.com/jFkl9rwh.jpg) + +A 60% PCB + +- Keyboard Maintainer: [Jels](https://github.com/Jels02) +- Hardware Supported: Pumpkin Pad PCB +- Hardware Availabililty: [Laser_Ninja](https://kennui.com/w/Laser_Ninja) + +Make example for this keyboard (after setting up your build environment): + + make laser_ninja/pumpkin_pad:default + +Flashing example for this keyboard: + + make laser_ninja/pumpkin_pad: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). + +- **Bootmagic reset**: Hold down the top left key and plug in the keyboard +- **Physical reset button**: Briefly press the button on the back of the PCB +- **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/laser_ninja/pumpkin_pad/rules.mk b/keyboards/laser_ninja/pumpkin_pad/rules.mk new file mode 100644 index 0000000000..08a1c1568c --- /dev/null +++ b/keyboards/laser_ninja/pumpkin_pad/rules.mk @@ -0,0 +1 @@ +# This file is intentionally left blank. -- cgit v1.2.3 From cd682ad8b768db9f5c470d9de90ee158e72f6720 Mon Sep 17 00:00:00 2001 From: Ethan Johnston Date: Sun, 13 Nov 2022 10:58:56 +1000 Subject: [Keyboard] Add Handwired alcor dactyl (#18586) Co-authored-by: Ryan --- keyboards/handwired/alcor_dactyl/config.h | 33 ++++++ keyboards/handwired/alcor_dactyl/info.json | 130 +++++++++++++++++++++ .../alcor_dactyl/keymaps/colemak_dh/keymap.c | 100 ++++++++++++++++ .../alcor_dactyl/keymaps/default/keymap.c | 43 +++++++ keyboards/handwired/alcor_dactyl/readme.md | 28 +++++ keyboards/handwired/alcor_dactyl/rules.mk | 2 + 6 files changed, 336 insertions(+) create mode 100644 keyboards/handwired/alcor_dactyl/config.h create mode 100644 keyboards/handwired/alcor_dactyl/info.json create mode 100644 keyboards/handwired/alcor_dactyl/keymaps/colemak_dh/keymap.c create mode 100644 keyboards/handwired/alcor_dactyl/keymaps/default/keymap.c create mode 100644 keyboards/handwired/alcor_dactyl/readme.md create mode 100644 keyboards/handwired/alcor_dactyl/rules.mk (limited to 'keyboards') diff --git a/keyboards/handwired/alcor_dactyl/config.h b/keyboards/handwired/alcor_dactyl/config.h new file mode 100644 index 0000000000..f8ffe4d6a3 --- /dev/null +++ b/keyboards/handwired/alcor_dactyl/config.h @@ -0,0 +1,33 @@ +// Copyright 2022 Ethan (@rocketstrong) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* + * 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 + +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_TX_PIN GP10 +#define SERIAL_USART_RX_PIN GP9 +#define RGB_DI_PIN GP16 +#define DRIVER_LED_TOTAL 2 +#define RGB_MATRIX_SPLIT { 1, 1 } +#define RGBLED_NUM 1 +#define EE_HANDS diff --git a/keyboards/handwired/alcor_dactyl/info.json b/keyboards/handwired/alcor_dactyl/info.json new file mode 100644 index 0000000000..7bdde8550c --- /dev/null +++ b/keyboards/handwired/alcor_dactyl/info.json @@ -0,0 +1,130 @@ +{ + "manufacturer": "Ethan", + "keyboard_name": "alcor_dactyl", + "maintainer": "rocketstrong", + "bootloader": "rp2040", + "processor": "RP2040", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x0000", + "vid": "0xFEED" + }, + "features": { + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "split": { + "enabled": true + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": ["GP29", "GP28", "GP27", "GP26", "GP15", "GP14", "GP13"], + "rows": ["GP5", "GP4", "GP3", "GP2", "GP1", "GP0"] + }, + "rgb_matrix": { + "driver": "WS2812", + "layout": [ + {"x":0, "y":0.375}, + {"x":16.5, "y":0.38} + ] + }, + "layouts": { + "LAYOUT":{ + "layout":[ + {"matrix":[0,0], "x":0, "y":0.375, "w":1.5}, + {"matrix":[0,1], "x":1.5, "y":0.38}, + {"matrix":[0,2], "x":2.5, "y":0.125}, + {"matrix":[0,3], "x":3.5, "y":0.25}, + {"matrix":[0,4], "x":4.5, "y":0.25}, + {"matrix":[0,5], "x":5.5, "y":0.25}, + {"matrix":[0,6], "x":6.5, "y":0.25}, + + {"matrix":[6,6], "x":10.5, "y":0.25}, + {"matrix":[6,5], "x":11.5, "y":0.25}, + {"matrix":[6,4], "x":12.5, "y":0.25}, + {"matrix":[6,3], "x":13.5, "y":0.25}, + {"matrix":[6,2], "x":14.5, "y":0.13}, + {"matrix":[6,1], "x":15.5, "y":0.38}, + {"matrix":[6,0], "x":16.5, "y":0.38, "w":1.5}, + + {"matrix":[1,0], "x":0, "y":1.375, "w":1.5}, + {"matrix":[1,1], "x":1.5, "y":1.375}, + {"matrix":[1,2], "x":2.5, "y":1.125}, + {"matrix":[1,3], "x":3.5, "y":1.25}, + {"matrix":[1,4], "x":4.5, "y":1.25}, + {"matrix":[1,5], "x":5.5, "y":1.25}, + {"matrix":[1,6], "x":6.5, "y":1.25}, + + {"matrix":[7,6], "x":10.5, "y":1.25}, + {"matrix":[7,5], "x":11.5, "y":1.25}, + {"matrix":[7,4], "x":12.5, "y":1.25}, + {"matrix":[7,3], "x":13.5, "y":1.25}, + {"matrix":[7,2], "x":14.5, "y":1.13}, + {"matrix":[7,1], "x":15.5, "y":1.38}, + {"matrix":[7,0], "x":16.5, "y":1.38, "w":1.5}, + + {"matrix":[2,0], "x":0, "y":2.375, "w":1.5}, + {"matrix":[2,1], "x":1.5, "y":2.375}, + {"matrix":[2,2], "x":2.5, "y":2.125}, + {"matrix":[2,3], "x":3.5, "y":2.25}, + {"matrix":[2,4], "x":4.5, "y":2.25}, + {"matrix":[2,5], "x":5.5, "y":2.25}, + {"matrix":[2,6], "x":6.5, "y":2.25}, + + {"matrix":[8,6], "x":10.5, "y":2.25}, + {"matrix":[8,5], "x":11.5, "y":2.25}, + {"matrix":[8,4], "x":12.5, "y":2.25}, + {"matrix":[8,3], "x":13.5, "y":2.25}, + {"matrix":[8,2], "x":14.5, "y":2.13}, + {"matrix":[8,1], "x":15.5, "y":2.38}, + {"matrix":[8,0], "x":16.5, "y":2.38, "w":1.5}, + + {"matrix":[3,0], "x":0, "y":3.375, "w":1.5}, + {"matrix":[3,1], "x":1.5, "y":3.375}, + {"matrix":[3,2], "x":2.5, "y":3.125}, + {"matrix":[3,3], "x":3.5, "y":3.25}, + {"matrix":[3,4], "x":4.5, "y":3.25}, + {"matrix":[3,5], "x":5.5, "y":3.25}, + + {"matrix":[9,5], "x":11.5, "y":3.25}, + {"matrix":[9,4], "x":12.5, "y":3.25}, + {"matrix":[9,3], "x":13.5, "y":3.25}, + {"matrix":[9,2], "x":14.5, "y":3.13}, + {"matrix":[9,1], "x":15.5, "y":3.38}, + {"matrix":[9,0], "x":16.5, "y":3.38, "w":1.5}, + + {"matrix":[4,0], "x":0.5, "y":4.375}, + {"matrix":[4,1], "x":1.5, "y":4.375}, + {"matrix":[4,2], "x":2.5, "y":4.125}, + {"matrix":[4,3], "x":3.5, "y":4.25}, + + {"matrix":[10,3], "x":13.5, "y":4.25}, + {"matrix":[10,2], "x":14.5, "y":4.13}, + {"matrix":[10,1], "x":15.5, "y":4.38}, + {"matrix":[10,0], "x":16.5, "y":4.38}, + + {"matrix":[4,4], "x":5, "y":4.5, "h":2}, + {"matrix":[4,5], "x":6.25, "y":4.5, "h":1.5}, + {"matrix":[10,5], "x":10.75, "y":4.5, "h":1.5}, + {"matrix":[10,4], "x":12, "y":4.5, "h":2}, + + {"matrix":[5,4], "x":6.25, "y":6.25}, + {"matrix":[5,5], "x":7.5, "y":6.25}, + + {"matrix":[11,5], "x":9.5, "y":6.25}, + {"matrix":[11,4], "x":10.75, "y":6.25}, + + {"matrix":[5,2], "x":6.25, "y":7.25}, + {"matrix":[5,3], "x":7.25, "y":7.25}, + + {"matrix":[11,3], "x":9.75, "y":7.25}, + {"matrix":[11,2], "x":10.75, "y":7.25} + ] + } + } +} diff --git a/keyboards/handwired/alcor_dactyl/keymaps/colemak_dh/keymap.c b/keyboards/handwired/alcor_dactyl/keymaps/colemak_dh/keymap.c new file mode 100644 index 0000000000..8d41611402 --- /dev/null +++ b/keyboards/handwired/alcor_dactyl/keymaps/colemak_dh/keymap.c @@ -0,0 +1,100 @@ +// Copyright 2022 Ethan (@rocketstrong) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +/* + * ┌──┐┌──┐┌──┐┌──┐┌──┐ ┌──┐┌──┐┌──┐┌──┐┌──┐ + *┌────┐┌──┐│ ││ ││ ││ ││ │ │ ││ ││ ││ ││ │┌──┐┌────┐ + *│ ││ │└──┘└──┘└──┘└──┘└──┘ └──┘└──┘└──┘└──┘└──┘│ ││ │ + *└────┘└──┘┌──┐┌──┐┌──┐┌──┐┌──┐ ┌──┐┌──┐┌──┐┌──┐┌──┐└──┘└────┘ + *┌────┐┌──┐│ ││ ││ ││ ││ │ │ ││ ││ ││ ││ │┌──┐┌────┐ + *│ ││ │└──┘└──┘└──┘└──┘└──┘ └──┘└──┘└──┘└──┘└──┘│ ││ │ + *└────┘└──┘┌──┐┌──┐┌──┐┌──┐┌──┐ ┌──┐┌──┐┌──┐┌──┐┌──┐└──┘└────┘ + *┌────┐┌──┐│ ││ ││ ││ ││ │ │ ││ ││ ││ ││ │┌──┐┌────┐ + *│ ││ │└──┘└──┘└──┘└──┘└──┘ └──┘└──┘└──┘└──┘└──┘│ ││ │ + *└────┘└──┘┌──┐┌──┐┌──┐┌──┐ ┌──┐┌──┐┌──┐┌──┐└──┘└────┘ + *┌────┐┌──┐│ ││ ││ ││ │ │ ││ ││ ││ │┌──┐┌────┐ + *│ ││ │└──┘└──┘└──┘└──┘ └──┘└──┘└──┘└──┘│ ││ │ + *└────┘└──┘┌──┐┌──┐ ┌──┐┌──┐└──┘└────┘ + * ┌──┐┌──┐│ ││ │ ┌──┐ ┌──┐ ┌──┐ ┌──┐ │ ││ │┌──┐┌──┐ + * │ ││ │└──┘└──┘ │ │ │ │ │ │ │ │ └──┘└──┘│ ││ │ + * └──┘└──┘ │ │ │ │ │ │ │ │ └──┘└──┘ + * │ │ └──┘ └──┘ │ │ + * └──┘ ┌──┐ ┌──┐ ┌──┐ ┌──┐ └──┘ + * │ │ │ │ │ │ │ │ + * └──┘ └──┘ └──┘ └──┘ + * ┌──┐┌──┐ ┌──┐┌──┐ + * │ ││ │ │ ││ │ + * └──┘└──┘ └──┘└──┘ + */ + +enum Colemaklayers { + _ARSTG, + _NUMPAD, + _SYMBOLS +}; + +enum custom_keycodes { + AD_DDS = SAFE_RANGE, + AD_SCOPE +}; + +#define TT_NUM TT(_NUMPAD) +#define TT_SYM TT(_SYMBOLS) + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case AD_DDS: + if (!record->event.pressed) { + // when keycode AD_DDS is pressed + SEND_STRING("../"); + } else { + // when keycode AD_DDS is released + } +