aboutsummaryrefslogtreecommitdiff
path: root/keyboards/kapcave/gskt00
diff options
context:
space:
mode:
authornachie <me@nachie.com>2021-09-28 21:35:14 -0700
committerGitHub <noreply@github.com>2021-09-28 21:35:14 -0700
commit6779d5b990bf94cba28a74246c2378e5bb5047b4 (patch)
tree33bf073641d9ba92d49d97ef7c50aba4441aa599 /keyboards/kapcave/gskt00
parent77e4b07fb5f2b0b5dc1df03b1233773073c65674 (diff)
downloadqmk_firmware-6779d5b990bf94cba28a74246c2378e5bb5047b4.tar.gz
qmk_firmware-6779d5b990bf94cba28a74246c2378e5bb5047b4.zip
[Keyboard] Add support for PaladinPad, Arya pcb and move keyboards by KapCave into their own directory (#14194)
Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Nachiket Kulkarni <nachiket_kulkarni@apple.com>
Diffstat (limited to 'keyboards/kapcave/gskt00')
-rwxr-xr-xkeyboards/kapcave/gskt00/config.h52
-rwxr-xr-xkeyboards/kapcave/gskt00/gskt00.c18
-rwxr-xr-xkeyboards/kapcave/gskt00/gskt00.h73
-rw-r--r--keyboards/kapcave/gskt00/info.json82
-rw-r--r--keyboards/kapcave/gskt00/keymaps/default-poly/config.h39
-rwxr-xr-xkeyboards/kapcave/gskt00/keymaps/default-poly/keymap.c70
-rw-r--r--keyboards/kapcave/gskt00/keymaps/default-poly/readme.md1
-rw-r--r--keyboards/kapcave/gskt00/keymaps/default-poly/rules.mk2
-rwxr-xr-xkeyboards/kapcave/gskt00/keymaps/default/keymap.c38
-rw-r--r--keyboards/kapcave/gskt00/keymaps/default/readme.md1
-rwxr-xr-xkeyboards/kapcave/gskt00/keymaps/nachie/keymap.c82
-rwxr-xr-xkeyboards/kapcave/gskt00/keymaps/via/keymap.c57
-rw-r--r--keyboards/kapcave/gskt00/keymaps/via/readme.md1
-rw-r--r--keyboards/kapcave/gskt00/keymaps/via/rules.mk1
-rw-r--r--keyboards/kapcave/gskt00/readme.md23
-rwxr-xr-xkeyboards/kapcave/gskt00/rules.mk21
16 files changed, 561 insertions, 0 deletions
diff --git a/keyboards/kapcave/gskt00/config.h b/keyboards/kapcave/gskt00/config.h
new file mode 100755
index 000000000..91c34182e
--- /dev/null
+++ b/keyboards/kapcave/gskt00/config.h
@@ -0,0 +1,52 @@
1/*
2Copyright 2021 KapCave
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#pragma once
18
19#include "config_common.h"
20
21/* USB Device descriptor parameter */
22#define VENDOR_ID 0x4B43
23#define PRODUCT_ID 0x6061
24#define DEVICE_VER 0x0001
25#define MANUFACTURER KapCave
26#define PRODUCT GSKT00
27
28/* key matrix size */
29#define MATRIX_ROWS 8
30#define MATRIX_COLS 8
31
32/* key matrix pins */
33#define MATRIX_ROW_PINS { F1, D1, D2, D4, D6, F7, B0, F4 }
34#define MATRIX_COL_PINS { F6, D7, F5, C7, B4, C6, B6, B5 }
35#define UNUSED_PINS
36
37#define BOOTMAGIC_LITE_ROW 3
38#define BOOTMAGIC_LITE_COLUMN 6
39
40/* COL2ROW or ROW2COL */
41#define DIODE_DIRECTION COL2ROW
42
43/* Set 0 if debouncing isn't needed */
44#define DEBOUNCE 5
45
46/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
47#define LOCKING_SUPPORT_ENABLE
48
49/* Locking resynchronize hack */
50#define LOCKING_RESYNC_ENABLE
51
52
diff --git a/keyboards/kapcave/gskt00/gskt00.c b/keyboards/kapcave/gskt00/gskt00.c
new file mode 100755
index 000000000..c2c2d823f
--- /dev/null
+++ b/keyboards/kapcave/gskt00/gskt00.c
@@ -0,0 +1,18 @@
1/*
2Copyright 2021 KapCave
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#include "gskt00.h"
18
diff --git a/keyboards/kapcave/gskt00/gskt00.h b/keyboards/kapcave/gskt00/gskt00.h
new file mode 100755
index 000000000..d0ac51acd
--- /dev/null
+++ b/keyboards/kapcave/gskt00/gskt00.h
@@ -0,0 +1,73 @@
1/*
2Copyright 2021 KapCave
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#pragma once
19
20#include "quantum.h"
21
22#define XXX KC_NO
23
24#define LAYOUT_all( \
25 k36, k37, k46, k47, k56, k57, k66, k67, k76, k77, k06, k07, k17, k26, k27, \
26 k34, k35, k44, k45, k54, k55, k64, k65, k75, k05, k15, k16, k25, k24, \
27 k32, k33, k43, k52, k53, k63, k73, k74, k03, k04, k13, k14, k23, \
28 k31, k41, k42, k51, k61, k62, k71, k72, k01, k02, k11, k12, k21, k22, \
29 k30, k40, k50, k60, k00, k10, k20 \
30) { \
31 { k00, k01, k02, k03, k04, k05, k06, k07 }, \
32 { k10, k11, k12, k13, k14, k15, k16, k17 }, \
33 { k20, k21, k22, k23, k24, k25, k26, k27 }, \
34 { k30, k31, k32, k33, k34, k35, k36, k37 }, \
35 { k40, k41, k42, k43, k44, k45, k46, k47 }, \
36 { k50, k51, k52, k53, k54, k55, k56, k57 }, \
37 { k60, k61, k62, k63, k64, k65, k66, k67 }, \
38 { XXX, k71, k72, k73, k74, k75, k76, k77 } \
39}
40
41#define LAYOUT_60_iso_tsangan( \
42 k36, k37, k46, k47, k56, k57, k66, k67, k76, k77, k06, k07, k17, k27, \
43 k34, k35, k44, k45, k54, k55, k64, k65, k75, k05, k15, k16, k25, \
44 k32, k33, k43, k52, k53, k63, k73, k74, k03, k04, k13, k14, k24, k23, \
45 k31, k41, k42, k51, k61, k62, k71, k72, k01, k02, k11, k12, k21, \
46 k30, k40, k50, k60, k00, k10, k20 \
47) { \
48 { k00, k01, k02, k03, k04, k05, k06, k07 }, \
49 { XXX, k11, k12, k13, k14, k15, k16, k17 }, \
50 { k20, k21, XXX, k23, k24, k25, XXX, k27 }, \
51 { k30, k31, k32, k33, k34, k35, k36, k37 }, \
52 { k40, k41, k42, k43, k44, k45, k46, k47 }, \
53 { k50, k51, k52, k53, k54, k55, k56, k57 }, \
54 { k60, k61, k62, k63, k64, k65, k66, k67 }, \
55 { XXX, k71, k72, k73, k74, k75, k76, k77 } \
56}
57
58#define LAYOUT_60_ansi_tsangan( \
59 k36, k37, k46, k47, k56, k57, k66, k67, k76, k77, k06, k07, k17, k27, \
60 k34, k35, k44, k45, k54, k55, k64, k65, k75, k05, k15, k16, k25, k24, \
61 k32, k33, k43, k52, k53, k63, k73, k74, k03, k04, k13, k14, k23, \
62 k31, k42, k51, k61, k62, k71, k72, k01, k02, k11, k12, k21, \
63 k30, k40, k50, k60, k00, k10, k20 \
64) { \
65 { k00, k01, k02, k03, k04, k05, k06, k07 }, \
66 { k10, k11, k12, k13, k14, k15, k16, k17 }, \
67 { k20, k21, XXX, k23, k24, k25, XXX, k27 }, \
68 { k30, k31, k32, k33, k34, k35, k36, k37 }, \
69 { k40, XXX, k42, k43, k44, k45, k46, k47 }, \
70 { k50, k51, k52, k53, k54, k55, k56, k57 }, \
71 { k60, k61, k62, k63, k64, k65, k66, k67 }, \
72 { XXX, k71, k72, k73, k74, k75, k76, k77 } \
73}
diff --git a/keyboards/kapcave/gskt00/info.json b/keyboards/kapcave/gskt00/info.json
new file mode 100644
index 000000000..ba1455fae
--- /dev/null
+++ b/keyboards/kapcave/gskt00/info.json
@@ -0,0 +1,82 @@
1{
2 "keyboard_name": "GSKT-00",
3 "url": "https://kapcave.com/products/gskt-00-pcb-usb-c",
4 "maintainer": "nachie",
5 "layouts": {
6 "LAYOUT_60_ansi_tsangan": {
7 "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"Alt", "x":11, "y":4, "w":1.5}, {"label":"Win", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
8 },
9
10 "LAYOUT_60_iso_tsangan": {
11 "layout": [{"label":"\u00ac", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"@", "x":11.75, "y":2}, {"label":"~", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"AltGr", "x":11, "y":4, "w":1.5}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
12 },
13
14 "LAYOUT_all": {
15 "layout": [
16 {"label":"Esc", "x":0, "y":0},
17 {"label":"1", "x":1, "y":0},
18 {"label":"2", "x":2, "y":0},
19 {"label":"3", "x":3, "y":0},
20 {"label":"4", "x":4, "y":0},
21 {"label":"5", "x":5, "y":0},
22 {"label":"6", "x":6, "y":0},
23 {"label":"7", "x":7, "y":0},
24 {"label":"8", "x":8, "y":0},
25 {"label":"9", "x":9, "y":0},
26 {"label":"0", "x":10, "y":0},
27 {"label":"-", "x":11, "y":0},
28 {"label":"=", "x":12, "y":0},
29 {"label":"\\", "x":13, "y":0},
30 {"label":"`", "x":14, "y":0},
31 {"label":"Tab", "x":0, "y":1, "w":1.5},
32 {"label":"Q", "x":1.5, "y":1},
33 {"label":"W", "x":2.5, "y":1},
34 {"label":"E", "x":3.5, "y":1},
35 {"label":"R", "x":4.5, "y":1},
36 {"label":"T", "x":5.5, "y":1},
37 {"label":"Y", "x":6.5, "y":1},
38 {"label":"U", "x":7.5, "y":1},
39 {"label":"I", "x":8.5, "y":1},
40 {"label":"O", "x":9.5, "y":1},
41 {"label":"P", "x":10.5, "y":1},
42 {"label":"[", "x":11.5, "y":1},
43 {"label":"]", "x":12.5, "y":1},
44 {"label":"Backspace", "x":13.5, "y":1, "w":1.5},
45 {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
46 {"label":"A", "x":1.75, "y":2},
47 {"label":"S", "x":2.75, "y":2},
48 {"label":"D", "x":3.75, "y":2},
49 {"label":"F", "x":4.75, "y":2},
50 {"label":"G", "x":5.75, "y":2},
51 {"label":"H", "x":6.75, "y":2},
52 {"label":"J", "x":7.75, "y":2},
53 {"label":"K", "x":8.75, "y":2},
54 {"label":"L", "x":9.75, "y":2},
55 {"label":";", "x":10.75, "y":2},
56 {"label":"'", "x":11.75, "y":2},
57 {"label":"Enter", "x":12.75, "y":2, "w":2.25},
58 {"label":"Shift", "x":0, "y":3, "w":1.25},
59 {"label":"ISO \\", "x":1.25, "y":3},
60 {"label":"Z", "x":2.25, "y":3},
61 {"label":"X", "x":3.25, "y":3},
62 {"label":"C", "x":4.25, "y":3},
63 {"label":"V", "x":5.25, "y":3},
64 {"label":"B", "x":6.25, "y":3},
65 {"label":"N", "x":7.25, "y":3},
66 {"label":"M", "x":8.25, "y":3},
67 {"label":",", "x":9.25, "y":3},
68 {"label":".", "x":10.25, "y":3},
69 {"label":"/", "x":11.25, "y":3},
70 {"label":"Shift", "x":12.25, "y":3, "w":1.75},
71 {"label":"Fn", "x":14, "y":3},
72 {"label":"Ctrl", "x":0, "y":4, "w":1.5},
73 {"label":"GUI", "x":1.5, "y":4},
74 {"label":"Alt", "x":2.5, "y":4, "w":1.5},
75 {"label":"Space", "x":4, "y":4, "w":7},
76 {"label":"Alt", "x":11, "y":4, "w":1.5},
77 {"label":"GUI", "x":12.5, "y":4},
78 {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}
79 ]
80 }
81 }
82}
diff --git a/keyboards/kapcave/gskt00/keymaps/default-poly/config.h b/keyboards/kapcave/gskt00/keymaps/default-poly/config.h
new file mode 100644
index 000000000..2db5749cb
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/default-poly/config.h
@@ -0,0 +1,39 @@
1/*
2Copyright 2021 KapCave
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#pragma once
18
19#define ENCODERS_PAD_A { D5 }
20#define ENCODERS_PAD_B { D3 }
21
22#define RGB_DI_PIN D0
23#ifdef RGB_DI_PIN
24#define RGBLIGHT_EFFECT_BREATHING
25#define RGBLIGHT_EFFECT_RAINBOW_MOOD
26#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
27#define RGBLIGHT_EFFECT_SNAKE
28#define RGBLIGHT_EFFECT_KNIGHT
29#define RGBLIGHT_EFFECT_CHRISTMAS
30#define RGBLIGHT_EFFECT_STATIC_GRADIENT
31#define RGBLIGHT_EFFECT_RGB_TEST
32#define RGBLIGHT_EFFECT_ALTERNATING
33#define RGBLIGHT_EFFECT_TWINKLE
34#define RGBLED_NUM 14
35#define RGBLIGHT_HUE_STEP 10
36#define RGBLIGHT_SAT_STEP 17
37#define RGBLIGHT_VAL_STEP 12
38#endif
39
diff --git a/keyboards/kapcave/gskt00/keymaps/default-poly/keymap.c b/keyboards/kapcave/gskt00/keymaps/default-poly/keymap.c
new file mode 100755
index 000000000..8c7e9720d
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/default-poly/keymap.c
@@ -0,0 +1,70 @@
1/*
2Copyright 2021 KapCave
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 /* QWERTY */
22 LAYOUT_all(
23 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSLS,
24 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
25 MO(3), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
26 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3),
27 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_LCTL),
28
29 /* DVORAK */
30 LAYOUT_all(
31 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS,
32 KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSPC,
33 MO(3), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT,
34 KC_LSFT, KC_NUBS, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_LSFT, MO(3),
35 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL),
36
37 /* COLEMAK */
38 LAYOUT_all(
39 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSLS,
40 KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSPC,
41 MO(3), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT,
42 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3),
43 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL),
44
45 /* FUNCTION */
46 LAYOUT_all(
47 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
48 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC,
49 KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS,
50 KC_CAPS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
51 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG)
52
53};
54
55bool encoder_update_user(uint8_t index, bool clockwise) {
56 if (index == 0) { /* First encoder */
57 if (clockwise) {
58 tap_code(KC_PGDN);
59 } else {
60 tap_code(KC_PGUP);
61 }
62 } else if (index == 1) { /* Second encoder */
63 if (clockwise) {
64 tap_code(KC_UP);
65 } else {
66 tap_code(KC_DOWN);
67 }
68 }
69 return true;
70} \ No newline at end of file
diff --git a/keyboards/kapcave/gskt00/keymaps/default-poly/readme.md b/keyboards/kapcave/gskt00/keymaps/default-poly/readme.md
new file mode 100644
index 000000000..1f6d7bcd3
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/default-poly/readme.md
@@ -0,0 +1 @@
There was a private run of Polycarbonate cases. This keymap supports the underglow PCBs that shipped out with those, in addition to future underglow pcbs. These PCBs also had encoder support which is reflected in the keymap. \ No newline at end of file
diff --git a/keyboards/kapcave/gskt00/keymaps/default-poly/rules.mk b/keyboards/kapcave/gskt00/keymaps/default-poly/rules.mk
new file mode 100644
index 000000000..53c9db2bd
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/default-poly/rules.mk
@@ -0,0 +1,2 @@
1RGBLIGHT_ENABLE = yes
2ENCODER_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/kapcave/gskt00/keymaps/default/keymap.c b/keyboards/kapcave/gskt00/keymaps/default/keymap.c
new file mode 100755
index 000000000..0d8d6dad6
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/default/keymap.c
@@ -0,0 +1,38 @@
1/*
2Copyright 2021 KapCave
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 /* QWERTY */
22 LAYOUT_all(
23 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC,
24 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
25 KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
26 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3),
27 KC_LGUI, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(3)),
28
29 /* FUNCTION */
30 LAYOUT_all(
31 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
32 KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLCK, KC_PAUS, KC_UP, KC_PAUS, KC_DEL,
33 KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS,
35 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG)
36
37};
38
diff --git a/keyboards/kapcave/gskt00/keymaps/default/readme.md b/keyboards/kapcave/gskt00/keymaps/default/readme.md
new file mode 100644
index 000000000..042b07d14
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/default/readme.md
@@ -0,0 +1 @@
The default keymap for the GSKT-00 PCB. \ No newline at end of file
diff --git a/keyboards/kapcave/gskt00/keymaps/nachie/keymap.c b/keyboards/kapcave/gskt00/keymaps/nachie/keymap.c
new file mode 100755
index 000000000..8606d2484
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/nachie/keymap.c
@@ -0,0 +1,82 @@
1#include QMK_KEYBOARD_H
2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4
5 /* QWERTY */
6 LAYOUT_all(
7 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSLS,
8 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
9 MO(3), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
10 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3),
11 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_LCTL),
12
13 /* DVORAK */
14 LAYOUT_all(
15 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS,
16 KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSPC,
17 MO(3), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT,
18 KC_LSFT, KC_NUBS, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_LSFT, MO(3),
19 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL),
20
21 /* COLEMAK */
22 LAYOUT_all(
23 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSLS,
24 KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSPC,
25 MO(3), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT,
26 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3),
27 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL),
28
29 /* FUNCTION */
30 LAYOUT_all(
31 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC,
33 KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS,
34 KC_CAPS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
35 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG)
36
37};
38
39void matrix_init_user(void) {
40}
41
42void matrix_scan_user(void) {
43}
44
45bool process_record_user(uint16_t keycode, keyrecord_t *record) {
46 return true;
47}
48
49void led_set_user(uint8_t usb_led) {
50
51 if (usb_led & (1 << USB_LED_NUM_LOCK)) {
52
53 } else {
54
55 }
56
57 if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
58
59 } else {
60
61 }
62
63 if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
64
65 } else {
66
67 }
68
69 if (usb_led & (1 << USB_LED_COMPOSE)) {
70
71 } else {
72
73 }
74
75 if (usb_led & (1 << USB_LED_KANA)) {
76
77 } else {
78
79 }
80
81}
82
diff --git a/keyboards/kapcave/gskt00/keymaps/via/keymap.c b/keyboards/kapcave/gskt00/keymaps/via/keymap.c
new file mode 100755
index 000000000..95bc13142
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/via/keymap.c
@@ -0,0 +1,57 @@
1/*
2Copyright 2021 KapCave
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#include QMK_KEYBOARD_H
18
19enum layer_names {
20 _BASE, // Default Layer
21 _FN, // Fn Layer 1
22 _FN2, // Fn Layer 2
23 _FN3 // Fn Layer 3
24};
25
26const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
27
28 /* QWERTY */
29 [_BASE] = LAYOUT_all(
30 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC,
31 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
32 KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
33 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(3),
34 KC_LGUI, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(3)),
35
36 /* FUNCTION */
37 [_FN] = LAYOUT_all(
38 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
39 KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLCK, KC_PAUS, KC_UP, KC_PAUS, KC_DEL,
40 KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
41 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS,
42 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
43
44 [_FN2] = LAYOUT_all(
45 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
46 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
47 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
48 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
49 _______, _______, _______, _______, _______, _______, _______),
50
51 [_FN3] = LAYOUT_all(
52 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
53 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
54 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
55 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
56 _______, _______, _______, _______, _______, _______, _______)
57};
diff --git a/keyboards/kapcave/gskt00/keymaps/via/readme.md b/keyboards/kapcave/gskt00/keymaps/via/readme.md
new file mode 100644
index 000000000..c5c3db7e3
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/via/readme.md
@@ -0,0 +1 @@
The via keymap for the GSKT-00 PCB. \ No newline at end of file
diff --git a/keyboards/kapcave/gskt00/keymaps/via/rules.mk b/keyboards/kapcave/gskt00/keymaps/via/rules.mk
new file mode 100644
index 000000000..036bd6d1c
--- /dev/null
+++ b/keyboards/kapcave/gskt00/keymaps/via/rules.mk
@@ -0,0 +1 @@
VIA_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/kapcave/gskt00/readme.md b/keyboards/kapcave/gskt00/readme.md
new file mode 100644
index 000000000..d1a90ca58
--- /dev/null
+++ b/keyboards/kapcave/gskt00/readme.md
@@ -0,0 +1,23 @@
1# GSKT-00 PCB
2
3Firmware for the GSKT-00 PCB
4
5* Keyboard Maintainer: [KapCave](https://github.com/nachie)
6* Hardware Supported: GSKT-00 PCB
7* Hardware Availability: [KapCave](https://kapcave.com/products/gskt-00-pcb-usb-c)
8
9Make example for this keyboard (after setting up your build environment):
10
11 make kapcave/gskt00:default
12
13Or to make and flash:
14
15 make kapcave/gskt00:default:flash
16
17
18See 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).
19
20## Bootloader
21
22* **Bootmagic reset**: Hold down ESC key (top left) and plug in the keyboard
23* **Physical reset button**: Briefly press the button labeled "SW_RST1" on the back of the PCB
diff --git a/keyboards/kapcave/gskt00/rules.mk b/keyboards/kapcave/gskt00/rules.mk
new file mode 100755
index 000000000..0c803ec2e
--- /dev/null
+++ b/keyboards/kapcave/gskt00/rules.mk
@@ -0,0 +1,21 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5BOOTLOADER = atmel-dfu
6
7# Build Options
8# comment out to disable the options.
9#
10BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
11MOUSEKEY_ENABLE = yes # Mouse keys
12EXTRAKEY_ENABLE = yes # Audio control and System control
13CONSOLE_ENABLE = yes # Console for debug
14COMMAND_ENABLE = no # Commands for debug and configuration
15SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
16NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
17BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
18AUDIO_ENABLE = no
19RGBLIGHT_ENABLE = no
20
21LAYOUTS = 60_ansi_tsangan 60_iso_tsangan