aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/kbdfans
diff options
context:
space:
mode:
authorGravatar Ryan <fauxpark@gmail.com>2020-05-28 11:27:14 +1000
committerGravatar GitHub <noreply@github.com>2020-05-28 02:27:14 +0100
commit13206b2f87b1bce87d58cdfdddb1bcc7b58e4a24 (patch)
tree1371ce05eed475bd4dcf360378dfe7e94d1c052b /keyboards/kbdfans
parentcb9be8a9dc33a65750ea49505d4971555a45de40 (diff)
downloadqmk_firmware-13206b2f87b1bce87d58cdfdddb1bcc7b58e4a24.tar.gz
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 @@
{
- "keyboard_name": "KBDfans KBDPad MKI",
- "url": "https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit",
- "maintainer": "qmk",
- "width": 4,
- "height": 6.25,
- "layouts": {
- "LAYOUT": {
- "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}]
- }
- }
+ "keyboard_name": "KBDfans KBDPad MKI",
+ "url": "https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit",
+ "maintainer": "qmk",
+ "width": 4,
+ "height": 6.25,
+ "layouts": {
+ "LAYOUT": {
+ "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}
+ ]
+ },
+ "LAYOUT_numpad_6x4": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"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}
+ ]
+ },
+ "LAYOUT_ortho_6x4": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"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":3, "y":2.25},
+
+ {"x":0, "y":3.25},
+ {"x":1, "y":3.25},
+ {"x":2, "y":3.25},
+ {"x":3, "y":3.25},
+
+ {"x":0, "y":4.25},
+ {"x":1, "y":4.25},
+ {"x":2, "y":4.25},
+ {"x":3, "y":4.25},
+
+ {"x":0, "y":5.25},
+ {"x":1, "y":5.25},
+ {"x":2, "y":5.25},
+ {"x":3, "y":5.25}
+ ]
+ }
+ }
}
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 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[0] = LAYOUT(\
- KC_DEL, KC_BSPC, \
- KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, \
- KC_P7, KC_P8, KC_P9, \
- KC_P4, KC_P5, KC_P6, KC_PPLS, \
- KC_P1, KC_P2, KC_P3, \
- KC_P0, KC_PDOT, KC_PENT) \
+ [0] = LAYOUT(
+ KC_DEL, KC_BSPC,
+ KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_P7, KC_P8, KC_P9,
+ KC_P4, KC_P5, KC_P6, KC_PPLS,
+ KC_P1, KC_P2, KC_P3,
+ KC_P0, KC_PDOT, KC_PENT
+ )
};
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 @@
* 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
#include "quantum.h"
-// This a shortcut to help you visually see your layout.
+// This is a shortcut to help you visually see your layout.
// The first section contains all of the arguments
// The second converts the arguments into a two-dimensional array
-#define LAYOUT( \
- k52, k53, \
- k40, k41, k42, k43, \
- k30, k31, k32, \
- k20, k21, k22, k23, \
- k10, k11, k12, \
- k00, k02, k03 \
-){ \
- { k00, KC_NO, k02, k03 }, \
- { k10, k11, k12, KC_NO }, \
- { k20, k21, k22, k23 }, \
- { k30, k31, k32, KC_NO }, \
- { k40, k41, k42, k43 }, \
- { KC_NO, KC_NO, k52, k53 }, \
+#define LAYOUT( \
+ k52, k53, \
+ k40, k41, k42, k43, \
+ k30, k31, k32, \
+ k20, k21, k22, k23, \
+ k10, k11, k12, \
+ k00, k02, k03 \
+) { \
+ { k00, KC_NO, k02, k03 }, \
+ { k10, k11, k12, KC_NO }, \
+ { k20, k21, k22, k23 }, \
+ { k30, k31, k32, KC_NO }, \
+ { k40, k41, k42, k43 }, \
+ { KC_NO, KC_NO, k52, k53 } \
+}
+
+#define LAYOUT_numpad_6x4( \
+ k50, k51, k52, k53, \
+ k40, k41, k42, k43, \
+ k30, k31, k32, \
+ k20, k21, k22, k23, \
+ k10, k11, k12, \
+ k00, k02, k03 \
+) { \
+ { k00, KC_NO, k02, k03 }, \
+ { k10, k11, k12, KC_NO }, \
+ { k20, k21, k22, k23 }, \
+ { k30, k31, k32, KC_NO }, \
+ { k40, k41, k42, k43 }, \
+ { k50, k51, k52, k53 } \
+}
+
+#define LAYOUT_ortho_6x4( \
+ k50, k51, k52, k53, \
+ k40, k41, k42, k43, \
+ k30, k31, k32, k33, \
+ k20, k21, k22, k23, \
+ k10, k11, k12, k13, \
+ k00, k01, k02, k03 \
+) { \
+ { k00, k01, k02, k03 }, \
+ { k10, k11, k12, k13 }, \
+ { k20, k21, k22, k23 }, \
+ { k30, k31, k32, k33 }, \
+ { k40, k41, k42, k43 }, \
+ { k50, k51, k52, k53 } \
}
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 @@
# KBDPad MKI
-Custom numpad.
+Custom 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!).
* Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin)
-* Hardware Supported: KBDPad MKI
-* Hardware Availability: [KBDfans](https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit)
+* Hardware Supported: KBDPad MKI, KBDPad V2
+* Hardware Availability: [KBDfans](https://kbdfans.com/collections/20/products/kbdfans-kbdpad-pcb-v2)
Make example for this keyboard (after setting up your build environment):
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
BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = no # PCB has underglow LEDs, but case doesn't let them show.
WS2812_DRIVER = i2c
+
+LAYOUTS = ortho_6x4 numpad_6x4