diff --git a/keyboards/kbdfans/kbd6x/keymaps/wanleg/keymap.c b/keyboards/kbdfans/kbd6x/keymaps/wanleg/keymap.c
new file mode 100644
index 0000000000..f3aa991f31
--- /dev/null
+++ b/keyboards/kbdfans/kbd6x/keymaps/wanleg/keymap.c
@@ -0,0 +1,82 @@
+/* Copyright 2018 wanleg
+ *
+ * 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 .
+ */
+#include QMK_KEYBOARD_H
+#include "wanleg.h"
+
+
+#define LAYOUT_kbd6x_base( \
+ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
+ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
+ K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
+ ) \
+ LAYOUT_wrapper( \
+ 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_DEL, \
+ KC_TAB, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_LBRC, KC_RBRC, KC_BSLS, \
+ KC_CAPS, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, KC_ENT, \
+ KC_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_LSFT, FUNCTION, \
+ KC_LCTL, KC_LGUI, KC_LALT, LT(gDIR,KC_SPC), KC_RALT, KC_RGUI, KC_RCTL \
+ )
+#define LAYOUT_kbd6x_base_wrapper(...) LAYOUT_kbd6x_base(__VA_ARGS__)
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[gGK] = LAYOUT_kbd6x_base_wrapper(
+ _______________Gherkin_Row_0_______________,
+ _______________Gherkin_Row_1_______________,
+ _______________Gherkin_Row_2_______________
+),
+
+[gNUM] = LAYOUT_kbd6x_base_wrapper(
+ _______________Gherkin_NUM_0_______________,
+ _______________Gherkin_NUM_1_______________,
+ _______________Gherkin_NUM_2_______________
+),
+
+[gDIR] = LAYOUT_kbd6x_base_wrapper(
+ _______________Gherkin_DIR_0_______________,
+ _______________Gherkin_DIR_1_______________,
+ _______________Gherkin_DIR_2_______________
+),
+
+[gETC] = LAYOUT_kbd6x_base_wrapper(
+ _______________Gherkin_ETC_0_______________,
+ _______________Gherkin_ETC_1_______________,
+ _______________Gherkin_ETC_2_______________
+),
+
+[_FN] = LAYOUT_kbd6x_base_wrapper(
+ _______________Gherkin_FN_0________________,
+ _______________Gherkin_FN_1________________,
+ _______________Gherkin_FN_2________________
+),
+
+//mac layout
+[_QW] = LAYOUT_wrapper(
+ 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_DEL,
+ 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,
+ 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_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(ONE),
+ KC_LCTL, MO(ONE), KC_LGUI, KC_SPACE, KC_RGUI, KC_RALT, KC_RCTL
+ ),
+
+[ONE] = LAYOUT_wrapper(
+ KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET,
+ _______, BL_BRTG, BL_DEC, BL_INC, BL_TOGG, BL_STEP, BL_ON, KC_PGUP, KC_HOME, _______, _______, _______, _______, _______,
+ _______, RGB_M_B, RGB_VAD, RGB_VAI, RGB_TOG, RGB_MOD, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______,
+ _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, KC_PGDN, KC_END, _______, gGHERKIN,_______, _______,
+ _______, _______, _______, _______, _______, _______, _______
+ ),
+};
diff --git a/keyboards/kbdfans/kbd6x/keymaps/wanleg/rules.mk b/keyboards/kbdfans/kbd6x/keymaps/wanleg/rules.mk
new file mode 100644
index 0000000000..92cc41e212
--- /dev/null
+++ b/keyboards/kbdfans/kbd6x/keymaps/wanleg/rules.mk
@@ -0,0 +1,3 @@
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+EXTRAKEY_ENABLE = no # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
\ No newline at end of file
diff --git a/keyboards/miniaxe/keymaps/wanleg/config.h b/keyboards/miniaxe/keymaps/wanleg/config.h
new file mode 100644
index 0000000000..0f20ea455f
--- /dev/null
+++ b/keyboards/miniaxe/keymaps/wanleg/config.h
@@ -0,0 +1,11 @@
+#pragma once
+
+/* Select hand configuration */
+
+// #define MASTER_LEFT
+// #define MASTER_RIGHT
+#define EE_HANDS
+
+//#define QMK_ESC_OUTPUT F1 // usually COL
+//#define QMK_ESC_INPUT D6 // usually ROW // connected to nothing on the miniaxe
+//#define QMK_LED D7 //connected to nothing on the miniaxe
diff --git a/keyboards/miniaxe/keymaps/wanleg/keymap.c b/keyboards/miniaxe/keymaps/wanleg/keymap.c
new file mode 100644
index 0000000000..69233741ba
--- /dev/null
+++ b/keyboards/miniaxe/keymaps/wanleg/keymap.c
@@ -0,0 +1,49 @@
+#include QMK_KEYBOARD_H
+#include "wanleg.h"
+
+#define LAYOUT_miniaxe_base( \
+ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
+ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
+ K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
+ ) \
+ LAYOUT_wrapper( \
+ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
+ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
+ K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
+ _______, NUMBER, ETCETERA, KC_SPC, DIRECTION, KC_RGUI \
+ )
+#define LAYOUT_miniaxe_base_wrapper(...) LAYOUT_miniaxe_base(__VA_ARGS__)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[_GK] = LAYOUT_miniaxe_base_wrapper(
+ _______________Gherkin_Row_0_______________,
+ _______________Gherkin_Row_1_______________,
+ SFT_T(KC_Z), KC_X, KC_C, LT(NUM,KC_V), LT(ETC,KC_B), LT(_FN,KC_N), LT(DIR,KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC)
+),
+
+[NUM] = LAYOUT_wrapper(
+ _______________Gherkin_NUM_0_______________,
+ _______________Gherkin_NUM_1_______________,
+ _______________Gherkin_NUM_2_______________,
+ _______, _______, _______, KC_ENT, KC_RSFT, _______
+),
+
+[DIR] = LAYOUT_miniaxe_base_wrapper(
+ _______________Gherkin_DIR_0_______________,
+ _______________Gherkin_DIR_1_______________,
+ _______________Gherkin_DIR_2_______________
+),
+
+[ETC] = LAYOUT_wrapper(
+ _______________Gherkin_ETC_0_______________,
+ _______________Gherkin_ETC_1_______________,
+ _______________Gherkin_ETC_2_______________,
+ _______, NUMBER, ETCETERA, LALT(LCTL(KC_DEL)), DIRECTION, KC_RGUI
+),
+
+[_FN] = LAYOUT_miniaxe_base_wrapper(
+ _______________Gherkin_FN_0________________,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+),
+};
\ No newline at end of file
diff --git a/keyboards/miniaxe/keymaps/wanleg/rules.mk b/keyboards/miniaxe/keymaps/wanleg/rules.mk
new file mode 100644
index 0000000000..ae5ae549cc
--- /dev/null
+++ b/keyboards/miniaxe/keymaps/wanleg/rules.mk
@@ -0,0 +1,18 @@
+# Bootloader selection
+# Teensy halfkay
+# Pro Micro caterina
+# Atmel DFU atmel-dfu
+# LUFA DFU lufa-dfu
+# QMK DFU qmk-dfu
+# atmega32a bootloadHID
+#BOOTLOADER = qmk-dfu
+
+
+# If you don't know the bootloader type, then you can specify the
+# Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line
+# Teensy halfKay 512
+# Teensy++ halfKay 1024
+# Atmel DFU loader 4096
+# LUFA bootloader 4096
+# USBaspLoader 2048
+# OPT_DEFS += -DBOOTLOADER_SIZE=4096
\ No newline at end of file
diff --git a/layouts/community/ortho_3x10/wanleg/config.h b/layouts/community/ortho_3x10/wanleg/config.h
index 6719a4591e..dc22454481 100644
--- a/layouts/community/ortho_3x10/wanleg/config.h
+++ b/layouts/community/ortho_3x10/wanleg/config.h
@@ -2,8 +2,25 @@
//QMK DFU settings (ProMicro boards)
// set top left key as bootloader mode escape key on Gherkin
-#if defined(KEYBOARD_gherkin)
+#if defined(KEYBOARD_40percentclub_gherkin) && !defined(FLIP)
#define QMK_LED B0
#define QMK_ESC_OUTPUT B4 // usually COL
#define QMK_ESC_INPUT F7 // usually ROW
#endif
+
+//change gherkin orientation (i.e. move USB port from right side to left side)
+#if defined(KEYBOARD_40percentclub_gherkin) && defined(FLIP)
+//need to fix QMKdfu setting:
+#define QMK_ESC_OUTPUT B6 // usually COL
+#define QMK_ESC_INPUT D0 // usually ROW
+#define QMK_LED B0
+
+//need to undefine standard 4x4 array before defining alternate ProMicro array
+#undef MATRIX_ROW_PINS
+#undef MATRIX_COL_PINS
+//standard config:
+//#define MATRIX_ROW_PINS { F7, B1, B3, B2, B6 }
+//#define MATRIX_COL_PINS { B4, E6, D7, C6, D4, D0 }
+#define MATRIX_ROW_PINS { B6, B2, B3, B1, F7 }
+#define MATRIX_COL_PINS { D0, D4, C6, D7, E6, B4 }
+#endif
diff --git a/layouts/community/ortho_3x10/wanleg/keymap.c b/layouts/community/ortho_3x10/wanleg/keymap.c
index 44be300a41..96d36eb312 100644
--- a/layouts/community/ortho_3x10/wanleg/keymap.c
+++ b/layouts/community/ortho_3x10/wanleg/keymap.c
@@ -26,4 +26,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______________Gherkin_ETC_2_______________
),
+[_FN] = LAYOUT_ortho_3x10_wrapper(
+ _______________Gherkin_FN_0________________,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+),
};
diff --git a/layouts/community/ortho_3x10/wanleg/readme.md b/layouts/community/ortho_3x10/wanleg/readme.md
index 8696cccf6b..255e19c2a4 100644
--- a/layouts/community/ortho_3x10/wanleg/readme.md
+++ b/layouts/community/ortho_3x10/wanleg/readme.md
@@ -1,4 +1,4 @@
-![Gherkin Wanleg Layout Image](https://i.imgur.com/nCPog2W.png)
+![Gherkin Wanleg Layout Image](https://i.imgur.com/iNkR90W.png)
# Gherkin Wanleg Layout
This is the layout I came up with to preserve a standard QWERTY 104 key ANSI layout as much as possible, in as few layers as possible for a 30 key board.
Here are the two Tap Dance keys I've set up for this board:
@@ -47,9 +47,9 @@ The instructions below have been adapted from https://www.reddit.com/r/olkb/comm
| Arduino | ProMicro |
| --- | --- |
| 10 | RST |
-| 11 | 16 |
-| 12 | 14 |
-| 13 | 15 |
+| 11 (MOSI) | 16 |
+| 12 (MISO) | 14 |
+| 13 (SCK) | 15 |
| GND | GND |
| 5V | VCC |
diff --git a/layouts/community/ortho_3x10/wanleg/rules.mk b/layouts/community/ortho_3x10/wanleg/rules.mk
index 90841d2abe..efd11f7f80 100644
--- a/layouts/community/ortho_3x10/wanleg/rules.mk
+++ b/layouts/community/ortho_3x10/wanleg/rules.mk
@@ -1,3 +1 @@
-SWAP_HANDS_ENABLE = no
-
BOOTLOADER = qmk-dfu
\ No newline at end of file
diff --git a/layouts/community/ortho_4x12/wanleg/config.h b/layouts/community/ortho_4x12/wanleg/config.h
index f7650ddd3a..bcf2756f6b 100644
--- a/layouts/community/ortho_4x12/wanleg/config.h
+++ b/layouts/community/ortho_4x12/wanleg/config.h
@@ -20,6 +20,13 @@
#define EE_HANDS
#endif
+// set top left key as bootloader mode escape key on Nori
+#if defined(KEYBOARD_40percentclub_nori)
+#define QMK_LED B0
+#define QMK_ESC_OUTPUT F4 // usually COL
+#define QMK_ESC_INPUT D3 // usually ROW
+#endif
+
// set top left key as bootloader mode escape key on 4x4 48key layout
#if defined(KEYBOARD_40percentclub_4x4) && !defined(PRO_MICRO)
#define QMK_LED B0
diff --git a/layouts/community/ortho_4x12/wanleg/keymap.c b/layouts/community/ortho_4x12/wanleg/keymap.c
index 23e794dc41..bcf6671aed 100644
--- a/layouts/community/ortho_4x12/wanleg/keymap.c
+++ b/layouts/community/ortho_4x12/wanleg/keymap.c
@@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_____________DIRECTIONS_Row__2_____________,
_______, _______, ONEHAND, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
-#elif defined(KEYBOARD_40percentclub_4x4)
+#elif defined(KEYBOARD_40percentclub_4x4) || defined(KEYBOARD_40percentclub_nori)
[_GK] = LAYOUT_ortho_4x12_wrapper(
_______________GherkinLike_0_______________,
_______________GherkinLike_1_______________,
@@ -36,14 +36,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______________NUMPAD_Row__3_______________
),
-#elif defined(KEYBOARD_jj40)
-[_GK] = LAYOUT_ortho_4x12_wrapper(
- _______________GherkinLike_0_______________,
- _______________GherkinLike_1_______________,
- _______________GherkinLike_2_______________,
- TD(RST_TAP_DANCE), BL_TOGG, BL_STEP, BL_BRTG, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL
-),
-
#else
[_GK] = LAYOUT_ortho_4x12_wrapper(
_______________GherkinLike_0_______________,
@@ -94,4 +86,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
______________ETCETERA_Row__3______________
),
+[_FN] = LAYOUT_ortho_4x12_wrapper(
+ _______, _______________Gherkin_FN_0________________, _______,
+ _______, _______________Gherkin_FN_0________________, _______,
+ _______, _______________Gherkin_FN_0________________, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+),
+
};
diff --git a/layouts/community/ortho_4x12/wanleg/rules.mk b/layouts/community/ortho_4x12/wanleg/rules.mk
index e8277610b6..0b3917e98f 100644
--- a/layouts/community/ortho_4x12/wanleg/rules.mk
+++ b/layouts/community/ortho_4x12/wanleg/rules.mk
@@ -7,4 +7,9 @@ endif
ifeq ($(strip $(KEYBOARD)), planck/rev6)
AUDIO_ENABLE = yes
+endif
+
+#disable RGB on version 1 of jj40 keyboard (does not exist)
+ifeq ($(strip $(KEYBOARD)), jj40)
+ RGBLIGHT_ENABLE = no
endif
\ No newline at end of file
diff --git a/layouts/community/ortho_5x15/wanleg/keymap.c b/layouts/community/ortho_5x15/wanleg/keymap.c
index a98f61988c..ea4521d3d9 100644
--- a/layouts/community/ortho_5x15/wanleg/keymap.c
+++ b/layouts/community/ortho_5x15/wanleg/keymap.c
@@ -11,7 +11,7 @@
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e \
) \
LAYOUT_ortho_5x15_wrapper( \
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK, QWERTY, GHERKIN, FUNCTION, \
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, QWERTY, GHERKIN, FUNCTION, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK, \
K00, K01, K02, K03, K04, K05, K0c, K0d, K0e, K06, K07, K08, K09, K0a, K0b, \
K10, K11, K12, K13, K14, K15, K1c, K1d, K1e, K16, K17, K18, K19, K1a, K1b, \
K20, K21, K22, K23, K24, K25, K2c, K2d, K2e, K26, K27, K28, K29, K2a, K2b, \
@@ -26,7 +26,7 @@
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e \
) \
LAYOUT_ortho_5x15_wrapper( \
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK, QWERTY, GHERKIN, FUNCTION, \
+ QWERTY, GHERKIN, FUNCTION, KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NLCK, \
K0c, K0d, K0e, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \
K1c, K1d, K1e, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \
K2c, K2d, K2e, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \
@@ -110,7 +110,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
#endif
#else
- /* Gherkin
+ /* Gherkin-Like
* .--------------------------------------------------------------------------------------------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | NUMLOCK| qwerty | gherkin| FN |
* |-----------------------------------------------------------------------------------------------------------+--------+--------+--------|
@@ -190,7 +190,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
________________SUPRA_Row_3________________, _______, _______, _______
),
-/* Gherkin Numbers
+/* Gherkin-Like Numbers
* .--------------------------------------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |-----------------------------------------------------------------------------------------------------------|--------+-----------------|
@@ -210,7 +210,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______________NUMBERS_Row_3_______________, _______, _______, _______
),
-/* Gherkin Et Cetera
+/* Gherkin-Like Et Cetera
* .--------------------------------------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |-----------------------------------------------------------------------------------------------------------|--------+-----------------|
@@ -230,7 +230,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
______________ETCETERA_Row__3______________, _______, _______, _______
),
-/* Gherkin Directional Keys
+/* Gherkin-Like Directional Keys
* .--------------------------------------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |-----------------------------------------------------------------------------------------------------------|--------+-----------------|
@@ -250,25 +250,25 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_____________DIRECTIONS_Row__3_____________, _______, _______, _______
),
-
-/* FUNCTION
+/* Gherkin FN/Lighting
* .--------------------------------------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
- * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
- * | | | | | | | | | | | | | | | |
- * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
- * | CAP LK | MS BT5 | MS BT4 | MS BT3 | MS BT2 | SLOW M | FAST M | NEXT | VOL+ | VOL- | PLAY | | | | WHEEL+ |
- * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
- * | RGB TG | RGB MD | RGB HI | RGB HD | RGB SI | RGB SD | RGB VI | RGB VD | BL TOG | BL INC | BL DEC | | | MOUS U | WHEEL- |
- * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
- * | | | | | | | MS BT1 | | | | | | MOUS L | MOUS D | MOUS R |
+ * |-----------------------------------------------------------------------------------------------------------|--------+-----------------|
+ * | | | | |
+ * | |--------+--------+--------|
+ * | 4x12 FN/Lighting LAYOUT | | | |
+ * | |--------+--------+--------|
+ * | | | | |
+ * | |--------+--------+--------|
+ * | | | | |
* '--------------------------------------------------------------------------------------------------------------------------------------'
*/
+
[_FN] = LAYOUT_75_base_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, _______, _______, KC_WH_U,
- RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_TOGG, BL_INC, BL_DEC, _______, _______, KC_MS_U, KC_WH_D,
- _______, _______, _______, _______, _______, _______, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R
+ _______, _______________Gherkin_FN_0________________, _______, _______, _______, _______,
+ _______, _______________Gherkin_FN_1________________, _______, _______, _______, _______,
+ _______, _______________Gherkin_FN_2________________, _______, _______, _______, _______,
+ _______, _________________BLANK_50__________________, _______, _______, _______, _______
),
};
diff --git a/users/wanleg/config.h b/users/wanleg/config.h
index 0c8b048af7..d29054694c 100644
--- a/users/wanleg/config.h
+++ b/users/wanleg/config.h
@@ -6,9 +6,9 @@
//MIGHT HAVE TO SPLIT THIS INTO TWO CONDITIONS
-#if defined(TAP_DANCE_ENABLE) && defined(KEYBOARD_lets_split_rev2) || defined(KEYBOARD_iris_rev2)
+#if defined(TAP_DANCE_ENABLE) && defined(KEYBOARD_lets_split_rev2) || defined(KEYBOARD_keebio_iris_rev2)
//Kailh Coppers activate quickly and don't need a long tapping term
-#define TAPPING_TERM 100
+#define TAPPING_TERM 180
#elif defined(TAP_DANCE_ENABLE) && defined(KEYBOARD_bigswitch)
#define TAPPING_TERM 700
@@ -38,7 +38,14 @@
#define NO_ACTION_FUNCTION
#define NO_ACTION_ONESHOT
-// Disable mod tap interrrupt
-#ifndef IGNORE_MOD_TAP_INTERRUPT
-#define IGNORE_MOD_TAP_INTERRUPT
-#endif // !mod tap interrrupt
\ No newline at end of file
+
+#define PERMISSIVE_HOLD
+//// Disable mod tap interrrupt
+//#ifndef IGNORE_MOD_TAP_INTERRUPT
+//#define IGNORE_MOD_TAP_INTERRUPT
+//#endif // !mod tap interrrupt
+
+//set max breathing brightness on kbd6x
+#if defined(KEYBOARD_kbdfans_kbd6x)
+#define RGBLIGHT_EFFECT_BREATHE_MAX 128 // 0-255
+#endif
diff --git a/users/wanleg/readme.md b/users/wanleg/readme.md
index f687b92f48..4276111280 100644
--- a/users/wanleg/readme.md
+++ b/users/wanleg/readme.md
@@ -1,14 +1,125 @@
-Copyright 2018 Brian Fong @wanleg
+# Contents
+ * [Git Basics](#git-basics)
+ * [Update a Feature Branch](#update-a-development-branch)
+ * [Delete Branch Locally and Remotely](#delete-branch-locally-and-remotely)
+ * [Merge TEST branch into DEV branch](#merge-test-branch-into-dev-branch)
+ * [STM32F103C8T6 Setup](#STM32F103C8T6-setup)
+ * [Bootloader](#bootloader)
+ * [Flashing QMK](#flashing-qmk)
-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.
+---
+## Git Basics
+### Update a Development Branch
-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.
+This is how to update a working branch with upstream changes.
+First we'll update your local master branch. Go to your local project and check out the branch you want to merge into (your local master branch)
+```bash
+$ git checkout master
+```
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
+Fetch the remote, bringing the branches and their commits from the remote repository.
+You can use the -p, --prune option to delete any remote-tracking references that no longer exist in the remote. Commits to master will be stored in a local branch, remotes/origin/master
+```bash
+$ git fetch -p origin
+```
+
+Merge the changes from origin/master into your local master branch. This brings your master branch in sync with the remote repository, without losing your local changes. If your local branch didn't have any unique commits, Git will instead perform a "fast-forward".
+```bash
+$ git merge origin/master
+```
+
+Checkout the branch you want to merge into
+```bash
+$ git checkout
+```
+
+Merge your (now updated) master branch into your feature branch to update it with the latest changes from your team.
+```bash
+$ git merge master
+```
+
+This will open your git-configured text editor. Edit the message as desired, save, and exit the editor.
+
+The above steps only update your local feature branch. To update it on GitHub, push your changes.
+```bash
+$ git push origin
+```
+
+### Delete Branch Locally and Remotely
+
+Executive Summary
+```bash
+$ git push --delete
+$ git branch -d
+```
+Note that in most cases the remote name is origin.
+
+Delete Local Branch
+To delete the local branch use one of the following:
+```bash
+$ git branch -d branch_name
+$ git branch -D branch_name
+```
+Note: The -d option is an alias for --delete, which only deletes the branch if it has already been fully merged in its upstream branch. You could also use -D, which is an alias for --delete --force, which deletes the branch "irrespective of its merged status." [Source: man git-branch]
+
+Delete Remote Branch [Updated on 8-Sep-2017]
+As of Git v1.7.0, you can delete a remote branch using
+```bash
+$ git push --delete
+```
+which might be easier to remember than
+```bash
+$ git push :
+```
+which was added in Git v1.5.0 "to delete a remote branch or a tag."
+
+Starting on Git v2.8.0 you can also use `git push` with the `-d` option as an alias for `--delete`.
+
+Therefore, the version of Git you have installed will dictate whether you need to use the easier or harder syntax.
+
+### Merge TEST branch into DEV branch
+
+Executive Summary
+```bash
+$ git checkout DEV
+$ git merge TEST
+$ git push DEV
+$ git branch -d TEST
+$ git push :TEST
+```
+Note that in most cases the remote name is origin.
+The above code will merge, push to remote, and delete both the local and remote TEST branches
+
+---
+## STM32F103C8T6 Setup
+Cheap "Blue/Black Pills" typically do not come with a bootloader installed. The Black Pill uses [generic_boot20_pb12.bin](https://github.com/rogerclarkmelbourne/STM32duino-bootloader/blob/master/binaries/generic_boot20_pb12.bin). The Blue Pill uses [generic_boot20_pc13.bin](https://github.com/rogerclarkmelbourne/STM32duino-bootloader/blob/master/binaries/generic_boot20_pc13.bin).
+The following instructions have been adapted from [here](http://wiki.stm32duino.com/index.php?title=Burning_the_bootloader).
+### Bootloader
+Flashing a bootloader on to a Black Pill can be done via a USB to Serial converter (e.g. CP2102). This process should be roughly the same for all F103 boards.
+
+1. Download the correct bootloader binary
+2. Set the 'boot 0' pin/jumper high, and 'boot 1' low
+ B0+ to center pin
+ B1- to center pin
+3. Connect the board to the PC using a USB to serial converter
+ RX to PA9
+ TX to PA10
+ GND to Ground
+ 3.3V to 3.3 Volts
+4. Download and install __Flash Loader Demonstrator__ from [here](http://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/flasher-stm32.html)
+5. Use __Flash Loader Demonstrator__ to flash the bootloader
+ Ensure the correct COM port is selected. Leave other options with their default values/selections.
+ Use the "Download to Device" option, with "Erase necessary pages" selected
+6. After a successful flash, set 'boot 0' pin/jumper low
+ B0- to center pin
+ B1- to center pin (no change)
+
+### Flashing QMK
+As of April 2019, the `:dfu-util` target doesn't work on a \*Pill. You will need to use dfu-util directly.
+1. Use QMK to build your `.bin`
+2. Run `dfu-util.exe -d 1eaf:0003 -a 2 -D YOUR_FIRMWARE.bin"`
+ If this is the first QMK flash on the \*Pill, you will need to synchronize your Reset Button-push with starting the command. By default, the \*Pill only stays in bootloader mode for about 3 seconds before returning to normal operation.
+
+See [this page](https://docs.qmk.fm/#/faq_build?id=unknown-device-for-dfu-bootloader) if Windows can't see anything to upload to.
+
+---
diff --git a/users/wanleg/rules.mk b/users/wanleg/rules.mk
index b069cd8d38..eb66a49e6f 100644
--- a/users/wanleg/rules.mk
+++ b/users/wanleg/rules.mk
@@ -36,4 +36,10 @@ ifeq ($(strip $(padc)), yes)
endif
ifeq ($(strip $(padl)), yes)
OPT_DEFS += -DPADL
+endif
+
+#change gherkin orientation (i.e. move USB port from right side to left side)
+#example usage: make gherkin:wanleg flip=yes
+ifeq ($(strip $(flip)), yes)
+ OPT_DEFS += -DFLIP
endif
\ No newline at end of file
diff --git a/users/wanleg/wanleg.c b/users/wanleg/wanleg.c
index 274c74f728..aa7b1c9a4c 100644
--- a/users/wanleg/wanleg.c
+++ b/users/wanleg/wanleg.c
@@ -6,20 +6,30 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
- print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QW);
+ #if defined(RGBLIGHT_ENABLE)
+ rgblight_sethsv_noeeprom(0,0,128);
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING);
+ #endif
}
return false;
break;
case GHERKIN:
if (record->event.pressed) {
set_single_persistent_default_layer(_GK);
+ #if defined(RGBLIGHT_ENABLE)
+ rgblight_sethsv_noeeprom(128,255,64);
+ #endif
}
return false;
break;
case gGHERKIN:
if (record->event.pressed) {
set_single_persistent_default_layer(gGK);
+ #if defined(RGBLIGHT_ENABLE)
+ rgblight_sethsv_noeeprom(128,255,128);
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT);
+ #endif
}
return false;
break;
@@ -113,6 +123,17 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return false;
break;
+ //on RESET, underglow red if present
+ case RESET:
+ if (record->event.pressed) {
+ #if defined(RGBLIGHT_ENABLE)
+ rgblight_enable_noeeprom(); // enables Rgb, without saving settings
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
+ rgblight_sethsv_noeeprom_red();
+ #endif
+ }
+ return true; // Let QMK send the press/release events as normal
+ break;
}
return true;
}
@@ -128,6 +149,7 @@ void matrix_init_keymap(void) {}
// Call user matrix init, then call the keymap's init function
void matrix_init_user(void) {
+//turn off pro micro LEDs
#if defined(KEYBOARD_lets_split_rev2)
DDRD &= ~(1<<5);
PORTD &= ~(1<<5);
@@ -135,5 +157,20 @@ void matrix_init_user(void) {
DDRB &= ~(1<<0);
PORTB &= ~(1<<0);
#endif
+
+//disable backlight breathing for keyboard using random flashing RGB LEDs for backlight
+//(breathing provides insufficient power to integrated LED IC)
+#if defined(KEYBOARD_kbdfans_kbd6x) && defined(BACKLIGHT_BREATHING)
+ breathing_disable();
+#endif
matrix_init_keymap();
-}
\ No newline at end of file
+}
+
+//at end of firmware startup process, change powerup default layer and underglow colour for kbd6x
+void keyboard_post_init_user(void) {
+ #if defined(KEYBOARD_kbdfans_kbd6x)
+ set_single_persistent_default_layer(_QW);
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_SNAKE + 5);
+ rgblight_sethsv_noeeprom(0,0,128);
+ #endif
+}
diff --git a/users/wanleg/wanleg.h b/users/wanleg/wanleg.h
index 9d07760a7b..2aea1a31e7 100644
--- a/users/wanleg/wanleg.h
+++ b/users/wanleg/wanleg.h
@@ -3,7 +3,7 @@
#include "quantum.h"
// Define layer names and order
-#ifdef KEYBOARD_gherkin
+#if defined(KEYBOARD_40percentclub_gherkin) || defined(KEYBOARD_kbdfans_kbd6x)
enum userspace_layers {
gGK = 0,
gNUM,
@@ -118,22 +118,22 @@ enum {
// lengths consistent.
-/* Pure Gherkin
+/* Gherkin
* .-----------------------------------------------------------------------------------------.
* | Q//ESC | W | E | R | T | Y | U | I | O | P |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | A | S | D | F | G | H | J | K | L | SPACE |
* | | | | | | | | | |SFThold |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
- * | Z | X | C | V/gNUM | B/gETC | N | M/gDIR | ,/GUI | ./ALT | BSPC |
+ * | Z | X | C | V/gNUM | B/gETC | N/Fn | M/gDIR | ,/GUI | ./ALT | BSPC |
* | SFThold| | | | | | | | |CTRLhold|
* '-----------------------------------------------------------------------------------------'
*/
#define _______________Gherkin_Row_0_______________ TD(TD_Q_ESC), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P
#define _______________Gherkin_Row_1_______________ KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SFT_T(KC_SPC)
-#define _______________Gherkin_Row_2_______________ SFT_T(KC_Z), KC_X, KC_C, LT(gNUM,KC_V), LT(gETC,KC_B), KC_N, LT(gDIR,KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC)
+#define _______________Gherkin_Row_2_______________ SFT_T(KC_Z), KC_X, KC_C, LT(gNUM,KC_V), LT(gETC,KC_B), LT(_FN,KC_N), LT(gDIR,KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC)
-/* Directional Keys
+/* Gherkin Directional Keys
* .-----------------------------------------------------------------------------------------.
* | TAB | up | | INS | CTRL | SHIFT | PgUp | HOME | - | = |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
@@ -146,7 +146,7 @@ enum {
#define _______________Gherkin_DIR_1_______________ KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_RCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC
#define _______________Gherkin_DIR_2_______________ KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_LALT, KC_SLSH
-/* Numbers
+/* Gherkin Numbers
* .-----------------------------------------------------------------------------------------.
* | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
@@ -160,16 +160,16 @@ enum {
#define _______________Gherkin_NUM_1_______________ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0
#define _______________Gherkin_NUM_2_______________ KC_F11, KC_F12, _______,_______, _______, KC_ENT, KC_RSFT, KC_RGUI, ALT_T(KC_DOT), CTL_T(KC_BSPC)
-/* Et Cetera
+/* Gherkin Et Cetera
* .-----------------------------------------------------------------------------------------.
- * | ` | mUP | | | RESET | SHIFT | mScrDn | mScrUp | | \ |
+ * | ` | mUP | | ESC | RESET | SHIFT | mScrDn | mScrUp | | \ |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | mLeft | mDown | mRight | | SHIFT | mBtn3 | mBtn1 | mBtn2 | ; | ' |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | Sft//Cp| CAPS | | | | C-A-D | mScrL | mScrR | ALT | DEL |
* '-----------------------------------------------------------------------------------------'
*/
-#define _______________Gherkin_ETC_0_______________ KC_GRV, KC_MS_U, _______,_______, RESET, KC_RSFT, KC_WH_D, KC_WH_U, _______, KC_BSLS
+#define _______________Gherkin_ETC_0_______________ KC_GRV, KC_MS_U, _______,KC_ESC, RESET, KC_RSFT, KC_WH_D, KC_WH_U, _______, KC_BSLS
#define _______________Gherkin_ETC_1_______________ KC_MS_L, KC_MS_D, KC_MS_R,_______, KC_LSFT, KC_BTN3, KC_BTN1, KC_BTN2, KC_SCLN, KC_QUOT
#define _______________Gherkin_ETC_2_______________ TD(TD_SFT_CAPS),KC_CAPS, _______,_______, _______, LALT(LCTL(KC_DEL)), KC_WH_L, KC_WH_R, KC_LALT, KC_DEL
@@ -180,7 +180,7 @@ enum {
* | TAB | A | S | D | F | G | H | J | K | L | SPACE | ' |
* | | | | | | | | | | |SFThold | |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
- * |SFT/CAPS| Z | X | C | V/NUM | B/ETC | N | M/DIR | ,/GUI | ./ALT | BSPC | ENT/SFT|
+ * |SFT/CAPS| Z | X | C | V/NUM | B/ETC | N/Fn | M/DIR | ,/GUI | ./ALT | BSPC | ENT/SFT|
* | |SFThold | | | | | | | | |CTRLhold| |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | LCTRL | LGUI | ALT | ONEHAND| NUM | ETC | SPACE | DIR | RGUI | ALT | DEL | CTRL |
@@ -188,7 +188,7 @@ enum {
*/
#define _______________GherkinLike_0_______________ KC_ESC, _______________Gherkin_Row_0_______________, KC_BSPC
#define _______________GherkinLike_1_______________ KC_TAB, _______________Gherkin_Row_1_______________, KC_QUOT
-#define _______________GherkinLike_2_______________ TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM, KC_V),LT(ETC, KC_B),KC_N, LT(DIR, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT)
+#define _______________GherkinLike_2_______________ TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM, KC_V),LT(ETC, KC_B),LT(_FN,KC_N), LT(DIR, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT)
#define _______________GherkinLike_3_______________ KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL
#define _______________GherkinLike_3_OneHand_______ KC_LCTL, KC_LGUI, KC_LALT, ONEHAND, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, ONEHAND, KC_RCTL
@@ -241,7 +241,7 @@ enum {
#define _______________SUBTER_Row__2_______________ _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, KC_RGUI,ALT_T(KC_DOT), CTL_T(KC_BSPC), _______
#define _______________SUBTER_Row__3_______________ _______, _______, GHERKIN, _______, _______, _______, KC_ENT, KC_LSFT, _______,_______, _______, _______
-/* Gherkin Numbers
+/* Gherkin-Like Numbers
* .-----------------------------------------------------------------------------------------------------------.
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | BSPC |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
@@ -259,7 +259,7 @@ enum {
#define _______________NUMBERS_Row_3_______________ _______, _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______, _______
-/* Gherkin Directional Keys
+/* Gherkin-Like Directional Keys
* .-----------------------------------------------------------------------------------------------------------.
* | | TAB | up | | INS | CTRL | SHIFT | PgUp | HOME | - | = | DEL |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
@@ -275,9 +275,9 @@ enum {
#define _____________DIRECTIONS_Row__2_____________ _______, _______________Gherkin_DIR_2_______________, _______
#define _____________DIRECTIONS_Row__3_____________ _______, _______, QWERTY, _______, _______, _______, _______, _______, _______, _______, _______, _______
-/* Gherkin Et Cetera
+/* Gherkin-Like Et Cetera
* .-----------------------------------------------------------------------------------------------------------.
- * | | ` | mUP | | | RESET | SHIFT | mScrUp |mScrDown| | \ | DEL |
+ * | | ` | mUP | | | RESET | SHIFT | mScrDn | mScrUp | | \ | DEL |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | | mLeft | mDown | mRight | | SHIFT | mBtn3 | mBtn1 | mBtn2 | ; | ' | |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
@@ -290,7 +290,7 @@ enum {
#define ______________ETCETERA_Row__1______________ _______, _______________Gherkin_ETC_1_______________, _______
#define ______________ETCETERA_Row__2______________ _______, _______________Gherkin_ETC_2_______________, _______
#define ______________ETCETERA_Row__3______________ _______, _______, _______, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______, _______
-
+
/* Single 4x4 board only
* .-----------------------------------.
* | 7 | 8 | 9 | BSPC |
@@ -307,3 +307,16 @@ enum {
#define _______________NUMPAD_Row__1_______________ KC_KP_4, KC_KP_5, KC_KP_6, KC_SPC
#define _______________NUMPAD_Row__2_______________ KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT
#define _______________NUMPAD_Row__3_______________ KC_KP_0, TD(LYR_TAP_DANCE), KC_KP_DOT, KC_PMNS
+
+/* Gherkin FN/Lighting
+ * .-----------------------------------------------------------------------------------------------------.
+ * | BL_breathe | BL_brite- | BL_brite+ | BL_toggle | BL_briteCyc | BL_briteMax | | | | |
+ * |------------+-----------+-----------+-----------+-------------+-------------+-----+-----+-----+------|
+ * | UG_breathe | UG_brite- | UG_brite+ | UG_toggle | UG_modeCycle| | | | | |
+ * |------------+-----------+-----------+-----------+-------------+-------------+-----+-----+-----+------|
+ * | UG_hue- | UG_hue+ | UG_sat- | UG_sat+ | | | | | |QWERTY|
+ * '-----------------------------------------------------------------------------------------------------'
+ */
+#define _______________Gherkin_FN_0________________ BL_BRTG, BL_DEC, BL_INC, BL_TOGG, BL_STEP, BL_ON, _______, _______, _______, _______
+#define _______________Gherkin_FN_1________________ RGB_M_B, RGB_VAD, RGB_VAI, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______
+#define _______________Gherkin_FN_2________________ RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, QWERTY