summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornpspears <40127181+npspears@users.noreply.github.com>2021-12-26 21:32:06 -0600
committerGitHub <noreply@github.com>2021-12-27 14:32:06 +1100
commite90974d810579c58969cc82abae34892aa312e20 (patch)
tree126a6e8b60028dfa256e8b35a0072b238ecb7ea9
parentf7619600e3dca4270e86bd7e133ac9d63ee400f4 (diff)
downloadqmk_firmware-e90974d810579c58969cc82abae34892aa312e20.tar.gz
qmk_firmware-e90974d810579c58969cc82abae34892aa312e20.zip
add 5-row support for an existing board, Quark^2 (#15188)
* add support for 5-row Quark^2 * add support for 5-row Quark^2 * add support for 5-row Quark^2 * add support for 5-row Quark^2 * Update keymap.c * Update keymap.c * Update keymap.c * add 5-row Quark^2 keymaps * add 5-row Quark^2 keymaps * Apply suggestions from code review Co-authored-by: Drashna Jaelre <drashna@live.com> * Update info.json * Fix typo Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
-rw-r--r--keyboards/checkerboards/quark_squared/config.h4
-rw-r--r--keyboards/checkerboards/quark_squared/info.json12
-rw-r--r--keyboards/checkerboards/quark_squared/keymaps/2u/keymap.c6
-rw-r--r--keyboards/checkerboards/quark_squared/keymaps/5_2u/config.h19
-rw-r--r--keyboards/checkerboards/quark_squared/keymaps/5_2u/keymap.c86
-rw-r--r--keyboards/checkerboards/quark_squared/keymaps/5_2x225u/config.h19
-rw-r--r--keyboards/checkerboards/quark_squared/keymaps/5_2x225u/keymap.c86
-rw-r--r--keyboards/checkerboards/quark_squared/keymaps/default/keymap.c6
-rw-r--r--keyboards/checkerboards/quark_squared/keymaps/via/keymap.c8
-rw-r--r--keyboards/checkerboards/quark_squared/quark_squared.h42
-rw-r--r--keyboards/checkerboards/quark_squared/readme.md4
11 files changed, 270 insertions, 22 deletions
diff --git a/keyboards/checkerboards/quark_squared/config.h b/keyboards/checkerboards/quark_squared/config.h
index 89e7eb0725..32546097f1 100644
--- a/keyboards/checkerboards/quark_squared/config.h
+++ b/keyboards/checkerboards/quark_squared/config.h
@@ -26,11 +26,11 @@
#define PRODUCT QUARK²
/* key matrix size */
-#define MATRIX_ROWS 4
+#define MATRIX_ROWS 5
#define MATRIX_COLS 12
/* key matrix pins */
-#define MATRIX_ROW_PINS { C5, C4, C6, C7 }
+#define MATRIX_ROW_PINS { C5, C4, C6, C7, B7 }
#define MATRIX_COL_PINS { B4, B5, B6, B3, C2, B2, D6, D2, D3, D4, D5, B1 }
#define UNUSED_PINS
diff --git a/keyboards/checkerboards/quark_squared/info.json b/keyboards/checkerboards/quark_squared/info.json
index 76f68353b5..aec07bb7ad 100644
--- a/keyboards/checkerboards/quark_squared/info.json
+++ b/keyboards/checkerboards/quark_squared/info.json
@@ -1,13 +1,19 @@
{
"keyboard_name": "Quark_Squared",
- "url": "",
+ "url": "https://www.checkerboards.xyz/Quark2_p_35.html",
"maintainer": "nasp",
"layouts": {
- "LAYOUT_ortho_2x225u": {
+ "LAYOUT_ortho_4x12_2x225u": {
"layout": [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"Ctrl", "x":0, "y":3, "w":1.25}, {"label":"Super", "x":1.25, "y":3, "w":1.25}, {"label":"Alt", "x":2.5, "y":3, "w":1.25}, {"x":3.75, "y":3, "w":2.25}, {"x":6, "y":3, "w":2.25}, {"label":"Alt", "x":8.25, "y":3, "w":1.25}, {"label":"Super", "x":9.5, "y":3, "w":1.25}, {"label":"Ctrl", "x":10.75, "y":3, "w":1.25}]
},
- "LAYOUT_ortho_2u": {
+ "LAYOUT_4_2u": {
"layout": [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"Ctrl", "x":0, "y":3, "w":1.25}, {"label":"Alt", "x":1.25, "y":3, "w":1.25}, {"label":"Super", "x":2.5, "y":3, "w":1.25}, {"label":"&dArr;", "x":3.75, "y":3, "w":1.25}, {"x":5, "y":3, "w":2}, {"label":"&larr;", "x":7, "y":3, "w":1.25}, {"label":"&darr;", "x":8.25, "y":3, "w":1.25}, {"label":"&uarr;", "x":9.5, "y":3, "w":1.25}, {"label":"&rarr;", "x":10.75, "y":3, "w":1.25}]
+ },
+ "LAYOUT_5_2x225u": {
+ "layout": [{"label":"-", "x":0, "y":0}, {"label":"1", "x":1, "y":0}, {"label":"2", "x":2, "y":0}, {"label":"3", "x":3, "y":0}, {"label":"4", "x":4, "y":0}, {"label":"5", "x":5, "y":0}, {"label":"6", "x":6, "y":0}, {"label":"7", "x":7, "y":0}, {"label":"8", "x":8, "y":0}, {"label":"9", "x":9, "y":0}, {"label":"0", "x":10, "y":0}, {"label":"+", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1}, {"label":"Q", "x":1, "y":1}, {"label":"W", "x":2, "y":1}, {"label":"E", "x":3, "y":1}, {"label":"R", "x":4, "y":1}, {"label":"T", "x":5, "y":1}, {"label":"Y", "x":6, "y":1}, {"label":"U", "x":7, "y":1}, {"label":"I", "x":8, "y":1}, {"label":"O", "x":9, "y":1}, {"label":"P", "x":10, "y":1}, {"label":"Back Space", "x":11, "y":1}, {"label":"Esc", "x":0, "y":2}, {"label":"A", "x":1, "y":2}, {"label":"S", "x":2, "y":2}, {"label":"D", "x":3, "y":2}, {"label":"F", "x":4, "y":2}, {"label":"G", "x":5, "y":2}, {"label":"H", "x":6, "y":2}, {"label":"J", "x":7, "y":2}, {"label":"K", "x":8, "y":2}, {"label":"L", "x":9, "y":2}, {"label":";", "x":10, "y":2}, {"label":"'", "x":11, "y":2}, {"label":"Shift", "x":0, "y":3}, {"label":"Z", "x":1, "y":3}, {"label":"X", "x":2, "y":3}, {"label":"C", "x":3, "y":3}, {"label":"V", "x":4, "y":3}, {"label":"B", "x":5, "y":3}, {"label":"N", "x":6, "y":3}, {"label":"M", "x":7, "y":3}, {"label":",", "x":8, "y":3}, {"label":".", "x":9, "y":3}, {"label":"/", "x":10, "y":3}, {"label":"Return", "x":11, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Super", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":2.25}, {"x":6, "y":4, "w":2.25}, {"label":"Alt", "x":8.25, "y":4, "w":1.25}, {"label":"Super", "x":9.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":10.75, "y":4, "w":1.25}]
+ },
+ "LAYOUT_5_2u": {
+ "layout": [{"label":"-", "x":0, "y":0}, {"label":"1", "x":1, "y":0}, {"label":"2", "x":2, "y":0}, {"label":"3", "x":3, "y":0}, {"label":"4", "x":4, "y":0}, {"label":"5", "x":5, "y":0}, {"label":"6", "x":6, "y":0}, {"label":"7", "x":7, "y":0}, {"label":"8", "x":8, "y":0}, {"label":"9", "x":9, "y":0}, {"label":"0", "x":10, "y":0}, {"label":"+", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1}, {"label":"Q", "x":1, "y":1}, {"label":"W", "x":2, "y":1}, {"label":"E", "x":3, "y":1}, {"label":"R", "x":4, "y":1}, {"label":"T", "x":5, "y":1}, {"label":"Y", "x":6, "y":1}, {"label":"U", "x":7, "y":1}, {"label":"I", "x":8, "y":1}, {"label":"O", "x":9, "y":1}, {"label":"P", "x":10, "y":1}, {"label":"Back Space", "x":11, "y":1}, {"label":"Esc", "x":0, "y":2}, {"label":"A", "x":1, "y":2}, {"label":"S", "x":2, "y":2}, {"label":"D", "x":3, "y":2}, {"label":"F", "x":4, "y":2}, {"label":"G", "x":5, "y":2}, {"label":"H", "x":6, "y":2}, {"label":"J", "x":7, "y":2}, {"label":"K", "x":8, "y":2}, {"label":"L", "x":9, "y":2}, {"label":";", "x":10, "y":2}, {"label":"'", "x":11, "y":2}, {"label":"Shift", "x":0, "y":3}, {"label":"Z", "x":1, "y":3}, {"label":"X", "x":2, "y":3}, {"label":"C", "x":3, "y":3}, {"label":"V", "x":4, "y":3}, {"label":"B", "x":5, "y":3}, {"label":"N", "x":6, "y":3}, {"label":"M", "x":7, "y":3}, {"label":",", "x":8, "y":3}, {"label":".", "x":9, "y":3}, {"label":"/", "x":10, "y":3}, {"label":"Return", "x":11, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Super", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"label":"&dArr;", "x":3.75, "y":4, "w":1.25}, {"x":5, "y":4, "w":2}, {"label":"&uArr;", "x":7, "y":4, "w":1.25}, {"label":"Alt", "x":8.25, "y":4, "w":1.25}, {"label":"Super", "x":9.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":10.75, "y":4, "w":1.25}]
}
}
}
diff --git a/keyboards/checkerboards/quark_squared/keymaps/2u/keymap.c b/keyboards/checkerboards/quark_squared/keymaps/2u/keymap.c
index 0892729cf3..0f37a1d080 100644
--- a/keyboards/checkerboards/quark_squared/keymaps/2u/keymap.c
+++ b/keyboards/checkerboards/quark_squared/keymaps/2u/keymap.c
@@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | PRINT | OS | Alt | Layer | Space & Layer | [ | ] | CAPS |
* `-----------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ortho_2u(
+ [0] = LAYOUT_4_2u(
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
CTL_T(KC_ESC), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
@@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | ESC | CTRL-ALT-DEL | TASK | | | '|' | ` | |
* `---------------------------------------------------------------------------------------'
*/
- [1] = LAYOUT_ortho_2u(
+ [1] = LAYOUT_4_2u(
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
_______, _______, _______, _______, _______, _______, _______, KC_PPLS, KC_EQL, _______, _______, _______,
@@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | RESET | | | | | | | |
* `---------------------------------------------------------------------------------------'
*/
- [2] = LAYOUT_ortho_2u(
+ [2] = LAYOUT_4_2u(
_______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______,
_______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______,
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
diff --git a/keyboards/checkerboards/quark_squared/keymaps/5_2u/config.h b/keyboards/checkerboards/quark_squared/keymaps/5_2u/config.h
new file mode 100644
index 0000000000..b1498826ee
--- /dev/null
+++ b/keyboards/checkerboards/quark_squared/keymaps/5_2u/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2021 Nathan Spears
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#define TAPPING_TOGGLE 2
diff --git a/keyboards/checkerboards/quark_squared/keymaps/5_2u/keymap.c b/keyboards/checkerboards/quark_squared/keymaps/5_2u/keymap.c
new file mode 100644
index 0000000000..d7f7ff378d
--- /dev/null
+++ b/keyboards/checkerboards/quark_squared/keymaps/5_2u/keymap.c
@@ -0,0 +1,86 @@
+/* Copyright 2021 Nathan Spears
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+// Defines for task manager and such
+#define CALTDEL LCTL(LALT(KC_DEL))
+#define TSKMGR LCTL(LSFT(KC_ESC))
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* [0]
+ * ,-----------------------------------------------------------------------------------------.
+ * | = | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
+ * |------------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del |
+ * |------------+------+------+------+------+-------------+------+------+------+------+------|
+ * | CTL & ESC | A | S | D | F | G | H | J | K | L | ; | " |
+ * |------------+------+------+------+------+------|------+------+------+------+------+------|
+ * | Shift | Z | X | C | V | B | N | M | , | . | / |Enter |
+ * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------|
+ * | OS | Alt | Layer | Space & Layer | [ | ] |
+ * `-----------------------------------------------------------------------------------------'
+ */
+ [0] = LAYOUT_5_2u(
+ KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
+ CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
+ KC_GRV, KC_LGUI, KC_LALT, TT(1), KC_SPC, TT(2), KC_TILD, KC_LBRC, KC_RBRC
+ ),
+
+ /* [1]
+ * ,---------------------------------------------------------------------------------------.
+ * | = | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
+ * |------------+------+------+------+------+------+------+------+------+------+------+----|
+ * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BCKSPC |
+ * |------------+------+------+------+------+-------------+------+------+------+------+----|
+ * | \ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / |
+ * |------------+------+------+------+------+------|------+------+------+------+------+----|
+ * | | | | | | | | + | = | | | |
+ * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+----|
+ * | ESC | CTRL-ALT-DEL | | | '|' | ` |
+ * `---------------------------------------------------------------------------------------'
+ */
+ [1] = LAYOUT_5_2u(
+ KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
+ KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_EQL, _______, _______, _______,
+ KC_ESC, CALTDEL, _______, _______, _______, _______, _______, KC_NUBS, KC_GRV
+ ),
+
+ /* [2]
+ * ,---------------------------------------------------------------------------------------.
+ * | = | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
+ * |------------+------+------+------+------+------+------+------+------+------+------+---|
+ * | | | | UP | | | | _ | | [ | ] | |
+ * |------------+------+------+------+------+-------------+------+------+------+------+---|
+ * | | | LEFT | DOWN | RIGHT | | | - | | [ | ] | |
+ * |------------+------+------+------+------+-----+-----+------+------+------+------+-----|
+ * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
+ * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---|
+ * | RESET | | | | | |
+ * `---------------------------------------------------------------------------------------'
+ */
+ [2] = LAYOUT_5_2u(
+ KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______,
+ _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______,
+ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+ RESET, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
diff --git a/keyboards/checkerboards/quark_squared/keymaps/5_2x225u/config.h b/keyboards/checkerboards/quark_squared/keymaps/5_2x225u/config.h
new file mode 100644
index 0000000000..b1498826ee
--- /dev/null
+++ b/keyboards/checkerboards/quark_squared/keymaps/5_2x225u/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2021 Nathan Spears
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#define TAPPING_TOGGLE 2
diff --git a/keyboards/checkerboards/quark_squared/keymaps/5_2x225u/keymap.c b/keyboards/checkerboards/quark_squared/keymaps/5_2x225u/keymap.c
new file mode 100644
index 0000000000..e116732b75
--- /dev/null
+++ b/keyboards/checkerboards/quark_squared/keymaps/5_2x225u/keymap.c
@@ -0,0 +1,86 @@
+/* Copyright 2021 Nathan Spears
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+// Defines for task manager and such
+#define CALTDEL LCTL(LALT(KC_DEL))
+#define TSKMGR LCTL(LSFT(KC_ESC))
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* [0]
+ * ,-----------------------------------------------------------------------------------------.
+ * | = | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
+ * |------------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del |
+ * |------------+------+------+------+------+-------------+------+------+------+------+------|
+ * | CTL & ESC | A | S | D | F | G | H | J | K | L | ; | " |
+ * |------------+------+------+------+------+------|------+------+------+------+------+------|
+ * | Shift | Z | X | C | V | B | N | M | , | . | / |Enter |
+ * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------|
+ * | OS | Alt | Layer | Space & Layer | [ | ] |
+ * `-----------------------------------------------------------------------------------------'
+ */
+ [0] = LAYOUT_5_2x225u(
+ KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
+ CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
+ KC_GRV, KC_LGUI, KC_LALT, TT(1), LT(2, KC_SPC), KC_TILD, KC_LBRC, KC_RBRC
+ ),
+
+ /* [1]
+ * ,---------------------------------------------------------------------------------------.
+ * | = | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
+ * |------------+------+------+------+------+------+------+------+------+------+------+----|
+ * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BCKSPC |
+ * |------------+------+------+------+------+-------------+------+------+------+------+----|
+ * | \ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / |
+ * |------------+------+------+------+------+------|------+------+------+------+------+----|
+ * | | | | | | | | + | = | | | |
+ * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+----|
+ * | ESC | CTRL-ALT-DEL | | | '|' | ` |
+ * `---------------------------------------------------------------------------------------'
+ */
+ [1] = LAYOUT_5_2x225u(
+ KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
+ KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_EQL, _______, _______, _______,
+ KC_ESC, CALTDEL, _______, _______, _______, _______, KC_NUBS, KC_GRV
+ ),
+
+ /* [2]
+ * ,---------------------------------------------------------------------------------------.
+ * | = | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
+ * |------------+------+------+------+------+------+------+------+------+------+------+---|
+ * | | | | UP | | | | _ | | [ | ] | |
+ * |------------+------+------+------+------+-------------+------+------+------+------+---|
+ * | | | LEFT | DOWN | RIGHT | | | - | | [ | ] | |
+ * |------------+------+------+------+------+-----+-----+------+------+------+------+-----|
+ * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
+ * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---|
+ * | RESET | | | | | |
+ * `---------------------------------------------------------------------------------------'
+ */
+ [2] = LAYOUT_5_2x225u(
+ KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______,
+ _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______,
+ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+ RESET, _______, _______, _______, _______, _______, _______, _______
+ )
+};
diff --git a/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c b/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c
index 56aa2ea6b2..8601c76604 100644
--- a/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c
+++ b/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c
@@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | PRINT | OS | Alt | Layer | Space & Layer | [ | ] | CAPS |
* `-----------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ortho_2x225u(
+ [0] = LAYOUT_4_2x225u(
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
CTL_T(KC_ESC), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
@@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | ESC | CTRL-ALT-DEL | TASK | | | '|' | ` | |
* `---------------------------------------------------------------------------------------'
*/
- [1] = LAYOUT_ortho_2x225u(
+ [1] = LAYOUT_4_2x225u(
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
_______, _______, _______, _______, _______, _______, _______, KC_PPLS, KC_EQL, _______, _______, _______,
@@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | RESET | | | | | | | |
* `---------------------------------------------------------------------------------------'
*/
- [2] = LAYOUT_ortho_2x225u(
+ [2] = LAYOUT_4_2x225u(
_______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______,
_______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______,
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
diff --git a/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c b/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c
index 928965f973..37baf408d2 100644
--- a/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c
+++ b/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c
@@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | PRINT | OS | Alt | Layer | Space & Layer | [ | ] | CAPS |
* `-----------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ortho_2x225u(
+ [0] = LAYOUT_4_2x225u(
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
CTL_T(KC_ESC), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
@@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `---------------------------------------------------------------------------------------'
*/
- [1] = LAYOUT_ortho_2x225u(
+ [1] = LAYOUT_4_2x225u(
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
_______, _______, _______, _______, _______, _______, _______, KC_PPLS, KC_EQL, _______, _______, _______,
@@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `---------------------------------------------------------------------------------------'
*/
- [2] = LAYOUT_ortho_2x225u(
+ [2] = LAYOUT_4_2x225u(
_______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______,
_______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______,
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
@@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `---------------------------------------------------------------------------------------'
*/
- [3] = LAYOUT_ortho_2x225u(
+ [3] = LAYOUT_4_2x225u(
_______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______,
_______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______,
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
diff --git a/keyboards/checkerboards/quark_squared/quark_squared.h b/keyboards/checkerboards/quark_squared/quark_squared.h
index d3d8842212..27f69d1db6 100644
--- a/keyboards/checkerboards/quark_squared/quark_squared.h
+++ b/keyboards/checkerboards/quark_squared/quark_squared.h
@@ -21,26 +21,56 @@
#define XXX KC_NO
-#define LAYOUT_ortho_2x225u( \
+#define LAYOUT_4_2x225u( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
- k30, k31, k33, k34, k36, k38, k39, k3B \
+ k30, k31, k33, k34, k36, k38, k39, k3B \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
- { k30, k31, XXX, k33, k34, XXX, k36, XXX, k38, k39, XXX, k3B } \
+ { k30, k31, XXX, k33, k34, XXX, k36, XXX, k38, k39, XXX, k3B }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX } \
}
-#define LAYOUT_ortho_2u( \
+#define LAYOUT_4_2u( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
- k30, k31, k33, k34, k35, k36, k38, k39, k3B \
+ k30, k31, k33, k34, k35, k36, k38, k39, k3B \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
- { k30, k31, XXX, k33, k34, k35, k36, XXX, k38, k39, XXX, k3B } \
+ { k30, k31, XXX, k33, k34, k35, k36, XXX, k38, k39, XXX, k3B }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX } \
+}
+
+#define LAYOUT_5_2x225u( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \
+ k40, k41, k43, k44, k46, k48, k49, k4B \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B }, \
+ { k40, k41, XXX, k43, k44, XXX, k46, XXX, k48, k49, XXX, k4B } \
+}
+
+#define LAYOUT_5_2u( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \
+ k40, k41, k43, k44, k45, k46, k48, k49, k4B \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B }, \
+ { k40, k41, XXX, k43, k44, k45, k46, XXX, k48, k49, XXX, k4B } \
}
diff --git a/keyboards/checkerboards/quark_squared/readme.md b/keyboards/checkerboards/quark_squared/readme.md
index bbbe2bfb5b..8677710dd9 100644
--- a/keyboards/checkerboards/quark_squared/readme.md
+++ b/keyboards/checkerboards/quark_squared/readme.md
@@ -2,7 +2,7 @@
![Quark_Squared](https://i.imgur.com/zYH25zQ.png)
-The Quark² PCB is a hotswap version of the Quark PCB. Just like the OG, it has a modified layout than a traditonal 4x12 ortholinear keyboard.
+The Quark² PCB is a hotswap version of the Quark PCB. Just like the OG, it has a modified layout than a traditonal 4x12 and 5x12 ortholinear keyboard.
* Keyboard Maintainer: [Nasp](https://github.com/npspears)
* Hardware Supported: Planck
@@ -11,5 +11,7 @@ The Quark² PCB is a hotswap version of the Quark PCB. Just like the OG, it has
Make example for this keyboard (after setting up your build environment):
make checkerboards:quark_squared:default
+
+These boards may be reset into bootloader either via the reset hardware button (on the back of the PCB near the USB connector) or through a configured RESET shortcut inserted into the keymap.
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).