aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/planck/rev5
diff options
context:
space:
mode:
authorGravatar noroadsleft <18669334+noroadsleft@users.noreply.github.com>2019-06-19 10:56:20 -0700
committerGravatar Drashna Jaelre <drashna@live.com>2019-06-19 10:56:20 -0700
commit5f0ab5a24b4ec9ea01a5fd95bda9315ac6e96142 (patch)
tree5b4dc4f2dfa1b41a1a8abf7e4ef20c0dbdcd71cb /keyboards/planck/rev5
parenta825bbf5eac56ed7358d71d952ba4d795bc1b1ef (diff)
downloadqmk_firmware-5f0ab5a24b4ec9ea01a5fd95bda9315ac6e96142.tar.gz
[Keyboard] Planck Layout Macro Refactor, Part II (#6156)
* Move layout macros to revision folders * Update Planck EZ layout macros Planck EZ only supports one layout (centered 2u spacebar). Deleted all the other macros. * Flesh out QMK Configurator support Give each Planck revision its own info.json file. * Readme updates - give each revision its own readme - add the Planck EZ to the main Planck readme * Fix layout macro for Planck EZ Previous matrix didn't compile because the electrical matrix defined a k3b location, which was unused by the physical arguments. Drashna was kind enough to confirm the Planck EZ's matrix for me. Co-authored-by: Drashna Jaelre <drashna@live.com> * Pretend the Planck EZ supports ortho_4x12 layout The hardware doesn't, but doing so prevents CI errors because the default keymap uses LAYOUT_planck_grid. Going to pretend LAYOUT_ortho_4x12 is a valid layout for the Planck EZ. * Update Planck EZ's URL in info.json Co-Authored-By: Drashna Jaelre <drashna@live.com>
Diffstat (limited to 'keyboards/planck/rev5')
-rw-r--r--keyboards/planck/rev5/info.json115
-rw-r--r--keyboards/planck/rev5/readme.md13
-rw-r--r--keyboards/planck/rev5/rev5.h49
3 files changed, 177 insertions, 0 deletions
diff --git a/keyboards/planck/rev5/info.json b/keyboards/planck/rev5/info.json
new file mode 100644
index 000000000..6f31472f5
--- /dev/null
+++ b/keyboards/planck/rev5/info.json
@@ -0,0 +1,115 @@
+{
+ "keyboard_name": "Planck rev 5",
+ "keyboard_folder": "planck/rev5",
+ "url": "https://olkb.com/planck",
+ "maintainer": "jackhumbert",
+ "width": 12,
+ "height": 4,
+ "layouts": {
+ "LAYOUT_planck_1x2uC": {
+ "key_count": 47,
+ "layout": [
+ { "x": 0, "y": 0 },
+ { "x": 1, "y": 0 },
+ { "x": 2, "y": 0 },
+ { "x": 3, "y": 0 },
+ { "x": 4, "y": 0 },
+ { "x": 5, "y": 0 },
+ { "x": 6, "y": 0 },
+ { "x": 7, "y": 0 },
+ { "x": 8, "y": 0 },
+ { "x": 9, "y": 0 },
+ { "x": 10, "y": 0 },
+ { "x": 11, "y": 0 },
+ { "x": 0, "y": 1 },
+ { "x": 1, "y": 1 },
+ { "x": 2, "y": 1 },
+ { "x": 3, "y": 1 },
+ { "x": 4, "y": 1 },
+ { "x": 5, "y": 1 },
+ { "x": 6, "y": 1 },
+ { "x": 7, "y": 1 },
+ { "x": 8, "y": 1 },
+ { "x": 9, "y": 1 },
+ { "x": 10, "y": 1 },
+ { "x": 11, "y": 1 },
+ { "x": 0, "y": 2 },
+ { "x": 1, "y": 2 },
+ { "x": 2, "y": 2 },
+ { "x": 3, "y": 2 },
+ { "x": 4, "y": 2 },
+ { "x": 5, "y": 2 },
+ { "x": 6, "y": 2 },
+ { "x": 7, "y": 2 },
+ { "x": 8, "y": 2 },
+ { "x": 9, "y": 2 },
+ { "x": 10, "y": 2 },
+ { "x": 11, "y": 2 },
+ { "x": 0, "y": 3 },
+ { "x": 1, "y": 3 },
+ { "x": 2, "y": 3 },
+ { "x": 3, "y": 3 },
+ { "x": 4, "y": 3 },
+ { "x": 5, "y": 3, "w": 2 },
+ { "x": 7, "y": 3 },
+ { "x": 8, "y": 3 },
+ { "x": 9, "y": 3 },
+ { "x": 10, "y": 3 },
+ { "x": 11, "y": 3 }
+ ]
+ },
+ "LAYOUT_ortho_4x12": {
+ "key_count": 48,
+ "layout": [
+ { "x": 0, "y": 0 },
+ { "x": 1, "y": 0 },
+ { "x": 2, "y": 0 },
+ { "x": 3, "y": 0 },
+ { "x": 4, "y": 0 },
+ { "x": 5, "y": 0 },
+ { "x": 6, "y": 0 },
+ { "x": 7, "y": 0 },
+ { "x": 8, "y": 0 },
+ { "x": 9, "y": 0 },
+ { "x": 10, "y": 0 },
+ { "x": 11, "y": 0 },
+ { "x": 0, "y": 1 },
+ { "x": 1, "y": 1 },
+ { "x": 2, "y": 1 },
+ { "x": 3, "y": 1 },
+ { "x": 4, "y": 1 },
+ { "x": 5, "y": 1 },
+ { "x": 6, "y": 1 },
+ { "x": 7, "y": 1 },
+ { "x": 8, "y": 1 },
+ { "x": 9, "y": 1 },
+ { "x": 10, "y": 1 },
+ { "x": 11, "y": 1 },
+ { "x": 0, "y": 2 },
+ { "x": 1, "y": 2 },
+ { "x": 2, "y": 2 },
+ { "x": 3, "y": 2 },
+ { "x": 4, "y": 2 },
+ { "x": 5, "y": 2 },
+ { "x": 6, "y": 2 },
+ { "x": 7, "y": 2 },
+ { "x": 8, "y": 2 },
+ { "x": 9, "y": 2 },
+ { "x": 10, "y": 2 },
+ { "x": 11, "y": 2 },
+ { "x": 0, "y": 3 },
+ { "x": 1, "y": 3 },
+ { "x": 2, "y": 3 },
+ { "x": 3, "y": 3 },
+ { "x": 4, "y": 3 },
+ { "x": 5, "y": 3 },
+ { "x": 6, "y": 3 },
+ { "x": 7, "y": 3 },
+ { "x": 8, "y": 3 },
+ { "x": 9, "y": 3 },
+ { "x": 10, "y": 3 },
+ { "x": 11, "y": 3 }
+ ]
+ }
+ }
+}
diff --git a/keyboards/planck/rev5/readme.md b/keyboards/planck/rev5/readme.md
new file mode 100644
index 000000000..fed975a39
--- /dev/null
+++ b/keyboards/planck/rev5/readme.md
@@ -0,0 +1,13 @@
+# Planck
+
+A compact 40% (12x4) ortholinear keyboard kit made and sold by OLKB and Massdrop. [More info on qmk.fm](http://qmk.fm/planck/)
+
+Keyboard Maintainer: [Jack Humbert](https://github.com/jackhumbert)
+Hardware Supported: Planck PCB rev5
+Hardware Availability: [OLKB.com](https://olkb.com), [Massdrop](https://www.massdrop.com/buy/planck-mechanical-keyboard?mode=guest_open)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make planck/rev5:default
+
+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).
diff --git a/keyboards/planck/rev5/rev5.h b/keyboards/planck/rev5/rev5.h
new file mode 100644
index 000000000..f81b36b31
--- /dev/null
+++ b/keyboards/planck/rev5/rev5.h
@@ -0,0 +1,49 @@
+#pragma once
+
+#include "planck.h"
+
+#define LAYOUT_planck_1x2uC( \
+ 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, k37, k38, k39, k3a, 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, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \
+}
+
+#define LAYOUT_ortho_4x12( \
+ 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 \
+) \
+{ \
+ { 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 } \
+}
+
+// Used to create a keymap using only KC_ prefixed keys
+#define LAYOUT_kc( \
+ 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 \
+) \
+LAYOUT_ortho_4x12( \
+ KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b, \
+ KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b, \
+ KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b, \
+ KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b \
+)
+
+#define KEYMAP LAYOUT_ortho_4x12
+#define LAYOUT_planck_mit LAYOUT_planck_1x2uC
+#define LAYOUT_planck_grid LAYOUT_ortho_4x12
+#define LAYOUT_kc_ortho_4x12 LAYOUT_kc
+#define KC_KEYMAP LAYOUT_kc