From bf726d831a68b020b178249cc670eaa6b96d9166 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Thu, 16 Jun 2022 11:02:09 -0500 Subject: [PATCH 01/12] Working on new dactyl --- .../4x5/keymaps/ssedrick/config.h | 31 +++++ .../4x5/keymaps/ssedrick/keymap.c | 117 ++++++++++++++++++ .../handwired/dactyl_manuform/4x5_5/4x5_5.h | 14 +++ .../handwired/dactyl_manuform/4x5_5/config.h | 18 +++ .../handwired/dactyl_manuform/4x5_5/info.json | 64 ++++++++++ .../handwired/dactyl_manuform/4x5_5/rules.mk | 21 ++++ 6 files changed, 265 insertions(+) create mode 100644 keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h create mode 100644 keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/config.h create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/info.json create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/rules.mk diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h new file mode 100644 index 000000000000..18320c0952aa --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h @@ -0,0 +1,31 @@ +/* +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 + +/* Use I2C or Serial, not both */ +#define USE_SERIAL +//#define USE_I2C + +/* Select hand configuration */ +//#define MASTER_LEFT +//#define MASTER_RIGHT + +#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c new file mode 100644 index 000000000000..7f71f3db89e0 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c @@ -0,0 +1,117 @@ +#include QMK_KEYBOARD_H + +#define _BASE 0 +#define _RAISE 1 +#define _LOWER 2 + +#define SFT_ESC SFT_T(KC_ESC) +#define CTL_BSPC CTL_T(KC_BSPC) +#define ALT_SPC ALT_T(KC_SPC) +#define SFT_ENT SFT_T(KC_ENT) + +#define KC_ML KC_MS_LEFT +#define KC_MR KC_MS_RIGHT +#define KC_MU KC_MS_UP +#define KC_MD KC_MS_DOWN +#define KC_MB1 KC_MS_BTN1 +#define KC_MB2 KC_MS_BTN2 + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base (qwerty) + * ,----------------------------------, ,----------------------------------, + * | q | w | e | r | t | | y | u | i | o | p | + * |------+------+------+------+------| |-------------+------+------+------| + * | a | s | d | f | g | | h | j | k | l | ; | + * |------+------+------+------+------| |------|------+------+------+------| + * | z | x | c | v | b | | n | m | , | . | ' | + * |------+------+------+-------------, ,-------------+------+------+------, + * | [ | ] | | - | = | + * '------+------'-------------' '-------------'------+------' + * | ESC | BS | | SPACE|ENTER | + * | + | + | | + | + | + * | SHIFT| CTRL | | ALT |SHIFT | + * '------+------' '------+------' + * '------+------' '------+------' + * | TAB | HOME | | END | DEL | + * '------+------' '------+------' + * | Raise| ~ | | GUI | Lower| + * '------+------' '------+------' + */ + [_BASE] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_QUOT, + KC_LBRC, KC_RBRC, KC_MINS, KC_EQL, + SFT_ESC, CTL_BSPC, ALT_SPC, SFT_ENT, + KC_TAB, KC_HOME, KC_END, KC_DEL, + RAISE, KC_GRV, KC_LGUI, LOWER + ), + + /* Raise + * ,----------------------------------, ,----------------------------------, + * | | | mup | | | | VOL+ | | up | | PgUp | + * |------+------+------+------+------| |-------------+------+------+------| + * | | mleft| mdown|mright| | | MUTE | left | down |right | PgDn | + * |------+------+------+------+------| |------|------+------+------+------| + * | | | | | | | VOL- | / | \ | ? | | | + * |------+------+------+-------------, ,-------------+------+------+------, + * | | | | mbtn |mbtn2 | + * '------+------'-------------' '-------------'------+------' + * | | | | | | + * | | | | | | + * | | | | | | + * '------+------' '------+------' + * '------+------' '------+------' + * | | | | | | + * '------+------' '------+------' + * | | | | | | + * '------+------' '------+------' + */ + [_RAISE] = LAYOUT( + _______, _______, KC_MU, _______, _______, KC_VOLU, _______, KC_UP, _______, KC_PGUP, + _______, KC_ML, KC_MD, KC_MR, _______, KC_MUTE, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, + _______, _______, _______, _______, _______, KC_VOLD, KC_SLSH, KC_BSLS, KC_QUES, KC_PIPE, + _______, _______, KC_MB1, KC_MB2, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + + /* Lower + * ,----------------------------------, ,----------------------------------, + * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | + * |------+------+------+------+------| |-------------+------+------+------| + * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | + * |------+------+------+------+------| |------|------+------+------+------| + * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | + * |------+------+------+-------------, ,-------------+------+------+------, + * | F11 | F12 | | - | = | + * '------+------'-------------' '-------------'------+------' + * | | | | | | + * | | | | | | + * | | | | | | + * '------+------' '------+------' + * '------+------' '------+------' + * | | | | | | + * '------+------' '------+------' + * | | | | | | + * '------+------' '------+------' + */ + [_LOWER] = LAYOUT( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_F11, KC_F12, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ) +}; + +void persistent_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h new file mode 100644 index 000000000000..0015311ef946 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h @@ -0,0 +1,14 @@ +#pragma once + +#include "dactyl_manuform.h" + +#define XXX KC_NO +#define LAYOUT( \ + L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \ + L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \ + L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \ + L31, L32, R32, R33, \ + L33, R43, \ + L34, L44, R40, R31, \ + L42, L43, R41, R42 \ +) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/config.h new file mode 100644 index 000000000000..ca92a09c1332 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/config.h @@ -0,0 +1,18 @@ +#pragma once + +#include "config_common.h" + + +/* USB Device descriptor parameters */ +#define PRODUCT_ID 0x3435 +#define DEVICE_VER 0x0001 +#define MANUFACTURER tshort + +#define MATRIX_ROWS 10 +#define MATRIX_COLUMNS 5 + +// Wiring pins +#define MATRIX_ROW_PINS {} +#define MATRIX_COL_PINS {} + +#define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/info.json b/keyboards/handwired/dactyl_manuform/4x5_5/info.json new file mode 100644 index 000000000000..e00a02bc4dad --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/info.json @@ -0,0 +1,64 @@ +{ + "keyboard_name": "Dactyl Manuform 4x5 5 thumb keys", + "url": "", + "maintainer": "ssedrick", + "layouts": { + "LAYOUT_4x5_5": { + "layout": [ + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + + {"x": 10, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y":0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + + {"x": 0, "y": 1}, + {"x": 1, "y": 1}, + {"x": 2, "y": 1}, + {"x": 3, "y": 1}, + {"x": 4, "y": 1}, + + {"x": 10, "y": 1}, + {"x": 11, "y": 1}, + {"x": 12, "y": 1}, + {"x": 13, "y": 1}, + {"x": 14, "y": 1}, + + {"x": 0, "y": 2}, + {"x": 1, "y": 2}, + {"x": 2, "y": 2}, + {"x": 3, "y": 2}, + {"x": 4, "y": 2}, + + {"x": 10, "y": 2}, + {"x": 11, "y": 2}, + {"x": 12, "y": 2}, + {"x": 13, "y": 2}, + {"x": 14, "y": 2}, + + {"x": 2, "y": 3}, + {"x": 3, "y": 3}, + {"x": 4, "y": 3}, + {"x": 5, "y": 3}, + + {"x": 10, "y": 3}, + {"x": 11, "y": 3}, + {"x": 12, "y": 3}, + {"x": 13, "y": 3}, + + {"x": 2, "y": 4}, + {"x": 3, "y": 4}, + {"x": 4, "y": 4}, + + {"x": 10, "y": 4}, + {"x": 11, "y": 4}, + {"x": 12, "y": 4} + ] + } + } +} diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk b/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk new file mode 100644 index 000000000000..5074e5061218 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk @@ -0,0 +1,21 @@ + +# MCU for Elite-C/Pro Micro +MCU = atmega32u4 + +# BOOTLOADER for Elite-C +BOOTLOADER = dfu +# BOOTLOADER for Pro Micro +# BOOTLOADER = caterina + +# Build Options + +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # 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 From a96b0baebd8c6aa679b639205ff09c074ee26492 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 13 Jul 2022 12:53:33 -0500 Subject: [PATCH 02/12] Preliminary build and keymap in place for 4x5_5 dactyl manuform --- .../handwired/dactyl_manuform/4x5_5/4x5_5.h | 18 ++- .../handwired/dactyl_manuform/4x5_5/config.h | 8 +- .../handwired/dactyl_manuform/4x5_5/info.json | 2 +- .../4x5_5/keymaps/default/config.h | 31 ++++ .../4x5_5/keymaps/default/keymap.c | 145 ++++++++++++++++++ .../handwired/dactyl_manuform/4x5_5/rules.mk | 2 +- 6 files changed, 198 insertions(+), 8 deletions(-) create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h index 0015311ef946..9e45a611e2ab 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h @@ -8,7 +8,19 @@ L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \ L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \ L31, L32, R32, R33, \ - L33, R43, \ - L34, L44, R40, R31, \ + L33, R31, \ + L34, L44, R40, R30, \ L42, L43, R41, R42 \ -) +) { \ + { L00, L01, L02, L03, L04 }, \ + { L10, L11, L12, L13, L14 }, \ + { L20, L21, L22, L23, L24 }, \ + { XXX, L31, L32, L33, L34 }, \ + { XXX, XXX, L42, L43, L44 }, \ +\ + { R00, R01, R02, R03, R04 }, \ + { R10, R11, R12, R13, R14 }, \ + { R20, R21, R22, R23, R24 }, \ + { R30, R31, R32, R33, XXX }, \ + { R40, R41, R42, XXX, XXX }, \ +} diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/config.h index ca92a09c1332..1a66a83f63db 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/config.h @@ -6,13 +6,15 @@ /* USB Device descriptor parameters */ #define PRODUCT_ID 0x3435 #define DEVICE_VER 0x0001 -#define MANUFACTURER tshort +#define MANUFACTURER ssedrick #define MATRIX_ROWS 10 #define MATRIX_COLUMNS 5 // Wiring pins -#define MATRIX_ROW_PINS {} -#define MATRIX_COL_PINS {} +#define MATRIX_ROW_PINS { F7, B1, B3, B2, B4 } +#define MATRIX_COL_PINS { D4, C6, D7, E6, F6 } #define DIODE_DIRECTION COL2ROW + +#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/info.json b/keyboards/handwired/dactyl_manuform/4x5_5/info.json index e00a02bc4dad..7ee5701414e4 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/info.json +++ b/keyboards/handwired/dactyl_manuform/4x5_5/info.json @@ -3,7 +3,7 @@ "url": "", "maintainer": "ssedrick", "layouts": { - "LAYOUT_4x5_5": { + "LAYOUT": { "layout": [ {"x": 0, "y": 0}, {"x": 1, "y": 0}, diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h new file mode 100644 index 000000000000..18320c0952aa --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h @@ -0,0 +1,31 @@ +/* +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 + +/* Use I2C or Serial, not both */ +#define USE_SERIAL +//#define USE_I2C + +/* Select hand configuration */ +//#define MASTER_LEFT +//#define MASTER_RIGHT + +#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c new file mode 100644 index 000000000000..e3a3b4c07aeb --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c @@ -0,0 +1,145 @@ +#include QMK_KEYBOARD_H +#include "print.h" + +enum key_layers { + _BASE, + _COLEMAK, + _RAISE, + _LOWER +}; + +enum layer_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, +}; + +#define KC_ML KC_MS_LEFT +#define KC_MR KC_MS_RIGHT +#define KC_MU KC_MS_UP +#define KC_MD KC_MS_DOWN +#define KC_MB1 KC_MS_BTN1 +#define KC_MB2 KC_MS_BTN2 + +#define RAISE TG(_RAISE) +#define LOWER MO(_LOWER) +#define SH_ESC SFT_T(KC_ESC) +#define ____ KC_TRANSPARENT + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base (qwerty) + * ,----------------------------------, ,----------------------------------, + * | q | w | e | r | t | | y | u | i | o | p | + * |------+------+------+------+------| |------+------+------+------+------| + * | a | s | d | f | g | | h | j | k | l | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | z | x | c | v | b | | n | m | , | . | / | + * '------+------+------+-------------' '------+------+------+------+------' + * | [ | ] | | - | = | + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | ENTER| ALT | + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| SPACE| + * '-------------' '-------------' + */ + [_BASE] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, + SH_ESC, KC_BSPC, + KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, + RAISE, KC_LCTRL, LOWER, KC_ENT + ), + + [_COLEMAK] = LAYOUT( + KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, + KC_ESC, KC_BSPC, + KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, + RAISE, KC_LCTRL, LOWER, KC_ENT + ), + /* RAISE + * ,----------------------------------, ,----------------------------------, + * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | + * |------+------+------+------+------| |------+------+------+------+------| + * | ( | ) | { | } | = | | - | 4 | 5 | 6 | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | RESET| BOOT | | | | | | 1 | 2 | 3 | | + * |------+------+------+-------------| |------+------+------+------+------, + * | [ | ] | ESC | GUI | | ENTER| BSPC | 0 | . | + * '------+------+------+------| |-------------|------+------' + * |RAISE | CTRL | TAB | | ALT | LOWER| SPACE| + * '--------------------' '--------------------' + */ + [_RAISE] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + S(KC_9), S(KC_0), KC_LCBR, KC_RCBR, KC_EQL, KC_MINS, KC_4, KC_5, KC_6, KC_QUOT, + QK_RBT, QK_BOOT, KC_LBRC, KC_RBRC, ____, ____, KC_1, KC_2, KC_3, ____, + ____, ____, KC_0, KC_DOT, + ____, ____, + ____, ____, ____, ____, + ____, ____, ____, ____ + ), + + /* LOWER + * ,----------------------------------, ,----------------------------------, + * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | + * |------+------+------+------+------| |------+------+------+------+------| + * | ( | ) | { | } | = | | | - | + | | | | + * |------+------+------+------+------| |------+------+------+------+------| + * | | | | | | | | | 2 | 3 | | + * |------+------+------+-------------| |------+------+------+------+------, + * | [ | ] | ESC | GUI | | ENTER| BSPC | 0 | . | + * '------+------+------+------| |-------------|------+------' + * |RAISE | CTRL | TAB | | ALT | LOWER| SPACE| + * '--------------------' '--------------------' + */ + [_LOWER] = LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, ____, KC_MINS, KC_EQL, KC_PIPE, ____, + ____, ____, ____, ____, ____, ____, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, + ____, ____, QWERTY, COLEMAK, + ____, ____, + ____, ____, ____, ____, + ____, ____, ____, ____ + ) +}; + +void keyboard_post_init_user(void) { + // Customise these values to desired behaviour + debug_enable=false; + //debug_matrix=true; + //debug_keyboard=true; + //debug_mouse=true; +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + // If console is enabled, it will print the matrix position and status of each key pressed +#ifdef CONSOLE_ENABLE + uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); +#endif + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_BASE); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + } + return true; +} + +void persistent_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk b/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk index 5074e5061218..fec29f5419a4 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk +++ b/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk @@ -3,7 +3,7 @@ MCU = atmega32u4 # BOOTLOADER for Elite-C -BOOTLOADER = dfu +# BOOTLOADER = atmel-dfu # BOOTLOADER for Pro Micro # BOOTLOADER = caterina From c77cd325f49ee7a0da1b2be22f60e6197e5c8e52 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 13 Jul 2022 13:23:24 -0500 Subject: [PATCH 03/12] Removing first attempt to use 4x5 --- .../4x5/keymaps/ssedrick/config.h | 31 ----- .../4x5/keymaps/ssedrick/keymap.c | 117 ------------------ 2 files changed, 148 deletions(-) delete mode 100644 keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h delete mode 100644 keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h deleted file mode 100644 index 18320c0952aa..000000000000 --- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -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 - -/* Use I2C or Serial, not both */ -#define USE_SERIAL -//#define USE_I2C - -/* Select hand configuration */ -//#define MASTER_LEFT -//#define MASTER_RIGHT - -#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c deleted file mode 100644 index 7f71f3db89e0..000000000000 --- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ssedrick/keymap.c +++ /dev/null @@ -1,117 +0,0 @@ -#include QMK_KEYBOARD_H - -#define _BASE 0 -#define _RAISE 1 -#define _LOWER 2 - -#define SFT_ESC SFT_T(KC_ESC) -#define CTL_BSPC CTL_T(KC_BSPC) -#define ALT_SPC ALT_T(KC_SPC) -#define SFT_ENT SFT_T(KC_ENT) - -#define KC_ML KC_MS_LEFT -#define KC_MR KC_MS_RIGHT -#define KC_MU KC_MS_UP -#define KC_MD KC_MS_DOWN -#define KC_MB1 KC_MS_BTN1 -#define KC_MB2 KC_MS_BTN2 - -#define RAISE MO(_RAISE) -#define LOWER MO(_LOWER) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Base (qwerty) - * ,----------------------------------, ,----------------------------------, - * | q | w | e | r | t | | y | u | i | o | p | - * |------+------+------+------+------| |-------------+------+------+------| - * | a | s | d | f | g | | h | j | k | l | ; | - * |------+------+------+------+------| |------|------+------+------+------| - * | z | x | c | v | b | | n | m | , | . | ' | - * |------+------+------+-------------, ,-------------+------+------+------, - * | [ | ] | | - | = | - * '------+------'-------------' '-------------'------+------' - * | ESC | BS | | SPACE|ENTER | - * | + | + | | + | + | - * | SHIFT| CTRL | | ALT |SHIFT | - * '------+------' '------+------' - * '------+------' '------+------' - * | TAB | HOME | | END | DEL | - * '------+------' '------+------' - * | Raise| ~ | | GUI | Lower| - * '------+------' '------+------' - */ - [_BASE] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_QUOT, - KC_LBRC, KC_RBRC, KC_MINS, KC_EQL, - SFT_ESC, CTL_BSPC, ALT_SPC, SFT_ENT, - KC_TAB, KC_HOME, KC_END, KC_DEL, - RAISE, KC_GRV, KC_LGUI, LOWER - ), - - /* Raise - * ,----------------------------------, ,----------------------------------, - * | | | mup | | | | VOL+ | | up | | PgUp | - * |------+------+------+------+------| |-------------+------+------+------| - * | | mleft| mdown|mright| | | MUTE | left | down |right | PgDn | - * |------+------+------+------+------| |------|------+------+------+------| - * | | | | | | | VOL- | / | \ | ? | | | - * |------+------+------+-------------, ,-------------+------+------+------, - * | | | | mbtn |mbtn2 | - * '------+------'-------------' '-------------'------+------' - * | | | | | | - * | | | | | | - * | | | | | | - * '------+------' '------+------' - * '------+------' '------+------' - * | | | | | | - * '------+------' '------+------' - * | | | | | | - * '------+------' '------+------' - */ - [_RAISE] = LAYOUT( - _______, _______, KC_MU, _______, _______, KC_VOLU, _______, KC_UP, _______, KC_PGUP, - _______, KC_ML, KC_MD, KC_MR, _______, KC_MUTE, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, - _______, _______, _______, _______, _______, KC_VOLD, KC_SLSH, KC_BSLS, KC_QUES, KC_PIPE, - _______, _______, KC_MB1, KC_MB2, - _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, _______, _______ - ), - - /* Lower - * ,----------------------------------, ,----------------------------------, - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | - * |------+------+------+------+------| |-------------+------+------+------| - * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - * |------+------+------+------+------| |------|------+------+------+------| - * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - * |------+------+------+-------------, ,-------------+------+------+------, - * | F11 | F12 | | - | = | - * '------+------'-------------' '-------------'------+------' - * | | | | | | - * | | | | | | - * | | | | | | - * '------+------' '------+------' - * '------+------' '------+------' - * | | | | | | - * '------+------' '------+------' - * | | | | | | - * '------+------' '------+------' - */ - [_LOWER] = LAYOUT( - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, - KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, _______, _______ - ) -}; - -void persistent_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} From 75bb5a7c88c640ef066a65eb7b7520018d1e38d4 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 13 Jul 2022 13:32:50 -0500 Subject: [PATCH 04/12] Updating to match c style guide --- .../4x5_5/keymaps/default/keymap.c | 37 ++++++++----------- 1 file changed, 15 insertions(+), 22 deletions(-) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c index e3a3b4c07aeb..126bd6e2320c 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c @@ -109,34 +109,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ) }; -void keyboard_post_init_user(void) { - // Customise these values to desired behaviour - debug_enable=false; - //debug_matrix=true; - //debug_keyboard=true; - //debug_mouse=true; -} bool process_record_user(uint16_t keycode, keyrecord_t *record) { // If console is enabled, it will print the matrix position and status of each key pressed #ifdef CONSOLE_ENABLE uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); #endif - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - set_single_persistent_default_layer(_BASE); - } - return false; - break; - case COLEMAK: - if (record->event.pressed) { - set_single_persistent_default_layer(_COLEMAK); - } - return false; - break; - } - return true; + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_BASE); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + } + return true; } void persistent_default_layer_set(uint16_t default_layer) { From 7571a47460fb1ce64859a404dd36192b9f014276 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 13 Jul 2022 13:52:01 -0500 Subject: [PATCH 05/12] Fixing issues after merge, deletion of dactyl_manuform.h --- keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h | 2 +- keyboards/handwired/dactyl_manuform/4x5_5/config.h | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h index 9e45a611e2ab..8c4e992df82d 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h @@ -1,6 +1,6 @@ #pragma once -#include "dactyl_manuform.h" +#include "quantum.h" #define XXX KC_NO #define LAYOUT( \ diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/config.h index 1a66a83f63db..c1b870fcd5ee 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/config.h @@ -6,7 +6,10 @@ /* USB Device descriptor parameters */ #define PRODUCT_ID 0x3435 #define DEVICE_VER 0x0001 -#define MANUFACTURER ssedrick + +#ifndef MANUFACTURER +#define ssedrick +#endif #define MATRIX_ROWS 10 #define MATRIX_COLUMNS 5 From 062e724c1f3afb4e76e139a7279670c70c3bd738 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 13 Jul 2022 14:04:17 -0500 Subject: [PATCH 06/12] Spliting out custom keymap --- .../handwired/dactyl_manuform/4x5_5/info.json | 2 +- .../4x5_5/keymaps/default/config.h | 20 --- .../4x5_5/keymaps/default/keymap.c | 64 ++++--- .../4x5_5/keymaps/ssedrick/config.h | 11 ++ .../4x5_5/keymaps/ssedrick/keymap.c | 156 ++++++++++++++++++ 5 files changed, 209 insertions(+), 44 deletions(-) create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h create mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/info.json b/keyboards/handwired/dactyl_manuform/4x5_5/info.json index 7ee5701414e4..0df6a231922c 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/info.json +++ b/keyboards/handwired/dactyl_manuform/4x5_5/info.json @@ -1,6 +1,6 @@ { "keyboard_name": "Dactyl Manuform 4x5 5 thumb keys", - "url": "", + "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/handwired/dactyl_manuform/4x5_5", "maintainer": "ssedrick", "layouts": { "LAYOUT": { diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h index 18320c0952aa..80cb7c3ef3de 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h @@ -1,23 +1,3 @@ -/* -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 /* Use I2C or Serial, not both */ diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c index 126bd6e2320c..5041124d1561 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c @@ -13,14 +13,7 @@ enum layer_keycodes { COLEMAK, }; -#define KC_ML KC_MS_LEFT -#define KC_MR KC_MS_RIGHT -#define KC_MU KC_MS_UP -#define KC_MD KC_MS_DOWN -#define KC_MB1 KC_MS_BTN1 -#define KC_MB2 KC_MS_BTN2 - -#define RAISE TG(_RAISE) +#define RAISE MO(_RAISE) #define LOWER MO(_LOWER) #define SH_ESC SFT_T(KC_ESC) #define ____ KC_TRANSPARENT @@ -34,30 +27,47 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------| |------+------+------+------+------| * | z | x | c | v | b | | n | m | , | . | / | * '------+------+------+-------------' '------+------+------+------+------' - * | [ | ] | | - | = | + * | [ | ] | | ' | `~ | * '-------------+------, ,------|-------------' * | ESC | | BSPC | * |-------------, ,------+------| - * | GUI | TAB | | ENTER| ALT | + * | GUI | TAB | | SHIFT| SPACE| * |------+------| |------+------| - * | RAISE| CTRL | | LOWER| SPACE| + * | RAISE| CTRL | | LOWER| ENTER| * '-------------' '-------------' */ [_BASE] = LAYOUT( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, + KC_LBRC, KC_RBRC, KC_QUOT, KC_GRV, SH_ESC, KC_BSPC, KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, RAISE, KC_LCTRL, LOWER, KC_ENT ), + /* Colemak + * ,----------------------------------, ,----------------------------------, + * | q | w | f | p | g | | j | l | u | y | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | a | r | s | t | d | | h | n | e | i | o | + * |------+------+------+------+------| |------+------+------+------+------| + * | z | x | c | v | b | | k | m | , | . | / | + * '------+------+------+-------------' '------+------+------+------+------' + * | [ | ] | | ' | `~ | + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | SHIFT| SPACE| + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| ENTER| + * '-------------' '-------------' + */ [_COLEMAK] = LAYOUT( KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, - KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, + KC_LBRC, KC_RBRC, KC_QUOT, KC_GRV, KC_ESC, KC_BSPC, KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, RAISE, KC_LCTRL, LOWER, KC_ENT @@ -68,12 +78,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------| |------+------+------+------+------| * | ( | ) | { | } | = | | - | 4 | 5 | 6 | ; | * |------+------+------+------+------| |------+------+------+------+------| - * | RESET| BOOT | | | | | | 1 | 2 | 3 | | + * | RESET| BOOT | [ | ] | | | | 1 | 2 | 3 | | * |------+------+------+-------------| |------+------+------+------+------, - * | [ | ] | ESC | GUI | | ENTER| BSPC | 0 | . | - * '------+------+------+------| |-------------|------+------' - * |RAISE | CTRL | TAB | | ALT | LOWER| SPACE| - * '--------------------' '--------------------' + * | | | | 0 | . | + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | SHIFT| SPACE| + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| ENTER| + * '-------------' '-------------' */ [_RAISE] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, @@ -91,12 +105,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------| |------+------+------+------+------| * | ( | ) | { | } | = | | | - | + | | | | * |------+------+------+------+------| |------+------+------+------+------| - * | | | | | | | | | 2 | 3 | | + * | | | | | | | | LEFT | DOWN | UP | RIGHT| * |------+------+------+-------------| |------+------+------+------+------, - * | [ | ] | ESC | GUI | | ENTER| BSPC | 0 | . | - * '------+------+------+------| |-------------|------+------' - * |RAISE | CTRL | TAB | | ALT | LOWER| SPACE| - * '--------------------' '--------------------' + * | | | |QWERTY|COLEMA| + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | SHIFT| SPACE| + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| ENTER| + * '-------------' '-------------' */ [_LOWER] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h new file mode 100644 index 000000000000..80cb7c3ef3de --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h @@ -0,0 +1,11 @@ +#pragma once + +/* Use I2C or Serial, not both */ +#define USE_SERIAL +//#define USE_I2C + +/* Select hand configuration */ +//#define MASTER_LEFT +//#define MASTER_RIGHT + +#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c new file mode 100644 index 000000000000..68ee1f168709 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c @@ -0,0 +1,156 @@ +#include QMK_KEYBOARD_H +#include "print.h" + +enum key_layers { + _BASE, + _COLEMAK, + _RAISE, + _LOWER +}; + +enum layer_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, +}; + +#define RAISE TG(_RAISE) +#define LOWER MO(_LOWER) +#define SH_ESC SFT_T(KC_ESC) +#define ____ KC_TRANSPARENT + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base (qwerty) + * ,----------------------------------, ,----------------------------------, + * | q | w | e | r | t | | y | u | i | o | p | + * |------+------+------+------+------| |------+------+------+------+------| + * | a | s | d | f | g | | h | j | k | l | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | z | x | c | v | b | | n | m | , | . | / | + * '------+------+------+-------------' '------+------+------+------+------' + * | { | } | | ' | `~ | + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | SHIFT| SPACE| + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| ENTER| + * '-------------' '-------------' + */ + [_BASE] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, + SH_ESC, KC_BSPC, + KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, + RAISE, KC_LCTRL, LOWER, KC_ENT + ), + + /* Colemak + * ,----------------------------------, ,----------------------------------, + * | q | w | f | p | g | | j | l | u | y | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | a | r | s | t | d | | h | n | e | i | o | + * |------+------+------+------+------| |------+------+------+------+------| + * | z | x | c | v | b | | k | m | , | . | / | + * '------+------+------+-------------' '------+------+------+------+------' + * | [ | ] | | ' | `~ | + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | SHIFT| SPACE| + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| ENTER| + * '-------------' '-------------' + */ + [_COLEMAK] = LAYOUT( + KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, + KC_ESC, KC_BSPC, + KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, + RAISE, KC_LCTRL, LOWER, KC_ENT + ), + /* RAISE + * ,----------------------------------, ,----------------------------------, + * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | + * |------+------+------+------+------| |------+------+------+------+------| + * | ( | ) | [ | ] | = | | - | 4 | 5 | 6 | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | RESET| BOOT | | | | | | 1 | 2 | 3 | | + * |------+------+------+-------------| |------+------+------+------+------, + * | | | | 0 | . | + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | SHIFT| SPACE| + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| ENTER| + * '-------------' '-------------' + */ + [_RAISE] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, KC_MINS, KC_4, KC_5, KC_6, KC_QUOT, + QK_RBT, QK_BOOT, ____, ____, ____, ____, KC_1, KC_2, KC_3, ____, + ____, ____, KC_0, KC_DOT, + ____, ____, + ____, ____, ____, ____, + ____, ____, ____, ____ + ), + + /* LOWER + * ,----------------------------------, ,----------------------------------, + * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | + * |------+------+------+------+------| |------+------+------+------+------| + * | ( | ) | { | } | = | | | - | + | | | | + * |------+------+------+------+------| |------+------+------+------+------| + * | | | | | | | | LEFT | DOWN | UP | RIGHT| + * |------+------+------+-------------| |------+------+------+------+------, + * | | | |QWERTY|COLEMA| + * '-------------+------, ,------|-------------' + * | ESC | | BSPC | + * |-------------, ,------+------| + * | GUI | TAB | | SHIFT| SPACE| + * |------+------| |------+------| + * | RAISE| CTRL | | LOWER| ENTER| + * '-------------' '-------------' + */ + [_LOWER] = LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, ____, KC_MINS, KC_EQL, KC_PIPE, ____, + ____, ____, ____, ____, ____, ____, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, + ____, ____, QWERTY, COLEMAK, + ____, ____, + ____, ____, ____, ____, + ____, ____, ____, ____ + ) +}; + + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + // If console is enabled, it will print the matrix position and status of each key pressed +#ifdef CONSOLE_ENABLE + uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); +#endif + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_BASE); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + } + return true; +} + +void persistent_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} From e0ac8e1447f98c0f2e25e5b7f356854a3ab2420b Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 13 Jul 2022 14:10:39 -0500 Subject: [PATCH 07/12] Adding license headers --- keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h | 3 +++ keyboards/handwired/dactyl_manuform/4x5_5/config.h | 3 +++ .../handwired/dactyl_manuform/4x5_5/keymaps/default/config.h | 3 +++ .../handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c | 3 +++ .../handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h | 3 +++ .../handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c | 3 +++ 6 files changed, 18 insertions(+) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h index 8c4e992df82d..d2790473b50f 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/4x5_5.h @@ -1,3 +1,6 @@ +// Copyright 2022 Shem Sedrick (@ssedrick) +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #include "quantum.h" diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/config.h index c1b870fcd5ee..e85fccbcc793 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/config.h @@ -1,3 +1,6 @@ +// Copyright 2022 Shem Sedrick (@ssedrick) +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #include "config_common.h" diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h index 80cb7c3ef3de..2930b9cc1526 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h @@ -1,3 +1,6 @@ +// Copyright 2022 Shem Sedrick (@ssedrick) +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once /* Use I2C or Serial, not both */ diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c index 5041124d1561..8d76c0c9e3c7 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c @@ -1,3 +1,6 @@ +// Copyright 2022 Shem Sedrick (@ssedrick) +// SPDX-License-Identifier: GPL-2.0-or-later + #include QMK_KEYBOARD_H #include "print.h" diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h index 80cb7c3ef3de..2930b9cc1526 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h @@ -1,3 +1,6 @@ +// Copyright 2022 Shem Sedrick (@ssedrick) +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once /* Use I2C or Serial, not both */ diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c index 68ee1f168709..195113362f96 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c @@ -1,3 +1,6 @@ +// Copyright 2022 Shem Sedrick (@ssedrick) +// SPDX-License-Identifier: GPL-2.0-or-later + #include QMK_KEYBOARD_H #include "print.h" From 4c8b9f553c25129871d4b6a62d926bf0f00b5f14 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 13 Jul 2022 14:23:51 -0500 Subject: [PATCH 08/12] Fixing EE_HANDS detection on Pro-Micro The pro-micro was not working when I plugged into the elite-c on the right hand side of my keyboard. Adding the SPLIT_USB_DIRECT definition fixed the issue. --- keyboards/handwired/dactyl_manuform/4x5_5/config.h | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/config.h index e85fccbcc793..e88cb4d7705c 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/config.h @@ -24,3 +24,4 @@ #define DIODE_DIRECTION COL2ROW #define EE_HANDS +#define SPLIT_USB_DETECT From 677776f0f1eafb4e621e2554199dbe15c9bcd95a Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Thu, 14 Jul 2022 08:57:42 -0500 Subject: [PATCH 09/12] Apply suggestions from code review Adding Drashna's delete comments Co-authored-by: Drashna Jaelre --- .../dactyl_manuform/4x5_5/keymaps/default/keymap.c | 6 +----- .../dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c | 6 +----- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c index 8d76c0c9e3c7..fad361fffda9 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/keymap.c @@ -134,7 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool process_record_user(uint16_t keycode, keyrecord_t *record) { // If console is enabled, it will print the matrix position and status of each key pressed #ifdef CONSOLE_ENABLE - uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); + uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %d, time: %u, interrupt: %d, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); #endif switch (keycode) { case QWERTY: @@ -153,7 +153,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; } -void persistent_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c index 195113362f96..808797e45e01 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c @@ -134,7 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool process_record_user(uint16_t keycode, keyrecord_t *record) { // If console is enabled, it will print the matrix position and status of each key pressed #ifdef CONSOLE_ENABLE - uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); + uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %d, time: %u, interrupt: %d, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); #endif switch (keycode) { case QWERTY: @@ -153,7 +153,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; } -void persistent_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} From 8fca6e9388a27e323bd2416a7c7176f70e9bc620 Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Thu, 14 Jul 2022 09:07:05 -0500 Subject: [PATCH 10/12] Removed config.h for keymaps and tweaked keymap Per Drashna's pr review, I have removed the config.h files for the keymaps. Also tweaked my keymap to switch backspace and enter. Added tapping toggle for RAISE. --- .../handwired/dactyl_manuform/4x5_5/config.h | 2 +- .../4x5_5/keymaps/default/config.h | 14 -------- .../4x5_5/keymaps/ssedrick/config.h | 14 -------- .../4x5_5/keymaps/ssedrick/keymap.c | 33 +++++++++++-------- 4 files changed, 20 insertions(+), 43 deletions(-) delete mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h delete mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/config.h index e88cb4d7705c..23f3b358e1f2 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/config.h +++ b/keyboards/handwired/dactyl_manuform/4x5_5/config.h @@ -11,7 +11,7 @@ #define DEVICE_VER 0x0001 #ifndef MANUFACTURER -#define ssedrick +#define MANUFACTURER ssedrick #endif #define MATRIX_ROWS 10 diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h deleted file mode 100644 index 2930b9cc1526..000000000000 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/default/config.h +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2022 Shem Sedrick (@ssedrick) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Use I2C or Serial, not both */ -#define USE_SERIAL -//#define USE_I2C - -/* Select hand configuration */ -//#define MASTER_LEFT -//#define MASTER_RIGHT - -#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h deleted file mode 100644 index 2930b9cc1526..000000000000 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/config.h +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright 2022 Shem Sedrick (@ssedrick) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -/* Use I2C or Serial, not both */ -#define USE_SERIAL -//#define USE_I2C - -/* Select hand configuration */ -//#define MASTER_LEFT -//#define MASTER_RIGHT - -#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c index 808797e45e01..9850b444248b 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c @@ -16,10 +16,15 @@ enum layer_keycodes { COLEMAK, }; -#define RAISE TG(_RAISE) -#define LOWER MO(_LOWER) + +#define RAISE TT(_RAISE) +#define LOWER MO(_LOWER) #define SH_ESC SFT_T(KC_ESC) -#define ____ KC_TRANSPARENT +#define UNDSC RSFT(KC_MINS) +#define ____ KC_TRANSPARENT + +#undef TAPPING_TOGGLE +#define TAPPING_TOGGLE 2 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base (qwerty) @@ -32,11 +37,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * '------+------+------+-------------' '------+------+------+------+------' * | { | } | | ' | `~ | * '-------------+------, ,------|-------------' - * | ESC | | BSPC | + * | ESC | | ENTER| * |-------------, ,------+------| - * | GUI | TAB | | SHIFT| SPACE| + * | GUI | TAB | | BCKSP| SPACE| * |------+------| |------+------| - * | RAISE| CTRL | | LOWER| ENTER| + * | RAISE| CTRL | | SHIFT| LOWER| * '-------------' '-------------' */ [_BASE] = LAYOUT( @@ -44,9 +49,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, - SH_ESC, KC_BSPC, - KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, - RAISE, KC_LCTRL, LOWER, KC_ENT + SH_ESC, KC_ENT, + KC_LGUI, KC_TAB, KC_BSPC, KC_SPC, + RAISE, KC_LCTRL, KC_RSFT, LOWER ), /* Colemak @@ -79,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------, ,----------------------------------, * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | * |------+------+------+------+------| |------+------+------+------+------| - * | ( | ) | [ | ] | = | | - | 4 | 5 | 6 | ; | + * | ( | ) | [ | ] | = | | _ | 4 | 5 | 6 | ; | * |------+------+------+------+------| |------+------+------+------+------| * | RESET| BOOT | | | | | | 1 | 2 | 3 | | * |------+------+------+-------------| |------+------+------+------+------, @@ -106,9 +111,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------, ,----------------------------------, * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | * |------+------+------+------+------| |------+------+------+------+------| - * | ( | ) | { | } | = | | | - | + | | | | + * | ( | ) | { | } | = | | _ | - | + | | | | * |------+------+------+------+------| |------+------+------+------+------| - * | | | | | | | | LEFT | DOWN | UP | RIGHT| + * | NEXT | PLAY | VOLU | VOLD | | | | LEFT | DOWN | UP | RIGHT| * |------+------+------+-------------| |------+------+------+------+------, * | | | |QWERTY|COLEMA| * '-------------+------, ,------|-------------' @@ -121,8 +126,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_LOWER] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, - S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, ____, KC_MINS, KC_EQL, KC_PIPE, ____, - ____, ____, ____, ____, ____, ____, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, + S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, UNDSC, KC_MINS, KC_EQL, KC_PIPE, ____, + KC_MNXT, KC_MPLY, KC_VOLU, KC_VOLD, ____, ____, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, ____, ____, QWERTY, COLEMAK, ____, ____, ____, ____, ____, ____, From 9eccec895b2afc30e5329c780884c14da4fe9a3c Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Mon, 18 Jul 2022 13:55:06 -0500 Subject: [PATCH 11/12] Further tweaking ssedrick keymap for dactyl_manuform 4x5_5 As with most new keyboards, they take some getting used to. I've rearranged my thumb cluster to hopfully a more long term solution. --- .../4x5_5/keymaps/ssedrick/keymap.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c index 9850b444248b..052238efe982 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c @@ -21,6 +21,7 @@ enum layer_keycodes { #define LOWER MO(_LOWER) #define SH_ESC SFT_T(KC_ESC) #define UNDSC RSFT(KC_MINS) +#define MAC_LOCK C(G(KC_D)) #define ____ KC_TRANSPARENT #undef TAPPING_TOGGLE @@ -50,8 +51,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, SH_ESC, KC_ENT, - KC_LGUI, KC_TAB, KC_BSPC, KC_SPC, - RAISE, KC_LCTRL, KC_RSFT, LOWER + KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, + RAISE, KC_LCTRL, KC_BSPC, LOWER ), /* Colemak @@ -76,9 +77,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LCBR, KC_RCBR, KC_QUOT, KC_GRV, - KC_ESC, KC_BSPC, - KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, - RAISE, KC_LCTRL, LOWER, KC_ENT + SH_ESC, KC_ENT, + KC_LGUI, KC_TAB, KC_RSFT, KC_SPC, + RAISE, KC_LCTRL, KC_BSPC, LOWER ), /* RAISE * ,----------------------------------, ,----------------------------------, @@ -88,7 +89,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------| |------+------+------+------+------| * | RESET| BOOT | | | | | | 1 | 2 | 3 | | * |------+------+------+-------------| |------+------+------+------+------, - * | | | | 0 | . | + * |MAC_LC| | | 0 | . | * '-------------+------, ,------|-------------' * | ESC | | BSPC | * |-------------, ,------+------| @@ -101,7 +102,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, KC_MINS, KC_4, KC_5, KC_6, KC_QUOT, QK_RBT, QK_BOOT, ____, ____, ____, ____, KC_1, KC_2, KC_3, ____, - ____, ____, KC_0, KC_DOT, + MAC_LOCK, ____, KC_0, KC_DOT, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____ From c4dde35b6bb9ee6326f38d60ab00a49e44c2f27a Mon Sep 17 00:00:00 2001 From: Shem Sedrick Date: Wed, 20 Jul 2022 16:19:31 -0500 Subject: [PATCH 12/12] Adding missing KC_BSLS to ssedrick keymap for 4x5_5 --- .../handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c index 052238efe982..ce6b66351603 100644 --- a/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x5_5/keymaps/ssedrick/keymap.c @@ -112,7 +112,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------, ,----------------------------------, * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | * |------+------+------+------+------| |------+------+------+------+------| - * | ( | ) | { | } | = | | _ | - | + | | | | + * | ( | ) | { | } | = | | _ | - | + | \ | | | * |------+------+------+------+------| |------+------+------+------+------| * | NEXT | PLAY | VOLU | VOLD | | | | LEFT | DOWN | UP | RIGHT| * |------+------+------+-------------| |------+------+------+------+------, @@ -127,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_LOWER] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, - S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, UNDSC, KC_MINS, KC_EQL, KC_PIPE, ____, + S(KC_9), S(KC_0), KC_LBRC, KC_RBRC, KC_EQL, UNDSC, KC_MINS, KC_EQL, KC_BSLS, KC_PIPE, KC_MNXT, KC_MPLY, KC_VOLU, KC_VOLD, ____, ____, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, ____, ____, QWERTY, COLEMAK, ____, ____,