summaryrefslogtreecommitdiffstats
path: root/keyboards/maple_computing/launchpad
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/maple_computing/launchpad')
-rw-r--r--keyboards/maple_computing/launchpad/.noci0
-rw-r--r--keyboards/maple_computing/launchpad/config.h66
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h32
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c213
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md31
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk13
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/default/keymap.c55
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/default_rgb/config.h9
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c76
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/default_rgb/readme.md41
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/default_rgb/rules.mk1
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/drashna/config.h31
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c107
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk7
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/via/keymap.c94
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/via/rules.mk3
-rw-r--r--keyboards/maple_computing/launchpad/launchpad.c1
-rw-r--r--keyboards/maple_computing/launchpad/launchpad.h7
-rw-r--r--keyboards/maple_computing/launchpad/readme.md32
-rw-r--r--keyboards/maple_computing/launchpad/rev1/config.h33
-rw-r--r--keyboards/maple_computing/launchpad/rev1/info.json22
-rw-r--r--keyboards/maple_computing/launchpad/rev1/rev1.c1
-rw-r--r--keyboards/maple_computing/launchpad/rev1/rev1.h17
-rw-r--r--keyboards/maple_computing/launchpad/rev1/rules.mk0
-rw-r--r--keyboards/maple_computing/launchpad/rules.mk20
25 files changed, 912 insertions, 0 deletions
diff --git a/keyboards/maple_computing/launchpad/.noci b/keyboards/maple_computing/launchpad/.noci
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/.noci
diff --git a/keyboards/maple_computing/launchpad/config.h b/keyboards/maple_computing/launchpad/config.h
new file mode 100644
index 0000000000..327d67016b
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/config.h
@@ -0,0 +1,66 @@
+/*
+Copyright 2012 Jun Wako <wakojun@gmail.com>
+
+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
+
+#include "config_common.h"
+
+/* USB Device descriptor parameter */
+#define VENDOR_ID 0x1337
+#define PRODUCT_ID 0x6007
+#define MANUFACTURER Maple Computing
+#define PRODUCT Launch Pad
+
+/* key matrix size */
+#define MATRIX_ROWS 4
+#define MATRIX_COLS 2
+
+/* COL2ROW or ROW2COL */
+#define DIODE_DIRECTION COL2ROW
+
+/* define if matrix has ghost */
+//#define MATRIX_HAS_GHOST
+
+/* Set 0 if debouncing isn't needed */
+#define DEBOUNCE 5
+
+/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
+#define LOCKING_SUPPORT_ENABLE
+/* Locking resynchronize hack */
+#define LOCKING_RESYNC_ENABLE
+
+/*
+ * Feature disable options
+ * These options are also useful to firmware size reduction.
+ */
+
+/* disable debug print */
+//#define NO_DEBUG
+
+/* disable print */
+//#define NO_PRINT
+
+/* disable action features */
+//#define NO_ACTION_LAYER
+//#define NO_ACTION_TAPPING
+//#define NO_ACTION_ONESHOT
+//#define NO_ACTION_MACRO
+//#define NO_ACTION_FUNCTION
+
+#ifdef SUBPROJECT_rev1
+ #include "rev1/config.h"
+#endif
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h
new file mode 100644
index 0000000000..6aaf996e57
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h
@@ -0,0 +1,32 @@
+/* Copyright 2020 Brandon Schlack
+ *
+ * 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
+
+/* Underlight Configuration */
+#ifdef RGB_DI_PIN
+ #undef RGB_DI_PIN
+ #define RGB_DI_PIN F4
+ #undef RGBLED_NUM
+ #define RGBLED_NUM 2 // Number of LEDs
+#endif
+#define RGBLIGHT_EFFECT_BREATHING // Only have Breathing Animation
+#define RGBLIGHT_HUE_STEP 10
+#define RGBLIGHT_SAT_STEP 17
+#define RGBLIGHT_VAL_STEP 17
+
+/* Mouse Keys Configuration */
+#define MK_3_SPEED
+#define MK_W_INTERVAL_UNMOD 20
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c
new file mode 100644
index 0000000000..1ef77ccc6e
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c
@@ -0,0 +1,213 @@
+/* Copyright 2020 Brandon Schlack
+ *
+ * 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
+#include "brandonschlack.h"
+
+/**
+ * Layer Names
+ */
+#define _REEDER _BASE
+enum bdn9_layers {
+ _MEDIA = KEYMAP_LAYERS,
+ _NAVI,
+ _KARABINER
+};
+
+/**
+ * Keycodes & Macros
+ */
+#define DF_REDR DF(_REEDER) // Set Default Layer to Reeder shortcuts
+#define DF_MEDA DF(_MEDIA) // Set Default Layer to Media controls
+#define DF_NAVI DF(_NAVI) // Set Default Layer to Navigation shortcuts
+#define DF_KBNR DF(_KARABINER) // Set Default Layer to Basic Macro keys
+
+// Tap Dances
+enum launchpad_dances {
+ TD_SHLD_LGHT = 0,
+ TD_SHLD_ADJT,
+ TD_REDR_H
+};
+//Tap Dance Definitions
+qk_tap_dance_action_t tap_dance_actions[] = {
+ [TD_SHLD_LGHT] = ACTION_TAP_DANCE_TRIGGER_LAYER(SINGLE_HOLD, _LIGHT),
+ [TD_SHLD_ADJT] = ACTION_TAP_DANCE_TRIGGER_LAYER(SINGLE_HOLD, _ADJUST),
+ [TD_REDR_H] = ACTION_TAP_DANCE_DOUBLE(KC_H, KC_R)
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Reeder
+ * ┌──────┬──────┐
+ * │CmdTab│ View │
+ * ├──────┼──────┤
+ * │PrvSub│PrvItm│
+ * ├──────┼──────┤
+ * │NxtSub│NxtItm│
+ * ├──────┼──────┤
+ * │ Clr │ Sync │
+ * └──────┴──────┘
+ */
+[_REEDER] = LAYOUT( \
+ CMD_TAB, TD(TD_REDR_H), \
+ KC_P, KC_K, \
+ KC_N, KC_J, \
+ TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
+),
+
+/* Media
+ * ┌──────┬──────┐
+ * │ Mute │ Play │
+ * ├──────┼──────┤
+ * │ Vol+ │PrvTrk│
+ * ├──────┼──────┤
+ * │ Vol- │NxtTrk│
+ * ├──────┼──────┤
+ * │ Spce │ Plyr │
+ * └──────┴──────┘
+ */
+[_MEDIA] = LAYOUT( \
+ KC_MUTE, KC_MPLY, \
+ KC_VOLU, KC_MNXT, \
+ KC_VOLD, KC_MPRV, \
+ TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
+),
+
+/* Navigation
+ * ┌──────┬──────┐
+ * │ PTab │ NTab │
+ * ├──────┼──────┤
+ * │ SclL │ SclU │
+ * ├──────┼──────┤
+ * │ SclR │ SclD │
+ * ├──────┼──────┤
+ * │LstTab│ClsTab│
+ * └──────┴──────┘
+ */
+[_NAVI] = LAYOUT( \
+ PRV_TAB, NXT_TAB, \
+ MC_WH_L, MC_WH_U, \
+ MC_WH_R, MC_WH_D, \
+ TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
+),
+
+/* Macro
+ * ┌──────┬──────┐
+ * │ 1 │ 2 │
+ * ├──────┼──────┤
+ * │ 3 │ 4 │
+ * ├──────┼──────┤
+ * │ 5 │ 6 │
+ * ├──────┼──────┤
+ * │ 7 │ 8 │
+ * └──────┴──────┘
+ */
+[_KARABINER] = LAYOUT( \
+ KC_P1, KC_P2, \
+ KC_P3, KC_P4, \
+ KC_P5, KC_P6, \
+ TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT) \
+),
+
+/* Lights
+ * ┌──────┬──────┐
+ * │ THM+ │ HUE+ │
+ * ├──────┼──────┤
+ * │ SAT- │ SAT+ │
+ * ├──────┼──────┤
+ * │ VAL- │ VAL+ │
+ * ├──────┼──────┤
+ * │ XXXX │ Mde+ │
+ * └──────┴──────┘
+ */
+[_LIGHT] = LAYOUT( \
+ RGB_THM, RGB_HUI, \
+ RGB_SAD, RGB_SAI, \
+ RGB_VAD, RGB_VAI, \
+ XXXXXXX, RGB_MOD \
+),
+
+/* Adjust
+ * ┌──────┬──────┐
+ * │ Make │ Rset │
+ * ├──────┼──────┤
+ * │ Redr │ Meda │
+ * ├──────┼──────┤
+ * │ Navi │ Mcro │
+ * ├──────┼──────┤
+ * │ Lght │ XXXX │
+ * └──────┴──────┘
+ */
+[_ADJUST] = LAYOUT( \
+ QM_MAKE, RESET, \
+ DF_REDR, DF_MEDA, \
+ DF_NAVI, DF_KBNR, \
+ TG_LGHT, XXXXXXX \
+)
+
+};
+
+void matrix_init_keymap(void) {
+}
+
+// Runs once after keyboard initializes
+void keyboard_post_init_keymap(void) {
+};
+
+/**
+ * Tap Dances
+ */
+void process_tap_dance_keycode (bool reset, uint8_t toggle_layer) {
+ uint16_t keycode = 0;
+ switch (toggle_layer) {
+ case _LIGHT:
+ switch (get_highest_layer(layer_state)) {
+ case _REEDER:
+ keycode = KC_L;
+ break;
+ case _MEDIA:
+ keycode = KC_SPC;
+ break;
+ case _NAVI:
+ keycode = REO_TAB;
+ break;
+ case _KARABINER:
+ keycode = KC_P7;
+ break;
+ }
+ break;
+ case _ADJUST:
+ switch (get_highest_layer(layer_state)) {
+ case _REEDER:
+ keycode = KC_R;
+ break;
+ case _MEDIA:
+ keycode = MC_PLYR;
+ break;
+ case _NAVI:
+ keycode = CLS_TAB;
+ break;
+ case _KARABINER:
+ keycode = KC_P8;
+ break;
+ }
+ break;
+ }
+ if (!reset) {
+ register_code16(keycode);
+ } else {
+ unregister_code16(keycode);
+ }
+}
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md
new file mode 100644
index 0000000000..a91a1b80ac
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md
@@ -0,0 +1,31 @@
+# brandonschlack's layout for Launchpad
+Fun little macropad build, with an awesome case from [StrataKB](https://stratakb.com/store/cases/launchpad-v2-full-case).
+
+## Media Layer
+This layer is used for media controls. Player button is a hotkey to focus the current media player with [BeardedSpice](https://beardedspice.github.io/)
+| | |
+|:-:|:-:|
+| Mute | Play/Pause |
+| Vol + | Next Track |
+| Vol - | Prev Track |
+| | Current Player |
+---
+
+## Keypad Layer
+This layer is used to send keypad keys, meant to be remapped based on current app with [Karabiner](https://pqrs.org/osx/karabiner/)
+| | |
+|:-:|:-:|
+| 1 | 2 |
+| 3 | 4 |
+| 5 | 6 |
+| 7 | 8 |
+---
+
+## Magic Layer
+This layer is used as a meta layer for the pad. This layer is accessed by holding key in Row 3, Col 0
+| | |
+|:-:|:-:|
+| MAKE | RESET |
+| **Media** Layer | **Keypad** Layer|
+| XXX | XXX |
+| ___ | XXX |
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk
new file mode 100644
index 0000000000..31c8f7b39d
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk
@@ -0,0 +1,13 @@
+# Use macropad-specific defines, layers, functions. Flash bootloader with QM_MAKE
+IS_MACROPAD = yes
+
+# Use dfu bootloader for Elite-C
+BOOTLOADER = atmel-dfu
+
+# Build Options
+BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
+RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
+CONSOLE_ENABLE = yes # Console for debug(+400)
+MOUSEKEY_ENABLE = yes # Use mouse keys for scrolling.
+COMMAND_ENABLE = no # Disable Command, breaks with Mouse Keys set to constant.
+TAP_DANCE_ENABLE = yes # Use tap dance
diff --git a/keyboards/maple_computing/launchpad/keymaps/default/keymap.c b/keyboards/maple_computing/launchpad/keymaps/default/keymap.c
new file mode 100644
index 0000000000..62dee131f8
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/default/keymap.c
@@ -0,0 +1,55 @@
+// Below layout is based upon /u/That-Canadian's planck layout
+#include QMK_KEYBOARD_H
+
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+#define _QWERTY 0
+
+#define _FUNC 15
+
+// 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] = {
+
+/* Qwerty
+ * ,-------------.
+ * | 1 | 2 |
+ * |------+------|
+ * | 3 | 4 |
+ * |------+------|
+ * | 5 | 6 |
+ * |------+------|
+ * | FUNC | 8 |
+ * `-------------'
+ */
+[_QWERTY] = LAYOUT(
+ KC_1, KC_2,
+ KC_3, KC_4,
+ KC_5, KC_6,
+ MO(_FUNC), KC_8
+),
+
+/* Function
+ * ,-------------.
+ * | Q |CALDEL|
+ * |------+------|
+ * | A |TSKMGR|
+ * |------+------|
+ * | Z | X |
+ * |------+------|
+ * | | C |
+ * `-------------'
+ */
+[_FUNC] = LAYOUT(
+ KC_Q, CALTDEL,
+ KC_A, TSKMGR,
+ KC_Z, KC_X,
+ _______, KC_C
+)
+
+};
diff --git a/keyboards/maple_computing/launchpad/keymaps/default_rgb/config.h b/keyboards/maple_computing/launchpad/keymaps/default_rgb/config.h
new file mode 100644
index 0000000000..cae1450c15
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/default_rgb/config.h
@@ -0,0 +1,9 @@
+#pragma once
+
+/* Underlight Configuration */
+#define RGB_DI_PIN F4
+#define RGBLIGHT_ANIMATIONS
+#define RGBLED_NUM 2 // Number of LEDs
+#define RGBLIGHT_HUE_STEP 10
+#define RGBLIGHT_SAT_STEP 17
+#define RGBLIGHT_VAL_STEP 17 \ No newline at end of file
diff --git a/keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c b/keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c
new file mode 100644
index 0000000000..529fa91f65
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/default_rgb/keymap.c
@@ -0,0 +1,76 @@
+// Below layout is based upon /u/That-Canadian's planck layout
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+#define _QWERTY 0
+#define _RGB 1
+#define _FUNC 15
+
+// 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] = {
+
+ /* Qwerty
+ * ,-------------.
+ * | 1 | 2 |
+ * |------+------|
+ * | 3 | 4 |
+ * |------+------|
+ * | 5 | 6 |
+ * |------+------|
+ * | FUNC | RGB |
+ * `-------------'
+ */
+ [_QWERTY] = LAYOUT(
+ KC_1, KC_2,
+ KC_3, KC_4,
+ KC_5, KC_6,
+ MO(_FUNC), TG(_RGB)
+ ),
+
+ /* RGB
+ * ,-------------.
+ * | Mode-| Mode+|
+ * |------+------|
+ * | HUE- | HUE+ |
+ * |------+------|
+ * | SAT- | SAT+ |
+ * |------+------|
+ * |RGBTOG| |
+ * `-------------'
+ */
+ [_RGB] = LAYOUT(
+ RGB_RMOD, RGB_MOD,
+ RGB_HUD, RGB_HUI,
+ RGB_SAD, RGB_SAI,
+ RGB_TOG, KC_TRNS
+ ),
+
+ /* Function
+ * ,-------------.
+ * | Q |CALDEL|
+ * |------+------|
+ * | A |TSKMGR|
+ * |------+------|
+ * | Z | X |
+ * |------+------|
+ * | | C |
+ * `-------------'
+ */
+ [_FUNC] = LAYOUT(
+ KC_Q, CALTDEL,
+ KC_A, TSKMGR,
+ KC_Z, KC_X,
+ _______, KC_C
+ )
+
+};
+
+void matrix_init_user(void) {}
diff --git a/keyboards/maple_computing/launchpad/keymaps/default_rgb/readme.md b/keyboards/maple_computing/launchpad/keymaps/default_rgb/readme.md
new file mode 100644
index 0000000000..3f15ff9bc3
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/default_rgb/readme.md
@@ -0,0 +1,41 @@
+# Launch Pad
+
+![Launch Pad](https://i.imgur.com/WVTe0Ku.png)
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+A budget-minded, 4-8 key macro-pad with built in legs, plate & case.
+
+Supports MX & Alps switches. 2x 1u or 1x 2u supported for each row.
+
+Supports 2u PCB-Mount stabilizers.
+
+Runs off of 1x Pro Micro & 8x diodes (1n4148).
+
+Optional "Reset" switch can be used on the PCB.
+
+A fantastic project for beginners to learn to solder, veteran's of the hobby who want to add an easy macro-pad to their collection, and everyone in between.
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+Make example for this keyboard (after setting up your build environment):
+
+ make launchpad/rev1:default
+
+See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
+
+# Under Glow
+
+![Underglow](https://i.imgur.com/3zFIOmu.jpg)
+
+SpaceCat now provides an underglow add-on kit. Please refer to the picture above for wiring.
+
+Make example for this keyboard (after setting up your build environment):
+
+ make launchpad/rev1:default_rgb
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+Due to PCB tolerance issues outside of our control, the snap-apart legs included on the PCB may need extra padding to prevent a small amount of wobbling once placed properly. We have included small, clear, and semi-permanent "glue dots" in each order (PCB Only -and- Full Kit) to help with this. You may also use plastic wrap, tape, Elmer's glue, hot glue, rubber cement, etc. We advise against using anything more "permanent" in case you wish to make changes to your Launch Pad in the future. It is also best to attach legs after all of your soldering and building is finished, to get the most accurate feel for your Launch Pad.
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
diff --git a/keyboards/maple_computing/launchpad/keymaps/default_rgb/rules.mk b/keyboards/maple_computing/launchpad/keymaps/default_rgb/rules.mk
new file mode 100644
index 0000000000..1e3cebb145
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/default_rgb/rules.mk
@@ -0,0 +1 @@
+RGBLIGHT_ENABLE = yes
diff --git a/keyboards/maple_computing/launchpad/keymaps/drashna/config.h b/keyboards/maple_computing/launchpad/keymaps/drashna/config.h
new file mode 100644
index 0000000000..b14becc25b
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/drashna/config.h
@@ -0,0 +1,31 @@
+/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
+ *
+ * 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
+
+/* Underlight Configuration */
+#undef RGB_DI_PIN
+#define RGB_DI_PIN F5
+#define RGBLIGHT_ANIMATIONS
+#undef RGBLED_NUM
+#define RGBLED_NUM 8 // Number of LEDs
+#define RGBLIGHT_HUE_STEP 10
+#define RGBLIGHT_SAT_STEP 17
+#define RGBLIGHT_VAL_STEP 17
+
+#define DRIVER_LED_TOTAL RGBLED_NUM
+#define AUDIO_PIN B7
+#define AUDIO_CLICKY
diff --git a/keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c b/keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c
new file mode 100644
index 0000000000..f8e4d1a414
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c
@@ -0,0 +1,107 @@
+/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
+ *
+ * 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
+
+enum local_layers {
+ _QWERTY,
+ _RGB,
+ _FUNC,
+};
+
+// 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] = {
+
+ /* Qwerty
+ * ,-------------.
+ * | 1 | 2 |
+ * |------+------|
+ * | 3 | 4 |
+ * |------+------|
+ * | 5 | 6 |
+ * |------+------|
+ * | FUNC | RGB |
+ * `-------------'
+ */
+ [_QWERTY] = LAYOUT( \
+ KC_1, KC_2, \
+ KC_3, KC_4, \
+ KC_5, KC_6, \
+ MO(_FUNC), TG(_RGB) \
+ ),
+
+ /* RGB
+ * ,-------------.
+ * | Mode-| Mode+|
+ * |------+------|
+ * | HUE- | HUE+ |
+ * |------+------|
+ * | SAT- | SAT+ |
+ * |------+------|
+ * |RGBTOG| |
+ * `-------------'
+ */
+ [_RGB] = LAYOUT( \
+ RGB_RMOD, RGB_MOD, \
+ RGB_HUD, RGB_HUI, \
+ RGB_SAD, RGB_SAI, \
+ RGB_TOG, KC_TRNS \
+ ),
+
+ /* Function
+ * ,-------------.
+ * | Q |CALDEL|
+ * |------+------|
+ * | A |TSKMGR|
+ * |------+------|
+ * | Z | X |
+ * |------+------|
+ * | | C |
+ * `-------------'
+ */
+ [_FUNC] = LAYOUT( \
+ KC_Q, CALTDEL, \
+ KC_A, TSKMGR, \
+ KC_Z, KC_X, \
+ _______, RESET \
+ )
+
+};
+
+
+
+
+#ifdef RGB_MATRIX_ENABLE
+ led_config_t g_led_config = {
+ {
+ { 7, 0 },
+ { 6, 1 },
+ { 5, 2 },
+ { 4, 3 },
+ },{
+ { 121, 2 }, { 121, 23 },
+ { 121, 41 }, { 121, 60 },
+ { 103, 2 }, { 103, 23 },
+ { 103, 41 }, { 103, 60 },
+ },{
+ 1, 1, 1, 1,
+ 1, 1, 1, 1,
+ }
+ };
+#endif
diff --git a/keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk b/keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk
new file mode 100644
index 0000000000..c3b1e0a8b9
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk
@@ -0,0 +1,7 @@
+BOOTLOADER = atmel-dfu
+
+RGBLIGHT_ENABLE = no
+AUDIO_ENABLE = no
+BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
+RGB_MATRIX_ENABLE = yes
+RGB_MATRIX_DRIVER = WS2812
diff --git a/keyboards/maple_computing/launchpad/keymaps/via/keymap.c b/keyboards/maple_computing/launchpad/keymaps/via/keymap.c
new file mode 100644
index 0000000000..ac25fa1e1e
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/via/keymap.c
@@ -0,0 +1,94 @@
+// Below layout is based upon /u/That-Canadian's planck layout
+#include QMK_KEYBOARD_H
+
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+enum layer_names {
+ _QWERTY,
+ _FUNC,
+ _RGB,
+ _LAYER3
+};
+
+// 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] = {
+
+/* Qwerty
+ * ,-------------.
+ * | 1 | 2 |
+ * |------+------|
+ * | 3 | 4 |
+ * |------+------|
+ * | 5 | 6 |
+ * |------+------|
+ * | FUNC | 8 |
+ * `-------------'
+ */
+[_QWERTY] = LAYOUT(
+ KC_1, KC_2,
+ KC_3, KC_4,
+ KC_5, KC_6,
+ MO(_FUNC), TG(_RGB)
+),
+
+/* Function
+ * ,-------------.
+ * | Q |CALDEL|
+ * |------+------|
+ * | A |TSKMGR|
+ * |------+------|
+ * | Z | X |
+ * |------+------|
+ * | | C |
+ * `-------------'
+ */
+[_FUNC] = LAYOUT(
+ KC_Q, CALTDEL,
+ KC_A, TSKMGR,
+ KC_Z, KC_X,
+ KC_TRNS, KC_C
+),
+
+/* RGB
+ * ,-------------.
+ * | MODE-| MODE+|
+ * |------+------|
+ * | HUE- | HUE+ |
+ * |------+------|
+ * | SAT- | SAT+ |
+ * |------+------|
+ * |TOGGLE| |
+ * `-------------'
+ */
+[_RGB] = LAYOUT(
+ RGB_RMOD, RGB_MOD,
+ RGB_HUD, RGB_HUI,
+ RGB_SAD, RGB_SAI,
+ RGB_TOG, KC_TRNS
+),
+
+/* Layer 3
+ * ,-------------.
+ * | | |
+ * |------+------|
+ * | | |
+ * |------+------|
+ * | | |
+ * |------+------|
+ * | | |
+ * `-------------'
+ */
+[_LAYER3] = LAYOUT(
+ KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+)
+
+};
diff --git a/keyboards/maple_computing/launchpad/keymaps/via/rules.mk b/keyboards/maple_computing/launchpad/keymaps/via/rules.mk
new file mode 100644
index 0000000000..37484844f5
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/keymaps/via/rules.mk
@@ -0,0 +1,3 @@
+VIA_ENABLE = yes
+LTO_ENABLE = yes
+RGBLIGHT_ENABLE = yes
diff --git a/keyboards/maple_computing/launchpad/launchpad.c b/keyboards/maple_computing/launchpad/launchpad.c
new file mode 100644
index 0000000000..cc2812a76c
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/launchpad.c
@@ -0,0 +1 @@
+#include "launchpad.h"
diff --git a/keyboards/maple_computing/launchpad/launchpad.h b/keyboards/maple_computing/launchpad/launchpad.h
new file mode 100644
index 0000000000..f2a1b40588
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/launchpad.h
@@ -0,0 +1,7 @@
+#pragma once
+
+#if defined(KEYBOARD_maple_computing_launchpad_rev1)
+# include "rev1.h"
+#endif
+
+#include "quantum.h"
diff --git a/keyboards/maple_computing/launchpad/readme.md b/keyboards/maple_computing/launchpad/readme.md
new file mode 100644
index 0000000000..1dc7a9b4cf
--- /dev/null
+++ b/keyboards/maple_computing/launchpad/readme.md
@@ -0,0 +1,32 @@
+Launch Pad
+===
+