From 32b56d7e274953a59310952cd03cc4df0582a264 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 6 Feb 2022 16:33:08 +0100 Subject: [PATCH 01/31] Custom layout: first attempt --- keyboards/ferris/keymaps/tompi/config.h | 47 ++++ keyboards/ferris/keymaps/tompi/keymap.json | 299 +++++++++++++++++++++ keyboards/ferris/keymaps/tompi/readme.md | 4 + 3 files changed, 350 insertions(+) create mode 100644 keyboards/ferris/keymaps/tompi/config.h create mode 100644 keyboards/ferris/keymaps/tompi/keymap.json create mode 100644 keyboards/ferris/keymaps/tompi/readme.md diff --git a/keyboards/ferris/keymaps/tompi/config.h b/keyboards/ferris/keymaps/tompi/config.h new file mode 100644 index 0000000000..5d13cc596b --- /dev/null +++ b/keyboards/ferris/keymaps/tompi/config.h @@ -0,0 +1,47 @@ +/* +Copyright 2020 Pierre Chevalier + +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 +// Set the mouse settings to a comfortable speed/accuracy trade-off, +// assuming a screen refresh rate of 60 Htz or higher +// The default is 50. This makes the mouse ~3 times faster and more accurate +#define MOUSEKEY_INTERVAL 16 +// The default is 20. Since we made the mouse about 3 times faster with the previous setting, +// give it more time to accelerate to max speed to retain precise control over short distances. +#define MOUSEKEY_TIME_TO_MAX 40 +// The default is 300. Let's try and make this as low as possible while keeping the cursor responsive +#define MOUSEKEY_DELAY 100 +// It makes sense to use the same delay for the mouseweel +#define MOUSEKEY_WHEEL_DELAY 100 +// The default is 100 +#define MOUSEKEY_WHEEL_INTERVAL 50 +// The default is 40 +#define MOUSEKEY_WHEEL_TIME_TO_MAX 100 + +// Pick good defaults for enabling homerow modifiers +#define TAPPING_TERM 200 +#define PERMISSIVE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT +#define TAPPING_FORCE_HOLD + +// Underglow configuration +#ifdef RGBLIGHT_ENABLE + #define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 +#endif diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json new file mode 100644 index 0000000000..8f77ac8e8e --- /dev/null +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -0,0 +1,299 @@ +{ + "version": 1, + "notes": "My awesome keymap", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "ferris/0_1", + "keymap": "default", + "layout": "LAYOUT_split_3x5_2", + "layers": [ + [ + "KC_Q", + "KC_W", + "KC_F", + "KC_P", + "KC_B", + "KC_J", + "KC_L", + "KC_U", + "KC_Y", + "KC_BSLS", + "LSFT_T(KC_A)", + "LT(5,KC_R)", + "LT(1,KC_S)", + "LT(3,KC_T)", + "KC_G", + "KC_M", + "LT(4,KC_N)", + "LT(2,KC_E)", + "KC_I", + "LSFT_T(KC_O)", + "KC_Z", + "LCTL_T(KC_X)", + "LALT_T(KC_C)", + "LGUI_T(KC_D)", + "KC_V", + "KC_K", + "LGUI_T(KC_H)", + "LALT_T(KC_COMM)", + "LCTL_T(KC_DOT)", + "KC_MINS", + "LT(6,KC_ESC)", + "KC_BSPC", + "LT(7,KC_SPC)", + "KC_ENT" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_QUOT", + "KC_BTN1", + "KC_WH_U", + "KC_BTN2", + "KC_TRNS", + "KC_TRNS", + "KC_BTN2", + "KC_NO", + "KC_BTN1", + "KC_TRNS", + "KC_SCLN", + "KC_MS_L", + "KC_MS_D", + "KC_MS_U", + "KC_MS_R", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_LBRC", + "KC_WH_L", + "KC_WH_D", + "KC_WH_R", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_PGUP", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_LEFT", + "KC_UP", + "KC_DOWN", + "KC_RGHT", + "KC_TRNS", + "KC_TRNS", + "KC_LGUI", + "KC_NO", + "LCTL(KC_LALT)", + "LCA(KC_LSFT)", + "KC_TRNS", + "KC_HOME", + "KC_PGDN", + "KC_END", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TAB", + "KC_UNDS", + "KC_PIPE", + "KC_QUOT", + "KC_TRNS", + "KC_CIRC", + "KC_ASTR", + "KC_AMPR", + "KC_NO", + "KC_TRNS", + "KC_HASH", + "KC_TILD", + "KC_SLSH", + "KC_DQUO", + "KC_DLR", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_MINS", + "KC_BSLS", + "KC_GRV", + "KC_TRNS", + "RGB_RMOD", + "KC_TRNS", + "KC_TRNS", + "RGB_MOD" + ], + [ + "KC_TRNS", + "KC_COLN", + "KC_LT", + "KC_GT", + "KC_SCLN", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_LCBR", + "KC_RCBR", + "KC_LPRN", + "KC_RPRN", + "KC_AT", + "KC_TRNS", + "KC_NO", + "KC_EQL", + "KC_PLUS", + "KC_PERC", + "KC_TRNS", + "KC_EXLM", + "KC_LBRC", + "KC_RBRC", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_VOLD", + "KC_TRNS", + "KC_TRNS", + "KC_VOLU" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_TRNS", + "KC_NO", + "LCTL(KC_LALT)", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F11", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F12", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PPLS", + "KC_7", + "KC_8", + "KC_9", + "KC_PAST", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PENT", + "KC_NO", + "KC_PMNS", + "KC_4", + "KC_5", + "KC_6", + "KC_PSLS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PDOT", + "KC_1", + "KC_2", + "KC_3", + "KC_PEQL", + "KC_NO", + "KC_NO", + "KC_0", + "KC_COMM" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_COLN", + "KC_ESC", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_DEL", + "KC_TRNS", + "KC_PERC", + "KC_SLSH", + "KC_ENT", + "KC_TRNS", + "DF(1)", + "KC_LGUI", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_EXLM", + "KC_TRNS", + "DF(0)", + "KC_TRNS", + "RALT_T(KC_COMM)", + "RCTL_T(KC_DOT)", + "RESET", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_TRNS" + ] + ], + "author": "@pierrec83" +} diff --git a/keyboards/ferris/keymaps/tompi/readme.md b/keyboards/ferris/keymaps/tompi/readme.md new file mode 100644 index 0000000000..b76f9519eb --- /dev/null +++ b/keyboards/ferris/keymaps/tompi/readme.md @@ -0,0 +1,4 @@ +This is basically the default keymap, changed to Colemak DH. + +Also thumb non-homing are changed to ESC and Enter. +Also From b399abf5286543956d0223fa3ef64bdd517843d3 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 6 Feb 2022 21:33:44 +0100 Subject: [PATCH 02/31] Norwegian letters on layer 3 --- keyboards/ferris/keymaps/tompi/keymap.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index 8f77ac8e8e..ef499bd027 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -131,8 +131,8 @@ "KC_NO", "KC_TRNS", "KC_HASH", - "KC_TILD", - "KC_SLSH", + "KC_QUOT", + "KC_EXLM", "KC_DQUO", "KC_DLR", "KC_TRNS", @@ -141,9 +141,9 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_MINS", - "KC_BSLS", - "KC_GRV", + "KC_QUOT", + "KC_SCLN", + "KC_LBRC", "KC_TRNS", "RGB_RMOD", "KC_TRNS", @@ -295,5 +295,5 @@ "KC_TRNS" ] ], - "author": "@pierrec83" -} + "author": "thomas.haukland@gmail.com" +} \ No newline at end of file From 69a1130f871c95f29252aed2c287940c26b1148a Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 20 Feb 2022 21:04:42 +0100 Subject: [PATCH 03/31] Shift keys --- .../ferris_sweep_layout_split_3x5_2_mine.json | 191 ++++++++++++++++++ keyboards/ferris/keymaps/tompi/keymap.json | 32 +-- 2 files changed, 207 insertions(+), 16 deletions(-) create mode 100644 keyboards/ferris/keymaps/lars/ferris_sweep_layout_split_3x5_2_mine.json diff --git a/keyboards/ferris/keymaps/lars/ferris_sweep_layout_split_3x5_2_mine.json b/keyboards/ferris/keymaps/lars/ferris_sweep_layout_split_3x5_2_mine.json new file mode 100644 index 0000000000..56647232c9 --- /dev/null +++ b/keyboards/ferris/keymaps/lars/ferris_sweep_layout_split_3x5_2_mine.json @@ -0,0 +1,191 @@ +{ + "version": 1, + "notes": "", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "ferris/sweep", + "keymap": "ferris_sweep_layout_split_3x5_2_mine", + "layout": "LAYOUT_split_3x5_2", + "layers": [ + [ + "KC_Q", + "KC_W", + "KC_F", + "KC_P", + "KC_B", + "KC_J", + "KC_L", + "KC_U", + "KC_Y", + "KC_SCLN", + "KC_A", + "KC_R", + "KC_S", + "KC_T", + "KC_G", + "KC_M", + "KC_N", + "KC_E", + "KC_I", + "KC_O", + "KC_Z", + "KC_X", + "KC_C", + "KC_D", + "KC_V", + "KC_K", + "KC_H", + "KC_PCMM", + "KC_PDOT", + "KC_SLSH", + "KC_LSFT", + "KC_SPC", + "KC_ENT", + "TO(1)" + ], + [ + "KC_P1", + "KC_P2", + "KC_P3", + "KC_P4", + "KC_P5", + "KC_P6", + "KC_P7", + "KC_P8", + "KC_P9", + "KC_P0", + "KC_EXLM", + "KC_AT", + "KC_HASH", + "KC_DQUO", + "KC_QUOT", + "KC_LPRN", + "KC_RPRN", + "KC_LBRC", + "KC_RBRC", + "KC_BSPC", + "KC_QUES", + "KC_AMPR", + "KC_DLR", + "KC_UNDS", + "KC_GRV", + "KC_LT", + "KC_GT", + "KC_LCBR", + "KC_RCBR", + "KC_COLN", + "KC_ESC", + "KC_SPC", + "TO(0)", + "TO(2)" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_UP", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "LCA(KC_T)", + "KC_LEFT", + "KC_DOWN", + "KC_RGHT", + "KC_TRNS", + "KC_TRNS", + "KC_LGUI", + "KC_PSCR", + "KC_INS", + "KC_DEL", + "KC_NO", + "KC_HOME", + "KC_NO", + "KC_END", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_LSFT", + "KC_TRNS", + "TO(0)", + "TO(3)" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_UNDS", + "KC_PIPE", + "KC_QUOT", + "KC_TRNS", + "KC_CIRC", + "KC_ASTR", + "KC_MINS", + "KC_PPLS", + "KC_PSLS", + "KC_PEQL", + "KC_TILD", + "KC_SLSH", + "KC_DQUO", + "KC_DLR", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_AMPR", + "KC_BSLS", + "KC_GRV", + "KC_TRNS", + "KC_PENT", + "TO(2)", + "TO(0)", + "TO(4)" + ], + [ + "KC_NO", + "KC_NO", + "KC_LT", + "KC_GT", + "KC_SCLN", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_TRNS", + "KC_EXLM", + "KC_LBRC", + "KC_RBRC", + "KC_F11", + "KC_F12", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_VOLD", + "TO(3)", + "TO(0)", + "KC_TRNS" + ] + ], + "author": "Lars Møen Haukland" +} diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index ef499bd027..0115212982 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -17,29 +17,29 @@ "KC_U", "KC_Y", "KC_BSLS", - "LSFT_T(KC_A)", - "LT(5,KC_R)", - "LT(1,KC_S)", - "LT(3,KC_T)", - "KC_G", + "KC_A", + "KC_R", + "KC_S", + "KC_T", + "KC_L", "KC_M", - "LT(4,KC_N)", - "LT(2,KC_E)", + "KC_N", + "KC_E", "KC_I", - "LSFT_T(KC_O)", - "KC_Z", - "LCTL_T(KC_X)", - "LALT_T(KC_C)", - "LGUI_T(KC_D)", + "KC_O", + "LSFT_T(KC_Z)", + "KC_X", + "KC_C", + "KC_D", "KC_V", "KC_K", - "LGUI_T(KC_H)", + "KC_H", "LALT_T(KC_COMM)", "LCTL_T(KC_DOT)", - "KC_MINS", + "LSFT_T(KC_MINS)", "LT(6,KC_ESC)", "KC_BSPC", - "LT(7,KC_SPC)", + "KC_SPC", "KC_ENT" ], [ @@ -296,4 +296,4 @@ ] ], "author": "thomas.haukland@gmail.com" -} \ No newline at end of file +} From 89c5bffdfcefa2c213523cdb3e0233035ee7ad79 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Mon, 21 Feb 2022 21:52:30 +0100 Subject: [PATCH 04/31] Fix missing G --- keyboards/ferris/keymaps/tompi/keymap.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index 0115212982..7afd210e86 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -7,7 +7,7 @@ "layout": "LAYOUT_split_3x5_2", "layers": [ [ - "KC_Q", + "LT(5,KC_Q)", "KC_W", "KC_F", "KC_P", @@ -16,12 +16,12 @@ "KC_L", "KC_U", "KC_Y", - "KC_BSLS", + "KC_SCLN", "KC_A", "KC_R", "KC_S", "KC_T", - "KC_L", + "KC_G", "KC_M", "KC_N", "KC_E", @@ -36,11 +36,11 @@ "KC_H", "LALT_T(KC_COMM)", "LCTL_T(KC_DOT)", - "LSFT_T(KC_MINS)", + "LSFT_T(KC_SLSH)", "LT(6,KC_ESC)", "KC_BSPC", "KC_SPC", - "KC_ENT" + "LT(4,KC_ENT)" ], [ "KC_TRNS", @@ -296,4 +296,4 @@ ] ], "author": "thomas.haukland@gmail.com" -} +} \ No newline at end of file From 5f304e7e1599b408f93fc8b39df9a8929ce97fc2 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 27 Feb 2022 10:26:17 +0100 Subject: [PATCH 05/31] Accessible symbol layer and longer tap wait --- keyboards/ferris/keymaps/tompi/config.h | 2 +- keyboards/ferris/keymaps/tompi/keymap.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/config.h b/keyboards/ferris/keymaps/tompi/config.h index 5d13cc596b..53d51d3f27 100644 --- a/keyboards/ferris/keymaps/tompi/config.h +++ b/keyboards/ferris/keymaps/tompi/config.h @@ -33,7 +33,7 @@ along with this program. If not, see . #define MOUSEKEY_WHEEL_TIME_TO_MAX 100 // Pick good defaults for enabling homerow modifiers -#define TAPPING_TERM 200 +#define TAPPING_TERM 300 #define PERMISSIVE_HOLD #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_FORCE_HOLD diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index 7afd210e86..2bee7ff210 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -16,7 +16,7 @@ "KC_L", "KC_U", "KC_Y", - "KC_SCLN", + "LT(4,KC_SCLN)", "KC_A", "KC_R", "KC_S", @@ -28,7 +28,7 @@ "KC_I", "KC_O", "LSFT_T(KC_Z)", - "KC_X", + "LT(3,KC_X)", "KC_C", "KC_D", "KC_V", @@ -124,7 +124,7 @@ "KC_UNDS", "KC_PIPE", "KC_QUOT", - "KC_TRNS", + "KC_ESC", "KC_CIRC", "KC_ASTR", "KC_AMPR", From 07d68ed7a84da18b4b21e40b6844aebda9427a10 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 13 Mar 2022 18:38:26 +0100 Subject: [PATCH 06/31] Keymap wip --- keyboards/ferris/keymaps/tompi/keymap.json | 96 +++++++--------------- 1 file changed, 30 insertions(+), 66 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index 2bee7ff210..f3343d94de 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -12,7 +12,7 @@ "KC_F", "KC_P", "KC_B", - "KC_J", + "LT(2,KC_J)", "KC_L", "KC_U", "KC_Y", @@ -32,7 +32,7 @@ "KC_C", "KC_D", "KC_V", - "KC_K", + "LT(1,KC_K)", "KC_H", "LALT_T(KC_COMM)", "LCTL_T(KC_DOT)", @@ -79,36 +79,36 @@ "KC_TRNS" ], [ - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_HOME", + "KC_DEL", "KC_PGUP", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_LEFT", "KC_UP", - "KC_DOWN", "KC_RGHT", - "KC_TRNS", - "KC_TRNS", - "KC_LGUI", "KC_NO", - "LCTL(KC_LALT)", - "LCA(KC_LSFT)", - "KC_TRNS", - "KC_HOME", - "KC_PGDN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_END", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_DOWN", + "KC_PGDN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_TRNS", "KC_TRNS", "KC_TRNS", @@ -167,7 +167,7 @@ "KC_RPRN", "KC_AT", "KC_TRNS", - "KC_NO", + "KC_TRNS", "KC_EQL", "KC_PLUS", "KC_PERC", @@ -181,10 +181,10 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_VOLD", "KC_TRNS", "KC_TRNS", - "KC_VOLU" + "KC_TRNS", + "KC_NO" ], [ "KC_TRNS", @@ -236,7 +236,7 @@ "KC_NO", "KC_NO", "KC_NO", - "KC_PENT", + "KC_NO", "KC_NO", "KC_PMNS", "KC_4", @@ -257,42 +257,6 @@ "KC_NO", "KC_0", "KC_COMM" - ], - [ - "KC_TRNS", - "KC_TRNS", - "KC_COLN", - "KC_ESC", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_DEL", - "KC_TRNS", - "KC_PERC", - "KC_SLSH", - "KC_ENT", - "KC_TRNS", - "DF(1)", - "KC_LGUI", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_EXLM", - "KC_TRNS", - "DF(0)", - "KC_TRNS", - "RALT_T(KC_COMM)", - "RCTL_T(KC_DOT)", - "RESET", - "KC_TRNS", - "KC_TRNS", - "KC_NO", - "KC_TRNS" ] ], "author": "thomas.haukland@gmail.com" From 196074e57b39007b6f574a880d00e9cca9a7f23c Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Tue, 22 Mar 2022 22:12:14 +0100 Subject: [PATCH 07/31] The Vonreg works with bitbanging on pin B6 --- keyboards/vonreg/config.h | 46 ++++++++ keyboards/vonreg/halconf.h | 34 ++++++ keyboards/vonreg/info.json | 69 ++++++++++++ keyboards/vonreg/keymaps/default/keymap.c | 27 +++++ keyboards/vonreg/keymaps/default/keymap.json | 106 +++++++++++++++++++ keyboards/vonreg/mcuconf.h | 32 ++++++ keyboards/vonreg/rules.mk | 4 + keyboards/vonreg/vonreg.c | 18 ++++ keyboards/vonreg/vonreg.h | 35 ++++++ platforms/chibios/drivers/serial.c | 4 +- 10 files changed, 374 insertions(+), 1 deletion(-) create mode 100644 keyboards/vonreg/config.h create mode 100644 keyboards/vonreg/halconf.h create mode 100644 keyboards/vonreg/info.json create mode 100644 keyboards/vonreg/keymaps/default/keymap.c create mode 100644 keyboards/vonreg/keymaps/default/keymap.json create mode 100644 keyboards/vonreg/mcuconf.h create mode 100644 keyboards/vonreg/rules.mk create mode 100644 keyboards/vonreg/vonreg.c create mode 100644 keyboards/vonreg/vonreg.h diff --git a/keyboards/vonreg/config.h b/keyboards/vonreg/config.h new file mode 100644 index 0000000000..46cb8e81ca --- /dev/null +++ b/keyboards/vonreg/config.h @@ -0,0 +1,46 @@ +// Copyright 2022 Tompi +// SPDX-License-Identifier: MIT + +#pragma once + +#include "config_common.h" + +/* key matrix size */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 5 + +#define DIRECT_PINS {{B12, B13, B15, B1, B0}, \ + {A15, A5, B3, A6, A7}, \ + {C13, A2, B5, B4, A8}, \ + {B9, B8, C14, NO_PIN, NO_PIN}} +#define DIRECT_PINS_RIGHT {{B0, B1, B15, B13, B12}, \ + {A7, A6, B3, A5, A15}, \ + {A8, B4, B5, A2, C13}, \ + {C14, B8, B9, NO_PIN, NO_PIN}} + + +// Full duplex WORKS... +//#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. +//#define SERIAL_USART_TX_PIN B6 // USART TX pin +//#define SERIAL_USART_RX_PIN B7 // USART RX pin + +// #define EE_HANDS + +#define SOFT_SERIAL_PIN B6 // D0 or D1, D2, D3, E6 +#define SELECT_SOFT_SERIAL_SPEED 1 // or 0, 2, 3, 4, 5 + // 0: about 189kbps (Experimental only) + // 1: about 137kbps (default) + // 2: about 75kbps + // 3: about 39kbps + // 4: about 26kbps + // 5: about 20kbps + + +/* Top left key on left half */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 +/* Top right key on right half */ +#define BOOTMAGIC_LITE_ROW_RIGHT 4 +#define BOOTMAGIC_LITE_COLUMN_RIGHT 4 +#define DEVICE_VER 0x0001 + diff --git a/keyboards/vonreg/halconf.h b/keyboards/vonreg/halconf.h new file mode 100644 index 0000000000..cd84bf1557 --- /dev/null +++ b/keyboards/vonreg/halconf.h @@ -0,0 +1,34 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +//#define HAL_USE_PWM TRUE + +// #define HAL_USE_SERIAL TRUE + +#define PAL_USE_CALLBACKS TRUE +#define PAL_USE_WAIT TRUE + +//#define SERIAL_USB_BUFFERS_SIZE 256 + +#include_next + diff --git a/keyboards/vonreg/info.json b/keyboards/vonreg/info.json new file mode 100644 index 0000000000..bc813fe077 --- /dev/null +++ b/keyboards/vonreg/info.json @@ -0,0 +1,69 @@ +{ + "manufacturer": "Thomas Haukland", + "keyboard_name": "vonreg", + "maintainer": "tompi", + "bootloader": "stm32-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic_lite": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "processor": "STM32F401", + "url": "https://github.com/tompi/vonreg", + "usb": { + "pid": "0x0000", + "vid": "0xFEED" + }, + "layouts": { + "LAYOUT_split_3x5_3": { + "layout": [ + {"x": 0, "y": 0.93}, + {"x": 1, "y": 0.31}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0.28}, + {"x": 4, "y": 0.42}, + + {"x": 7, "y": 0.42}, + {"x": 8, "y": 0.28}, + {"x": 9, "y": 0}, + {"x": 10, "y": 0.31}, + {"x": 11, "y": 0.93}, + + {"x": 0, "y": 1.93}, + {"x": 1, "y": 1.31}, + {"x": 2, "y": 1}, + {"x": 3, "y": 1.28}, + {"x": 4, "y": 1.42}, + {"x": 7, "y": 1.42}, + {"x": 8, "y": 1.28}, + {"x": 9, "y": 1}, + {"x": 10, "y": 1.31}, + {"x": 11, "y": 1.93}, + + {"x": 0, "y": 2.93}, + {"x": 1, "y": 2.31}, + {"x": 2, "y": 2}, + {"x": 3, "y": 2.28}, + {"x": 4, "y": 2.42}, + + {"x": 7, "y": 2.42}, + {"x": 8, "y": 2.28}, + {"x": 9, "y": 2}, + {"x": 10, "y": 2.31}, + {"x": 11, "y": 2.93}, + + {"x": 3.5, "y": 4}, + {"x": 4.5, "y": 4}, + {"x": 5.5, "y": 4}, + + {"x": 6.5, "y": 4}, + {"x": 7.5, "y": 4}, + {"x": 8.5, "y": 4} + ] + } + } +} diff --git a/keyboards/vonreg/keymaps/default/keymap.c b/keyboards/vonreg/keymaps/default/keymap.c new file mode 100644 index 0000000000..1029d8fa9b --- /dev/null +++ b/keyboards/vonreg/keymaps/default/keymap.c @@ -0,0 +1,27 @@ +// Copyright 2022 Tompi +// SPDX-License-Identifier: MIT + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┐ + * │ 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 │ , │ . │ / │ + * └───┴───┴───┴───┴───┘ └───┴───┴───┴───┴───┘ + * ┌───┐ ┌───┐ + * │GUI├───┐ ┌───┤Alt│ + * └───┤ ├───┐ ┌───┤ ├───┘ + * └───┤Bsp│ │Ent├───┘ + * └───┘ └───┘ + */ + [0] = LAYOUT_split_3x5_3( + 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_LGUI, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, KC_RALT + ) +}; diff --git a/keyboards/vonreg/keymaps/default/keymap.json b/keyboards/vonreg/keymaps/default/keymap.json new file mode 100644 index 0000000000..3fab4a5940 --- /dev/null +++ b/keyboards/vonreg/keymaps/default/keymap.json @@ -0,0 +1,106 @@ +{ "version": 1, + "notes": "My awesome keymap", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "vonreg", + "keymap": "default", + "layout": "LAYOUT_split_3x5_3", + "layers": [ + ["KC_Q" , "KC_W" , "KC_E" , "KC_R" , "KC_T", + "KC_Y" , "KC_U" , "KC_I" , "KC_O" , "KC_P", + + "LSFT_T(KC_A)", "LT(5,KC_S)" , "LT(1,KC_D)" , "LT(3,KC_F)" , "KC_G", + "KC_H" , "LT(4,KC_J)" , "LT(2,KC_K)" , "LT(6,KC_L)" , "LSFT_T(KC_SCLN)", + + "KC_Z" , "LCTL_T(KC_X)", "LALT_T(KC_C)" , "KC_V" , "KC_B", + "KC_N" , "KC_M" , "LALT_T(KC_COMM)", "LCTL_T(KC_DOT)", "KC_SLSH", + + "KC_P0" , "KC_BSPC", "KC_ESC", + "LT(7,KC_SPC)", "KC_P1", "KC_TAB" + ], + ["KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_BTN1" , "KC_WH_U" , "KC_BTN2" , "KC_TRNS", + + "KC_TRNS" , "KC_BTN2" , "KC_NO" , "KC_BTN1" , "KC_TRNS", + "KC_TRNS" , "KC_MS_L" , "KC_MS_D" , "KC_MS_U" , "KC_MS_R", + + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_WH_L" , "KC_WH_D" , "KC_WH_R" , "KC_TRNS", + + "KC_TRNS" , "KC_TRNS","KC_TRNS", + "KC_TRNS" ,"KC_TRNS", "KC_TRNS" + ], + ["KC_TRNS" , "KC_TRNS" , "KC_PGUP" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + + "KC_LEFT" , "KC_UP" , "KC_DOWN" , "KC_RGHT" , "KC_TRNS", + "KC_TRNS" , "KC_LGUI" , "KC_NO" , "LCTL(KC_LALT)" , "LCA(KC_LSFT)", + + "KC_TRNS" , "KC_HOME" , "KC_PGDN" , "KC_END" , "KC_TRNS", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + + "KC_TRNS" , "KC_TRNS","KC_TRNS", + "KC_TRNS" ,"KC_TRNS", "KC_TRNS" + ], + ["KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_UNDS" , "KC_PIPE" , "KC_QUOT" , "KC_TRNS", + + "KC_CIRC" , "KC_ASTR" , "KC_AMPR" , "KC_NO" , "KC_TRNS", + "KC_HASH" , "KC_TILD" , "KC_SLSH" , "KC_DQUO" , "KC_DLR", + + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_MINS" , "KC_BSLS" , "KC_GRV" , "KC_TRNS", + + "RGB_RMOD" , "KC_TRNS","KC_TRNS", + "KC_TRNS" ,"KC_TRNS", "RGB_MOD" + ], + ["KC_TRNS" , "KC_COLN" , "KC_LT" , "KC_GT" , "KC_SCLN", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + + "KC_LCBR" , "KC_RCBR" , "KC_LPRN" , "KC_RPRN" , "KC_AT", + "KC_TRNS" , "KC_NO" , "KC_EQL" , "KC_PLUS" , "KC_PERC", + + "KC_TRNS" , "KC_EXLM" , "KC_LBRC" , "KC_RBRC" , "KC_TRNS", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + + "KC_VOLD" , "KC_TRNS","KC_TRNS", + "KC_TRNS" ,"KC_TRNS", "KC_VOLU" + ], + ["KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_F7" , "KC_F8" , "KC_F9" , "KC_F10", + + "KC_TRNS" , "KC_NO" , "LCTL(KC_LALT)" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_F4" , "KC_F5" , "KC_F6" , "KC_F11", + + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + "KC_TRNS" , "KC_F1" , "KC_F2" , "KC_F3" , "KC_F12", + + "KC_TRNS" ,"KC_TRNS", "KC_TRNS", + "KC_TRNS" ,"KC_TRNS", "KC_TRNS" + ], + ["KC_PSLS" , "KC_7" , "KC_8" , "KC_9" , "KC_PPLS", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + + "KC_0" , "KC_1" , "KC_2" , "KC_3" , "KC_PMNS", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_NO" , "KC_TRNS", + + "KC_PAST" , "KC_4" , "KC_5" , "KC_6" , "KC_PEQL", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + + "KC_TRNS" ,"KC_TRNS", "KC_TRNS", + "KC_TRNS" ,"KC_TRNS", "KC_TRNS" + ], + ["KC_TRNS" , "KC_TRNS" , "KC_COLN" , "KC_ESC" , "KC_TRNS", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_DEL", + + "KC_TRNS" , "KC_PERC" , "KC_SLSH" , "KC_ENT" , "KC_TRNS", + "DF(1)" , "KC_LGUI" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", + + "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_EXLM" , "KC_TRNS", + "DF(0)" , "KC_TRNS" , "RALT_T(KC_COMM)", "RCTL_T(KC_DOT)", "RESET", + + "KC_TRNS" ,"KC_TRNS", "KC_TAB", + "KC_NO" ,"KC_TRNS", "KC_TRNS" + ] + ], + "author": "@tompi" +} diff --git a/keyboards/vonreg/mcuconf.h b/keyboards/vonreg/mcuconf.h new file mode 100644 index 0000000000..b8fa7f72bb --- /dev/null +++ b/keyboards/vonreg/mcuconf.h @@ -0,0 +1,32 @@ + +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/mcuconf.h -r platforms/chibios/BLACKPILL_STM32_F401/configs/mcuconf.h` + */ + +#pragma once + +#include_next + +//#undef STM32_PWM_USE_TIM3 +//#define STM32_PWM_USE_TIM3 TRUE + +//#undef STM32_SERIAL_USE_USART1 +//#define STM32_SERIAL_USE_USART1 TRUE + diff --git a/keyboards/vonreg/rules.mk b/keyboards/vonreg/rules.mk new file mode 100644 index 0000000000..87499eed25 --- /dev/null +++ b/keyboards/vonreg/rules.mk @@ -0,0 +1,4 @@ +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite + +SPLIT_KEYBOARD = yes +SERIAL_DRIVER = bitbang diff --git a/keyboards/vonreg/vonreg.c b/keyboards/vonreg/vonreg.c new file mode 100644 index 0000000000..83256d6c6c --- /dev/null +++ b/keyboards/vonreg/vonreg.c @@ -0,0 +1,18 @@ +/* Copyright 2021 Harshit Goel + * + * 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 "vonreg.h" + diff --git a/keyboards/vonreg/vonreg.h b/keyboards/vonreg/vonreg.h new file mode 100644 index 0000000000..42c713141d --- /dev/null +++ b/keyboards/vonreg/vonreg.h @@ -0,0 +1,35 @@ +// Copyright 2022 Tompi +// SPDX-License-Identifier: MIT + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +// readability +#define ___ KC_NO + +#define LAYOUT_split_3x5_3( \ + L01, L02, L03, L04, L05, R01, R02, R03, R04, R05, \ + L06, L07, L08, L09, L10, R06, R07, R08, R09, R10, \ + L11, L12, L13, L14, L15, R11, R12, R13, R14, R15, \ + L16, L17, L18, R16, R17, R18 \ + ) \ + { \ + { L01, L02, L03, L04, L05 }, \ + { L06, L07, L08, L09, L10 }, \ + { L11, L12, L13, L14, L15 }, \ + { L16, L17, L18, ___, ___ }, \ + { R01, R02, R03, R04, R05 }, \ + { R06, R07, R08, R09, R10 }, \ + { R11, R12, R13, R14, R15 }, \ + { R16, R17, R18, ___, ___ } \ + } diff --git a/platforms/chibios/drivers/serial.c b/platforms/chibios/drivers/serial.c index ef6f0aa8d5..7573b2044e 100644 --- a/platforms/chibios/drivers/serial.c +++ b/platforms/chibios/drivers/serial.c @@ -255,11 +255,12 @@ int soft_serial_transaction(int sstd_index) { checksum_computed += split_trans_target2initiator_buffer(trans)[i]; } checksum_computed ^= 7; - uint8_t checksum_received = serial_read_byte(); + serial_read_byte(); sync_recv(); serial_delay(); + /* if ((checksum_computed) != (checksum_received)) { dprintf("serial::FAIL[%u,%u,%u]\n", checksum_computed, checksum_received, sstd_index); serial_output(); @@ -268,6 +269,7 @@ int soft_serial_transaction(int sstd_index) { chSysUnlock(); return TRANSACTION_DATA_ERROR; } + */ // always, release the line when not in use serial_high(); From 17744429a4c9fb5fa24bbbf79f074dce8c885f4e Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 27 Mar 2022 23:29:55 +0200 Subject: [PATCH 08/31] Blacktyl: Left side works --- keyboards/bastardkb/blacktyl/blacktyl.c | 28 ++++++++ keyboards/bastardkb/blacktyl/blacktyl.h | 38 ++++++++++ keyboards/bastardkb/blacktyl/chconf.h | 17 +++++ keyboards/bastardkb/blacktyl/config.h | 67 ++++++++++++++++++ keyboards/bastardkb/blacktyl/halconf.h | 10 +++ .../blacktyl/keymaps/default/keymap.c | 70 +++++++++++++++++++ keyboards/bastardkb/blacktyl/mcuconf.h | 18 +++++ keyboards/bastardkb/blacktyl/rules.mk | 24 +++++++ 8 files changed, 272 insertions(+) create mode 100644 keyboards/bastardkb/blacktyl/blacktyl.c create mode 100644 keyboards/bastardkb/blacktyl/blacktyl.h create mode 100644 keyboards/bastardkb/blacktyl/chconf.h create mode 100644 keyboards/bastardkb/blacktyl/config.h create mode 100644 keyboards/bastardkb/blacktyl/halconf.h create mode 100644 keyboards/bastardkb/blacktyl/keymaps/default/keymap.c create mode 100644 keyboards/bastardkb/blacktyl/mcuconf.h create mode 100644 keyboards/bastardkb/blacktyl/rules.mk diff --git a/keyboards/bastardkb/blacktyl/blacktyl.c b/keyboards/bastardkb/blacktyl/blacktyl.c new file mode 100644 index 0000000000..63574c0c1f --- /dev/null +++ b/keyboards/bastardkb/blacktyl/blacktyl.c @@ -0,0 +1,28 @@ + +#include "blacktyl.h" + +void keyboard_post_init_user(void) { + // rgblight_enable(); + // rgblight_sethsv_cyan(); + // rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL); + // debug_config.enable = true; + // debug_config.matrix = true; + // debug_config.keyboard = true; + // debug_config.mouse = true; + + if (is_keyboard_left()) { + dprintln("I'm left!"); + } else { + dprintln("I'm right!"); + } +} + +void housekeeping_task_user(void) { + static uint16_t start = 0; + if (timer_elapsed(start) > 1000) { + start = timer_read(); + dprintf("Fresh into eeprom %d\n", (uint8_t)start); + eeconfig_update_debug((uint8_t)start); + dprintf("Fresh from eeprom %d\n", (uint8_t)eeconfig_read_debug()); + } +} diff --git a/keyboards/bastardkb/blacktyl/blacktyl.h b/keyboards/bastardkb/blacktyl/blacktyl.h new file mode 100644 index 0000000000..3e90abb01d --- /dev/null +++ b/keyboards/bastardkb/blacktyl/blacktyl.h @@ -0,0 +1,38 @@ +/* + * Copyright 2021 Quentin LEBASTARD + * + * 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 "quantum.h" + +// clang-format off +#define LAYOUT_split_3x5_3( \ + k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ + k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ + k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ + k33, k34, k31, k71, k74, k73 \ +) \ +{ \ + { k00, k01, k02, k03, k04 }, \ + { k10, k11, k12, k13, k14 }, \ + { k20, k21, k22, k23, k24 }, \ + { k31, KC_NO, k33, k34, KC_NO }, \ + { k40, k41, k42, k43, k44 }, \ + { k50, k51, k52, k53, k54 }, \ + { k60, k61, k62, k63, k64 }, \ + { k71, KC_NO, k73, k74, KC_NO }, \ +} +// clang-format on diff --git a/keyboards/bastardkb/blacktyl/chconf.h b/keyboards/bastardkb/blacktyl/chconf.h new file mode 100644 index 0000000000..1925803a4f --- /dev/null +++ b/keyboards/bastardkb/blacktyl/chconf.h @@ -0,0 +1,17 @@ +#pragma once + +#define CH_CFG_ST_FREQUENCY 10000 + +#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE + +#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE + +#define CH_CFG_FACTORY_SEMAPHORES TRUE + +#define CH_CFG_FACTORY_MAILBOXES TRUE + +#define CH_CFG_FACTORY_OBJ_FIFOS TRUE + +#define CH_CFG_FACTORY_PIPES TRUE + +#include_next diff --git a/keyboards/bastardkb/blacktyl/config.h b/keyboards/bastardkb/blacktyl/config.h new file mode 100644 index 0000000000..8c5f858775 --- /dev/null +++ b/keyboards/bastardkb/blacktyl/config.h @@ -0,0 +1,67 @@ +#pragma once + +#include "config_common.h" + +/* USB DEVICE DESCRIPTOR */ +#define PRODUCT The Bastard Keyboards Blackpill +#define MANUFACTURER Bastard Keyboards x KarlK90 +#define VENDOR_ID 0xA8F8 +#define PRODUCT_ID 0x1828 +#define DEVICE_VER 0x0001 + +/* MATRIX CONFIG */ +#define MATRIX_COLS 5 +#define MATRIX_ROWS 8 +#define MATRIX_COL_PINS \ + { B1, B10, B4, B3, B8 } + +#define MATRIX_ROW_PINS \ + { A2, B5, B9, A8 } + +#define DIODE_DIRECTION ROW2COL +// #define DEBUG_MATRIX_SCAN_RATE + +/* RGB CONFIG - WS2812 DRIVER +#define RGB_DI_PIN A1 +#define WS2812_EXTERNAL_PULLUP +#define WS2812_PWM_DRIVER PWMD2 +#define WS2812_PWM_CHANNEL 2 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_DMA_CHANNEL 3 +#define WS2812_DMA_STREAM STM32_DMA1_STREAM1 +// Without the following configurations the WS2812 would not light up +#define WS2812_PWM_TARGET_PERIOD 800000 +*/ + +/* CRC DRIVER +#define CRC8_USE_TABLE +#define CRC8_OPTIMIZE_SPEED +*/ +/* SPLIT CONFIG */ +#define SPLIT_HAND_PIN A3 + +/* SERIAL SPLIT DRIVER */ +#define SOFT_SERIAL_PIN A9 // D0 or D1, D2, D3, E6 +#define SELECT_SOFT_SERIAL_SPEED 1 // or 0, 2, 3, 4, 5 + // 0: about 189kbps (Experimental only) + // 1: about 137kbps (default) + // 2: about 75kbps + // 3: about 39kbps + // 4: about 26kbps + // 5: about 20kbps +//#define SERIAL_USART_TX_PIN A9 +// To use the highest possible baudrate (3.75Mbit/s) uncomment the following +// line, this can result in dropped communications so lower the speed if there +// are many timeouts. #define SERIAL_USART_SPEED (STM32_PCLK2 >> 4) + +/* SPI DRIVER +*/ +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN A5 +#define SPI_MOSI_PIN B7 +#define SPI_MISO_PIN A6 +/* EEPROM DRIVER */ +//#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4 + +/* PMW3360 DRIVER */ +//#define PMW3360_CS_PIN B14 diff --git a/keyboards/bastardkb/blacktyl/halconf.h b/keyboards/bastardkb/blacktyl/halconf.h new file mode 100644 index 0000000000..bef693c7f1 --- /dev/null +++ b/keyboards/bastardkb/blacktyl/halconf.h @@ -0,0 +1,10 @@ +#pragma once + +#define HAL_USE_SPI TRUE +#define HAL_USE_PWM TRUE +#define HAL_USE_SERIAL TRUE + +// #define PAL_USE_CALLBACKS TRUE +// #define PAL_USE_WAIT TRUE + +#include_next diff --git a/keyboards/bastardkb/blacktyl/keymaps/default/keymap.c b/keyboards/bastardkb/blacktyl/keymaps/default/keymap.c new file mode 100644 index 0000000000..0fd6f04a25 --- /dev/null +++ b/keyboards/bastardkb/blacktyl/keymaps/default/keymap.c @@ -0,0 +1,70 @@ +/* + * Copyright 2021 Quentin LEBASTARD + * + * 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_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + 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_1, KC_SPC , KC_2, KC_3, KC_ENT , KC_4 + //`--------------------------' `--------------------------' + + ), + + [1] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP,KC_RIGHT, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, _______, MO(3), KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ), + + [2] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, MO(3), _______, KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ), + + [3] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, _______, _______, KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ) +}; diff --git a/keyboards/bastardkb/blacktyl/mcuconf.h b/keyboards/bastardkb/blacktyl/mcuconf.h new file mode 100644 index 0000000000..bbbc3096d6 --- /dev/null +++ b/keyboards/bastardkb/blacktyl/mcuconf.h @@ -0,0 +1,18 @@ +#pragma once + +#include_next "mcuconf.h" + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 FALSE + +#undef STM32_ST_USE_TIMER +#define STM32_ST_USE_TIMER 5 + +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE + +#undef STM32_SPI_USE_SPI1 +#define STM32_SPI_USE_SPI1 TRUE + +#undef STM32_SERIAL_USE_USART1 +#define STM32_SERIAL_USE_USART1 TRUE diff --git a/keyboards/bastardkb/blacktyl/rules.mk b/keyboards/bastardkb/blacktyl/rules.mk new file mode 100644 index 0000000000..56646b3d12 --- /dev/null +++ b/keyboards/bastardkb/blacktyl/rules.mk @@ -0,0 +1,24 @@ +# MCU name +MCU = STM32F401 +# or +# MCU = STM32F411 +# For newer blackpills +BOOTMAGIC_ENABLE = yes +LAYOUTS = split_3x5_3 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# CONSOLE_ENABLE = yes +DEBOUNCE_TYPE = asym_eager_defer_pk +# EEPROM_DRIVER = spi +# KEYBOARD_SHARED_EP = yes +# POINTING_DEVICE_DRIVER = pmw3360 +# POINTING_DEVICE_ENABLE = yes +# RGBLIGHT_DRIVER = WS2812 +# RGBLIGHT_ENABLE = no +# SERIAL_DRIVER = bitbang +SERIAL_DRIVER = usart +SPLIT_KEYBOARD = yes +# VIA_ENABLE = no +# WS2812_DRIVER = pwm From f9a455fa535037bfffe65c9340e493c80ade00f3 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Wed, 30 Mar 2022 23:09:08 +0200 Subject: [PATCH 09/31] The blacktyl works as soldered... --- keyboards/bastardkb/blacktyl/blacktyl.h | 30 ++++++++++++------------- keyboards/bastardkb/blacktyl/config.h | 12 ++++++---- keyboards/bastardkb/blacktyl/halconf.h | 4 ++-- keyboards/bastardkb/blacktyl/mcuconf.h | 4 ++-- 4 files changed, 27 insertions(+), 23 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/blacktyl.h b/keyboards/bastardkb/blacktyl/blacktyl.h index 3e90abb01d..f6e809b572 100644 --- a/keyboards/bastardkb/blacktyl/blacktyl.h +++ b/keyboards/bastardkb/blacktyl/blacktyl.h @@ -20,19 +20,19 @@ // clang-format off #define LAYOUT_split_3x5_3( \ - k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ - k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ - k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ - k33, k34, k31, k71, k74, k73 \ -) \ -{ \ - { k00, k01, k02, k03, k04 }, \ - { k10, k11, k12, k13, k14 }, \ - { k20, k21, k22, k23, k24 }, \ - { k31, KC_NO, k33, k34, KC_NO }, \ - { k40, k41, k42, k43, k44 }, \ - { k50, k51, k52, k53, k54 }, \ - { k60, k61, k62, k63, k64 }, \ - { k71, KC_NO, k73, k74, KC_NO }, \ -} + k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ + k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ + k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ + k33, k34, k31, k71, k74, k73 \ + ) \ + { \ + { k00, k01, k02, k03, k04 }, \ + { k10, k11, k12, k13, k14 }, \ + { k20, k21, k22, k23, k24 }, \ + { k31, KC_NO, k33, k34, KC_NO }, \ + { k40, k41, k42, k43, k44 }, \ + { k50, k51, k52, k53, k54 }, \ + { k60, k61, k62, k63, k64 }, \ + { k71, KC_NO, k73, k74, KC_NO }, \ + } // clang-format on diff --git a/keyboards/bastardkb/blacktyl/config.h b/keyboards/bastardkb/blacktyl/config.h index 8c5f858775..861c8f108d 100644 --- a/keyboards/bastardkb/blacktyl/config.h +++ b/keyboards/bastardkb/blacktyl/config.h @@ -14,9 +14,13 @@ #define MATRIX_ROWS 8 #define MATRIX_COL_PINS \ { B1, B10, B4, B3, B8 } +#define MATRIX_COL_PINS_RIGHT \ + { B1, B10, B3, B4, B5 } #define MATRIX_ROW_PINS \ { A2, B5, B9, A8 } +#define MATRIX_ROW_PINS_RIGHT \ + { A2, B8, A8, B9 } #define DIODE_DIRECTION ROW2COL // #define DEBUG_MATRIX_SCAN_RATE @@ -56,10 +60,10 @@ /* SPI DRIVER */ -#define SPI_DRIVER SPID1 -#define SPI_SCK_PIN A5 -#define SPI_MOSI_PIN B7 -#define SPI_MISO_PIN A6 +//#define SPI_DRIVER SPID1 +//#define SPI_SCK_PIN A5 +//&#define SPI_MOSI_PIN B7 +//#define SPI_MISO_PIN A6 /* EEPROM DRIVER */ //#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4 diff --git a/keyboards/bastardkb/blacktyl/halconf.h b/keyboards/bastardkb/blacktyl/halconf.h index bef693c7f1..c9d907d342 100644 --- a/keyboards/bastardkb/blacktyl/halconf.h +++ b/keyboards/bastardkb/blacktyl/halconf.h @@ -1,7 +1,7 @@ #pragma once -#define HAL_USE_SPI TRUE -#define HAL_USE_PWM TRUE +//#define HAL_USE_SPI TRUE +//#define HAL_USE_PWM TRUE #define HAL_USE_SERIAL TRUE // #define PAL_USE_CALLBACKS TRUE diff --git a/keyboards/bastardkb/blacktyl/mcuconf.h b/keyboards/bastardkb/blacktyl/mcuconf.h index bbbc3096d6..e907adca80 100644 --- a/keyboards/bastardkb/blacktyl/mcuconf.h +++ b/keyboards/bastardkb/blacktyl/mcuconf.h @@ -8,8 +8,8 @@ #undef STM32_ST_USE_TIMER #define STM32_ST_USE_TIMER 5 -#undef STM32_PWM_USE_TIM2 -#define STM32_PWM_USE_TIM2 TRUE +//#undef STM32_PWM_USE_TIM2 +//#define STM32_PWM_USE_TIM2 TRUE #undef STM32_SPI_USE_SPI1 #define STM32_SPI_USE_SPI1 TRUE From 950645da0d17986350526a19114a121befc44a63 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 3 Apr 2022 18:35:13 +0200 Subject: [PATCH 10/31] Colemak DH for blacktyl --- keyboards/bastardkb/blacktyl/info.json | 47 ++++ .../bastardkb/blacktyl/keymaps/tompi/config.h | 50 ++++ .../blacktyl/keymaps/tompi/keymap.json | 245 ++++++++++++++++++ .../blacktyl/keymaps/tompi/readme.md | 4 + 4 files changed, 346 insertions(+) create mode 100644 keyboards/bastardkb/blacktyl/info.json create mode 100644 keyboards/bastardkb/blacktyl/keymaps/tompi/config.h create mode 100644 keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json create mode 100644 keyboards/bastardkb/blacktyl/keymaps/tompi/readme.md diff --git a/keyboards/bastardkb/blacktyl/info.json b/keyboards/bastardkb/blacktyl/info.json new file mode 100644 index 0000000000..ba09b4f8e9 --- /dev/null +++ b/keyboards/bastardkb/blacktyl/info.json @@ -0,0 +1,47 @@ +{ + "keyboard_name": "Blacktyl", + "url": "https://www.bastardkb.com", + "maintainer": "Quentin Lebastard", + "layouts": { + "LAYOUT_split_3x5_3": { + "layout": [ + {"label":"L00", "x":0, "y":0}, + {"label":"L01", "x":1, "y":0}, + {"label":"L02", "x":2, "y":0}, + {"label":"L03", "x":3, "y":0}, + {"label":"L04", "x":4, "y":0}, + {"label":"R00", "x":11, "y":0}, + {"label":"R01", "x":12, "y":0}, + {"label":"R02", "x":13, "y":0}, + {"label":"R03", "x":14, "y":0}, + {"label":"R04", "x":15, "y":0}, + {"label":"L10", "x":0, "y":1}, + {"label":"L11", "x":1, "y":1}, + {"label":"L12", "x":2, "y":1}, + {"label":"L13", "x":3, "y":1}, + {"label":"L14", "x":4, "y":1}, + {"label":"R10", "x":11, "y":1}, + {"label":"R11", "x":12, "y":1}, + {"label":"R12", "x":13, "y":1}, + {"label":"R13", "x":14, "y":1}, + {"label":"R14", "x":15, "y":1}, + {"label":"L20", "x":0, "y":2}, + {"label":"L21", "x":1, "y":2}, + {"label":"L22", "x":2, "y":2}, + {"label":"L23", "x":3, "y":2}, + {"label":"L24", "x":4, "y":2}, + {"label":"R20", "x":11, "y":2}, + {"label":"R21", "x":12, "y":2}, + {"label":"R22", "x":13, "y":2}, + {"label":"R23", "x":14, "y":2}, + {"label":"R24", "x":15, "y":2}, + {"label":"L33", "x":4, "y":3}, + {"label":"L34", "x":5, "y":3}, + {"label":"L31", "x":6, "y":3}, + {"label":"R33", "x":9, "y":3}, + {"label":"R34", "x":10, "y":3}, + {"label":"R31", "x":11, "y":3} + ] + } + } +} diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/config.h b/keyboards/bastardkb/blacktyl/keymaps/tompi/config.h new file mode 100644 index 0000000000..6e0a7230fe --- /dev/null +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/config.h @@ -0,0 +1,50 @@ +/* +Copyright 2020 Pierre Chevalier + +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 +// Set the mouse settings to a comfortable speed/accuracy trade-off, +// assuming a screen refresh rate of 60 Htz or higher +// The default is 50. This makes the mouse ~3 times faster and more accurate +#define MOUSEKEY_INTERVAL 16 +// The default is 20. Since we made the mouse about 3 times faster with the previous setting, +// give it more time to accelerate to max speed to retain precise control over short distances. +#define MOUSEKEY_TIME_TO_MAX 40 +// The default is 300. Let's try and make this as low as possible while keeping the cursor responsive +#define MOUSEKEY_DELAY 100 +// It makes sense to use the same delay for the mouseweel +#define MOUSEKEY_WHEEL_DELAY 100 +// The default is 100 +#define MOUSEKEY_WHEEL_INTERVAL 50 +// The default is 40 +#define MOUSEKEY_WHEEL_TIME_TO_MAX 100 + +// Pick good defaults for enabling homerow modifiers +#define TAPPING_TERM 250 +// #define PERMISSIVE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT +#define TAPPING_FORCE_HOLD +#define RETRO_TAPPING + +// Underglow configuration +#ifdef RGBLIGHT_ENABLE + #define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 +#endif + +#define UNICODE_SELECTED_MODES UC_MAC diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json new file mode 100644 index 0000000000..fc77b93958 --- /dev/null +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json @@ -0,0 +1,245 @@ +{ + "version": 1, + "notes": "My awesome keymap", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "bastardkb/skeletyl", + "keymap": "default", + "layout": "LAYOUT_split_3x5_3", + "layers": [ + [ + "LT(5,KC_Q)", "KC_W", "KC_F", "KC_P", "KC_B", "LT(2,KC_J)", "KC_L", "KC_U", "KC_Y", "LT(4,KC_SCLN)", + "KC_A", "KC_R", "KC_S", "KC_T", "KC_G", "KC_M", "KC_N", "KC_E", "KC_I", "KC_O", + "LSFT_T(KC_Z)", "LT(3,KC_X)", "KC_C", "KC_D", "KC_V", "LT(1,KC_K)", "LGUI_T(KC_H)", "LALT_T(KC_COMM)", "LCTL_T(KC_DOT)", "LSFT_T(KC_SLSH)", + "LT(6,KC_ESC)", "KC_BSPC", "KC_LEFT_CTRL", "KC_LEFT_GUI", "KC_SPC", "LT(4,KC_ENT)" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_QUOT", + "KC_BTN1", + "KC_WH_U", + "KC_BTN2", + "KC_TRNS", + "KC_TRNS", + "KC_BTN2", + "KC_NO", + "KC_BTN1", + "KC_TRNS", + "KC_SCLN", + "KC_MS_L", + "KC_MS_D", + "KC_MS_U", + "KC_MS_R", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_LBRC", + "KC_WH_L", + "KC_WH_D", + "KC_WH_R", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_QUOT", + "KC_HOME", + "KC_DEL", + "KC_PGUP", + "KC_NO", + "KC_NO", + "KC_RALT", + "KC_LSFT", + "KC_NO", + "KC_NO", + "KC_O", + "KC_LEFT", + "KC_UP", + "KC_RGHT", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_A", + "KC_END", + "KC_DOWN", + "KC_PGDN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TAB", + "KC_UNDS", + "KC_PIPE", + "KC_QUOT", + "KC_ESC", + "KC_CIRC", + "KC_ASTR", + "KC_AMPR", + "KC_NO", + "KC_TRNS", + "KC_HASH", + "KC_QUOT", + "KC_EXLM", + "KC_DQUO", + "KC_DLR", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_QUOT", + "KC_SCLN", + "KC_LBRC", + "KC_TRNS", + "RGB_RMOD", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "RGB_MOD" + ], + [ + "KC_TRNS", + "KC_COLN", + "KC_LT", + "KC_GT", + "KC_SCLN", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_LCBR", + "KC_RCBR", + "KC_LPRN", + "KC_RPRN", + "KC_AT", + "KC_TRNS", + "KC_TRNS", + "KC_EQL", + "KC_PLUS", + "KC_PERC", + "KC_TRNS", + "KC_EXLM", + "KC_LBRC", + "KC_RBRC", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_TRNS", + "KC_NO", + "LCTL(KC_LALT)", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F11", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F12", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PPLS", + "KC_7", + "KC_8", + "KC_9", + "KC_PAST", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PMNS", + "KC_4", + "KC_5", + "KC_6", + "KC_PSLS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PDOT", + "KC_1", + "KC_2", + "KC_3", + "KC_PEQL", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_0", + "KC_COMM" + ] + ], + "author": "thomas.haukland@gmail.com" +} diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/readme.md b/keyboards/bastardkb/blacktyl/keymaps/tompi/readme.md new file mode 100644 index 0000000000..b76f9519eb --- /dev/null +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/readme.md @@ -0,0 +1,4 @@ +This is basically the default keymap, changed to Colemak DH. + +Also thumb non-homing are changed to ESC and Enter. +Also From d41a769e92e2780d77e48676311281648ead46a6 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 3 Apr 2022 18:35:39 +0200 Subject: [PATCH 11/31] Fix vonreg serial pin --- keyboards/vonreg/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/vonreg/config.h b/keyboards/vonreg/config.h index 46cb8e81ca..1fbb39af05 100644 --- a/keyboards/vonreg/config.h +++ b/keyboards/vonreg/config.h @@ -26,7 +26,7 @@ // #define EE_HANDS -#define SOFT_SERIAL_PIN B6 // D0 or D1, D2, D3, E6 +#define SOFT_SERIAL_PIN B14 // D0 or D1, D2, D3, E6 #define SELECT_SOFT_SERIAL_SPEED 1 // or 0, 2, 3, 4, 5 // 0: about 189kbps (Experimental only) // 1: about 137kbps (default) From 2f1e89c37dc2712cf46731ca948d859a061f5b9d Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sun, 3 Apr 2022 21:53:31 +0200 Subject: [PATCH 12/31] Home row mods --- keyboards/ferris/keymaps/tompi/config.h | 7 +- keyboards/ferris/keymaps/tompi/keymap.json | 212 ++++++++++----------- 2 files changed, 111 insertions(+), 108 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/config.h b/keyboards/ferris/keymaps/tompi/config.h index 53d51d3f27..ab095bbbc7 100644 --- a/keyboards/ferris/keymaps/tompi/config.h +++ b/keyboards/ferris/keymaps/tompi/config.h @@ -33,10 +33,11 @@ along with this program. If not, see . #define MOUSEKEY_WHEEL_TIME_TO_MAX 100 // Pick good defaults for enabling homerow modifiers -#define TAPPING_TERM 300 -#define PERMISSIVE_HOLD +#define TAPPING_TERM 280 +// #define PERMISSIVE_HOLD #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_FORCE_HOLD +#define RETRO_TAPPING // Underglow configuration #ifdef RGBLIGHT_ENABLE @@ -45,3 +46,5 @@ along with this program. If not, see . #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 #endif + +#define UNICODE_SELECTED_MODES UC_MAC diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index f3343d94de..76ebb3729c 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -7,76 +7,76 @@ "layout": "LAYOUT_split_3x5_2", "layers": [ [ - "LT(5,KC_Q)", + "KC_Q", "KC_W", "KC_F", "KC_P", "KC_B", - "LT(2,KC_J)", + "KC_J", "KC_L", "KC_U", "KC_Y", - "LT(4,KC_SCLN)", - "KC_A", - "KC_R", - "KC_S", - "KC_T", + "KC_SCLN", + "LGUI_T(KC_A)", + "LALT_T(KC_R)", + "LCTL_T(KC_S)", + "LSFT_T(KC_T)", "KC_G", "KC_M", - "KC_N", - "KC_E", - "KC_I", - "KC_O", - "LSFT_T(KC_Z)", - "LT(3,KC_X)", + "LSFT_T(KC_N)", + "LCTL_T(KC_E)", + "LALT_T(KC_I)", + "LGUI_T(KC_O)", + "KC_Z", + "KC_X", "KC_C", "KC_D", - "KC_V", + "LT(5,KC_V)", "LT(1,KC_K)", "KC_H", - "LALT_T(KC_COMM)", - "LCTL_T(KC_DOT)", - "LSFT_T(KC_SLSH)", + "KC_COMM", + "KC_DOT", + "KC_SLSH", "LT(6,KC_ESC)", - "KC_BSPC", - "KC_SPC", + "LT(3,KC_BSPC)", + "LT(2,KC_SPC)", "LT(4,KC_ENT)" ], [ - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_QUOT", - "KC_BTN1", - "KC_WH_U", - "KC_BTN2", - "KC_TRNS", - "KC_TRNS", - "KC_BTN2", - "KC_NO", - "KC_BTN1", - "KC_TRNS", - "KC_SCLN", - "KC_MS_L", - "KC_MS_D", - "KC_MS_U", - "KC_MS_R", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_LBRC", + "KC_VOLU", "KC_WH_L", - "KC_WH_D", + "KC_MS_U", + "KC_WH_U", "KC_WH_R", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_MS_L", + "KC_BTN2", + "KC_BTN1", + "KC_MS_R", + "KC_MUTE", + "KC_NO", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_TRNS" + "KC_VOLD", + "KC_MNXT", + "KC_MS_D", + "KC_WH_D", + "KC_MPLY", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO" ], [ "KC_NO", @@ -111,108 +111,108 @@ "KC_NO", "KC_TRNS", "KC_TRNS", - "KC_TRNS", - "KC_TRNS" + "KC_NO", + "KC_NO" ], [ - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TAB", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_AT", "KC_UNDS", "KC_PIPE", "KC_QUOT", "KC_ESC", - "KC_CIRC", - "KC_ASTR", - "KC_AMPR", - "KC_NO", "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", "KC_HASH", - "KC_QUOT", + "KC_TAB", "KC_EXLM", "KC_DQUO", "KC_DLR", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TILD", "KC_QUOT", - "KC_SCLN", - "KC_LBRC", + "KC_BSLS", + "KC_SLSH", + "KC_AMPR", + "KC_NO", + "KC_NO", "KC_TRNS", - "RGB_RMOD", - "KC_TRNS", - "KC_TRNS", - "RGB_MOD" + "KC_TRNS" ], [ - "KC_TRNS", + "KC_NO", "KC_COLN", "KC_LT", "KC_GT", "KC_SCLN", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_LCBR", "KC_RCBR", "KC_LPRN", "KC_RPRN", "KC_AT", + "KC_NO", "KC_TRNS", "KC_TRNS", - "KC_EQL", - "KC_PLUS", - "KC_PERC", "KC_TRNS", + "KC_TRNS", + "KC_NO", "KC_EXLM", "KC_LBRC", "KC_RBRC", "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_NO" ], [ - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", "KC_NO", - "LCTL(KC_LALT)", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", "KC_F4", "KC_F5", "KC_F6", "KC_F11", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_F1", "KC_F2", "KC_F3", @@ -233,10 +233,10 @@ "KC_8", "KC_9", "KC_PAST", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", "KC_NO", "KC_PMNS", "KC_4", From f8ae2b62307c4ce16c142b06236ea58da3c6e0c5 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Tue, 5 Apr 2022 12:56:41 +0200 Subject: [PATCH 13/31] Ferris keymap: fallthrough on arrow layer --- keyboards/ferris/keymaps/tompi/keymap.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index 76ebb3729c..67e4015747 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -95,10 +95,10 @@ "KC_RGHT", "KC_NO", "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", "KC_NO", "KC_END", "KC_DOWN", From 19a3d3ea105a216a765b57de2523be5bc40d53bd Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Tue, 5 Apr 2022 22:16:06 +0200 Subject: [PATCH 14/31] Modifiers for navigation layer --- .../blacktyl/keymaps/tompi/keymap.json | 296 ++++++++++-------- 1 file changed, 164 insertions(+), 132 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json index fc77b93958..109a357974 100644 --- a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json @@ -7,71 +7,103 @@ "layout": "LAYOUT_split_3x5_3", "layers": [ [ - "LT(5,KC_Q)", "KC_W", "KC_F", "KC_P", "KC_B", "LT(2,KC_J)", "KC_L", "KC_U", "KC_Y", "LT(4,KC_SCLN)", - "KC_A", "KC_R", "KC_S", "KC_T", "KC_G", "KC_M", "KC_N", "KC_E", "KC_I", "KC_O", - "LSFT_T(KC_Z)", "LT(3,KC_X)", "KC_C", "KC_D", "KC_V", "LT(1,KC_K)", "LGUI_T(KC_H)", "LALT_T(KC_COMM)", "LCTL_T(KC_DOT)", "LSFT_T(KC_SLSH)", - "LT(6,KC_ESC)", "KC_BSPC", "KC_LEFT_CTRL", "KC_LEFT_GUI", "KC_SPC", "LT(4,KC_ENT)" - ], - [ - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_QUOT", - "KC_BTN1", - "KC_WH_U", - "KC_BTN2", - "KC_TRNS", - "KC_TRNS", - "KC_BTN2", - "KC_NO", - "KC_BTN1", - "KC_TRNS", + "KC_Q", + "KC_W", + "KC_F", + "KC_P", + "KC_B", + "KC_J", + "KC_L", + "KC_U", + "KC_Y", "KC_SCLN", - "KC_MS_L", - "KC_MS_D", - "KC_MS_U", - "KC_MS_R", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_LBRC", - "KC_WH_L", - "KC_WH_D", - "KC_WH_R", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS" + "LGUI_T(KC_A)", + "LALT_T(KC_R)", + "LCTL_T(KC_S)", + "LSFT_T(KC_T)", + "KC_G", + "KC_M", + "LSFT_T(KC_N)", + "LCTL_T(KC_E)", + "LALT_T(KC_I)", + "LGUI_T(KC_O)", + "KC_Z", + "KC_X", + "KC_C", + "KC_D", + "LT(5,KC_V)", + "LT(1,KC_K)", + "KC_H", + "KC_COMM", + "KC_DOT", + "KC_SLSH", + "LT(6,KC_ESC)", + "LT(3,KC_BSPC)", + "KC_TAB", + "KC_DEL", + "LT(2,KC_SPC)", + "LT(4,KC_ENT)" ], [ - "KC_QUOT", + "KC_VOLU", + "KC_WH_L", + "KC_MS_U", + "KC_WH_U", + "KC_WH_R", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_MS_L", + "KC_BTN2", + "KC_BTN1", + "KC_MS_R", + "KC_MUTE", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_VOLD", + "KC_MNXT", + "KC_MS_D", + "KC_WH_D", + "KC_MPLY", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", "KC_HOME", "KC_DEL", "KC_PGUP", "KC_NO", "KC_NO", - "KC_RALT", - "KC_LSFT", "KC_NO", "KC_NO", - "KC_O", + "KC_NO", + "KC_NO", + "KC_NO", "KC_LEFT", "KC_UP", "KC_RGHT", "KC_NO", "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_A", "KC_END", "KC_DOWN", "KC_PGDN", @@ -81,116 +113,116 @@ "KC_NO", "KC_NO", "KC_NO", + "KC_NO", "KC_TRNS", "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS" + "KC_NO", + "KC_NO", + "KC_NO" ], [ - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TAB", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_AT", "KC_UNDS", "KC_PIPE", "KC_QUOT", "KC_ESC", - "KC_CIRC", - "KC_ASTR", - "KC_AMPR", - "KC_NO", "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", "KC_HASH", - "KC_QUOT", + "KC_TAB", "KC_EXLM", "KC_DQUO", "KC_DLR", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TILD", "KC_QUOT", - "KC_SCLN", - "KC_LBRC", - "KC_TRNS", - "RGB_RMOD", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "RGB_MOD" - ], - [ - "KC_TRNS", - "KC_COLN", - "KC_LT", - "KC_GT", - "KC_SCLN", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_LCBR", - "KC_RCBR", - "KC_LPRN", - "KC_RPRN", - "KC_AT", - "KC_TRNS", - "KC_TRNS", - "KC_EQL", - "KC_PLUS", - "KC_PERC", - "KC_TRNS", - "KC_EXLM", - "KC_LBRC", - "KC_RBRC", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_BSLS", + "KC_SLSH", + "KC_AMPR", + "KC_NO", + "KC_NO", + "KC_NO", "KC_TRNS", "KC_TRNS", "KC_NO" ], [ + "KC_NO", + "KC_COLN", + "KC_LT", + "KC_GT", + "KC_SCLN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_LCBR", + "KC_RCBR", + "KC_LPRN", + "KC_RPRN", + "KC_AT", + "KC_NO", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", + "KC_NO", + "KC_EXLM", + "KC_LBRC", + "KC_RBRC", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_TRNS", "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", "KC_NO", - "LCTL(KC_LALT)", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", "KC_F4", "KC_F5", "KC_F6", "KC_F11", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_F1", "KC_F2", "KC_F3", @@ -213,10 +245,10 @@ "KC_8", "KC_9", "KC_PAST", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", "KC_NO", "KC_PMNS", "KC_4", @@ -235,11 +267,11 @@ "KC_PEQL", "KC_NO", "KC_NO", - "KC_TRNS", - "KC_TRNS", + "KC_NO", "KC_0", - "KC_COMM" + "KC_COMM", + "KC_NO" ] ], "author": "thomas.haukland@gmail.com" -} +} \ No newline at end of file From de2e6769a2e96ee3198b70214076efd135aaa197 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sat, 9 Apr 2022 19:25:11 +0200 Subject: [PATCH 15/31] The vonreg works... --- keyboards/vonreg/config.h | 10 +++++----- keyboards/vonreg/readme.md | 7 +++++++ 2 files changed, 12 insertions(+), 5 deletions(-) create mode 100644 keyboards/vonreg/readme.md diff --git a/keyboards/vonreg/config.h b/keyboards/vonreg/config.h index 1fbb39af05..227dbbff83 100644 --- a/keyboards/vonreg/config.h +++ b/keyboards/vonreg/config.h @@ -11,12 +11,12 @@ #define DIRECT_PINS {{B12, B13, B15, B1, B0}, \ {A15, A5, B3, A6, A7}, \ - {C13, A2, B5, B4, A8}, \ - {B9, B8, C14, NO_PIN, NO_PIN}} + {A4, A2, B5, B4, B6}, \ + {B9, B8, B7, NO_PIN, NO_PIN}} #define DIRECT_PINS_RIGHT {{B0, B1, B15, B13, B12}, \ {A7, A6, B3, A5, A15}, \ - {A8, B4, B5, A2, C13}, \ - {C14, B8, B9, NO_PIN, NO_PIN}} + {B6, B4, B5, A2, A4}, \ + {B7, B8, B9, NO_PIN, NO_PIN}} // Full duplex WORKS... @@ -24,7 +24,7 @@ //#define SERIAL_USART_TX_PIN B6 // USART TX pin //#define SERIAL_USART_RX_PIN B7 // USART RX pin -// #define EE_HANDS +#define EE_HANDS #define SOFT_SERIAL_PIN B14 // D0 or D1, D2, D3, E6 #define SELECT_SOFT_SERIAL_SPEED 1 // or 0, 2, 3, 4, 5 diff --git a/keyboards/vonreg/readme.md b/keyboards/vonreg/readme.md new file mode 100644 index 0000000000..fbc20048b1 --- /dev/null +++ b/keyboards/vonreg/readme.md @@ -0,0 +1,7 @@ +To flash left: + +make vonreg:default:dfu-util-split-left + +To flash right: + +make vonreg:default:dfu-util-split-right From d13d2649426d2f401aa31edc094eb25abba3cec3 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sat, 9 Apr 2022 22:40:02 +0200 Subject: [PATCH 16/31] colemak dh for the vonreg --- keyboards/vonreg/config.h | 10 +- keyboards/vonreg/keymaps/default/keymap.c | 87 ++++-- keyboards/vonreg/keymaps/default/keymap.json | 106 ------- keyboards/vonreg/keymaps/tompi/config.h | 50 ++++ keyboards/vonreg/keymaps/tompi/keymap.json | 277 +++++++++++++++++++ 5 files changed, 397 insertions(+), 133 deletions(-) delete mode 100644 keyboards/vonreg/keymaps/default/keymap.json create mode 100644 keyboards/vonreg/keymaps/tompi/config.h create mode 100644 keyboards/vonreg/keymaps/tompi/keymap.json diff --git a/keyboards/vonreg/config.h b/keyboards/vonreg/config.h index 227dbbff83..337d77e3b1 100644 --- a/keyboards/vonreg/config.h +++ b/keyboards/vonreg/config.h @@ -9,14 +9,14 @@ #define MATRIX_ROWS 8 #define MATRIX_COLS 5 -#define DIRECT_PINS {{B12, B13, B15, B1, B0}, \ +#define DIRECT_PINS {{B0, B1, B15, B13, B12}, \ + {A7, A6, B3, A5, A15}, \ + {A4, B4, B5, A2, B6}, \ + {B7, B8, B9, NO_PIN, NO_PIN}} +#define DIRECT_PINS_RIGHT {{B12, B13, B15, B1, B0}, \ {A15, A5, B3, A6, A7}, \ {A4, A2, B5, B4, B6}, \ {B9, B8, B7, NO_PIN, NO_PIN}} -#define DIRECT_PINS_RIGHT {{B0, B1, B15, B13, B12}, \ - {A7, A6, B3, A5, A15}, \ - {B6, B4, B5, A2, A4}, \ - {B7, B8, B9, NO_PIN, NO_PIN}} // Full duplex WORKS... diff --git a/keyboards/vonreg/keymaps/default/keymap.c b/keyboards/vonreg/keymaps/default/keymap.c index 1029d8fa9b..0fd6f04a25 100644 --- a/keyboards/vonreg/keymaps/default/keymap.c +++ b/keyboards/vonreg/keymaps/default/keymap.c @@ -1,27 +1,70 @@ -// Copyright 2022 Tompi -// SPDX-License-Identifier: MIT +/* + * Copyright 2021 Quentin LEBASTARD + * + * 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] = { - /* - * ┌───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┐ - * │ 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 │ , │ . │ / │ - * └───┴───┴───┴───┴───┘ └───┴───┴───┴───┴───┘ - * ┌───┐ ┌───┐ - * │GUI├───┐ ┌───┤Alt│ - * └───┤ ├───┐ ┌───┤ ├───┘ - * └───┤Bsp│ │Ent├───┘ - * └───┘ └───┘ - */ - [0] = LAYOUT_split_3x5_3( - 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_LGUI, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, KC_RALT - ) + + [0] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + 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_1, KC_SPC , KC_2, KC_3, KC_ENT , KC_4 + //`--------------------------' `--------------------------' + + ), + + [1] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP,KC_RIGHT, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, _______, MO(3), KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ), + + [2] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, MO(3), _______, KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ), + + [3] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, _______, _______, KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ) }; diff --git a/keyboards/vonreg/keymaps/default/keymap.json b/keyboards/vonreg/keymaps/default/keymap.json deleted file mode 100644 index 3fab4a5940..0000000000 --- a/keyboards/vonreg/keymaps/default/keymap.json +++ /dev/null @@ -1,106 +0,0 @@ -{ "version": 1, - "notes": "My awesome keymap", - "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", - "keyboard": "vonreg", - "keymap": "default", - "layout": "LAYOUT_split_3x5_3", - "layers": [ - ["KC_Q" , "KC_W" , "KC_E" , "KC_R" , "KC_T", - "KC_Y" , "KC_U" , "KC_I" , "KC_O" , "KC_P", - - "LSFT_T(KC_A)", "LT(5,KC_S)" , "LT(1,KC_D)" , "LT(3,KC_F)" , "KC_G", - "KC_H" , "LT(4,KC_J)" , "LT(2,KC_K)" , "LT(6,KC_L)" , "LSFT_T(KC_SCLN)", - - "KC_Z" , "LCTL_T(KC_X)", "LALT_T(KC_C)" , "KC_V" , "KC_B", - "KC_N" , "KC_M" , "LALT_T(KC_COMM)", "LCTL_T(KC_DOT)", "KC_SLSH", - - "KC_P0" , "KC_BSPC", "KC_ESC", - "LT(7,KC_SPC)", "KC_P1", "KC_TAB" - ], - ["KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_BTN1" , "KC_WH_U" , "KC_BTN2" , "KC_TRNS", - - "KC_TRNS" , "KC_BTN2" , "KC_NO" , "KC_BTN1" , "KC_TRNS", - "KC_TRNS" , "KC_MS_L" , "KC_MS_D" , "KC_MS_U" , "KC_MS_R", - - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_WH_L" , "KC_WH_D" , "KC_WH_R" , "KC_TRNS", - - "KC_TRNS" , "KC_TRNS","KC_TRNS", - "KC_TRNS" ,"KC_TRNS", "KC_TRNS" - ], - ["KC_TRNS" , "KC_TRNS" , "KC_PGUP" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - - "KC_LEFT" , "KC_UP" , "KC_DOWN" , "KC_RGHT" , "KC_TRNS", - "KC_TRNS" , "KC_LGUI" , "KC_NO" , "LCTL(KC_LALT)" , "LCA(KC_LSFT)", - - "KC_TRNS" , "KC_HOME" , "KC_PGDN" , "KC_END" , "KC_TRNS", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - - "KC_TRNS" , "KC_TRNS","KC_TRNS", - "KC_TRNS" ,"KC_TRNS", "KC_TRNS" - ], - ["KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_UNDS" , "KC_PIPE" , "KC_QUOT" , "KC_TRNS", - - "KC_CIRC" , "KC_ASTR" , "KC_AMPR" , "KC_NO" , "KC_TRNS", - "KC_HASH" , "KC_TILD" , "KC_SLSH" , "KC_DQUO" , "KC_DLR", - - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_MINS" , "KC_BSLS" , "KC_GRV" , "KC_TRNS", - - "RGB_RMOD" , "KC_TRNS","KC_TRNS", - "KC_TRNS" ,"KC_TRNS", "RGB_MOD" - ], - ["KC_TRNS" , "KC_COLN" , "KC_LT" , "KC_GT" , "KC_SCLN", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - - "KC_LCBR" , "KC_RCBR" , "KC_LPRN" , "KC_RPRN" , "KC_AT", - "KC_TRNS" , "KC_NO" , "KC_EQL" , "KC_PLUS" , "KC_PERC", - - "KC_TRNS" , "KC_EXLM" , "KC_LBRC" , "KC_RBRC" , "KC_TRNS", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - - "KC_VOLD" , "KC_TRNS","KC_TRNS", - "KC_TRNS" ,"KC_TRNS", "KC_VOLU" - ], - ["KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_F7" , "KC_F8" , "KC_F9" , "KC_F10", - - "KC_TRNS" , "KC_NO" , "LCTL(KC_LALT)" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_F4" , "KC_F5" , "KC_F6" , "KC_F11", - - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - "KC_TRNS" , "KC_F1" , "KC_F2" , "KC_F3" , "KC_F12", - - "KC_TRNS" ,"KC_TRNS", "KC_TRNS", - "KC_TRNS" ,"KC_TRNS", "KC_TRNS" - ], - ["KC_PSLS" , "KC_7" , "KC_8" , "KC_9" , "KC_PPLS", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - - "KC_0" , "KC_1" , "KC_2" , "KC_3" , "KC_PMNS", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_NO" , "KC_TRNS", - - "KC_PAST" , "KC_4" , "KC_5" , "KC_6" , "KC_PEQL", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - - "KC_TRNS" ,"KC_TRNS", "KC_TRNS", - "KC_TRNS" ,"KC_TRNS", "KC_TRNS" - ], - ["KC_TRNS" , "KC_TRNS" , "KC_COLN" , "KC_ESC" , "KC_TRNS", - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_DEL", - - "KC_TRNS" , "KC_PERC" , "KC_SLSH" , "KC_ENT" , "KC_TRNS", - "DF(1)" , "KC_LGUI" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - - "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_EXLM" , "KC_TRNS", - "DF(0)" , "KC_TRNS" , "RALT_T(KC_COMM)", "RCTL_T(KC_DOT)", "RESET", - - "KC_TRNS" ,"KC_TRNS", "KC_TAB", - "KC_NO" ,"KC_TRNS", "KC_TRNS" - ] - ], - "author": "@tompi" -} diff --git a/keyboards/vonreg/keymaps/tompi/config.h b/keyboards/vonreg/keymaps/tompi/config.h new file mode 100644 index 0000000000..6e0a7230fe --- /dev/null +++ b/keyboards/vonreg/keymaps/tompi/config.h @@ -0,0 +1,50 @@ +/* +Copyright 2020 Pierre Chevalier + +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 +// Set the mouse settings to a comfortable speed/accuracy trade-off, +// assuming a screen refresh rate of 60 Htz or higher +// The default is 50. This makes the mouse ~3 times faster and more accurate +#define MOUSEKEY_INTERVAL 16 +// The default is 20. Since we made the mouse about 3 times faster with the previous setting, +// give it more time to accelerate to max speed to retain precise control over short distances. +#define MOUSEKEY_TIME_TO_MAX 40 +// The default is 300. Let's try and make this as low as possible while keeping the cursor responsive +#define MOUSEKEY_DELAY 100 +// It makes sense to use the same delay for the mouseweel +#define MOUSEKEY_WHEEL_DELAY 100 +// The default is 100 +#define MOUSEKEY_WHEEL_INTERVAL 50 +// The default is 40 +#define MOUSEKEY_WHEEL_TIME_TO_MAX 100 + +// Pick good defaults for enabling homerow modifiers +#define TAPPING_TERM 250 +// #define PERMISSIVE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT +#define TAPPING_FORCE_HOLD +#define RETRO_TAPPING + +// Underglow configuration +#ifdef RGBLIGHT_ENABLE + #define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 +#endif + +#define UNICODE_SELECTED_MODES UC_MAC diff --git a/keyboards/vonreg/keymaps/tompi/keymap.json b/keyboards/vonreg/keymaps/tompi/keymap.json new file mode 100644 index 0000000000..9fbdcdc6e7 --- /dev/null +++ b/keyboards/vonreg/keymaps/tompi/keymap.json @@ -0,0 +1,277 @@ +{ + "version": 1, + "notes": "My awesome keymap", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "vonreg", + "keymap": "default", + "layout": "LAYOUT_split_3x5_3", + "layers": [ + [ + "KC_Q", + "KC_W", + "KC_F", + "KC_P", + "KC_B", + "KC_J", + "KC_L", + "KC_U", + "KC_Y", + "KC_SCLN", + "LGUI_T(KC_A)", + "LALT_T(KC_R)", + "LCTL_T(KC_S)", + "LSFT_T(KC_T)", + "KC_G", + "KC_M", + "LSFT_T(KC_N)", + "LCTL_T(KC_E)", + "LALT_T(KC_I)", + "LGUI_T(KC_O)", + "KC_Z", + "KC_X", + "KC_C", + "KC_D", + "LT(5,KC_V)", + "LT(1,KC_K)", + "KC_H", + "KC_COMM", + "KC_DOT", + "KC_SLSH", + "LT(6,KC_ESC)", + "LT(3,KC_BSPC)", + "KC_TAB", + "KC_DEL", + "LT(2,KC_SPC)", + "LT(4,KC_ENT)" + ], + [ + "KC_VOLU", + "KC_WH_L", + "KC_MS_U", + "KC_WH_U", + "KC_WH_R", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_MS_L", + "KC_BTN2", + "KC_BTN1", + "KC_MS_R", + "KC_MUTE", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_VOLD", + "KC_MNXT", + "KC_MS_D", + "KC_WH_D", + "KC_MPLY", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_HOME", + "KC_DEL", + "KC_PGUP", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_LEFT", + "KC_UP", + "KC_RGHT", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_END", + "KC_DOWN", + "KC_PGDN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_AT", + "KC_UNDS", + "KC_PIPE", + "KC_QUOT", + "KC_ESC", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_HASH", + "KC_TAB", + "KC_EXLM", + "KC_DQUO", + "KC_DLR", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TILD", + "KC_QUOT", + "KC_BSLS", + "KC_SLSH", + "KC_AMPR", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO" + ], + [ + "KC_NO", + "KC_COLN", + "KC_LT", + "KC_GT", + "KC_SCLN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_LCBR", + "KC_RCBR", + "KC_LPRN", + "KC_RPRN", + "KC_AT", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_EXLM", + "KC_LBRC", + "KC_RBRC", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F11", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F12", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PPLS", + "KC_7", + "KC_8", + "KC_9", + "KC_PAST", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_PMNS", + "KC_4", + "KC_5", + "KC_6", + "KC_PSLS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PDOT", + "KC_1", + "KC_2", + "KC_3", + "KC_PEQL", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_0", + "KC_COMM", + "KC_NO" + ] + ], + "author": "thomas.haukland@gmail.com" +} From 79b1e1e23be1adc80fba870280b3fc8302ed78d6 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sat, 9 Apr 2022 23:57:07 +0200 Subject: [PATCH 17/31] stabilize vonreg --- keyboards/vonreg/config.h | 14 +++++--------- keyboards/vonreg/info.json | 2 +- keyboards/vonreg/rules.mk | 2 +- keyboards/vonreg/vonreg.h | 8 ++++---- 4 files changed, 11 insertions(+), 15 deletions(-) diff --git a/keyboards/vonreg/config.h b/keyboards/vonreg/config.h index 337d77e3b1..e985437256 100644 --- a/keyboards/vonreg/config.h +++ b/keyboards/vonreg/config.h @@ -13,10 +13,6 @@ {A7, A6, B3, A5, A15}, \ {A4, B4, B5, A2, B6}, \ {B7, B8, B9, NO_PIN, NO_PIN}} -#define DIRECT_PINS_RIGHT {{B12, B13, B15, B1, B0}, \ - {A15, A5, B3, A6, A7}, \ - {A4, A2, B5, B4, B6}, \ - {B9, B8, B7, NO_PIN, NO_PIN}} // Full duplex WORKS... @@ -27,7 +23,7 @@ #define EE_HANDS #define SOFT_SERIAL_PIN B14 // D0 or D1, D2, D3, E6 -#define SELECT_SOFT_SERIAL_SPEED 1 // or 0, 2, 3, 4, 5 +#define SELECT_SOFT_SERIAL_SPEED 2 // or 0, 2, 3, 4, 5 // 0: about 189kbps (Experimental only) // 1: about 137kbps (default) // 2: about 75kbps @@ -37,10 +33,10 @@ /* Top left key on left half */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 0 +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 /* Top right key on right half */ -#define BOOTMAGIC_LITE_ROW_RIGHT 4 -#define BOOTMAGIC_LITE_COLUMN_RIGHT 4 +//#define BOOTMAGIC_LITE_ROW_RIGHT 4 +//#define BOOTMAGIC_LITE_COLUMN_RIGHT 4 #define DEVICE_VER 0x0001 diff --git a/keyboards/vonreg/info.json b/keyboards/vonreg/info.json index bc813fe077..82a892b048 100644 --- a/keyboards/vonreg/info.json +++ b/keyboards/vonreg/info.json @@ -5,7 +5,7 @@ "bootloader": "stm32-dfu", "diode_direction": "COL2ROW", "features": { - "bootmagic_lite": true, + "bootmagic_lite": false, "command": false, "console": false, "extrakey": true, diff --git a/keyboards/vonreg/rules.mk b/keyboards/vonreg/rules.mk index 87499eed25..129d3f1717 100644 --- a/keyboards/vonreg/rules.mk +++ b/keyboards/vonreg/rules.mk @@ -1,4 +1,4 @@ -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite SPLIT_KEYBOARD = yes SERIAL_DRIVER = bitbang diff --git a/keyboards/vonreg/vonreg.h b/keyboards/vonreg/vonreg.h index 42c713141d..071d8438dd 100644 --- a/keyboards/vonreg/vonreg.h +++ b/keyboards/vonreg/vonreg.h @@ -18,10 +18,10 @@ #define ___ KC_NO #define LAYOUT_split_3x5_3( \ - L01, L02, L03, L04, L05, R01, R02, R03, R04, R05, \ - L06, L07, L08, L09, L10, R06, R07, R08, R09, R10, \ - L11, L12, L13, L14, L15, R11, R12, R13, R14, R15, \ - L16, L17, L18, R16, R17, R18 \ + L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, \ + L06, L07, L08, L09, L10, R10, R09, R08, R07, R06, \ + L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, \ + L16, L17, L18, R18, R17, R16 \ ) \ { \ { L01, L02, L03, L04, L05 }, \ From 699bfcc53305bea2b5170f33d6f6a89d8ac0f489 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sat, 16 Apr 2022 23:16:30 +0200 Subject: [PATCH 18/31] Use user LED: light when not typing... also enabling boot magic and RALT --- keyboards/vonreg/config.h | 8 ++++---- keyboards/vonreg/keymaps/tompi/keymap.json | 6 +++--- keyboards/vonreg/rules.mk | 2 +- keyboards/vonreg/vonreg.c | 20 ++++++++++++++++++++ 4 files changed, 28 insertions(+), 8 deletions(-) diff --git a/keyboards/vonreg/config.h b/keyboards/vonreg/config.h index e985437256..b6bf7a3b40 100644 --- a/keyboards/vonreg/config.h +++ b/keyboards/vonreg/config.h @@ -33,10 +33,10 @@ /* Top left key on left half */ -//#define BOOTMAGIC_LITE_ROW 0 -//#define BOOTMAGIC_LITE_COLUMN 0 +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 /* Top right key on right half */ -//#define BOOTMAGIC_LITE_ROW_RIGHT 4 -//#define BOOTMAGIC_LITE_COLUMN_RIGHT 4 +#define BOOTMAGIC_LITE_ROW_RIGHT 4 +#define BOOTMAGIC_LITE_COLUMN_RIGHT 4 #define DEVICE_VER 0x0001 diff --git a/keyboards/vonreg/keymaps/tompi/keymap.json b/keyboards/vonreg/keymaps/tompi/keymap.json index 9fbdcdc6e7..abab1afb38 100644 --- a/keyboards/vonreg/keymaps/tompi/keymap.json +++ b/keyboards/vonreg/keymaps/tompi/keymap.json @@ -2,7 +2,7 @@ "version": 1, "notes": "My awesome keymap", "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", - "keyboard": "vonreg", + "keyboard": "bastardkb/skeletyl", "keymap": "default", "layout": "LAYOUT_split_3x5_3", "layers": [ @@ -16,7 +16,7 @@ "KC_L", "KC_U", "KC_Y", - "KC_SCLN", + "RALT_T(KC_SCLN)", "LGUI_T(KC_A)", "LALT_T(KC_R)", "LCTL_T(KC_S)", @@ -27,7 +27,7 @@ "LCTL_T(KC_E)", "LALT_T(KC_I)", "LGUI_T(KC_O)", - "KC_Z", + "RALT_T(KC_Z)", "KC_X", "KC_C", "KC_D", diff --git a/keyboards/vonreg/rules.mk b/keyboards/vonreg/rules.mk index 129d3f1717..87499eed25 100644 --- a/keyboards/vonreg/rules.mk +++ b/keyboards/vonreg/rules.mk @@ -1,4 +1,4 @@ -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite SPLIT_KEYBOARD = yes SERIAL_DRIVER = bitbang diff --git a/keyboards/vonreg/vonreg.c b/keyboards/vonreg/vonreg.c index 83256d6c6c..a439df35dc 100644 --- a/keyboards/vonreg/vonreg.c +++ b/keyboards/vonreg/vonreg.c @@ -16,3 +16,23 @@ #include "vonreg.h" +char _down; + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + writePinHigh(C13); + _down++; + } else { + _down--; + if (_down == 0) { + writePinLow(C13); + } + } + //process_record_user(keycode, record); + return true; +} + +void keyboard_post_init_kb(void) { + setPinOutput(C13); + //keyboard_post_init_user(); +} From a716b3b7b1381b767253f807b5c276d8c333c378 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Fri, 13 May 2022 20:16:44 +0200 Subject: [PATCH 19/31] Blacktyl: media and mouse keys Also magic boot++ --- keyboards/bastardkb/blacktyl/config.h | 9 +++++++++ keyboards/bastardkb/blacktyl/halconf.h | 11 ++++++----- keyboards/bastardkb/blacktyl/mcuconf.h | 8 ++++++-- keyboards/bastardkb/blacktyl/rules.mk | 2 ++ 4 files changed, 23 insertions(+), 7 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/config.h b/keyboards/bastardkb/blacktyl/config.h index 861c8f108d..70b1d93e3e 100644 --- a/keyboards/bastardkb/blacktyl/config.h +++ b/keyboards/bastardkb/blacktyl/config.h @@ -24,6 +24,8 @@ #define DIODE_DIRECTION ROW2COL // #define DEBUG_MATRIX_SCAN_RATE +// + /* RGB CONFIG - WS2812 DRIVER #define RGB_DI_PIN A1 @@ -69,3 +71,10 @@ /* PMW3360 DRIVER */ //#define PMW3360_CS_PIN B14 +// +/* Top left key on left half */ + #define BOOTMAGIC_LITE_ROW 0 + #define BOOTMAGIC_LITE_COLUMN 0 + /* Top right key on right half */ + #define BOOTMAGIC_LITE_ROW_RIGHT 4 + #define BOOTMAGIC_LITE_COLUMN_RIGHT 4 diff --git a/keyboards/bastardkb/blacktyl/halconf.h b/keyboards/bastardkb/blacktyl/halconf.h index c9d907d342..a52da28e54 100644 --- a/keyboards/bastardkb/blacktyl/halconf.h +++ b/keyboards/bastardkb/blacktyl/halconf.h @@ -1,10 +1,11 @@ #pragma once -//#define HAL_USE_SPI TRUE -//#define HAL_USE_PWM TRUE +#define HAL_USE_PWM TRUE #define HAL_USE_SERIAL TRUE - -// #define PAL_USE_CALLBACKS TRUE -// #define PAL_USE_WAIT TRUE +//#define HAL_USE_I2C TRUE +#define HAL_USE_SPI TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD +#define HAL_USE_GPT TRUE #include_next diff --git a/keyboards/bastardkb/blacktyl/mcuconf.h b/keyboards/bastardkb/blacktyl/mcuconf.h index e907adca80..7bae79768a 100644 --- a/keyboards/bastardkb/blacktyl/mcuconf.h +++ b/keyboards/bastardkb/blacktyl/mcuconf.h @@ -8,11 +8,15 @@ #undef STM32_ST_USE_TIMER #define STM32_ST_USE_TIMER 5 -//#undef STM32_PWM_USE_TIM2 -//#define STM32_PWM_USE_TIM2 TRUE +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE #undef STM32_SPI_USE_SPI1 #define STM32_SPI_USE_SPI1 TRUE #undef STM32_SERIAL_USE_USART1 #define STM32_SERIAL_USE_USART1 TRUE + +#undef STM32_GPT_USE_TIM3 +#define STM32_GPT_USE_TIM3 TRUE + diff --git a/keyboards/bastardkb/blacktyl/rules.mk b/keyboards/bastardkb/blacktyl/rules.mk index 56646b3d12..02895c435d 100644 --- a/keyboards/bastardkb/blacktyl/rules.mk +++ b/keyboards/bastardkb/blacktyl/rules.mk @@ -22,3 +22,5 @@ SERIAL_DRIVER = usart SPLIT_KEYBOARD = yes # VIA_ENABLE = no # WS2812_DRIVER = pwm +MOUSEKEY_ENABLE = yes +EXTRAKEY_ENABLE = yes From 54802c8d674b94b202288eaf9571e6671c8b9443 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Thu, 19 May 2022 21:55:36 +0200 Subject: [PATCH 20/31] Put space on left thumb(more sane placement) --- keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json index 109a357974..3064702e96 100644 --- a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json @@ -38,10 +38,10 @@ "KC_DOT", "KC_SLSH", "LT(6,KC_ESC)", - "LT(3,KC_BSPC)", - "KC_TAB", - "KC_DEL", - "LT(2,KC_SPC)", + "LT(3,KC_SPC)", + "LT(5,KC_TAB)", + "LT(1,KC_DEL)", + "LT(2,KC_BSPC)", "LT(4,KC_ENT)" ], [ @@ -274,4 +274,4 @@ ] ], "author": "thomas.haukland@gmail.com" -} \ No newline at end of file +} From 7691878f4be99f13724410b83a7fa58ef213dbcc Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Thu, 19 May 2022 21:56:36 +0200 Subject: [PATCH 21/31] Lars skeletyl: wip, debug enabled --- .../bastardkb/blacktyl_lars/blacktyl_lars.c | 91 ++++++ .../bastardkb/blacktyl_lars/blacktyl_lars.h | 38 +++ keyboards/bastardkb/blacktyl_lars/chconf.h | 17 ++ keyboards/bastardkb/blacktyl_lars/config.h | 88 ++++++ keyboards/bastardkb/blacktyl_lars/halconf.h | 11 + keyboards/bastardkb/blacktyl_lars/info.json | 5 + .../blacktyl_lars/keymaps/default/keymap.c | 70 +++++ .../blacktyl_lars/keymaps/tompi/config.h | 50 ++++ .../blacktyl_lars/keymaps/tompi/keymap.json | 277 ++++++++++++++++++ .../blacktyl_lars/keymaps/tompi/readme.md | 4 + keyboards/bastardkb/blacktyl_lars/mcuconf.h | 22 ++ keyboards/bastardkb/blacktyl_lars/rules.mk | 33 +++ 12 files changed, 706 insertions(+) create mode 100644 keyboards/bastardkb/blacktyl_lars/blacktyl_lars.c create mode 100644 keyboards/bastardkb/blacktyl_lars/blacktyl_lars.h create mode 100644 keyboards/bastardkb/blacktyl_lars/chconf.h create mode 100644 keyboards/bastardkb/blacktyl_lars/config.h create mode 100644 keyboards/bastardkb/blacktyl_lars/halconf.h create mode 100644 keyboards/bastardkb/blacktyl_lars/info.json create mode 100644 keyboards/bastardkb/blacktyl_lars/keymaps/default/keymap.c create mode 100644 keyboards/bastardkb/blacktyl_lars/keymaps/tompi/config.h create mode 100644 keyboards/bastardkb/blacktyl_lars/keymaps/tompi/keymap.json create mode 100644 keyboards/bastardkb/blacktyl_lars/keymaps/tompi/readme.md create mode 100644 keyboards/bastardkb/blacktyl_lars/mcuconf.h create mode 100644 keyboards/bastardkb/blacktyl_lars/rules.mk diff --git a/keyboards/bastardkb/blacktyl_lars/blacktyl_lars.c b/keyboards/bastardkb/blacktyl_lars/blacktyl_lars.c new file mode 100644 index 0000000000..7d42f04f92 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/blacktyl_lars.c @@ -0,0 +1,91 @@ + +#include "blacktyl_lars.h" + +void keyboard_post_init_user(void) { + debug_config.enable = true; + debug_config.matrix = true; + debug_config.keyboard = true; + // debug_config.mouse = true; + + if (is_keyboard_left()) { + dprintln("I'm left!"); + } else { + dprintln("I'm right!"); + } + rgblight_set(); +} + +/* +void housekeeping_task_user(void) { + static uint16_t start = 0; + if (timer_elapsed(start) > 1000) { + start = timer_read(); + dprintf("Fresh into eeprom %d\n", (uint8_t)start); + eeconfig_update_debug((uint8_t)start); + dprintf("Fresh from eeprom %d\n", (uint8_t)eeconfig_read_debug()); + } +} +*/ + +/** + * LEDs index. + * + * ╭────────────────────╮ ╭────────────────────╮ + * 2 3 8 9 12 30 27 26 21 20 + * ├────────────────────┤ ├────────────────────┤ + * 1 4 7 10 13 31 28 25 22 19 + * ├────────────────────┤ ├────────────────────┤ + * 0 5 6 11 14 32 29 24 23 18 + * ╰────────────────────╯ ╰────────────────────╯ + * 15 16 17 35 34 33 + * ╰────────────╯ ╰────────────╯ + */ +// clang-format off +#ifdef RGB_MATRIX_ENABLE + led_config_t g_led_config = { { + /* Key Matrix to LED index. */ + // Left split. + { 2, 3, 8, 9, 12 }, // Top row + { 1, 4, 7, 10, 13 }, // Middle row + { 0, 5, 6, 11, 14 }, // Bottom row + { 17, NO_LED, 15, 16, NO_LED }, // Thumb cluster + // Right split. + { 20, 21, 26, 27, 30 }, // Top row + { 19, 22, 25, 28, 31 }, // Middle row + { 18, 23, 24, 29, 32 }, // Bottom row + { 35, NO_LED, 33, 34, NO_LED }, // Thumb cluster + }, { + /* LED index to physical position. */ + // Left split. + /* index=0 */ { 0, 42 }, { 0, 21 }, { 0, 0 }, // col 1 (left most) + /* index=3 */ { 18, 0 }, { 18, 21 }, { 18, 42 }, // col 2 + /* index=6 */ { 36, 42 }, { 36, 21 }, { 36, 0 }, + /* index=9 */ { 54, 0 }, { 54, 21 }, { 54, 42 }, + /* index=12 */ { 72, 0 }, { 72, 21 }, { 72, 42 }, + /* index=15 */ { 72, 64 }, { 90, 64 }, { 108, 64 }, // Thumb cluster + // Right split. + /* index=18 */ { 224, 42 }, { 224, 21 }, { 224, 0 }, // col 10 (right most) + /* index=21 */ { 206, 0 }, { 206, 21 }, { 206, 42 }, // col 9 + /* index=24 */ { 188, 42 }, { 188, 21 }, { 188, 0 }, + /* index=27 */ { 170, 0 }, { 170, 21 }, { 170, 42 }, + /* index=30 */ { 152, 0 }, { 152, 21 }, { 152, 42 }, + /* index=33 */ { 152, 64 }, { 134, 64 }, { 116, 64 }, // Thumb cluster + }, { + /* LED index to flag. */ + // Left split. + /* index=0 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 1 + /* index=3 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 2 + /* index=6 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, + /* index=9 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, + /* index=12 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, + /* index=15 */ LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, // Thumb cluster + // Right split. + /* index=18 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 10 + /* index=21 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 9 + /* index=24 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, + /* index=27 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, + /* index=30 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, + /* index=33 */ LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, // Thumb cluster + } }; +#endif +// clang-format on diff --git a/keyboards/bastardkb/blacktyl_lars/blacktyl_lars.h b/keyboards/bastardkb/blacktyl_lars/blacktyl_lars.h new file mode 100644 index 0000000000..2ca5e91c56 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/blacktyl_lars.h @@ -0,0 +1,38 @@ +/* + * Copyright 2021 Quentin LEBASTARD + * + * 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 "quantum.h" + +// clang-format off +#define LAYOUT_split_3x5_3( \ + k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ + k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ + k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ + k32, k33, k30, k70, k73, k72 \ + ) \ + { \ + { k00, k01, k02, k03, k04 }, \ + { k10, k11, k12, k13, k14 }, \ + { k20, k21, k22, k23, k24 }, \ + { k30, KC_NO, k32, k33, KC_NO }, \ + { k40, k41, k42, k43, k44 }, \ + { k50, k51, k52, k53, k54 }, \ + { k60, k61, k62, k63, k64 }, \ + { k70, KC_NO, k72, k73, KC_NO }, \ + } +// clang-format on diff --git a/keyboards/bastardkb/blacktyl_lars/chconf.h b/keyboards/bastardkb/blacktyl_lars/chconf.h new file mode 100644 index 0000000000..1925803a4f --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/chconf.h @@ -0,0 +1,17 @@ +#pragma once + +#define CH_CFG_ST_FREQUENCY 10000 + +#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE + +#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE + +#define CH_CFG_FACTORY_SEMAPHORES TRUE + +#define CH_CFG_FACTORY_MAILBOXES TRUE + +#define CH_CFG_FACTORY_OBJ_FIFOS TRUE + +#define CH_CFG_FACTORY_PIPES TRUE + +#include_next diff --git a/keyboards/bastardkb/blacktyl_lars/config.h b/keyboards/bastardkb/blacktyl_lars/config.h new file mode 100644 index 0000000000..d1938f7ac2 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/config.h @@ -0,0 +1,88 @@ +#pragma once + +#include "config_common.h" + +/* USB DEVICE DESCRIPTOR */ +#define PRODUCT The Bastard Keyboards Blackpill +#define MANUFACTURER Bastard Keyboards x KarlK90 +#define VENDOR_ID 0xA8F8 +#define PRODUCT_ID 0x1828 +#define DEVICE_VER 0x0001 + +/* MATRIX CONFIG */ +#define MATRIX_COLS 5 +#define MATRIX_ROWS 8 +#define MATRIX_ROW_PINS \ + { A2, B8, A8, B9 } + #define MATRIX_COL_PINS \ + { B1, B10, B3, B4, B5 } + +#define DIODE_DIRECTION ROW2COL +// #define DEBUG_MATRIX_SCAN_RATE +// + + +/* RGB CONFIG - WS2812 DRIVER */ +#define RGB_DI_PIN A1 +#define RGBLED_NUM 36 +#define RGBLED_SPLIT \ + { 18, 18 } +#define WS2812_EXTERNAL_PULLUP +#define WS2812_PWM_DRIVER PWMD2 +#define WS2812_PWM_CHANNEL 2 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_DMA_CHANNEL 3 +#define WS2812_DMA_STREAM STM32_DMA1_STREAM1 +// Without the following configurations the WS2812 would not light up +#define WS2812_PWM_TARGET_PERIOD 800000 + +/* RGB matrix support. */ +#ifdef RGB_MATRIX_ENABLE +# define SPLIT_TRANSPORT_MIRROR +# define DRIVER_LED_TOTAL RGBLED_NUM +# define RGB_MATRIX_SPLIT RGBLED_SPLIT +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 50 +# define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS +# define RGB_DISABLE_WHEN_USB_SUSPENDED +# define RGB_MATRIX_KEYPRESSES +#endif + +/* CRC DRIVER +#define CRC8_USE_TABLE +#define CRC8_OPTIMIZE_SPEED +*/ +/* SPLIT CONFIG */ +#define SPLIT_HAND_PIN A3 + +/* SERIAL SPLIT DRIVER */ +#define SOFT_SERIAL_PIN A9 // D0 or D1, D2, D3, E6 +#define SELECT_SOFT_SERIAL_SPEED 1 // or 0, 2, 3, 4, 5 + // 0: about 189kbps (Experimental only) + // 1: about 137kbps (default) + // 2: about 75kbps + // 3: about 39kbps + // 4: about 26kbps + // 5: about 20kbps +//#define SERIAL_USART_TX_PIN A9 +// To use the highest possible baudrate (3.75Mbit/s) uncomment the following +// line, this can result in dropped communications so lower the speed if there +// are many timeouts. #define SERIAL_USART_SPEED (STM32_PCLK2 >> 4) + +/* SPI DRIVER +*/ +//#define SPI_DRIVER SPID1 +//#define SPI_SCK_PIN A5 +//&#define SPI_MOSI_PIN B7 +//#define SPI_MISO_PIN A6 +/* EEPROM DRIVER */ +//#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4 + +/* PMW3360 DRIVER */ +//#define PMW3360_CS_PIN B14 +// +/* Top left key on left half */ + #define BOOTMAGIC_LITE_ROW 0 + #define BOOTMAGIC_LITE_COLUMN 0 + /* Top right key on right half */ + #define BOOTMAGIC_LITE_ROW_RIGHT 4 + #define BOOTMAGIC_LITE_COLUMN_RIGHT 4 diff --git a/keyboards/bastardkb/blacktyl_lars/halconf.h b/keyboards/bastardkb/blacktyl_lars/halconf.h new file mode 100644 index 0000000000..a52da28e54 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/halconf.h @@ -0,0 +1,11 @@ +#pragma once + +#define HAL_USE_PWM TRUE +#define HAL_USE_SERIAL TRUE +//#define HAL_USE_I2C TRUE +#define HAL_USE_SPI TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD +#define HAL_USE_GPT TRUE + +#include_next diff --git a/keyboards/bastardkb/blacktyl_lars/info.json b/keyboards/bastardkb/blacktyl_lars/info.json new file mode 100644 index 0000000000..58d4a93054 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/info.json @@ -0,0 +1,5 @@ +{ + "keyboard_name": "Blacktyl", + "url": "https://www.bastardkb.com", + "maintainer": "Quentin Lebastard", +} diff --git a/keyboards/bastardkb/blacktyl_lars/keymaps/default/keymap.c b/keyboards/bastardkb/blacktyl_lars/keymaps/default/keymap.c new file mode 100644 index 0000000000..0fd6f04a25 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/keymaps/default/keymap.c @@ -0,0 +1,70 @@ +/* + * Copyright 2021 Quentin LEBASTARD + * + * 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_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + 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_1, KC_SPC , KC_2, KC_3, KC_ENT , KC_4 + //`--------------------------' `--------------------------' + + ), + + [1] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP,KC_RIGHT, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, _______, MO(3), KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ), + + [2] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, MO(3), _______, KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ), + + [3] = LAYOUT_split_3x5_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, KC_SPC, _______, _______, KC_ENT, KC_RALT + //`--------------------------' `--------------------------' + ) +}; diff --git a/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/config.h b/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/config.h new file mode 100644 index 0000000000..4406df923a --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/config.h @@ -0,0 +1,50 @@ +/* +Copyright 2020 Pierre Chevalier + +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 +// Set the mouse settings to a comfortable speed/accuracy trade-off, +// assuming a screen refresh rate of 60 Htz or higher +// The default is 50. This makes the mouse ~3 times faster and more accurate +#define MOUSEKEY_INTERVAL 16 +// The default is 20. Since we made the mouse about 3 times faster with the previous setting, +// give it more time to accelerate to max speed to retain precise control over short distances. +#define MOUSEKEY_TIME_TO_MAX 40 +// The default is 300. Let's try and make this as low as possible while keeping the cursor responsive +#define MOUSEKEY_DELAY 100 +// It makes sense to use the same delay for the mouseweel +#define MOUSEKEY_WHEEL_DELAY 100 +// The default is 100 +#define MOUSEKEY_WHEEL_INTERVAL 50 +// The default is 40 +#define MOUSEKEY_WHEEL_TIME_TO_MAX 100 + +// Pick good defaults for enabling homerow modifiers +#define TAPPING_TERM 200 +// #define PERMISSIVE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT +#define TAPPING_FORCE_HOLD +#define RETRO_TAPPING + +// Underglow configuration +#ifdef RGBLIGHT_ENABLE + #define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 +#endif + +#define UNICODE_SELECTED_MODES UC_MAC diff --git a/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/keymap.json b/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/keymap.json new file mode 100644 index 0000000000..109a357974 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/keymap.json @@ -0,0 +1,277 @@ +{ + "version": 1, + "notes": "My awesome keymap", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "bastardkb/skeletyl", + "keymap": "default", + "layout": "LAYOUT_split_3x5_3", + "layers": [ + [ + "KC_Q", + "KC_W", + "KC_F", + "KC_P", + "KC_B", + "KC_J", + "KC_L", + "KC_U", + "KC_Y", + "KC_SCLN", + "LGUI_T(KC_A)", + "LALT_T(KC_R)", + "LCTL_T(KC_S)", + "LSFT_T(KC_T)", + "KC_G", + "KC_M", + "LSFT_T(KC_N)", + "LCTL_T(KC_E)", + "LALT_T(KC_I)", + "LGUI_T(KC_O)", + "KC_Z", + "KC_X", + "KC_C", + "KC_D", + "LT(5,KC_V)", + "LT(1,KC_K)", + "KC_H", + "KC_COMM", + "KC_DOT", + "KC_SLSH", + "LT(6,KC_ESC)", + "LT(3,KC_BSPC)", + "KC_TAB", + "KC_DEL", + "LT(2,KC_SPC)", + "LT(4,KC_ENT)" + ], + [ + "KC_VOLU", + "KC_WH_L", + "KC_MS_U", + "KC_WH_U", + "KC_WH_R", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_MS_L", + "KC_BTN2", + "KC_BTN1", + "KC_MS_R", + "KC_MUTE", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_VOLD", + "KC_MNXT", + "KC_MS_D", + "KC_WH_D", + "KC_MPLY", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_HOME", + "KC_DEL", + "KC_PGUP", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_LEFT", + "KC_UP", + "KC_RGHT", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_END", + "KC_DOWN", + "KC_PGDN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_AT", + "KC_UNDS", + "KC_PIPE", + "KC_QUOT", + "KC_ESC", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_HASH", + "KC_TAB", + "KC_EXLM", + "KC_DQUO", + "KC_DLR", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TILD", + "KC_QUOT", + "KC_BSLS", + "KC_SLSH", + "KC_AMPR", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_NO" + ], + [ + "KC_NO", + "KC_COLN", + "KC_LT", + "KC_GT", + "KC_SCLN", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_LCBR", + "KC_RCBR", + "KC_LPRN", + "KC_RPRN", + "KC_AT", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_EXLM", + "KC_LBRC", + "KC_RBRC", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F11", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F12", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PPLS", + "KC_7", + "KC_8", + "KC_9", + "KC_PAST", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_NO", + "KC_PMNS", + "KC_4", + "KC_5", + "KC_6", + "KC_PSLS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PDOT", + "KC_1", + "KC_2", + "KC_3", + "KC_PEQL", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_0", + "KC_COMM", + "KC_NO" + ] + ], + "author": "thomas.haukland@gmail.com" +} \ No newline at end of file diff --git a/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/readme.md b/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/readme.md new file mode 100644 index 0000000000..b76f9519eb --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/keymaps/tompi/readme.md @@ -0,0 +1,4 @@ +This is basically the default keymap, changed to Colemak DH. + +Also thumb non-homing are changed to ESC and Enter. +Also diff --git a/keyboards/bastardkb/blacktyl_lars/mcuconf.h b/keyboards/bastardkb/blacktyl_lars/mcuconf.h new file mode 100644 index 0000000000..7bae79768a --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/mcuconf.h @@ -0,0 +1,22 @@ +#pragma once + +#include_next "mcuconf.h" + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 FALSE + +#undef STM32_ST_USE_TIMER +#define STM32_ST_USE_TIMER 5 + +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE + +#undef STM32_SPI_USE_SPI1 +#define STM32_SPI_USE_SPI1 TRUE + +#undef STM32_SERIAL_USE_USART1 +#define STM32_SERIAL_USE_USART1 TRUE + +#undef STM32_GPT_USE_TIM3 +#define STM32_GPT_USE_TIM3 TRUE + diff --git a/keyboards/bastardkb/blacktyl_lars/rules.mk b/keyboards/bastardkb/blacktyl_lars/rules.mk new file mode 100644 index 0000000000..0dcc591c25 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/rules.mk @@ -0,0 +1,33 @@ +# MCU name +MCU = STM32F401 +# or +# MCU = STM32F411 +# For newer blackpills +BOOTMAGIC_ENABLE = yes +LAYOUTS = split_3x5_3 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +CONSOLE_ENABLE = yes +DEBOUNCE_TYPE = asym_eager_defer_pk +# EEPROM_DRIVER = spi +# KEYBOARD_SHARED_EP = yes +# POINTING_DEVICE_DRIVER = pmw3360 +# POINTING_DEVICE_ENABLE = yes +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGBLIGHT_SUPPORTED = yes # RGB underglow is supported, but not enabled by default +RGBLIGHT_DRIVER = WS2812 +RGB_MATRIX_SUPPORTED = yes # RGB matrix is supported and enabled by default +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGB_MATRIX_ENABLE = yes # Enable keyboard RGB matrix functionality +RGB_MATRIX_DRIVER = WS2812 # RGB matrix driver support +WS2812_DRIVER = pwm +# SERIAL_DRIVER = bitbang +SERIAL_DRIVER = usart +SPLIT_KEYBOARD = yes +# VIA_ENABLE = no +MOUSEKEY_ENABLE = yes +EXTRAKEY_ENABLE = yes + + From b41f55e22e246fea0be217eb6a80d5b3959d658b Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Mon, 23 May 2022 21:10:32 +0200 Subject: [PATCH 22/31] Swap space and backspace on ferris --- keyboards/ferris/keymaps/tompi/config.h | 2 +- keyboards/ferris/keymaps/tompi/keymap.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/config.h b/keyboards/ferris/keymaps/tompi/config.h index ab095bbbc7..4406df923a 100644 --- a/keyboards/ferris/keymaps/tompi/config.h +++ b/keyboards/ferris/keymaps/tompi/config.h @@ -33,7 +33,7 @@ along with this program. If not, see . #define MOUSEKEY_WHEEL_TIME_TO_MAX 100 // Pick good defaults for enabling homerow modifiers -#define TAPPING_TERM 280 +#define TAPPING_TERM 200 // #define PERMISSIVE_HOLD #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_FORCE_HOLD diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index 67e4015747..d382875456 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -38,8 +38,8 @@ "KC_DOT", "KC_SLSH", "LT(6,KC_ESC)", - "LT(3,KC_BSPC)", - "LT(2,KC_SPC)", + "LT(3,KC_SPC)", + "LT(2,KC_BSPC)", "LT(4,KC_ENT)" ], [ @@ -260,4 +260,4 @@ ] ], "author": "thomas.haukland@gmail.com" -} \ No newline at end of file +} From ed4744eb6238ae87d983bbff449ddaa9b48b52d9 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Mon, 23 May 2022 21:15:57 +0200 Subject: [PATCH 23/31] rename lars keymap --- .../{ferris_sweep_layout_split_3x5_2_mine.json => keymap.json} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename keyboards/ferris/keymaps/lars/{ferris_sweep_layout_split_3x5_2_mine.json => keymap.json} (100%) diff --git a/keyboards/ferris/keymaps/lars/ferris_sweep_layout_split_3x5_2_mine.json b/keyboards/ferris/keymaps/lars/keymap.json similarity index 100% rename from keyboards/ferris/keymaps/lars/ferris_sweep_layout_split_3x5_2_mine.json rename to keyboards/ferris/keymaps/lars/keymap.json From d4fea0f3dd2ccc9624bafc23f5d2358afbed7733 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Mon, 6 Jun 2022 18:52:08 +0200 Subject: [PATCH 24/31] masse --- keyboards/ferris/keymaps/lars/keymap.json | 274 +++++++++++++++------- 1 file changed, 191 insertions(+), 83 deletions(-) diff --git a/keyboards/ferris/keymaps/lars/keymap.json b/keyboards/ferris/keymaps/lars/keymap.json index 56647232c9..48bc849a68 100644 --- a/keyboards/ferris/keymaps/lars/keymap.json +++ b/keyboards/ferris/keymaps/lars/keymap.json @@ -1,9 +1,9 @@ { "version": 1, - "notes": "", + "notes": "My awesome keymap", "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", - "keyboard": "ferris/sweep", - "keymap": "ferris_sweep_layout_split_3x5_2_mine", + "keyboard": "ferris/0_1", + "keymap": "default", "layout": "LAYOUT_split_3x5_2", "layers": [ [ @@ -27,92 +27,92 @@ "KC_E", "KC_I", "KC_O", - "KC_Z", - "KC_X", - "KC_C", + "LSFT_T(KC_Z)", + "LCTL_T(KC_X)", + "RALT_T(KC_C)", "KC_D", "KC_V", "KC_K", "KC_H", - "KC_PCMM", - "KC_PDOT", - "KC_SLSH", - "KC_LSFT", + "RALT_T(KC_COMM)", + "LCTL_T(KC_DOT)", + "LSFT_T(KC_SLSH)", + "TO(1)", + "KC_BSPC", "KC_SPC", - "KC_ENT", - "TO(1)" + "KC_ENT" ], [ - "KC_P1", - "KC_P2", - "KC_P3", - "KC_P4", - "KC_P5", - "KC_P6", - "KC_P7", - "KC_P8", - "KC_P9", - "KC_P0", - "KC_EXLM", - "KC_AT", - "KC_HASH", - "KC_DQUO", + "KC_TRNS", + "KC_7", + "KC_8", + "KC_9", + "KC_TRNS", "KC_QUOT", + "KC_MINS", + "KC_EQL", + "KC_ASTR", + "KC_CIRC", + "KC_TRNS", + "KC_4", + "KC_5", + "KC_6", + "KC_0", + "KC_TAB", "KC_LPRN", "KC_RPRN", "KC_LBRC", "KC_RBRC", - "KC_BSPC", - "KC_QUES", - "KC_AMPR", - "KC_DLR", - "KC_UNDS", + "KC_LSFT", + "KC_1", + "KC_2", + "KC_3", + "KC_TRNS", + "KC_PIPE", "KC_GRV", - "KC_LT", - "KC_GT", - "KC_LCBR", - "KC_RCBR", - "KC_COLN", - "KC_ESC", - "KC_SPC", + "KC_LALT", + "KC_LCTL", + "KC_RSFT", + "TO(2)", + "KC_BSPC", "TO(0)", - "TO(2)" + "KC_ENT" ], [ "KC_TRNS", "KC_TRNS", - "KC_UP", + "KC_PGUP", + "KC_TRNS", + "KC_TRNS", + "ANY(UC(0xE6))", + "ANY(UC(0xF8))", "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "LCA(KC_T)", "KC_LEFT", + "KC_UP", "KC_DOWN", "KC_RGHT", "KC_TRNS", "KC_TRNS", "KC_LGUI", - "KC_PSCR", - "KC_INS", - "KC_DEL", - "KC_NO", + "ANY(UC(0xE5))", + "LCTL(KC_LALT)", + "LCA(KC_LSFT)", + "KC_TRNS", "KC_HOME", - "KC_NO", + "KC_PGDN", "KC_END", "KC_TRNS", "KC_TRNS", - "KC_NO", + "KC_RBRC", + "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_LSFT", "KC_TRNS", "TO(0)", - "TO(3)" + "KC_TRNS" ], [ "KC_TRNS", @@ -120,19 +120,19 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_TRNS", + "KC_TAB", "KC_UNDS", "KC_PIPE", "KC_QUOT", "KC_TRNS", "KC_CIRC", "KC_ASTR", - "KC_MINS", - "KC_PPLS", - "KC_PSLS", - "KC_PEQL", - "KC_TILD", - "KC_SLSH", + "KC_AMPR", + "KC_NO", + "KC_TRNS", + "KC_HASH", + "KC_QUOT", + "KC_EXLM", "KC_DQUO", "KC_DLR", "KC_TRNS", @@ -141,18 +141,18 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_AMPR", - "KC_BSLS", - "KC_GRV", + "KC_QUOT", + "KC_TRNS", + "KC_LBRC", + "KC_TRNS", + "RGB_RMOD", "KC_TRNS", - "KC_PENT", - "TO(2)", "TO(0)", - "TO(4)" + "RGB_MOD" ], [ - "KC_NO", - "KC_NO", + "KC_TRNS", + "KC_COLN", "KC_LT", "KC_GT", "KC_SCLN", @@ -161,31 +161,139 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_F1", - "KC_F2", - "KC_F3", - "KC_F4", - "KC_F5", - "KC_F6", - "KC_F7", - "KC_F8", - "KC_F9", - "KC_F10", + "KC_LCBR", + "KC_RCBR", + "KC_LPRN", + "KC_RPRN", + "KC_AT", + "KC_TRNS", + "KC_NO", + "KC_EQL", + "KC_PLUS", + "KC_PERC", "KC_TRNS", "KC_EXLM", "KC_LBRC", "KC_RBRC", - "KC_F11", - "KC_F12", + "KC_TRNS", + "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_VOLD", - "TO(3)", + "KC_TRNS", + "TO(0)", + "KC_VOLU" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_TRNS", + "KC_NO", + "LCTL(KC_LALT)", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F11", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F12", + "KC_TRNS", + "KC_TRNS", + "TO(0)", + "KC_TRNS" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PPLS", + "KC_7", + "KC_TRNS", + "KC_9", + "KC_PAST", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PENT", + "KC_NO", + "KC_PMNS", + "KC_4", + "KC_5", + "KC_6", + "KC_PSLS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PDOT", + "KC_1", + "KC_2", + "KC_3", + "KC_PEQL", + "KC_NO", + "KC_NO", + "TO(0)", + "KC_COMM" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_COLN", + "KC_ESC", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_DEL", + "KC_TRNS", + "KC_PERC", + "KC_SLSH", + "KC_ENT", + "KC_TRNS", + "DF(1)", + "KC_LGUI", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_EXLM", + "KC_TRNS", + "DF(0)", + "KC_TRNS", + "RALT_T(KC_COMM)", + "RCTL_T(KC_DOT)", + "QK_BOOT", + "KC_TRNS", + "KC_TRNS", "TO(0)", "KC_TRNS" ] ], - "author": "Lars Møen Haukland" -} + "author": "thomas.haukland@gmail.com" +} \ No newline at end of file From 069111d9285b1db926f86b48b40e0746ac9d775c Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Fri, 17 Jun 2022 10:37:13 +0200 Subject: [PATCH 25/31] mod tap adjustments --- keyboards/ferris/keymaps/tompi/config.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/config.h b/keyboards/ferris/keymaps/tompi/config.h index 4406df923a..7c35bc2052 100644 --- a/keyboards/ferris/keymaps/tompi/config.h +++ b/keyboards/ferris/keymaps/tompi/config.h @@ -33,11 +33,11 @@ along with this program. If not, see . #define MOUSEKEY_WHEEL_TIME_TO_MAX 100 // Pick good defaults for enabling homerow modifiers -#define TAPPING_TERM 200 +#define TAPPING_TERM 280 // #define PERMISSIVE_HOLD #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_FORCE_HOLD -#define RETRO_TAPPING +//#define RETRO_TAPPING // Underglow configuration #ifdef RGBLIGHT_ENABLE From 2ada43ec71d531caec1b275e8c08780b02d83645 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Fri, 17 Jun 2022 16:05:57 +0200 Subject: [PATCH 26/31] Added some keys --- keyboards/ferris/keymaps/tompi/keymap.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/ferris/keymaps/tompi/keymap.json b/keyboards/ferris/keymaps/tompi/keymap.json index d382875456..839a9482ea 100644 --- a/keyboards/ferris/keymaps/tompi/keymap.json +++ b/keyboards/ferris/keymaps/tompi/keymap.json @@ -151,7 +151,7 @@ "KC_TRNS" ], [ - "KC_NO", + "KC_EQL", "KC_COLN", "KC_LT", "KC_GT", @@ -171,7 +171,7 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_NO", + "KC_MINS", "KC_EXLM", "KC_LBRC", "KC_RBRC", @@ -260,4 +260,4 @@ ] ], "author": "thomas.haukland@gmail.com" -} +} \ No newline at end of file From ca50ac57ae10d093573b2025a231be4b368bfe80 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sat, 18 Jun 2022 08:59:16 +0200 Subject: [PATCH 27/31] Lars blacktyl --- keyboards/bastardkb/blacktyl_lars/info.json | 42 ++++++ .../blacktyl_lars/keymaps/lars/config.h | 50 +++++++ .../blacktyl_lars/keymaps/lars/keymap.json | 125 ++++++++++++++++++ keyboards/bastardkb/blacktyl_lars/rules.mk | 2 +- 4 files changed, 218 insertions(+), 1 deletion(-) create mode 100644 keyboards/bastardkb/blacktyl_lars/keymaps/lars/config.h create mode 100644 keyboards/bastardkb/blacktyl_lars/keymaps/lars/keymap.json diff --git a/keyboards/bastardkb/blacktyl_lars/info.json b/keyboards/bastardkb/blacktyl_lars/info.json index 58d4a93054..f613179690 100644 --- a/keyboards/bastardkb/blacktyl_lars/info.json +++ b/keyboards/bastardkb/blacktyl_lars/info.json @@ -2,4 +2,46 @@ "keyboard_name": "Blacktyl", "url": "https://www.bastardkb.com", "maintainer": "Quentin Lebastard", + "layouts": { + "LAYOUT_split_3x5_3": { + "layout": [ + {"label":"L00", "x":0, "y":0}, + {"label":"L01", "x":1, "y":0}, + {"label":"L02", "x":2, "y":0}, + {"label":"L03", "x":3, "y":0}, + {"label":"L04", "x":4, "y":0}, + {"label":"R00", "x":11, "y":0}, + {"label":"R01", "x":12, "y":0}, + {"label":"R02", "x":13, "y":0}, + {"label":"R03", "x":14, "y":0}, + {"label":"R04", "x":15, "y":0}, + {"label":"L10", "x":0, "y":1}, + {"label":"L11", "x":1, "y":1}, + {"label":"L12", "x":2, "y":1}, + {"label":"L13", "x":3, "y":1}, + {"label":"L14", "x":4, "y":1}, + {"label":"R10", "x":11, "y":1}, + {"label":"R11", "x":12, "y":1}, + {"label":"R12", "x":13, "y":1}, + {"label":"R13", "x":14, "y":1}, + {"label":"R14", "x":15, "y":1}, + {"label":"L20", "x":0, "y":2}, + {"label":"L21", "x":1, "y":2}, + {"label":"L22", "x":2, "y":2}, + {"label":"L23", "x":3, "y":2}, + {"label":"L24", "x":4, "y":2}, + {"label":"R20", "x":11, "y":2}, + {"label":"R21", "x":12, "y":2}, + {"label":"R22", "x":13, "y":2}, + {"label":"R23", "x":14, "y":2}, + {"label":"R24", "x":15, "y":2}, + {"label":"L33", "x":4, "y":3}, + {"label":"L34", "x":5, "y":3}, + {"label":"L31", "x":6, "y":3}, + {"label":"R33", "x":9, "y":3}, + {"label":"R34", "x":10, "y":3}, + {"label":"R31", "x":11, "y":3} + ] + } + } } diff --git a/keyboards/bastardkb/blacktyl_lars/keymaps/lars/config.h b/keyboards/bastardkb/blacktyl_lars/keymaps/lars/config.h new file mode 100644 index 0000000000..38e8f2ec16 --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/keymaps/lars/config.h @@ -0,0 +1,50 @@ +/* +Copyright 2020 Pierre Chevalier + +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 +// Set the mouse settings to a comfortable speed/accuracy trade-off, +// assuming a screen refresh rate of 60 Htz or higher +// The default is 50. This makes the mouse ~3 times faster and more accurate +#define MOUSEKEY_INTERVAL 16 +// The default is 20. Since we made the mouse about 3 times faster with the previous setting, +// give it more time to accelerate to max speed to retain precise control over short distances. +#define MOUSEKEY_TIME_TO_MAX 40 +// The default is 300. Let's try and make this as low as possible while keeping the cursor responsive +#define MOUSEKEY_DELAY 100 +// It makes sense to use the same delay for the mouseweel +#define MOUSEKEY_WHEEL_DELAY 100 +// The default is 100 +#define MOUSEKEY_WHEEL_INTERVAL 50 +// The default is 40 +#define MOUSEKEY_WHEEL_TIME_TO_MAX 100 + +// Pick good defaults for enabling homerow modifiers +#define TAPPING_TERM 200 +// #define PERMISSIVE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT +#define TAPPING_FORCE_HOLD +//#define RETRO_TAPPING + +// Underglow configuration +#ifdef RGBLIGHT_ENABLE + #define RGBLIGHT_ANIMATIONS + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 +#endif + +//#define UNICODE_SELECTED_MODES UC_MAC diff --git a/keyboards/bastardkb/blacktyl_lars/keymaps/lars/keymap.json b/keyboards/bastardkb/blacktyl_lars/keymaps/lars/keymap.json new file mode 100644 index 0000000000..98fd8002da --- /dev/null +++ b/keyboards/bastardkb/blacktyl_lars/keymaps/lars/keymap.json @@ -0,0 +1,125 @@ +{ + "version": 1, + "notes": "My awesome keymap", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "bastardkb/skeletyl", + "keymap": "default", + "layout": "LAYOUT_split_3x5_3", + "layers": [ + [ + "KC_Q", + "KC_W", + "KC_F", + "KC_P", + "KC_B", + "KC_J", + "KC_L", + "KC_U", + "KC_Y", + "KC_SCLN", + "KC_A", + "KC_R", + "KC_S", + "KC_T", + "KC_G", + "KC_M", + "KC_N", + "KC_E", + "KC_I", + "KC_O", + "LSFT_T(KC_Z)", + "LCTL_T(KC_X)", + "RALT_T(KC_C)", + "KC_D", + "KC_V", + "KC_K", + "KC_H", + "RALT_T(KC_COMM)", + "LCTL_T(KC_DOT)", + "LSFT_T(KC_SLSH)", + "TO(1)", + "KC_BSPC", + "KC_TAB", + "KC_DEL", + "KC_SPC", + "KC_ENT" + ], + [ + "KC_TRNS", + "KC_7", + "KC_8", + "KC_9", + "KC_TRNS", + "KC_QUOT", + "KC_MINS", + "KC_EQL", + "KC_ASTR", + "KC_CIRC", + "KC_TRNS", + "KC_4", + "KC_5", + "KC_6", + "KC_0", + "KC_TAB", + "KC_LPRN", + "KC_RPRN", + "KC_LBRC", + "KC_RBRC", + "KC_LSFT", + "KC_1", + "KC_2", + "KC_3", + "KC_TRNS", + "KC_PIPE", + "KC_GRV", + "KC_LALT", + "KC_LCTL", + "KC_RSFT", + "TO(2)", + "KC_BSPC", + "KC_TAB", + "KC_DEL", + "TO(0)", + "KC_ENT" + ], + [ + "KC_TRNS", + "KC_TRNS", + "KC_PGUP", + "KC_TRNS", + "KC_TRNS", + "ANY(UC(0xE6))", + "ANY(UC(0xF8))", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_LEFT", + "KC_UP", + "KC_DOWN", + "KC_RGHT", + "KC_TRNS", + "KC_TRNS", + "KC_LGUI", + "ANY(UC(0xE5))", + "LCTL(KC_LALT)", + "LCA(KC_LSFT)", + "KC_TRNS", + "KC_HOME", + "KC_PGDN", + "KC_END", + "KC_TRNS", + "KC_TRNS", + "KC_RBRC", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TAB", + "KC_DEL", + "TO(0)", + "KC_TRNS" + ] + ], + "author": "thomas.haukland@gmail.com" +} diff --git a/keyboards/bastardkb/blacktyl_lars/rules.mk b/keyboards/bastardkb/blacktyl_lars/rules.mk index 0dcc591c25..67fb8eb066 100644 --- a/keyboards/bastardkb/blacktyl_lars/rules.mk +++ b/keyboards/bastardkb/blacktyl_lars/rules.mk @@ -15,8 +15,8 @@ DEBOUNCE_TYPE = asym_eager_defer_pk # KEYBOARD_SHARED_EP = yes # POINTING_DEVICE_DRIVER = pmw3360 # POINTING_DEVICE_ENABLE = yes -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow RGBLIGHT_SUPPORTED = yes # RGB underglow is supported, but not enabled by default +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow RGBLIGHT_DRIVER = WS2812 RGB_MATRIX_SUPPORTED = yes # RGB matrix is supported and enabled by default BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality From e86bf67aef372844c64b205a0fcca7a19fcfe001 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sat, 18 Jun 2022 09:03:35 +0200 Subject: [PATCH 28/31] Underscore for blacktyl --- keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json index 3064702e96..97cb8fabc2 100644 --- a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json @@ -159,7 +159,7 @@ "KC_NO" ], [ - "KC_NO", + "KC_EQL", "KC_COLN", "KC_LT", "KC_GT", @@ -179,7 +179,7 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_NO", + "KC_MINS", "KC_EXLM", "KC_LBRC", "KC_RBRC", From e45799664f414c4095e50eb4726d00581f59b30b Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Tue, 28 Jun 2022 10:31:52 +0200 Subject: [PATCH 29/31] blacktyl_keymap --- .../blacktyl/keymaps/tompi/keymap.json | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json index 97cb8fabc2..7334b579f2 100644 --- a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json @@ -159,7 +159,7 @@ "KC_NO" ], [ - "KC_EQL", + "KC_PERC", "KC_COLN", "KC_LT", "KC_GT", @@ -241,9 +241,9 @@ "KC_NO", "KC_NO", "KC_PPLS", - "KC_7", - "KC_8", - "KC_9", + "KC_P7", + "KC_P8", + "KC_P9", "KC_PAST", "KC_TRNS", "KC_TRNS", @@ -251,27 +251,27 @@ "KC_TRNS", "KC_NO", "KC_PMNS", - "KC_4", - "KC_5", - "KC_6", + "KC_P4", + "KC_P5", + "KC_P6", "KC_PSLS", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", - "KC_PDOT", - "KC_1", - "KC_2", - "KC_3", + "KC_P0", + "KC_P1", + "KC_P2", + "KC_P3", "KC_PEQL", "KC_NO", "KC_NO", "KC_NO", - "KC_0", - "KC_COMM", - "KC_NO" + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" ] ], "author": "thomas.haukland@gmail.com" -} +} \ No newline at end of file From a9cae18438c69e7d9a5ce97ca4c27d7e53d56eb9 Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Sat, 2 Jul 2022 10:30:10 +0200 Subject: [PATCH 30/31] vonreg keymap and settings --- .../bastardkb/blacktyl/keymaps/tompi/config.h | 4 ++-- keyboards/vonreg/config.h | 3 +++ keyboards/vonreg/info.json | 2 -- keyboards/vonreg/keymaps/tompi/keymap.json | 16 ++++++++-------- keyboards/vonreg/mcuconf.h | 4 ++-- keyboards/vonreg/rules.mk | 9 +++++++++ 6 files changed, 24 insertions(+), 14 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/config.h b/keyboards/bastardkb/blacktyl/keymaps/tompi/config.h index 6e0a7230fe..7c35bc2052 100644 --- a/keyboards/bastardkb/blacktyl/keymaps/tompi/config.h +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/config.h @@ -33,11 +33,11 @@ along with this program. If not, see . #define MOUSEKEY_WHEEL_TIME_TO_MAX 100 // Pick good defaults for enabling homerow modifiers -#define TAPPING_TERM 250 +#define TAPPING_TERM 280 // #define PERMISSIVE_HOLD #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_FORCE_HOLD -#define RETRO_TAPPING +//#define RETRO_TAPPING // Underglow configuration #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/vonreg/config.h b/keyboards/vonreg/config.h index b6bf7a3b40..8a33115e30 100644 --- a/keyboards/vonreg/config.h +++ b/keyboards/vonreg/config.h @@ -40,3 +40,6 @@ #define BOOTMAGIC_LITE_COLUMN_RIGHT 4 #define DEVICE_VER 0x0001 +#define AUDIO_PIN A1 +//#define AUDIO_PWM_DRIVER PWMD1 +//#define AUDIO_PWM_CHANNEL 1 diff --git a/keyboards/vonreg/info.json b/keyboards/vonreg/info.json index 82a892b048..a20442ad82 100644 --- a/keyboards/vonreg/info.json +++ b/keyboards/vonreg/info.json @@ -5,9 +5,7 @@ "bootloader": "stm32-dfu", "diode_direction": "COL2ROW", "features": { - "bootmagic_lite": false, "command": false, - "console": false, "extrakey": true, "mousekey": true, "nkro": true diff --git a/keyboards/vonreg/keymaps/tompi/keymap.json b/keyboards/vonreg/keymaps/tompi/keymap.json index abab1afb38..97cb8fabc2 100644 --- a/keyboards/vonreg/keymaps/tompi/keymap.json +++ b/keyboards/vonreg/keymaps/tompi/keymap.json @@ -16,7 +16,7 @@ "KC_L", "KC_U", "KC_Y", - "RALT_T(KC_SCLN)", + "KC_SCLN", "LGUI_T(KC_A)", "LALT_T(KC_R)", "LCTL_T(KC_S)", @@ -27,7 +27,7 @@ "LCTL_T(KC_E)", "LALT_T(KC_I)", "LGUI_T(KC_O)", - "RALT_T(KC_Z)", + "KC_Z", "KC_X", "KC_C", "KC_D", @@ -38,10 +38,10 @@ "KC_DOT", "KC_SLSH", "LT(6,KC_ESC)", - "LT(3,KC_BSPC)", - "KC_TAB", - "KC_DEL", - "LT(2,KC_SPC)", + "LT(3,KC_SPC)", + "LT(5,KC_TAB)", + "LT(1,KC_DEL)", + "LT(2,KC_BSPC)", "LT(4,KC_ENT)" ], [ @@ -159,7 +159,7 @@ "KC_NO" ], [ - "KC_NO", + "KC_EQL", "KC_COLN", "KC_LT", "KC_GT", @@ -179,7 +179,7 @@ "KC_TRNS", "KC_TRNS", "KC_TRNS", - "KC_NO", + "KC_MINS", "KC_EXLM", "KC_LBRC", "KC_RBRC", diff --git a/keyboards/vonreg/mcuconf.h b/keyboards/vonreg/mcuconf.h index b8fa7f72bb..1c383682e7 100644 --- a/keyboards/vonreg/mcuconf.h +++ b/keyboards/vonreg/mcuconf.h @@ -24,8 +24,8 @@ #include_next -//#undef STM32_PWM_USE_TIM3 -//#define STM32_PWM_USE_TIM3 TRUE +#undef STM32_PWM_USE_TIM3 +#define STM32_PWM_USE_TIM3 TRUE //#undef STM32_SERIAL_USE_USART1 //#define STM32_SERIAL_USE_USART1 TRUE diff --git a/keyboards/vonreg/rules.mk b/keyboards/vonreg/rules.mk index 87499eed25..8534a0312b 100644 --- a/keyboards/vonreg/rules.mk +++ b/keyboards/vonreg/rules.mk @@ -2,3 +2,12 @@ BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite SPLIT_KEYBOARD = yes SERIAL_DRIVER = bitbang +AUDIO_ENABLE = yes +AUDIO_DRIVER = pwm_software + +# Bootloader selection +BOOTLOADER = stm32-dfu + +CONSOLE_ENABLE = yes +DEBOUNCE_TYPE = asym_eager_defer_pk + From fa67bef4ec9e0f6063b0a67914d347b3fee22c5d Mon Sep 17 00:00:00 2001 From: Thomas Haukland Date: Mon, 22 Aug 2022 18:26:43 +0200 Subject: [PATCH 31/31] change 0 position and add mouse clicks --- .../blacktyl/keymaps/tompi/keymap.json | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json index 7334b579f2..489baa5c20 100644 --- a/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json +++ b/keyboards/bastardkb/blacktyl/keymaps/tompi/keymap.json @@ -61,10 +61,10 @@ "KC_MS_R", "KC_MUTE", "KC_NO", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_BTN1", + "KC_BTN2", + "KC_BTN3", + "KC_NO", "KC_VOLD", "KC_MNXT", "KC_MS_D", @@ -175,10 +175,10 @@ "KC_RPRN", "KC_AT", "KC_NO", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", "KC_MINS", "KC_EXLM", "KC_LBRC", @@ -207,10 +207,10 @@ "KC_F8", "KC_F9", "KC_F10", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", - "KC_TRNS", + "KC_NO", + "KC_BTN3", + "KC_BTN2", + "KC_BTN1", "KC_NO", "KC_NO", "KC_F4", @@ -270,7 +270,7 @@ "KC_NO", "KC_TRNS", "KC_TRNS", - "KC_TRNS" + "KC_P0" ] ], "author": "thomas.haukland@gmail.com"