aboutsummaryrefslogtreecommitdiff
path: root/keyboards/kbdfans
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2020-05-28 11:27:14 +1000
committerGitHub <noreply@github.com>2020-05-28 02:27:14 +0100
commit13206b2f87b1bce87d58cdfdddb1bcc7b58e4a24 (patch)
tree1371ce05eed475bd4dcf360378dfe7e94d1c052b /keyboards/kbdfans
parentcb9be8a9dc33a65750ea49505d4971555a45de40 (diff)
downloadqmk_firmware-13206b2f87b1bce87d58cdfdddb1bcc7b58e4a24.tar.gz
qmk_firmware-13206b2f87b1bce87d58cdfdddb1bcc7b58e4a24.zip
Community layout support for KBDpad Mk.I (#9220)
* Community layout support for KBDpad Mk.I * Matching spacing
Diffstat (limited to 'keyboards/kbdfans')
-rw-r--r--keyboards/kbdfans/kbdpad/mk1/info.json108
-rw-r--r--keyboards/kbdfans/kbdpad/mk1/keymaps/default/keymap.c15
-rw-r--r--keyboards/kbdfans/kbdpad/mk1/mk1.h63
-rw-r--r--keyboards/kbdfans/kbdpad/mk1/readme.md6
-rw-r--r--keyboards/kbdfans/kbdpad/mk1/rules.mk2
5 files changed, 159 insertions, 35 deletions
diff --git a/keyboards/kbdfans/kbdpad/mk1/info.json b/keyboards/kbdfans/kbdpad/mk1/info.json
index 4f0da62e8..68e8f6851 100644
--- a/keyboards/kbdfans/kbdpad/mk1/info.json
+++ b/keyboards/kbdfans/kbdpad/mk1/info.json
@@ -1,12 +1,100 @@
1{ 1{
2 "keyboard_name": "KBDfans KBDPad MKI", 2 "keyboard_name": "KBDfans KBDPad MKI",
3 "url": "https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit", 3 "url": "https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit",
4 "maintainer": "qmk", 4 "maintainer": "qmk",
5 "width": 4, 5 "width": 4,
6 "height": 6.25, 6 "height": 6.25,
7 "layouts": { 7 "layouts": {
8 "LAYOUT": { 8 "LAYOUT": {
9 "layout": [{"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":0, "y":2.25}, {"x":1, "y":2.25}, {"x":2, "y":2.25}, {"x":0, "y":3.25}, {"x":1, "y":3.25}, {"x":2, "y":3.25}, {"x":3, "y":2.25, "h":2}, {"x":0, "y":4.25}, {"x":1, "y":4.25}, {"x":2, "y":4.25}, {"x":0, "y":5.25, "w":2}, {"x":2, "y":5.25}, {"x":3, "y":4.25, "h":2}] 9 "layout": [
10 } 10 {"x":2, "y":0},
11 } 11 {"x":3, "y":0},
12
13 {"x":0, "y":1.25},
14 {"x":1, "y":1.25},
15 {"x":2, "y":1.25},
16 {"x":3, "y":1.25},
17
18 {"x":0, "y":2.25},
19 {"x":1, "y":2.25},
20 {"x":2, "y":2.25},
21
22 {"x":0, "y":3.25},
23 {"x":1, "y":3.25},
24 {"x":2, "y":3.25},
25 {"x":3, "y":2.25, "h":2},
26
27 {"x":0, "y":4.25},
28 {"x":1, "y":4.25},
29 {"x":2, "y":4.25},
30
31 {"x":0, "y":5.25, "w":2},
32 {"x":2, "y":5.25},
33 {"x":3, "y":4.25, "h":2}
34 ]
35 },
36 "LAYOUT_numpad_6x4": {
37 "layout": [
38 {"x":0, "y":0},
39 {"x":1, "y":0},
40 {"x":2, "y":0},
41 {"x":3, "y":0},
42
43 {"x":0, "y":1.25},
44 {"x":1, "y":1.25},
45 {"x":2, "y":1.25},
46 {"x":3, "y":1.25},
47
48 {"x":0, "y":2.25},
49 {"x":1, "y":2.25},
50 {"x":2, "y":2.25},
51
52 {"x":0, "y":3.25},
53 {"x":1, "y":3.25},
54 {"x":2, "y":3.25},
55 {"x":3, "y":2.25, "h":2},
56
57 {"x":0, "y":4.25},
58 {"x":1, "y":4.25},
59 {"x":2, "y":4.25},
60
61 {"x":0, "y":5.25, "w":2},
62 {"x":2, "y":5.25},
63 {"x":3, "y":4.25, "h":2}
64 ]
65 },
66 "LAYOUT_ortho_6x4": {
67 "layout": [
68 {"x":0, "y":0},
69 {"x":1, "y":0},
70 {"x":2, "y":0},
71 {"x":3, "y":0},
72
73 {"x":0, "y":1.25},
74 {"x":1, "y":1.25},
75 {"x":2, "y":1.25},
76 {"x":3, "y":1.25},
77
78 {"x":0, "y":2.25},
79 {"x":1, "y":2.25},
80 {"x":2, "y":2.25},
81 {"x":3, "y":2.25},
82
83 {"x":0, "y":3.25},
84 {"x":1, "y":3.25},
85 {"x":2, "y":3.25},
86 {"x":3, "y":3.25},
87
88 {"x":0, "y":4.25},
89 {"x":1, "y":4.25},
90 {"x":2, "y":4.25},
91 {"x":3, "y":4.25},
92
93 {"x":0, "y":5.25},
94 {"x":1, "y":5.25},
95 {"x":2, "y":5.25},
96 {"x":3, "y":5.25}
97 ]
98 }
99 }
12} 100}
diff --git a/keyboards/kbdfans/kbdpad/mk1/keymaps/default/keymap.c b/keyboards/kbdfans/kbdpad/mk1/keymaps/default/keymap.c
index 2d5053e0b..58f2c597e 100644
--- a/keyboards/kbdfans/kbdpad/mk1/keymaps/default/keymap.c
+++ b/keyboards/kbdfans/kbdpad/mk1/keymaps/default/keymap.c
@@ -17,11 +17,12 @@
17#include QMK_KEYBOARD_H 17#include QMK_KEYBOARD_H
18 18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20[0] = LAYOUT(\ 20 [0] = LAYOUT(
21 KC_DEL, KC_BSPC, \ 21 KC_DEL, KC_BSPC,
22 KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, \ 22 KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
23 KC_P7, KC_P8, KC_P9, \ 23 KC_P7, KC_P8, KC_P9,
24 KC_P4, KC_P5, KC_P6, KC_PPLS, \ 24 KC_P4, KC_P5, KC_P6, KC_PPLS,
25 KC_P1, KC_P2, KC_P3, \ 25 KC_P1, KC_P2, KC_P3,
26 KC_P0, KC_PDOT, KC_PENT) \ 26 KC_P0, KC_PDOT, KC_PENT
27 )
27}; 28};
diff --git a/keyboards/kbdfans/kbdpad/mk1/mk1.h b/keyboards/kbdfans/kbdpad/mk1/mk1.h
index ace7466f5..36b028727 100644
--- a/keyboards/kbdfans/kbdpad/mk1/mk1.h
+++ b/keyboards/kbdfans/kbdpad/mk1/mk1.h
@@ -13,26 +13,59 @@
13 * You should have received a copy of the GNU General Public License 13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>. 14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */ 15 */
16
16#pragma once 17#pragma once
17 18
18#include "quantum.h" 19#include "quantum.h"
19 20
20// This a shortcut to help you visually see your layout. 21// This is a shortcut to help you visually see your layout.
21// The first section contains all of the arguments 22// The first section contains all of the arguments
22// The second converts the arguments into a two-dimensional array 23// The second converts the arguments into a two-dimensional array
23 24
24#define LAYOUT( \ 25#define LAYOUT( \
25 k52, k53, \ 26 k52, k53, \
26 k40, k41, k42, k43, \ 27 k40, k41, k42, k43, \
27 k30, k31, k32, \ 28 k30, k31, k32, \
28 k20, k21, k22, k23, \ 29 k20, k21, k22, k23, \
29 k10, k11, k12, \ 30 k10, k11, k12, \
30 k00, k02, k03 \ 31 k00, k02, k03 \
31){ \ 32) { \
32 { k00, KC_NO, k02, k03 }, \ 33 { k00, KC_NO, k02, k03 }, \
33 { k10, k11, k12, KC_NO }, \ 34 { k10, k11, k12, KC_NO }, \
34 { k20, k21, k22, k23 }, \ 35 { k20, k21, k22, k23 }, \
35 { k30, k31, k32, KC_NO }, \ 36 { k30, k31, k32, KC_NO }, \
36 { k40, k41, k42, k43 }, \ 37 { k40, k41, k42, k43 }, \
37 { KC_NO, KC_NO, k52, k53 }, \ 38 { KC_NO, KC_NO, k52, k53 } \
39}
40
41#define LAYOUT_numpad_6x4( \
42 k50, k51, k52, k53, \
43 k40, k41, k42, k43, \
44 k30, k31, k32, \
45 k20, k21, k22, k23, \
46 k10, k11, k12, \
47 k00, k02, k03 \
48) { \
49 { k00, KC_NO, k02, k03 }, \
50 { k10, k11, k12, KC_NO }, \
51 { k20, k21, k22, k23 }, \
52 { k30, k31, k32, KC_NO }, \
53 { k40, k41, k42, k43 }, \
54 { k50, k51, k52, k53 } \
55}
56
57#define LAYOUT_ortho_6x4( \
58 k50, k51, k52, k53, \
59 k40, k41, k42, k43, \
60 k30, k31, k32, k33, \
61 k20, k21, k22, k23, \
62 k10, k11, k12, k13, \
63 k00, k01, k02, k03 \
64) { \
65 { k00, k01, k02, k03 }, \
66 { k10, k11, k12, k13 }, \
67 { k20, k21, k22, k23 }, \
68 { k30, k31, k32, k33 }, \
69 { k40, k41, k42, k43 }, \
70 { k50, k51, k52, k53 } \
38} 71}
diff --git a/keyboards/kbdfans/kbdpad/mk1/readme.md b/keyboards/kbdfans/kbdpad/mk1/readme.md
index 2424d4d4d..27194e683 100644
--- a/keyboards/kbdfans/kbdpad/mk1/readme.md
+++ b/keyboards/kbdfans/kbdpad/mk1/readme.md
@@ -1,10 +1,10 @@
1# KBDPad MKI 1# KBDPad MKI
2 2
3Custom numpad. 3Custom numpad. The MKI shares the same ATmega32A and matrix layout as the newer V2 PCB (not to be confused with the MKII, which uses an ATmega32U2!).
4 4
5* Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin) 5* Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin)
6* Hardware Supported: KBDPad MKI 6* Hardware Supported: KBDPad MKI, KBDPad V2
7* Hardware Availability: [KBDfans](https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit) 7* Hardware Availability: [KBDfans](https://kbdfans.com/collections/20/products/kbdfans-kbdpad-pcb-v2)
8 8
9Make example for this keyboard (after setting up your build environment): 9Make example for this keyboard (after setting up your build environment):
10 10
diff --git a/keyboards/kbdfans/kbdpad/mk1/rules.mk b/keyboards/kbdfans/kbdpad/mk1/rules.mk
index 6b4c1f6ba..679ac08fa 100644
--- a/keyboards/kbdfans/kbdpad/mk1/rules.mk
+++ b/keyboards/kbdfans/kbdpad/mk1/rules.mk
@@ -20,3 +20,5 @@ COMMAND_ENABLE = no
20BACKLIGHT_ENABLE = yes 20BACKLIGHT_ENABLE = yes
21RGBLIGHT_ENABLE = no # PCB has underglow LEDs, but case doesn't let them show. 21RGBLIGHT_ENABLE = no # PCB has underglow LEDs, but case doesn't let them show.
22WS2812_DRIVER = i2c 22WS2812_DRIVER = i2c
23
24LAYOUTS = ortho_6x4 numpad_6x4