aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/keycodes.md48
-rw-r--r--docs/mod_tap.md5
-rw-r--r--keyboards/plx/config.h39
-rw-r--r--keyboards/plx/info.json12
-rw-r--r--keyboards/plx/keymaps/default/keymap.c49
-rw-r--r--keyboards/plx/plx.c17
-rw-r--r--keyboards/plx/plx.h43
-rw-r--r--keyboards/plx/readme.md19
-rw-r--r--keyboards/plx/rules.mk22
-rw-r--r--quantum/quantum_keycodes.h20
10 files changed, 246 insertions, 28 deletions
diff --git a/docs/keycodes.md b/docs/keycodes.md
index f3c519b13..1e9f34774 100644
--- a/docs/keycodes.md
+++ b/docs/keycodes.md
@@ -381,26 +381,29 @@ See also: [Mouse Keys](feature_mouse_keys.md)
381 381
382See also: [Modifier Keys](feature_advanced_keycodes.md#modifier-keys) 382See also: [Modifier Keys](feature_advanced_keycodes.md#modifier-keys)
383 383
384|Key |Aliases |Description | 384|Key |Aliases |Description |
385|----------|-------------------------------|------------------------------------------------------| 385|----------|----------------------------------|------------------------------------------------------|
386|`LCTL(kc)`|`C(kc)` |Hold Left Control and press `kc` | 386|`LCTL(kc)`|`C(kc)` |Hold Left Control and press `kc` |
387|`LSFT(kc)`|`S(kc)` |Hold Left Shift and press `kc` | 387|`LSFT(kc)`|`S(kc)` |Hold Left Shift and press `kc` |
388|`LALT(kc)`|`A(kc)`, `LOPT(kc)` |Hold Left Alt and press `kc` | 388|`LALT(kc)`|`A(kc)`, `LOPT(kc)` |Hold Left Alt and press `kc` |
389|`LGUI(kc)`|`G(kc)`, `LCMD(kc)`, `LWIN(kc)`|Hold Left GUI and press `kc` | 389|`LGUI(kc)`|`G(kc)`, `LCMD(kc)`, `LWIN(kc)` |Hold Left GUI and press `kc` |
390|`RCTL(kc)`| |Hold Right Control and press `kc` | 390|`RCTL(kc)`| |Hold Right Control and press `kc` |
391|`RSFT(kc)`| |Hold Right Shift and press `kc` | 391|`RSFT(kc)`| |Hold Right Shift and press `kc` |
392|`RALT(kc)`|`ROPT(kc)`, `ALGR(kc)` |Hold Right Alt (AltGr) and press `kc` | 392|`RALT(kc)`|`ROPT(kc)`, `ALGR(kc)` |Hold Right Alt (AltGr) and press `kc` |
393|`RGUI(kc)`|`RCMD(kc)`, `LWIN(kc)` |Hold Right GUI and press `kc` | 393|`RGUI(kc)`|`RCMD(kc)`, `LWIN(kc)` |Hold Right GUI and press `kc` |
394|`SGUI(kc)`|`SCMD(kc)`, `SWIN(kc)` |Hold Left Shift and GUI and press `kc` | 394|`LSG(kc)` |`SGUI(kc)`, `SCMD(kc)`, `SWIN(kc)`|Hold Left Shift and Left GUI and press `kc` |
395|`LCA(kc)` | |Hold Left Control and Alt and press `kc` | 395|`LAG(kc)` | |Hold Left Alt and Left GUI and press `kc` |
396|`LSA(kc)` | |Hold Left Shift and Left Alt and press `kc` | 396|`RSG(kc)` | |Hold Right Shift and Right GUI and press `kc` |
397|`RSA(kc)` |`SAGR(kc)` |Hold Right Shift and Right Alt (AltGr) and press `kc` | 397|`RAG(kc)` | |Hold Right Alt and Right GUI and press `kc` |
398|`RCS(kc)` | |Hold Right Control and Right Shift and press `kc` | 398|`LCA(kc)` | |Hold Left Control and Alt and press `kc` |
399|`LCAG(kc)`| |Hold Left Control, Alt and GUI and press `kc` | 399|`LSA(kc)` | |Hold Left Shift and Left Alt and press `kc` |
400|`MEH(kc)` | |Hold Left Control, Shift and Alt and press `kc` | 400|`RSA(kc)` |`SAGR(kc)` |Hold Right Shift and Right Alt (AltGr) and press `kc` |
401|`HYPR(kc)`| |Hold Left Control, Shift, Alt and GUI and press `kc` | 401|`RCS(kc)` | |Hold Right Control and Right Shift and press `kc` |
402|`KC_MEH` | |Left Control, Shift and Alt | 402|`LCAG(kc)`| |Hold Left Control, Alt and GUI and press `kc` |
403|`KC_HYPR` | |Left Control, Shift, Alt and GUI | 403|`MEH(kc)` | |Hold Left Control, Shift and Alt and press `kc` |
404|`HYPR(kc)`| |Hold Left Control, Shift, Alt and GUI and press `kc` |
405|`KC_MEH` | |Left Control, Shift and Alt |
406|`KC_HYPR` | |Left Control, Shift, Alt and GUI |
404 407
405## Mod-Tap Keys :id=mod-tap-keys 408## Mod-Tap Keys :id=mod-tap-keys
406 409
@@ -417,7 +420,10 @@ See also: [Mod-Tap](mod_tap.md)
417|`RSFT_T(kc)` | |Right Shift when held, `kc` when tapped | 420|`RSFT_T(kc)` | |Right Shift when held, `kc` when tapped |
418|`RALT_T(kc)` |`ROPT_T(kc)`, `ALGR_T(kc)` |Right Alt (AltGr) when held, `kc` when tapped | 421|`RALT_T(kc)` |`ROPT_T(kc)`, `ALGR_T(kc)` |Right Alt (AltGr) when held, `kc` when tapped |
419|`RGUI_T(kc)` |`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped | 422|`RGUI_T(kc)` |`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped |
420|`SGUI_T(kc)` |`SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped | 423|`LSG_T(kc)` |`SGUI_T(kc)`, `SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped |
424|`LAG_T(kc)` | |Left Alt and GUI when held, `kc` when tapped |
425|`RSG_T(kc)` | |Right Shift and GUI when held, `kc` when tapped |
426|`RAG_T(kc)` | |Right Alt and GUI when held, `kc` when tapped |
421|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped | 427|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped |
422|`LSA_T(kc)` | |Left Shift and Left Alt when held, `kc` when tapped | 428|`LSA_T(kc)` | |Left Shift and Left Alt when held, `kc` when tapped |
423|`RSA_T(kc)` |`SAGR_T(kc)` |Right Shift and Right Alt (AltGr) when held, `kc` when tapped | 429|`RSA_T(kc)` |`SAGR_T(kc)` |Right Shift and Right Alt (AltGr) when held, `kc` when tapped |
diff --git a/docs/mod_tap.md b/docs/mod_tap.md
index 6a2bcbc15..f4d128482 100644
--- a/docs/mod_tap.md
+++ b/docs/mod_tap.md
@@ -37,7 +37,10 @@ For convenience, QMK includes some Mod-Tap shortcuts to make common combinations
37|`RSFT_T(kc)`| |Right Shift when held, `kc` when tapped | 37|`RSFT_T(kc)`| |Right Shift when held, `kc` when tapped |
38|`RALT_T(kc)`|`ROPT_T(kc)`, `ALGR_T(kc)` |Right Alt when held, `kc` when tapped | 38|`RALT_T(kc)`|`ROPT_T(kc)`, `ALGR_T(kc)` |Right Alt when held, `kc` when tapped |
39|`RGUI_T(kc)`|`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped | 39|`RGUI_T(kc)`|`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped |
40|`SGUI_T(kc)`|`SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped | 40|`LSG_T(kc)` |`SGUI_T(kc)`, `SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped |
41|`LAG_T(kc)` | |Left Alt and GUI when held, `kc` when tapped |
42|`RSG_T(kc)` | |Right Shift and GUI when held, `kc` when tapped |
43|`RAG_T(kc)` | |Right Alt and GUI when held, `kc` when tapped |
41|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped | 44|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped |
42|`LSA_T(kc)` | |Left Shift and Alt when held, `kc` when tapped | 45|`LSA_T(kc)` | |Left Shift and Alt when held, `kc` when tapped |
43|`RSA_T(kc)` |`SAGR_T(kc)` |Right Shift and Right Alt (AltGr) when held, `kc` when tapped | 46|`RSA_T(kc)` |`SAGR_T(kc)` |Right Shift and Right Alt (AltGr) when held, `kc` when tapped |
diff --git a/keyboards/plx/config.h b/keyboards/plx/config.h
new file mode 100644
index 000000000..68708becc
--- /dev/null
+++ b/keyboards/plx/config.h
@@ -0,0 +1,39 @@
1/* Copyright 2020 Peac Design and Basekeys
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
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/>.
15 */
16
17#pragma once
18
19#include "config_common.h"
20
21/* USB Device descriptor parameter */
22#define VENDOR_ID 0x04D8
23#define PRODUCT_ID 0xE972
24#define DEVICE_VER 0x0001
25#define MANUFACTURER Peac Design
26#define PRODUCT PLX
27
28/* key matrix size */
29#define MATRIX_ROWS 5
30#define MATRIX_COLS 15
31
32/* key matrix pins */
33
34#define MATRIX_ROW_PINS { B0, B1, B2, B3, B7 }
35#define MATRIX_COL_PINS { D5, D3, D2, D1, D0, D4, D6, D7, B4, B5, B6, C6, C7, F1, F0 }
36
37/* COL2ROW, ROW2COL*/
38#define DIODE_DIRECTION COL2ROW
39
diff --git a/keyboards/plx/info.json b/keyboards/plx/info.json
new file mode 100644
index 000000000..c385e5c54
--- /dev/null
+++ b/keyboards/plx/info.json
@@ -0,0 +1,12 @@
1{
2 "keyboard_name": "PLX",
3 "url": "https://peac.design/",
4 "maintainer": "2Moons",
5 "width": 18,
6 "height": 7.25,
7 "layouts": {
8 "LAYOUT": {
9 "layout": [{"label":"Esc", "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":"Del", "x":16, "y":0}, {"label":"Bksp", "x":17, "y":0}, {"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":"Enter", "x":16.75, "y":1, "w":1.25, "h":2}, {"label":"Caps Lock", "x":0, "y":2, "w":1.25}, {"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":"#", "x":15.75, "y":2}, {"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.25}, {"label":"Shift", "x":15.25, "y":3, "w":1.75}, {"label":"Fn", "x":17, "y":3}, {"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}, {"label":"Caps", "x":0, "y":5.25, "w":1.25}, {"label":"Shift", "x":0, "y":6.25, "w":1.25}, {"x":1.25, "y":6.25}]
10 }
11 }
12} \ No newline at end of file
diff --git a/keyboards/plx/keymaps/default/keymap.c b/keyboards/plx/keymaps/default/keymap.c
new file mode 100644
index 000000000..f454d3409
--- /dev/null
+++ b/keyboards/plx/keymaps/default/keymap.c
@@ -0,0 +1,49 @@
1/* Copyright 2020 Swiftrax and Basekeys.com
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
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/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19// Defines names for use in layer keycodes and the keymap
20enum layer_names {
21 _BASE,
22 _FN,
23 _MEDIA };
24
25const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
26 [_BASE] = LAYOUT(
27 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_BSPC, KC_HOME,
28 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,
29 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
30 KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_PGUP,
31 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL
32 ),
33
34 [_FN] = LAYOUT(
35 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, _______, _______,
36 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
37 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
38 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
39 _______, _______, _______, _______, _______, _______, _______
40 ),
41
42 [_MEDIA] = LAYOUT(
43 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, _______, _______,
44 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
45 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
46 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
47 _______, _______, _______, _______, _______, _______, _______
48 )
49};
diff --git a/keyboards/plx/plx.c b/keyboards/plx/plx.c
new file mode 100644
index 000000000..65e4dfd28
--- /dev/null
+++ b/keyboards/plx/plx.c
@@ -0,0 +1,17 @@
1/* Copyright 2020 Peac Design and Basekeys
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
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/>.
15 */
16
17#include "plx.h"
diff --git a/keyboards/plx/plx.h b/keyboards/plx/plx.h
new file mode 100644
index 000000000..eb3829042
--- /dev/null
+++ b/keyboards/plx/plx.h
@@ -0,0 +1,43 @@
1/* Copyright 2020 Peac Design and Basekeys
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
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/>.
15 */
16#pragma once
17
18#include "quantum.h"
19
20#define XXX KC_NO//readabilty
21
22/* This a shortcut to help you visually see your layout.
23 *
24 * The first section contains all of the arguments representing the physical
25 * layout of the board and position of the keys.
26 *
27 * The second converts the arguments into a two-dimensional array which
28 * represents the switch matrix.
29 */
30#define LAYOUT( \
31 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, \
32 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, \
33 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, \
34 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, \
35 k40, k41, k42, k46, k4B, k4C, k4D \
36) \
37{ \
38 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E}, \
39 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D}, \
40 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D}, \
41 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D}, \
42 { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, XXX, XXX, k4B, k4C, k4D} \
43}
diff --git a/keyboards/plx/readme.md b/keyboards/plx/readme.md
new file mode 100644
index 000000000..b64abf7fb
--- /dev/null
+++ b/keyboards/plx/readme.md
@@ -0,0 +1,19 @@
1# PLX
2
3![PLX](https://i.imgur.com/xJvv1kqh.jpg)
4
5An 60% gasket mounted board with a Tsangan layout and a 7 degree typing angle.
6
7* Keyboard Maintainer: [2Moons](https://github.com/2Moons-JP)
8* Hardware Supported: PLX PCB, ATMEGA32U4-AU
9* Hardware Availability: [Website](https://peac.design)
10
11Make example for this keyboard (after setting up your build environment):
12
13 make plx:default
14
15To flash firmware onto this board, you'll need to bring the PCB into bootloader mode. To enter bootloader mode, press the reset button on the back of the PCB once. The reset button is located in the bottom near the space bar.
16
17See 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)
18
19[Build guide](https://peac.design/build-guide)
diff --git a/keyboards/plx/rules.mk b/keyboards/plx/rules.mk
new file mode 100644
index 000000000..60a579e02
--- /dev/null
+++ b/keyboards/plx/rules.mk
@@ -0,0 +1,22 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5BOOTLOADER = atmel-dfu
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
11MOUSEKEY_ENABLE = no # Mouse keys
12EXTRAKEY_ENABLE = no # Audio control and System control
13CONSOLE_ENABLE = no # Console for debug
14COMMAND_ENABLE = no # Commands for debug and configuration
15# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
16SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
17# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
18NKRO_ENABLE = no # USB Nkey Rollover
19BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
21BLUETOOTH_ENABLE = no # Enable Bluetooth
22AUDIO_ENABLE = no # Audio output
diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h
index 316c20fce..c361dd670 100644
--- a/quantum/quantum_keycodes.h
+++ b/quantum/quantum_keycodes.h
@@ -538,9 +538,13 @@ enum quantum_keycodes {
538#define HYPR(kc) (QK_LCTL | QK_LSFT | QK_LALT | QK_LGUI | (kc)) 538#define HYPR(kc) (QK_LCTL | QK_LSFT | QK_LALT | QK_LGUI | (kc))
539#define MEH(kc) (QK_LCTL | QK_LSFT | QK_LALT | (kc)) 539#define MEH(kc) (QK_LCTL | QK_LSFT | QK_LALT | (kc))
540#define LCAG(kc) (QK_LCTL | QK_LALT | QK_LGUI | (kc)) 540#define LCAG(kc) (QK_LCTL | QK_LALT | QK_LGUI | (kc))
541#define SGUI(kc) (QK_LGUI | QK_LSFT | (kc)) 541#define LSG(kc) (QK_LSFT | QK_LGUI | (kc))
542#define SCMD(kc) SGUI(kc) 542#define SGUI(kc) LSG(kc)
543#define SWIN(kc) SGUI(kc) 543#define SCMD(kc) LSG(kc)
544#define SWIN(kc) LSG(kc)
545#define LAG(kc) (QK_LALT | QK_LGUI | (kc))
546#define RSG(kc) (QK_RSFT | QK_RGUI | (kc))
547#define RAG(kc) (QK_RALT | QK_RGUI | (kc))
544#define LCA(kc) (QK_LCTL | QK_LALT | (kc)) 548#define LCA(kc) (QK_LCTL | QK_LALT | (kc))
545#define LSA(kc) (QK_LSFT | QK_LALT | (kc)) 549#define LSA(kc) (QK_LSFT | QK_LALT | (kc))
546#define RSA(kc) (QK_RSFT | QK_RALT | (kc)) 550#define RSA(kc) (QK_RSFT | QK_RALT | (kc))
@@ -765,9 +769,13 @@ enum quantum_keycodes {
765#define LCAG_T(kc) MT(MOD_LCTL | MOD_LALT | MOD_LGUI, kc) // Left Control + Alt + GUI 769#define LCAG_T(kc) MT(MOD_LCTL | MOD_LALT | MOD_LGUI, kc) // Left Control + Alt + GUI
766#define RCAG_T(kc) MT(MOD_RCTL | MOD_RALT | MOD_RGUI, kc) // Right Control + Alt + GUI 770#define RCAG_T(kc) MT(MOD_RCTL | MOD_RALT | MOD_RGUI, kc) // Right Control + Alt + GUI
767#define HYPR_T(kc) MT(MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI, kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/ 771#define HYPR_T(kc) MT(MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI, kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/
768#define SGUI_T(kc) MT(MOD_LGUI | MOD_LSFT, kc) // Left Shift + GUI 772#define LSG_T(kc) MT(MOD_LSFT | MOD_LGUI, kc) // Left Shift + GUI
769#define SCMD_T(kc) SGUI_T(kc) 773#define SGUI_T(kc) LSG_T(kc)
770#define SWIN_T(kc) SGUI_T(kc) 774#define SCMD_T(kc) LSG_T(kc)
775#define SWIN_T(kc) LSG_T(kc)
776#define LAG_T(kc) MT(MOD_LALT | MOD_LGUI, kc) // Left Alt + GUI
777#define RSG_T(kc) MT(MOD_RSFT | MOD_RGUI, kc) // Right Shift + GUI
778#define RAG_T(kc) MT(MOD_RALT | MOD_RGUI, kc) // Right Alt + GUI
771#define LCA_T(kc) MT(MOD_LCTL | MOD_LALT, kc) // Left Control + Alt 779#define LCA_T(kc) MT(MOD_LCTL | MOD_LALT, kc) // Left Control + Alt
772#define LSA_T(kc) MT(MOD_LSFT | MOD_LALT, kc) // Left Shift + Alt 780#define LSA_T(kc) MT(MOD_LSFT | MOD_LALT, kc) // Left Shift + Alt
773#define RSA_T(kc) MT(MOD_RSFT | MOD_RALT, kc) // Right Shift + Alt 781#define RSA_T(kc) MT(MOD_RSFT | MOD_RALT, kc) // Right Shift + Alt