aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Dockerfile9
-rw-r--r--keyboards/amj60/amj60.h15
-rw-r--r--keyboards/amj60/keymaps/maximized/keymap.c61
-rw-r--r--keyboards/ergodox/keymaps/coderkun_neo2/keymap.c53
-rw-r--r--keyboards/ergodox/keymaps/coderkun_neo2/readme.md122
-rw-r--r--keyboards/handwired/promethium/color.h15
-rw-r--r--keyboards/handwired/promethium/config.h44
-rw-r--r--keyboards/handwired/promethium/keymaps/priyadi/config.h1
-rw-r--r--keyboards/handwired/promethium/keymaps/priyadi/keymap.c157
-rw-r--r--keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h1
-rw-r--r--keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h36
-rw-r--r--keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h36
-rw-r--r--keyboards/handwired/promethium/matrix.c4
-rw-r--r--keyboards/handwired/promethium/promethium.c6
-rw-r--r--keyboards/hhkb/rules.mk2
-rw-r--r--keyboards/miuni32/config.h1
-rw-r--r--keyboards/miuni32/keymaps/adam-lee/Makefile21
-rw-r--r--keyboards/miuni32/keymaps/adam-lee/config.h8
-rw-r--r--keyboards/miuni32/keymaps/adam-lee/keymap.c119
-rw-r--r--keyboards/miuni32/keymaps/adam-lee/readme.md1
-rw-r--r--keyboards/miuni32/keymaps/default/keymap.c104
-rw-r--r--keyboards/miuni32/keymaps/ht_156/Makefile21
-rw-r--r--keyboards/miuni32/keymaps/ht_156/config.h8
-rw-r--r--keyboards/miuni32/keymaps/ht_156/keymap.c181
-rw-r--r--keyboards/miuni32/keymaps/ht_156/readme.md1
-rw-r--r--keyboards/miuni32/miuni32.h4
-rw-r--r--keyboards/planck/keymaps/dshields/Makefile11
-rw-r--r--keyboards/planck/keymaps/dshields/config.h23
-rw-r--r--keyboards/planck/keymaps/dshields/keymap.c98
-rw-r--r--keyboards/ps2avrGB/keymaps/default/keymap.c16
-rw-r--r--keyboards/ps2avrGB/ps2avrGB.h18
-rw-r--r--keyboards/s60-x/default/rules.mk1
-rw-r--r--keyboards/s60-x/rgb/rules.mk56
-rw-r--r--keyboards/s60-x/s60-x.c1
-rw-r--r--keyboards/s60-x/s60-x_precompiled.zipbin276106 -> 0 bytes
-rw-r--r--keyboards/s60_x/Makefile (renamed from keyboards/s60-x/Makefile)0
-rw-r--r--keyboards/s60_x/config.h (renamed from keyboards/s60-x/config.h)13
-rw-r--r--keyboards/s60_x/default/Makefile (renamed from keyboards/s60-x/default/Makefile)0
-rw-r--r--keyboards/s60_x/default/config.h (renamed from keyboards/s60-x/default/config.h)0
-rw-r--r--keyboards/s60_x/default/default.c (renamed from keyboards/s60-x/default/default.c)0
-rw-r--r--keyboards/s60_x/default/default.h (renamed from keyboards/s60-x/default/default.h)0
-rw-r--r--keyboards/s60_x/default/rules.mk9
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/Makefile (renamed from keyboards/s60-x/keymaps/ansi_qwertz/Makefile)0
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/config.h (renamed from keyboards/s60-x/keymaps/ansi_qwertz/config.h)0
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png)bin54748 -> 54748 bytes
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg)0
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg)0
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.png (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.png)bin54041 -> 54041 bytes
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.svg (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.svg)0
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/base_layer.PNG (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/base_layer.PNG)bin29411 -> 29411 bytes
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/function_layer.PNG (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/function_layer.PNG)bin25567 -> 25567 bytes
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/docs/gaming_layer.PNG (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/gaming_layer.PNG)bin17895 -> 17895 bytes
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/keymap.c (renamed from keyboards/s60-x/keymaps/ansi_qwertz/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/ansi_qwertz/readme.md (renamed from keyboards/s60-x/keymaps/ansi_qwertz/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/custom/keymap.c (renamed from keyboards/s60-x/keymaps/custom/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/custom/readme.md (renamed from keyboards/s60-x/keymaps/custom/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/dbroqua/keymap.c (renamed from keyboards/s60-x/keymaps/dbroqua/keymap.c)27
-rw-r--r--keyboards/s60_x/keymaps/default/keymap.c (renamed from keyboards/s60-x/keymaps/default/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/default/readme.md (renamed from keyboards/s60-x/keymaps/default/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/hasu/keymap.c (renamed from keyboards/s60-x/keymaps/hasu/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/hasu/readme.md (renamed from keyboards/s60-x/keymaps/hasu/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/hhkb/keymap.c (renamed from keyboards/s60-x/keymaps/hhkb/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/hhkb/readme.md (renamed from keyboards/s60-x/keymaps/hhkb/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/iso/keymap.c (renamed from keyboards/s60-x/keymaps/iso/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/iso/readme.md (renamed from keyboards/s60-x/keymaps/iso/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/jpec/keymap.c (renamed from keyboards/s60-x/keymaps/jpec/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/jpec/readme.md (renamed from keyboards/s60-x/keymaps/jpec/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/plain/keymap.c (renamed from keyboards/s60-x/keymaps/plain/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/plain/readme.md (renamed from keyboards/s60-x/keymaps/plain/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/poker/keymap.c (renamed from keyboards/s60-x/keymaps/poker/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/poker/readme.md (renamed from keyboards/s60-x/keymaps/poker/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/poker_bit/keymap.c (renamed from keyboards/s60-x/keymaps/poker_bit/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/poker_bit/readme.md (renamed from keyboards/s60-x/keymaps/poker_bit/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/poker_set/keymap.c (renamed from keyboards/s60-x/keymaps/poker_set/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/poker_set/readme.md (renamed from keyboards/s60-x/keymaps/poker_set/readme.md)0
-rw-r--r--keyboards/s60_x/keymaps/spacefn/keymap.c (renamed from keyboards/s60-x/keymaps/spacefn/keymap.c)2
-rw-r--r--keyboards/s60_x/keymaps/spacefn/readme.md (renamed from keyboards/s60-x/keymaps/spacefn/readme.md)0
-rw-r--r--keyboards/s60_x/readme.md (renamed from keyboards/s60-x/readme.md)5
-rw-r--r--keyboards/s60_x/rgb/Makefile (renamed from keyboards/s60-x/rgb/Makefile)0
-rw-r--r--keyboards/s60_x/rgb/config.h (renamed from keyboards/s60-x/rgb/config.h)11
-rw-r--r--keyboards/s60_x/rgb/rgb.c (renamed from keyboards/s60-x/rgb/rgb.c)0
-rw-r--r--keyboards/s60_x/rgb/rgb.h (renamed from keyboards/s60-x/rgb/rgb.h)0
-rw-r--r--keyboards/s60_x/rgb/rules.mk9
-rw-r--r--keyboards/s60_x/rules.mk (renamed from keyboards/s60-x/rules.mk)4
-rw-r--r--keyboards/s60_x/s60_x.c1
-rw-r--r--keyboards/s60_x/s60_x.h (renamed from keyboards/s60-x/s60-x.h)0
-rw-r--r--keyboards/xd60/readme.md2
-rw-r--r--tmk_core/avr.mk42
-rw-r--r--tmk_core/chibios.mk4
89 files changed, 1136 insertions, 270 deletions
diff --git a/Dockerfile b/Dockerfile
index 744ded857..88da06f02 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,8 +1,7 @@
1FROM debian:jessie 1FROM debian:jessie
2MAINTAINER Erik Dasque <erik@frenchguys.com> 2MAINTAINER Erik Dasque <erik@frenchguys.com>
3 3
4RUN apt-get update 4RUN apt-get update && apt-get install --no-install-recommends -y build-essential \
5RUN apt-get install --no-install-recommends -y build-essential \
6 gcc \ 5 gcc \
7 unzip \ 6 unzip \
8 wget \ 7 wget \
@@ -15,10 +14,8 @@ RUN apt-get install --no-install-recommends -y build-essential \
15 gcc-arm-none-eabi \ 14 gcc-arm-none-eabi \
16 binutils-arm-none-eabi \ 15 binutils-arm-none-eabi \
17 libnewlib-arm-none-eabi \ 16 libnewlib-arm-none-eabi \
18 git 17 git \
19 18 && rm -rf /var/lib/apt/lists/*
20RUN apt-get clean
21RUN rm -rf /var/lib/apt/lists/*
22 19
23ENV keyboard=ergodox 20ENV keyboard=ergodox
24ENV subproject=ez 21ENV subproject=ez
diff --git a/keyboards/amj60/amj60.h b/keyboards/amj60/amj60.h
index a0cb47331..c508e479c 100644
--- a/keyboards/amj60/amj60.h
+++ b/keyboards/amj60/amj60.h
@@ -147,6 +147,21 @@
147 {k40, k41, k42, XXX, XXX, k45, XXX, XXX, XXX, XXX, k4a, k4b, k4c, k4d} \ 147 {k40, k41, k42, XXX, XXX, k45, XXX, XXX, XXX, XXX, k4a, k4b, k4c, k4d} \
148} 148}
149 149
150#define KEYMAP_MAX( \
151 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k49,\
152 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
153 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2d, \
154 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3d, k3c, \
155 k40, k41, k42, k45, k4a, k4b, k4c, k4d \
156) \
157{ \
158 {k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d}, \
159 {k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d}, \
160 {k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, XXX, k2d}, \
161 {k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d}, \
162 {k40, k41, k42, XXX, XXX, k45, XXX, XXX, XXX, k49, k4a, k4b, k4c, k4d} \
163}
164
150void matrix_init_user(void); 165void matrix_init_user(void);
151void matrix_scan_user(void); 166void matrix_scan_user(void);
152 167
diff --git a/keyboards/amj60/keymaps/maximized/keymap.c b/keyboards/amj60/keymaps/maximized/keymap.c
new file mode 100644
index 000000000..d2a4be59f
--- /dev/null
+++ b/keyboards/amj60/keymaps/maximized/keymap.c
@@ -0,0 +1,61 @@
1// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
2// this is the style you want to emulate.
3
4#include "amj60.h"
5
6// Each layer gets a name for readability, which is then used in the keymap matrix below.
7// The underscores don't mean anything - you can have a layer called STUFF or any other name.
8// Layer names don't all need to be of the same length, obviously, and you can also skip them
9// entirely and just use numbers.
10#define _DEF 0
11#define _SPC 1
12
13// dual-role shortcuts
14#define SPACEDUAL LT(_SPC, KC_SPACE)
15
16
17// increase readability
18#define _______ KC_TRNS
19
20const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
21 /* Keymap _DEF: Default Layer
22 * ,-----------------------------------------------------------.
23 * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \ | ~ |
24 * |-----------------------------------------------------------|
25 * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| bspc|
26 * |-----------------------------------------------------------|
27 * |Caps | A| S| D| F| G| H| J| K| L| ;| '| Return |
28 * |-----------------------------------------------------------|
29 * |Sft | Fn0| Z| X| C| V| B| N| M| ,| .| /| Sft |Fn2|
30 * |-----------------------------------------------------------|
31 * |Ctrl|Win |Alt | Space/Fn0 |Alt |Win |Menu|RCtl|
32 * `-----------------------------------------------------------'
33 */
34 [_DEF] = KEYMAP_MAX(
35 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_BSLS, KC_GRV, \
36 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_BSPC, \
37 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, \
38 KC_LSFT, F(0), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, F(1), \
39 KC_LCTL, KC_LALT, KC_LGUI, SPACEDUAL, KC_RGUI, KC_RALT, KC_RCTL, F(2)),
40
41 /* Keymap 1: F-and-vim Layer, modified with Space (by holding space)
42 * ,-----------------------------------------------------------.
43 * |PrSc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| | |
44 * |-----------------------------------------------------------|
45 * | |Paus| Up| [ | ] | | | | ( | ) | | | | Del |
46 * |-----------------------------------------------------------|
47 * | |Lft|Dwn|Rgt| | |Left|Down|Right|Up| | | PLAY |
48 * |-----------------------------------------------------------|
49 * | | | | | < | > | |M0 | | | | | Vol+ | |
50 * |-----------------------------------------------------------|
51 * | | | | |Alt |Prev|Vol-|Next|
52 * `-----------------------------------------------------------'
53 */
54 [_SPC] = KEYMAP_MAX(
55 KC_PSCR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, \
56 _______, KC_PAUS, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \
57 _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, KC_MPLY, \
58 _______, _______, _______, _______, _______, _______, KC_SPACE, M(0), _______, _______, _______, _______, KC_VOLU, _______, \
59 _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT),
60
61};
diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c
index aaf75d58f..2d6f76856 100644
--- a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c
+++ b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c
@@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
22 * ├───────┼─────┼─────┼─────╄─────╃─────┤ TL2 │ │ TL3 ├─────╄─────╃─────┼─────┼─────┼───────┤ 22 * ├───────┼─────┼─────┼─────╄─────╃─────┤ TL2 │ │ TL3 ├─────╄─────╃─────┼─────┼─────┼───────┤
23 * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ 23 * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │
24 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ 24 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
25 * │ CTL │ ALT │ MO1 │ Win │ Mod4│ │ Mod4│ Win │ MO1 │ Alt │ CTL │ 25 * │ CTL │ ALT │ MO1 │ Win │ Mod4│ │ Mod4│ Win │ MO1 │ ALT │ CTL │
26 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ 26 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
27 * │ ← │ ↑ │ │ ↓ │ → │ 27 * │ ← │ ↑ │ │ ↓ │ → │
28 * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ 28 * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
@@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
46 KC_END, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS, 46 KC_END, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS,
47 NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R, 47 NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R,
48 TG(PMN), NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT, 48 TG(PMN), NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT,
49 NEO_L2_R,KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, 49 NEO_L2_R,KC_RGUI,MO(FMU),KC_LALT,KC_RCTL,
50 KC_DOWN, KC_RGHT, 50 KC_DOWN, KC_RGHT,
51 KC_MINS, 51 KC_MINS,
52 MEH_T(KC_NO),KC_ENT,KC_SPC 52 MEH_T(KC_NO),KC_ENT,KC_SPC
@@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
63 * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ 63 * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤
64 * │ LSHFT │ Ä │ Q │ R │ W │ N │ │ │ │ J │ M │ , │ . │ ẞ │ Shift │ 64 * │ LSHFT │ Ä │ Q │ R │ W │ N │ │ │ │ J │ M │ , │ . │ ẞ │ Shift │
65 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ 65 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
66 * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ 66 * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ ALT │ CTL │
67 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ 67 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
68 * │ ← │ ↑ │ │ ↓ │ → │ 68 * │ ← │ ↑ │ │ ↓ │ → │
69 * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ 69 * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
@@ -87,7 +87,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
87 KC_END, DE_B, DE_A, DE_S, DE_G, DE_V, DE_Y, 87 KC_END, DE_B, DE_A, DE_S, DE_G, DE_V, DE_Y,
88 DE_U, DE_MINS,DE_Z, DE_E, DE_X, NEO_L1_R, 88 DE_U, DE_MINS,DE_Z, DE_E, DE_X, NEO_L1_R,
89 KC_TRNS, DE_J, DE_M, DE_COMM,DE_DOT, DE_SS, KC_RSFT, 89 KC_TRNS, DE_J, DE_M, DE_COMM,DE_DOT, DE_SS, KC_RSFT,
90 MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, 90 MO(NHL),KC_RGUI,MO(FMU),KC_LALT,KC_RCTL,
91 KC_DOWN, KC_RGHT, 91 KC_DOWN, KC_RGHT,
92 KC_MINS, 92 KC_MINS,
93 MEH_T(KC_NO),KC_ENT,KC_SPC 93 MEH_T(KC_NO),KC_ENT,KC_SPC
@@ -104,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
104 * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ 104 * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤
105 * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ 105 * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │
106 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ 106 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
107 * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ 107 * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ ALT │ CTL │
108 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ 108 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
109 * │ ← │ ↑ │ │ ↓ │ → │ 109 * │ ← │ ↑ │ │ ↓ │ → │
110 * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ 110 * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
@@ -127,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
127 KC_END, DE_K, DE_H, DE_G, DE_F, DE_Q, DE_SS, 127 KC_END, DE_K, DE_H, DE_G, DE_F, DE_Q, DE_SS,
128 DE_S, DE_N, DE_R, DE_T, DE_D, KC_NO, 128 DE_S, DE_N, DE_R, DE_T, DE_D, KC_NO,
129 KC_TRNS, DE_B, DE_M, KC_COMM,KC_DOT, DE_J, KC_RSFT, 129 KC_TRNS, DE_B, DE_M, KC_COMM,KC_DOT, DE_J, KC_RSFT,
130 MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, 130 MO(NHL),KC_RGUI,MO(FMU),KC_LALT,KC_RCTL,
131 KC_DOWN, KC_RGHT, 131 KC_DOWN, KC_RGHT,
132 KC_MINS, 132 KC_MINS,
133 MEH_T(KC_NO),KC_ENT,KC_SPC 133 MEH_T(KC_NO),KC_ENT,KC_SPC
@@ -135,13 +135,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
135 135
136/* Layer 3: F-keys, Mouse and Unicode 136/* Layer 3: F-keys, Mouse and Unicode
137 * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ 137 * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐
138 * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ 138 * │ │ F1 │ F2 │ F3 │ F4 │ F5 │ F6 │ │ F7 │ F8 │ F9 │ F10 │ F11 │ F12 │ │
139 * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ 139 * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤
140 * │ │ ┌ │ ┬ │ ┐ │ ─ │ │ │ │ │ │ │ F9 │ F10 │ F11 │ F12 │ │ 140 * │ │ ┌ │ ┬ │ ┐ │ ─ │ │ │ │ │ │ ↔ │ ← │ → │ ↑ │ ↓ │ │
141 * ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ 141 * ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤
142 * │ │ ├ │ ┼ │ ┤ │ ✓ │ ✕ ├─────┤ ├─────┤ │ F5 │ F6 │ F7 │ F8 │ │ 142 * │ │ ├ │ ┼ │ ┤ │ 〈 │ 〉 ├─────┤ ├─────┤ │ ✓ │ ✕ │ • │ ∶ │ │
143 * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ 143 * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤
144 * │ │ └ │ ┴ │ ┘ │ ↔ │ ⇔ │ │ │ │ │ F1 │ F2 │ F3 │ F4 │ │ 144 * │ │ └ │ ┴ │ ┘ │ │ │ │ │ │ ⇔ │ ⇐ │ ⇒ │ ⇑ │ ⇓ │ │
145 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ 145 * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
146 * │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │ 146 * │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │
147 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ 147 * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
@@ -154,23 +154,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
154 */ 154 */
155[FMU] = KEYMAP( 155[FMU] = KEYMAP(
156 // left hand 156 // left hand
157 KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 157 KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
158 KC_TRNS, UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502),KC_TRNS, 158 KC_TRNS, UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502),KC_TRNS,
159 KC_TRNS, UC(0x251C),UC(0x253C),UC(0x2524),UC(0x2713),UC(0x2715), 159 KC_TRNS, UC(0x251C),UC(0x253C),UC(0x2524),UC(0x3008),UC(0x3009),
160 KC_TRNS, UC(0x2514),UC(0x2534),UC(0x2518),UC(0x2194),UC(0x21D4),KC_TRNS, 160 KC_TRNS, UC(0x2514),UC(0x2534),UC(0x2518),KC_TRNS, KC_TRNS, KC_TRNS,
161 KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 161 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
162 KC_MS_L, KC_MS_U, 162 KC_MS_L, KC_MS_U,
163 KC_BTN1, 163 KC_BTN1,
164 KC_TRNS,KC_TRNS, KC_TRNS, 164 KC_TRNS, KC_TRNS, KC_TRNS,
165 // right hand 165 // right hand
166 KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 166 KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
167 KC_TRNS, KC_TRNS,KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, 167 KC_TRNS, UC(0x2194),UC(0x2190),UC(0x2192),UC(0x2191),UC(0x2193),KC_TRNS,
168 KC_TRNS,KC_F5, KC_F6, KC_F7, KC_F8, KC_TRNS, 168 KC_TRNS, UC(0x2713),UC(0x2715),UC(0x2022),UC(0x2236),KC_TRNS,
169 KC_TRNS, KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_TRNS, 169 KC_TRNS, UC(0x21D4),UC(0x21D0),UC(0x21D2),UC(0x21D1),UC(0x21D3),KC_TRNS,
170 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 170 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
171 KC_MS_D, KC_MS_R, 171 KC_MS_D, KC_MS_R,
172 KC_BTN2, 172 KC_BTN2,
173 KC_TRNS, KC_TRNS,KC_TRNS 173 KC_TRNS, KC_TRNS, KC_TRNS
174 ), 174 ),
175 175
176/* Layer 4: Neo’s software layer 4 rebuilt in Hardware 176/* Layer 4: Neo’s software layer 4 rebuilt in Hardware
@@ -294,11 +294,10 @@ void unicode_input_start (void) {
294// Override method to use NEO_A instead of KC_A 294// Override method to use NEO_A instead of KC_A
295uint16_t hex_to_keycode(uint8_t hex) 295uint16_t hex_to_keycode(uint8_t hex)
296{ 296{
297 if (hex == 0x0) { 297 if(hex == 0x0) {
298 return KC_0; 298 return KC_0;
299 } else if (hex < 0xA) { 299 }
300 return KC_1 + (hex - 0x1); 300 else if(hex >= 0xA) {
301 } else {
302 switch(hex) { 301 switch(hex) {
303 case 0xA: 302 case 0xA:
304 return NEO_A; 303 return NEO_A;
@@ -316,4 +315,6 @@ uint16_t hex_to_keycode(uint8_t hex)
316 return KC_NO; 315 return KC_NO;
317 } 316 }
318 } 317 }
318
319 return KC_1 + (hex - 0x1);
319} 320}
diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/readme.md b/keyboards/ergodox/keymaps/coderkun_neo2/readme.md
index 2a4d3a535..0c9290bf0 100644
--- a/keyboards/ergodox/keymaps/coderkun_neo2/readme.md
+++ b/keyboards/ergodox/keymaps/coderkun_neo2/readme.md
@@ -4,10 +4,18 @@ The idea of this layout is to use it for [Neo2](http://www.neo-layout.org) but a
4 4
5The main goal of the default layer is to provide a complete symmetric layout with each modifier equally placed for both hands (mirror, of course). 5The main goal of the default layer is to provide a complete symmetric layout with each modifier equally placed for both hands (mirror, of course).
6 6
7It also features a layer for additional keys like F-keys (F1 – F12), some mouse keys and (hopefully in the near future) some useful Unicode symbols. 7It also features a layer for additional keys like F-keys (F1 – F12), some mouse keys and some useful Unicode symbols.
8 8
9 9
10## Layers 10## Build
11
12 ```
13 make clean
14 make coderkun_neo2
15 ```
16
17
18## Keymap
11 19
120. Default layer for Neo2 200. Default layer for Neo2
131. Poor man’s QWERTZ 211. Poor man’s QWERTZ
@@ -16,16 +24,106 @@ It also features a layer for additional keys like F-keys (F1 – F12), some mous
164. Neo’s software layers 4 rebuilt in hardware 244. Neo’s software layers 4 rebuilt in hardware
17 25
18 26
19## Build 27### Layer 0: Default layer for Neo2
20 28
211. Enable Unicode in Makefile 29 ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐
30 │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │
31 ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤
32 │ Y │ X │ V │ L │ C │ W │ HOM │ │ END │ K │ H │ G │ F │ Q │ ß │
33 ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤
34 │ Mod3 │ U │ I │ A │ E │ O ├─────┤ ├─────┤ S │ N │ R │ T │ D │ Mod3 │
35 ├───────┼─────┼─────┼─────╄─────╃─────┤ TL2 │ │ TL3 ├─────╄─────╃─────┼─────┼─────┼───────┤
36 │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │
37 └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
38 │ CTL │ ALT │ MO1 │ Win │ Mod4│ │ Mod4│ Win │ MO1 │ Alt │ CTL │
39 └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
40 │ ← │ ↑ │ │ ↓ │ → │
41 ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
42 │ │ │ ─ │ │ ─ │ │ │
43 │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │
44 │ │ │ HYP │ │ MEH │ │ │
45 └─────┴─────┴─────┘ └─────┴─────┴─────┘
22 46
23 ```
24 UNICODE_ENABLE = yes
25 ```
262. Build as usual
27 47
28 ``` 48### Layer 1: Poor man’s QWERTZ
29 make clean 49
30 make KEYMAP=coderkun_neo2 50 ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐
31 ``` 51 │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │
52 ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤
53 │ C │ P │ T │ F │ K │ L │ HOM │ │ END │ B │ A │ S │ G │ V │ Y │
54 ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤
55 │ Mod3 │ D │ H │ Ö │ O │ I ├─────┤ ├─────┤ U │ - │ Z │ E │ X │ Mod3 │
56 ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤
57 │ LSHFT │ Ä │ Q │ R │ W │ N │ │ │ │ J │ M │ , │ . │ ẞ │ Shift │
58 └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
59 │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │
60 └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
61 │ ← │ ↑ │ │ ↓ │ → │
62 ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
63 │ │ │ ─ │ │ ─ │ │ │
64 │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │
65 │ │ │ HYP │ │ MEH │ │ │
66 └─────┴─────┴─────┘ └─────┴─────┴─────┘
67
68
69### Layer 2: Poor man’s Neo
70
71 ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐
72 │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │
73 ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤
74 │ Y │ X │ V │ L │ C │ W │ HOM │ │ END │ K │ H │ G │ F │ Q │ ß │
75 ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤
76 │ Mod3 │ U │ I │ A │ E │ O ├─────┤ ├─────┤ S │ N │ R │ T │ D │ Mod3 │
77 ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤
78 │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │
79 └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
80 │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │
81 └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
82 │ ← │ ↑ │ │ ↓ │ → │
83 ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
84 │ │ │ ─ │ │ ─ │ │ │
85 │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │
86 │ │ │ HYP │ │ MEH │ │ │
87 └─────┴─────┴─────┘ └─────┴─────┴─────┘
88
89
90### Layer 3: F-keys, mouse keys und Unicode symbols
91
92 ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐
93 │ │ F1 │ F2 │ F3 │ F4 │ F5 │ F6 │ │ F7 │ F8 │ F9 │ F10 │ F11 │ F12 │ │
94 ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤
95 │ │ ┌ │ ┬ │ ┐ │ ─ │ │ │ │ │ │ ↔ │ ← │ → │ ↑ │ ↓ │ │
96 ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤
97 │ │ ├ │ ┼ │ ┤ │ 〈 │ 〉 ├─────┤ ├─────┤ │ ✓ │ ✕ │ • │ ∶ │ │
98 ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤
99 │ │ └ │ ┴ │ ┘ │ │ │ │ │ │ ⇔ │ ⇐ │ ⇒ │ ⇑ │ ⇓ │ │
100 └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
101 │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │
102 └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
103 │ Ms← │ Ms↑ │ │ Ms↓ │ Ms→ │
104 ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
105 │ │ │ MLC │ │ MRC │ │ │
106 │ │ ├─────┤ ├─────┤ │ │
107 │ │ │ │ │ │ │ │
108 └─────┴─────┴─────┘ └─────┴─────┴─────┘
109
110
111### Layer 4: Neo’s software layers 4 rebuilt in hardware
112
113 ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐
114 │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
115 ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤
116 │ │ PgUp│ BSpc│ ↑ │ Del │ PgDn│ │ │ │ │ 7 │ 8 │ 9 │ + │ − │
117 ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤
118 │ │ Home│ ← │ ↓ │ → │ End ├─────┤ ├─────┤ │ 4 │ 5 │ 6 │ , │ . │
119 ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤
120 │ │ Esc │ Tab │ Ins │ Ret │ Undo│ │ │ │ │ 1 │ 2 │ 3 │ │ │
121 └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘
122 │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │
123 └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘
124 │ │ │ │ │ │
125 ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐
126 │ │ │ │ │ │ │ │
127 │ │ ├─────┤ ├─────┤ │ │
128 │ │ │ │ │ │ │ │
129 └─────┴─────┴─────┘ └─────┴─────┴─────┘
diff --git a/keyboards/handwired/promethium/color.h b/keyboards/handwired/promethium/color.h
new file mode 100644
index 000000000..077242d5f
--- /dev/null
+++ b/keyboards/handwired/promethium/color.h
@@ -0,0 +1,15 @@
1#define COLOR_BLANK 0, 0, 0
2
3#define COLOR_BLACK 0, 0, 0
4#define COLOR_WHITE 15,15,15
5#define COLOR_GRAY 7, 7, 7
6
7#define COLOR_RED 15, 0, 0
8#define COLOR_GREEN 0,15, 0
9#define COLOR_BLUE 0, 0,15
10
11#define COLOR_YELLOW 15,15, 0
12#define COLOR_MAGENTA 15, 0,15
13#define COLOR_CYAN 0,15,15
14
15#define COLOR_ORANGE 15, 5, 0 \ No newline at end of file
diff --git a/keyboards/handwired/promethium/config.h b/keyboards/handwired/promethium/config.h
index a13406b0d..efb9ebdd7 100644
--- a/keyboards/handwired/promethium/config.h
+++ b/keyboards/handwired/promethium/config.h
@@ -153,7 +153,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
153//#define NO_ACTION_MACRO 153//#define NO_ACTION_MACRO
154//#define NO_ACTION_FUNCTION 154//#define NO_ACTION_FUNCTION
155 155
156#define PS2_INIT_DELAY 3000 156#define PS2_MOUSE_INIT_DELAY 2000
157#define BATTERY_PIN 9 157#define BATTERY_PIN 9
158#define BATTERY_POLL 30000 158#define BATTERY_POLL 30000
159#define MAX_VOLTAGE 4.2 159#define MAX_VOLTAGE 4.2
@@ -205,7 +205,7 @@ enum led_sequence {
205 LED_RSFT, 205 LED_RSFT,
206 LED_RCTL, 206 LED_RCTL,
207 207
208 LED_RGUI, 208 LED_RALT,
209 LED_SLSH, 209 LED_SLSH,
210 LED_SCLN, 210 LED_SCLN,
211 LED_P, 211 LED_P,
@@ -213,9 +213,9 @@ enum led_sequence {
213 LED_O, 213 LED_O,
214 LED_L, 214 LED_L,
215 LED_DOT, 215 LED_DOT,
216 LED_RALT, 216 LED_RGUI,
217 217
218 LED_EMOJI, 218 LED_GREEK,
219 LED_COMM, 219 LED_COMM,
220 LED_K, 220 LED_K,
221 LED_I, 221 LED_I,
@@ -234,35 +234,35 @@ enum led_sequence {
234 LED_TRACKPOINT2, 234 LED_TRACKPOINT2,
235 LED_TRACKPOINT1, 235 LED_TRACKPOINT1,
236 236
237 LED_LSPC,
238 LED_B,
239 LED_G,
240 LED_T, 237 LED_T,
238 LED_G,
239 LED_B,
240 LED_LSPC,
241 241
242 LED_R,
243 LED_F,
244 LED_V,
245 LED_NUM, 242 LED_NUM,
243 LED_V,
244 LED_F,
245 LED_R,
246 246
247 LED_PUNC,
248 LED_C,
249 LED_D,
250 LED_E, 247 LED_E,
248 LED_D,
249 LED_C,
250 LED_EMPTY,
251 251
252 LED_W, 252 LED_LGUI,
253 LED_S,
254 LED_X, 253 LED_X,
255 LED_LALT, 254 LED_S,
255 LED_W,
256 256
257 LED_LGUI,
258 LED_Z,
259 LED_A,
260 LED_Q, 257 LED_Q,
258 LED_A,
259 LED_Z,
260 LED_LALT,
261 261
262 LED_TAB,
263 LED_ESC,
264 LED_LSFT,
265 LED_LCTL, 262 LED_LCTL,
263 LED_LSFT,
264 LED_ESC,
265 LED_TAB,
266 266
267 LED_TOTAL 267 LED_TOTAL
268}; 268};
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/config.h b/keyboards/handwired/promethium/keymaps/priyadi/config.h
index 3f5dd5817..fa86e2247 100644
--- a/keyboards/handwired/promethium/keymaps/priyadi/config.h
+++ b/keyboards/handwired/promethium/keymaps/priyadi/config.h
@@ -14,6 +14,7 @@
14#define PREVENT_STUCK_MODIFIERS 14#define PREVENT_STUCK_MODIFIERS
15 15
16#define RGBSPS_ENABLE 16#define RGBSPS_ENABLE
17#define RGBSPS_DEMO_ENABLE
17 18
18#define UNICODE_TYPE_DELAY 0 19#define UNICODE_TYPE_DELAY 0
19 20
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c
index efa5d9756..d562c7bbf 100644
--- a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c
+++ b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c
@@ -31,6 +31,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
31#include "quantum.h" 31#include "quantum.h"
32#ifdef RGBSPS_ENABLE 32#ifdef RGBSPS_ENABLE
33#include "rgbsps.h" 33#include "rgbsps.h"
34#include "rgbtheme.h"
34#endif 35#endif
35#ifdef PS2_MOUSE_ENABLE 36#ifdef PS2_MOUSE_ENABLE
36#include "ps2_mouse.h" 37#include "ps2_mouse.h"
@@ -42,13 +43,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
42#undef FAUXCLICKY_OFF 43#undef FAUXCLICKY_OFF
43#define FAUXCLICKY_OFF do { \ 44#define FAUXCLICKY_OFF do { \
44 fauxclicky_enabled = false; \ 45 fauxclicky_enabled = false; \
45 rgbsps_set(LED_AUDIO, 0, 0, 0); \ 46 rgbsps_set(LED_AUDIO, COLOR_BLANK); \
46 fauxclicky_stop(); \ 47 fauxclicky_stop(); \
47} while (0) 48} while (0)
48#undef FAUXCLICKY_ON 49#undef FAUXCLICKY_ON
49#define FAUXCLICKY_ON do { \ 50#define FAUXCLICKY_ON do { \
50 fauxclicky_enabled = true; \ 51 fauxclicky_enabled = true; \
51 rgbsps_set(LED_AUDIO, 8, 0, 8); \ 52 rgbsps_set(LED_AUDIO, THEME_COLOR_AUDIO); \
52} while (0) 53} while (0)
53#endif 54#endif
54#endif 55#endif
@@ -144,6 +145,7 @@ enum planck_keycodes {
144#ifndef MODULE_ADAFRUIT_BLE 145#ifndef MODULE_ADAFRUIT_BLE
145 OUT_BT, 146 OUT_BT,
146#endif 147#endif
148 RGBDEMO,
147 KEYCODE_END 149 KEYCODE_END
148}; 150};
149 151
@@ -434,10 +436,10 @@ const uint8_t PROGMEM LED_MODS[] = {
434}; 436};
435 437
436const uint8_t PROGMEM LED_FN[] = { 438const uint8_t PROGMEM LED_FN[] = {
437 LED_PUNC, 439 LED_EMPTY,
438 LED_NUM, 440 LED_NUM,
439 LED_FUN, 441 LED_FUN,
440 LED_EMOJI 442 LED_GREEK
441}; 443};
442 444
443const uint8_t PROGMEM LED_INDICATORS[] = { 445const uint8_t PROGMEM LED_INDICATORS[] = {
@@ -468,16 +470,37 @@ const uint8_t PROGMEM LED_TRACKPOINT[] = {
468 470
469void led_turnoff_keys(void) { 471void led_turnoff_keys(void) {
470 for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) { 472 for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) {
471 rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), 0, 0, 0); 473 rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), COLOR_BLACK);
472 } 474 }
473 for(uint8_t i = 0; i < COUNT(LED_MODS); i++) { 475 for(uint8_t i = 0; i < COUNT(LED_MODS); i++) {
474 rgbsps_set(pgm_read_byte(&LED_MODS[i]), 0, 0, 0); 476 rgbsps_set(pgm_read_byte(&LED_MODS[i]), COLOR_BLACK);
475 } 477 }
476 for(uint8_t i = 0; i < COUNT(LED_FN); i++) { 478 for(uint8_t i = 0; i < COUNT(LED_FN); i++) {
477 rgbsps_set(pgm_read_byte(&LED_FN[i]), 0, 0, 0); 479 rgbsps_set(pgm_read_byte(&LED_FN[i]), COLOR_BLACK);
478 } 480 }
479} 481}
480 482
483#ifdef RGBSPS_DEMO_ENABLE
484void led_demo(void) {
485 rgbsps_set(LED_IND_LINUX, THEME_COLOR_LINUX);
486 rgbsps_set(LED_IND_APPLE, THEME_COLOR_APPLE);
487 rgbsps_set(LED_IND_WINDOWS, THEME_COLOR_WINDOWS);
488 rgbsps_set(LED_IND_QWERTY, THEME_COLOR_QWERTY);
489 rgbsps_set(LED_IND_ALT, THEME_COLOR_ALT);
490 rgbsps_set(LED_IND_AUDIO, THEME_COLOR_AUDIO);
491 rgbsps_set(LED_IND_BLUETOOTH, THEME_COLOR_BLUETOOTH);
492 rgbsps_set(LED_IND_USB, THEME_COLOR_USB);
493 rgbsps_set(LED_IND_CAPSLOCK, THEME_COLOR_CAPSLOCK);
494 rgbsps_set(LED_IND_GUI, THEME_COLOR_GUI);
495 rgbsps_set(LED_IND_FUN, THEME_COLOR_FUN);
496 rgbsps_set(LED_IND_NUM, THEME_COLOR_NUM);
497 rgbsps_set(LED_IND_PUNC, THEME_COLOR_PUNC);
498 rgbsps_set(LED_IND_GREEK, THEME_COLOR_GREEK);
499 rgbsps_set(LED_IND_EMOJI, THEME_COLOR_EMOJI);
500 rgbsps_send();
501}
502#endif
503
481void led_reset(void) { 504void led_reset(void) {
482 switch (glow_mode) { 505 switch (glow_mode) {
483 case GLOW_NONE: 506 case GLOW_NONE:
@@ -486,26 +509,26 @@ void led_reset(void) {
486 case GLOW_MIN: 509 case GLOW_MIN:
487 led_turnoff_keys(); 510 led_turnoff_keys();
488 for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) { 511 for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) {
489 rgbsps_set(pgm_read_byte(&LED_HOMING[i]), 8, 8, 8); 512 rgbsps_set(pgm_read_byte(&LED_HOMING[i]), THEME_COLOR_GLOW1_HOME);
490 } 513 }
491 rgbsps_set(LED_F, 15, 0, 0); 514 rgbsps_set(LED_F, THEME_COLOR_GLOW1_HOMING);
492 rgbsps_set(LED_J, 15, 0, 0); 515 rgbsps_set(LED_J, THEME_COLOR_GLOW1_HOMING);
493 break; 516 break;
494 case GLOW_FULL: 517 case GLOW_FULL:
495 for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) { 518 for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) {
496 rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), 8, 8, 8); 519 rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), THEME_COLOR_GLOW2_ALPHA);
497 } 520 }
498 for(uint8_t i = 0; i < COUNT(LED_MODS); i++) { 521 for(uint8_t i = 0; i < COUNT(LED_MODS); i++) {
499 rgbsps_set(pgm_read_byte(&LED_MODS[i]), 0, 15, 0); 522 rgbsps_set(pgm_read_byte(&LED_MODS[i]), THEME_COLOR_GLOW2_MODS);
500 } 523 }
501 for(uint8_t i = 0; i < COUNT(LED_FN); i++) { 524 for(uint8_t i = 0; i < COUNT(LED_FN); i++) {
502 rgbsps_set(pgm_read_byte(&LED_FN[i]), 0, 0, 15); 525 rgbsps_set(pgm_read_byte(&LED_FN[i]), THEME_COLOR_GLOW2_FN);
503 } 526 }
504 for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) { 527 for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) {
505 rgbsps_set(pgm_read_byte(&LED_HOMING[i]), 15, 0, 0); 528 rgbsps_set(pgm_read_byte(&LED_HOMING[i]), THEME_COLOR_GLOW2_HOME);
506 } 529 }
507 rgbsps_set(LED_F, 15, 15, 0); 530 rgbsps_set(LED_F, THEME_COLOR_GLOW2_HOMING);
508 rgbsps_set(LED_J, 15, 15, 0); 531 rgbsps_set(LED_J, THEME_COLOR_GLOW2_HOMING);
509 break; 532 break;
510 } 533 }
511} 534}
@@ -513,11 +536,11 @@ void led_reset(void) {
513void led_set_default_layer_indicator(void) { 536void led_set_default_layer_indicator(void) {
514 uint8_t default_layer = biton32(default_layer_state); 537 uint8_t default_layer = biton32(default_layer_state);
515 if (default_layer == _QWERTY) { 538 if (default_layer == _QWERTY) {
516 rgbsps_set(LED_IND_QWERTY, 15, 10, 0); 539 rgbsps_set(LED_IND_QWERTY, THEME_COLOR_QWERTY);
517 rgbsps_set(LED_IND_ALT, 0, 0, 0); 540 rgbsps_set(LED_IND_ALT, COLOR_BLANK);
518 } else { 541 } else {
519 rgbsps_set(LED_IND_QWERTY, 0, 0, 0); 542 rgbsps_set(LED_IND_QWERTY, COLOR_BLANK);
520 rgbsps_set(LED_IND_ALT, 15, 10, 0); 543 rgbsps_set(LED_IND_ALT, THEME_COLOR_ALT);
521 } 544 }
522 rgbsps_send(); 545 rgbsps_send();
523 return; 546 return;
@@ -528,12 +551,12 @@ void led_set_layer_indicator(void) {
528 551
529 led_reset(); 552 led_reset();
530 553
531 rgbsps_set(LED_IND_GUI, 0, 0, 0); 554 rgbsps_set(LED_IND_GUI, COLOR_BLANK);
532 rgbsps_set(LED_IND_FUN, 0, 0, 0); 555 rgbsps_set(LED_IND_FUN, COLOR_BLANK);
533 rgbsps_set(LED_IND_NUM, 0, 0, 0); 556 rgbsps_set(LED_IND_NUM, COLOR_BLANK);
534 rgbsps_set(LED_IND_PUNC, 0, 0, 0); 557 rgbsps_set(LED_IND_PUNC, COLOR_BLANK);
535 rgbsps_set(LED_IND_GREEK, 0, 0, 0); 558 rgbsps_set(LED_IND_GREEK, COLOR_BLANK);
536 rgbsps_set(LED_IND_EMOJI, 0, 0, 0); 559 rgbsps_set(LED_IND_EMOJI, COLOR_BLANK);
537 560
538 uint8_t layer = biton32(layer_state); 561 uint8_t layer = biton32(layer_state);
539 if (oldlayer == layer) { 562 if (oldlayer == layer) {
@@ -549,71 +572,71 @@ void led_set_layer_indicator(void) {
549 572
550 switch(layer) { 573 switch(layer) {
551 case _GUI: 574 case _GUI:
552 rgbsps_set(LED_IND_GUI, 15, 0, 15); 575 rgbsps_set(LED_IND_GUI, THEME_COLOR_GUI);
553 break; 576 break;
554 case _FUN: 577 case _FUN:
555 rgbsps_set(LED_IND_FUN, 15, 0, 0); 578 rgbsps_set(LED_IND_FUN, THEME_COLOR_FUN);
556 break; 579 break;
557 case _NUM: 580 case _NUM:
558 rgbsps_set(LED_IND_NUM, 0, 0, 15); 581 rgbsps_set(LED_IND_NUM, THEME_COLOR_NUM);
559 break; 582 break;
560 case _PUNC: 583 case _PUNC:
561 rgbsps_set(LED_IND_PUNC, 0, 15, 0); 584 rgbsps_set(LED_IND_PUNC, THEME_COLOR_PUNC);
562 break; 585 break;
563 case _GREEKL: 586 case _GREEKL:
564 case _GREEKU: 587 case _GREEKU:
565 rgbsps_set(LED_IND_GREEK, 0, 15, 15); 588 rgbsps_set(LED_IND_GREEK, THEME_COLOR_GREEK);
566 break; 589 break;
567 case _EMOJI: 590 case _EMOJI:
568 rgbsps_set(LED_IND_EMOJI, 15, 15, 0); 591 rgbsps_set(LED_IND_EMOJI, THEME_COLOR_EMOJI);
569 break; 592 break;
570 default: 593 default:
571 rgbsps_set(LED_IND_GUI, 3, 3, 3); 594 rgbsps_set(LED_IND_GUI, THEME_COLOR_OTHERLAYER);
572 rgbsps_set(LED_IND_FUN, 3, 3, 3); 595 rgbsps_set(LED_IND_FUN, THEME_COLOR_OTHERLAYER);
573 rgbsps_set(LED_IND_NUM, 3, 3, 3); 596 rgbsps_set(LED_IND_NUM, THEME_COLOR_OTHERLAYER);
574 rgbsps_set(LED_IND_PUNC, 3, 3, 3); 597 rgbsps_set(LED_IND_PUNC, THEME_COLOR_OTHERLAYER);
575 rgbsps_set(LED_IND_GREEK, 3, 3, 3); 598 rgbsps_set(LED_IND_GREEK, THEME_COLOR_OTHERLAYER);
576 rgbsps_set(LED_IND_EMOJI, 3, 3, 3); 599 rgbsps_set(LED_IND_EMOJI, THEME_COLOR_OTHERLAYER);
577 } 600 }
578 601
579 rgbsps_send(); 602 rgbsps_send();
580} 603}
581 604
582void led_set_unicode_input_mode(void) { 605void led_set_unicode_input_mode(void) {
583 rgbsps_set(LED_IND_LINUX, 0, 0, 0); 606 rgbsps_set(LED_IND_LINUX, COLOR_BLANK);
584 rgbsps_set(LED_IND_APPLE, 0, 0, 0); 607 rgbsps_set(LED_IND_APPLE, COLOR_BLANK);
585 rgbsps_set(LED_IND_WINDOWS, 0, 0, 0); 608 rgbsps_set(LED_IND_WINDOWS, COLOR_BLANK);
586 609
587 switch (get_unicode_input_mode()) { 610 switch (get_unicode_input_mode()) {
588 case UC_LNX: 611 case UC_LNX:
589 rgbsps_set(LED_IND_LINUX, 15, 15, 15); 612 rgbsps_set(LED_IND_LINUX, THEME_COLOR_LINUX);
590 break; 613 break;
591 case UC_OSX: 614 case UC_OSX:
592 rgbsps_set(LED_IND_APPLE, 15, 15, 15); 615 rgbsps_set(LED_IND_APPLE, THEME_COLOR_APPLE);
593 break; 616 break;
594 case UC_WIN: 617 case UC_WIN:
595 case UC_WINC: 618 case UC_WINC:
596 rgbsps_set(LED_IND_WINDOWS, 15, 15, 15); 619 rgbsps_set(LED_IND_WINDOWS, THEME_COLOR_WINDOWS);
597 break; 620 break;
598 } 621 }
599 rgbsps_send(); 622 rgbsps_send();
600} 623}
601 624
602void led_set_output_ble(void) { 625void led_set_output_ble(void) {
603 rgbsps_set(LED_IND_BLUETOOTH, 0, 0, 15); 626 rgbsps_set(LED_IND_BLUETOOTH, THEME_COLOR_BLUETOOTH);
604 rgbsps_set(LED_IND_USB, 0, 0, 0); 627 rgbsps_set(LED_IND_USB, COLOR_BLANK);
605 rgbsps_send(); 628 rgbsps_send();
606} 629}
607 630
608void led_set_output_usb(void) { 631void led_set_output_usb(void) {
609 rgbsps_set(LED_IND_BLUETOOTH, 0, 0, 0); 632 rgbsps_set(LED_IND_BLUETOOTH, COLOR_BLANK);
610 rgbsps_set(LED_IND_USB, 15, 15, 15); 633 rgbsps_set(LED_IND_USB, THEME_COLOR_USB);
611 rgbsps_send(); 634 rgbsps_send();
612} 635}
613 636
614void led_set_output_none(void) { 637void led_set_output_none(void) {
615 rgbsps_set(LED_IND_BLUETOOTH, 0, 0, 0); 638 rgbsps_set(LED_IND_BLUETOOTH, COLOR_BLANK);
616 rgbsps_set(LED_IND_USB, 0, 0, 0); 639 rgbsps_set(LED_IND_USB, COLOR_BLANK);
617 rgbsps_send(); 640 rgbsps_send();
618} 641}
619 642
@@ -622,9 +645,9 @@ void led_init(void) {
622 rgbsps_turnoff(); 645 rgbsps_turnoff();
623 646
624 // set trackpoint color 647 // set trackpoint color
625 rgbsps_set(LED_TRACKPOINT1, 15, 0, 0); 648 rgbsps_set(LED_TRACKPOINT1, THEME_COLOR_TP1);
626 rgbsps_set(LED_TRACKPOINT2, 0, 0, 15); 649 rgbsps_set(LED_TRACKPOINT2, THEME_COLOR_TP2);
627 rgbsps_set(LED_TRACKPOINT3, 15, 0, 0); 650 rgbsps_set(LED_TRACKPOINT3, THEME_COLOR_TP3);
628 651
629 // unicode input mode 652 // unicode input mode
630 led_set_unicode_input_mode(); 653 led_set_unicode_input_mode();
@@ -632,6 +655,17 @@ void led_init(void) {
632 // layer indicator 655 // layer indicator
633 led_set_layer_indicator(); 656 led_set_layer_indicator();
634 led_set_default_layer_indicator(); 657 led_set_default_layer_indicator();
658
659 // clicky
660#ifdef FAUXCLICKY_ENABLE
661 if (fauxclicky_enabled) {
662 rgbsps_set(LED_IND_AUDIO, THEME_COLOR_AUDIO);
663 } else {
664 rgbsps_set(LED_IND_AUDIO, COLOR_BLANK);
665 }
666#endif
667
668 rgbsps_send();
635} 669}
636 670
637 671
@@ -911,7 +945,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
911 * `-----------------------------------------------------------------------------------' 945 * `-----------------------------------------------------------------------------------'
912 */ 946 */
913[_SYS] = KEYMAP( 947[_SYS] = KEYMAP(
914 DEBUG, QWERTY, WIN, XXXXXXX, RESET, XXXXXXX, XXXXXXX, OUT_USB, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, 948 DEBUG, QWERTY, WIN, XXXXXXX, RESET, XXXXXXX, XXXXXXX, OUT_USB, XXXXXXX, XXXXXXX, XXXXXXX, RGBDEMO,
915 XXXXXXX, FC_TOG, XXXXXXX, DVORAK, XXXXXXX, GLOW, XXXXXXX, XXXXXXX, WORKMAN, LINUX, XXXXXXX, XXXXXXX, 949 XXXXXXX, FC_TOG, XXXXXXX, DVORAK, XXXXXXX, GLOW, XXXXXXX, XXXXXXX, WORKMAN, LINUX, XXXXXXX, XXXXXXX,
916 XXXXXXX, XXXXXXX, XXXXXXX, COLEMAK, XXXXXXX, OUT_BT, NORMAN, OSX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, 950 XXXXXXX, XXXXXXX, XXXXXXX, COLEMAK, XXXXXXX, OUT_BT, NORMAN, OSX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
917 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, 951 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
@@ -1211,15 +1245,22 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
1211 case FC_TOG: 1245 case FC_TOG:
1212#ifdef RGBSPS_ENABLE 1246#ifdef RGBSPS_ENABLE
1213 if (fauxclicky_enabled) { 1247 if (fauxclicky_enabled) {
1214 rgbsps_set(LED_IND_AUDIO, 0, 0, 0); 1248 rgbsps_set(LED_IND_AUDIO, THEME_COLOR_AUDIO);
1215 } else { 1249 } else {
1216 rgbsps_set(LED_IND_AUDIO, 5, 11, 13); 1250 rgbsps_set(LED_IND_AUDIO, COLOR_BLANK);
1217 } 1251 }
1218 rgbsps_send(); 1252 rgbsps_send();
1219#endif 1253#endif
1220 return true; 1254 return true;
1221 break; 1255 break;
1222#endif 1256#endif
1257
1258#ifdef RGBSPS_DEMO_ENABLE
1259 case RGBDEMO:
1260 led_demo();
1261 return false;
1262 break;
1263#endif
1223 } 1264 }
1224 return true; 1265 return true;
1225} 1266}
@@ -1280,9 +1321,9 @@ void turn_off_capslock() {
1280 bool new_capslock = usb_led & (1<<USB_LED_CAPS_LOCK); 1321 bool new_capslock = usb_led & (1<<USB_LED_CAPS_LOCK);
1281 if (new_capslock ^ capslock) { // capslock state is different 1322 if (new_capslock ^ capslock) { // capslock state is different
1282 if ((capslock = new_capslock)) { 1323 if ((capslock = new_capslock)) {
1283 rgbsps_set(LED_IND_CAPSLOCK, 15, 0, 0); 1324 rgbsps_set(LED_IND_CAPSLOCK, THEME_COLOR_CAPSLOCK);
1284 } else { 1325 } else {
1285 rgbsps_set(LED_IND_CAPSLOCK, 0, 0, 0); 1326 rgbsps_set(LED_IND_CAPSLOCK, COLOR_BLANK);
1286 } 1327 }
1287 rgbsps_send(); 1328 rgbsps_send();
1288 } 1329 }
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h
new file mode 100644
index 000000000..e60971035
--- /dev/null
+++ b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h
@@ -0,0 +1 @@
#include "rgbtheme_default.h"
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h
new file mode 100644
index 000000000..8e0a98b09
--- /dev/null
+++ b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h
@@ -0,0 +1,36 @@
1#include "color.h"
2
3#define THEME_COLOR_LINUX COLOR_WHITE
4#define THEME_COLOR_APPLE COLOR_WHITE
5#define THEME_COLOR_WINDOWS COLOR_WHITE
6
7#define THEME_COLOR_QWERTY COLOR_RED
8#define THEME_COLOR_ALT COLOR_RED
9
10#define THEME_COLOR_AUDIO COLOR_GREEN
11
12#define THEME_COLOR_BLUETOOTH 7,7,15
13#define THEME_COLOR_USB COLOR_WHITE
14
15#define THEME_COLOR_CAPSLOCK COLOR_RED
16
17#define THEME_COLOR_GUI COLOR_MAGENTA
18#define THEME_COLOR_FUN COLOR_RED
19#define THEME_COLOR_NUM 7,7,15
20#define THEME_COLOR_PUNC COLOR_GREEN
21#define THEME_COLOR_GREEK COLOR_CYAN
22#define THEME_COLOR_EMOJI COLOR_YELLOW
23#define THEME_COLOR_OTHERLAYER COLOR_GRAY
24
25#define THEME_COLOR_GLOW1_HOME COLOR_ORANGE
26#define THEME_COLOR_GLOW1_HOMING COLOR_RED
27
28#define THEME_COLOR_GLOW2_ALPHA COLOR_ORANGE
29#define THEME_COLOR_GLOW2_MODS COLOR_ORANGE
30#define THEME_COLOR_GLOW2_FN COLOR_ORANGE
31#define THEME_COLOR_GLOW2_HOME COLOR_ORANGE
32#define THEME_COLOR_GLOW2_HOMING COLOR_RED
33
34#define THEME_COLOR_TP1 COLOR_ORANGE
35#define THEME_COLOR_TP2 COLOR_RED
36#define THEME_COLOR_TP3 COLOR_ORANGE \ No newline at end of file
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h
new file mode 100644
index 000000000..4c3fb1369
--- /dev/null
+++ b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h
@@ -0,0 +1,36 @@
1#include "color.h"
2
3#define THEME_COLOR_LINUX COLOR_WHITE
4#define THEME_COLOR_APPLE COLOR_WHITE
5#define THEME_COLOR_WINDOWS COLOR_WHITE
6
7#define THEME_COLOR_QWERTY COLOR_RED
8#define THEME_COLOR_ALT COLOR_RED
9
10#define THEME_COLOR_AUDIO COLOR_GREEN
11
12#define THEME_COLOR_BLUETOOTH COLOR_BLUE
13#define THEME_COLOR_USB COLOR_WHITE
14
15#define THEME_COLOR_CAPSLOCK COLOR_RED
16
17#define THEME_COLOR_GUI COLOR_MAGENTA
18#define THEME_COLOR_FUN COLOR_RED
19#define THEME_COLOR_NUM COLOR_BLUE
20#define THEME_COLOR_PUNC COLOR_GREEN
21#define THEME_COLOR_GREEK COLOR_CYAN
22#define THEME_COLOR_EMOJI COLOR_YELLOW
23#define THEME_COLOR_OTHERLAYER COLOR_GRAY
24
25#define THEME_COLOR_GLOW1_HOME COLOR_GRAY
26#define THEME_COLOR_GLOW1_HOMING COLOR_RED
27
28#define THEME_COLOR_GLOW2_ALPHA COLOR_GRAY
29#define THEME_COLOR_GLOW2_MODS COLOR_GREEN
30#define THEME_COLOR_GLOW2_FN COLOR_BLUE
31#define THEME_COLOR_GLOW2_HOME COLOR_RED
32#define THEME_COLOR_GLOW2_HOMING COLOR_YELLOW
33
34#define THEME_COLOR_TP1 COLOR_RED
35#define THEME_COLOR_TP2 COLOR_BLUE
36#define THEME_COLOR_TP3 COLOR_RED \ No newline at end of file
diff --git a/keyboards/handwired/promethium/matrix.c b/keyboards/handwired/promethium/matrix.c
index 2b7ce2bf5..72dbe8d4d 100644
--- a/keyboards/handwired/promethium/matrix.c
+++ b/keyboards/handwired/promethium/matrix.c
@@ -133,8 +133,8 @@ void matrix_init(void) {
133 matrix_init_quantum(); 133 matrix_init_quantum();
134} 134}
135 135
136uint8_t matrix_scan(void 136uint8_t matrix_scan(void)
137){ 137{
138 // Set row, read cols 138 // Set row, read cols
139 for (uint8_t current_row = 0; current_row < MATRIX_ROWS; current_row++) { 139 for (uint8_t current_row = 0; current_row < MATRIX_ROWS; current_row++) {
140# if (DEBOUNCING_DELAY > 0) 140# if (DEBOUNCING_DELAY > 0)
diff --git a/keyboards/handwired/promethium/promethium.c b/keyboards/handwired/promethium/promethium.c
index 8b1a0c71f..3cc0f5a8c 100644
--- a/keyboards/handwired/promethium/promethium.c
+++ b/keyboards/handwired/promethium/promethium.c
@@ -4,9 +4,9 @@
4#include "matrix.h" 4#include "matrix.h"
5#include "musical_notes.h" 5#include "musical_notes.h"
6 6
7float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_F3, .03125); 7float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_A4, 0.0625);
8float fauxclicky_released_note[2] = MUSICAL_NOTE(_C3, .03125); 8float fauxclicky_released_note[2] = MUSICAL_NOTE(_A4, 0.0625);
9float fauxclicky_beep_note[2] = MUSICAL_NOTE(_C3, .03125); 9float fauxclicky_beep_note[2] = MUSICAL_NOTE(_C6, 0.25);
10 10
11// cubic fit {3.3, 0}, {3.5, 2.9}, {3.6, 5}, {3.7, 8.6}, {3.8, 36}, {3.9, 62}, {4.0, 73}, {4.05, 83}, {4.1, 89}, {4.15, 94}, {4.2, 100} 11// cubic fit {3.3, 0}, {3.5, 2.9}, {3.6, 5}, {3.7, 8.6}, {3.8, 36}, {3.9, 62}, {4.0, 73}, {4.05, 83}, {4.1, 89}, {4.15, 94}, {4.2, 100}
12 12
diff --git a/keyboards/hhkb/rules.mk b/keyboards/hhkb/rules.mk
index a46271f02..e4190039f 100644
--- a/keyboards/hhkb/rules.mk
+++ b/keyboards/hhkb/rules.mk
@@ -53,7 +53,7 @@ OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
53#OPT_DEFS += -DBOOTLOADER_SIZE=4096 53#OPT_DEFS += -DBOOTLOADER_SIZE=4096
54 54
55# as per original hasu settings 55# as per original hasu settings
56OPT_DEFS += -DBOOTLOADER_SIZE=512 56OPT_DEFS += -DBOOTLOADER_SIZE=4096
57 57
58# Build Options 58# Build Options
59# comment out to disable the options. 59# comment out to disable the options.
diff --git a/keyboards/miuni32/config.h b/keyboards/miuni32/config.h
index 4f9b68551..9f26b2291 100644
--- a/keyboards/miuni32/config.h
+++ b/keyboards/miuni32/config.h
@@ -163,6 +163,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
163#define RGB_DI_PIN D0 // The pin your RGB strip is wired to 163#define RGB_DI_PIN D0 // The pin your RGB strip is wired to
164#define RGBLIGHT_TIMER // Require for fancier stuff (not compatible with audio) 164#define RGBLIGHT_TIMER // Require for fancier stuff (not compatible with audio)
165#define RGBLED_NUM 7 // Number of LEDs 165#define RGBLED_NUM 7 // Number of LEDs
166#define RGBLIGHT_ANIMATIONS
166#define RGBLIGHT_HUE_STEP 10 167#define RGBLIGHT_HUE_STEP 10
167#define RGBLIGHT_SAT_STEP 17 168#define RGBLIGHT_SAT_STEP 17
168#define RGBLIGHT_VAL_STEP 17 169#define RGBLIGHT_VAL_STEP 17
diff --git a/keyboards/miuni32/keymaps/adam-lee/Makefile b/keyboards/miuni32/keymaps/adam-lee/Makefile
new file mode 100644
index 000000000..88a3aea74
--- /dev/null
+++ b/keyboards/miuni32/keymaps/adam-lee/Makefile
@@ -0,0 +1,21 @@
1# Build Options
2# change to "no" to disable the options, or define them in the Makefile in
3# the appropriate keymap folder that will get included automatically
4#
5BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
6MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
7EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
8CONSOLE_ENABLE = no # Console for debug(+400)
9COMMAND_ENABLE = yes # Commands for debug and configuration
10NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
11BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
12MIDI_ENABLE = no # MIDI controls
13AUDIO_ENABLE = no # Audio output on port C6
14UNICODE_ENABLE = no # Unicode
15BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
16RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
17SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
18
19ifndef QUANTUM_DIR
20 include ../../../../Makefile
21endif
diff --git a/keyboards/miuni32/keymaps/adam-lee/config.h b/keyboards/miuni32/keymaps/adam-lee/config.h
new file mode 100644
index 000000000..df06a2620
--- /dev/null
+++ b/keyboards/miuni32/keymaps/adam-lee/config.h
@@ -0,0 +1,8 @@
1#ifndef CONFIG_USER_H
2#define CONFIG_USER_H
3
4#include "../../config.h"
5
6// place overrides here
7
8#endif \ No newline at end of file
diff --git a/keyboards/miuni32/keymaps/adam-lee/keymap.c b/keyboards/miuni32/keymaps/adam-lee/keymap.c
new file mode 100644
index 000000000..f799b8929
--- /dev/null
+++ b/keyboards/miuni32/keymaps/adam-lee/keymap.c
@@ -0,0 +1,119 @@
1#include "miuni32.h"
2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4 /* Level 0: Default Layer
5 * ,---------------------------------------------------------------------------------------.
6 * | Q | W | E | R | T | Y | U | I | O | P | BSP |
7 * |---------------------------------------------------------------------------------------|
8 * | A | S | D | F | G | H | J | K | L | ENT |LT(1|,)|
9 * |---------------------------------------------------------------------------------------|
10 * |LT(3|Z)| X | C | V | NO | SPC | B | N | M | RSFT |LT(2|.)|
11 * |---------------------------------------------------------------------------------------|
12 */
13 [0] ={
14 {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC},
15 {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, LT(1, KC_COMMA)},
16 {LT(3, KC_Z), KC_X, KC_C, KC_V, KC_NO, KC_SPC, KC_B, KC_N, KC_M, KC_RSFT, LT(2, KC_DOT)}
17 },
18 /* Level 1: Numbers Layer
19 * ,---------------------------------------------------------------------------------------.
20 * | ESC | 7 | 8 | 9 | / | * | . | , | ( | ) | DEL |
21 * |---------------------------------------------------------------------------------------|
22 * | TAB | 4 | 5 | 6 | - | + | HOME | UP | END | PGUP | TRNS |
23 * |---------------------------------------------------------------------------------------|
24 * | LATL | 1 | 2 | 3 | 0 | NO | LEFT | DOWN | RGHT | PGDN | RSHFT |
25 * |---------------------------------------------------------------------------------------|
26 */
27 [1] ={
28 {KC_ESC, KC_7, KC_8, KC_9, KC_SLSH, KC_ASTR, KC_DOT, KC_COMM, KC_LPRN, KC_RPRN, KC_DEL},
29 {KC_TAB, KC_4, KC_5, KC_6, KC_MINS, KC_PLUS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS},
30 {KC_LALT, KC_1, KC_2, KC_3, KC_0, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_RSFT}
31 },
32 /* Level 2: Symbols Layer
33 * ,---------------------------------------------------------------------------------------.
34 * | ! | @ | # | $ | % | ^ | & | * | - | + | = |
35 * |---------------------------------------------------------------------------------------|
36 * | { | } | [ | ] | TRNS | TRNS | \ | ; | : | ` | ? |
37 * |---------------------------------------------------------------------------------------|
38 * | LSFT | LCTL | L | T | TRNS | TAB | N | TRNS | TRNS | RCTL | TRNS |
39 * |---------------------------------------------------------------------------------------|
40 */
41 [2] ={
42 {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_MINS, KC_PLUS, KC_EQL},
43 {KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_BSLS, KC_SCLN, KC_COLN, KC_GRV, KC_QUES},
44 {KC_LSFT, KC_LCTL, KC_L, KC_T, KC_TRNS, KC_TAB, KC_N, KC_TRNS, KC_TRNS, KC_RCTL, KC_TRNS}
45 },
46 /* Level 3: RGB Layer
47 * ,---------------------------------------------------------------------------------------.
48 * | RESET | TRNS | TRNS | TRNS | TRNS | F1 | F2 | F3 | F4 | F5 | F6 |
49 * |---------------------------------------------------------------------------------------|
50 * |RGB_TOG|RGB_MOD|RGB_HUI|RGB_HUD| NO |RGB_SAI|RGB_SAD|RGB_VAI|RGB_VAD| TRNS | TRNS |
51 * |---------------------------------------------------------------------------------------|
52 * | TRNS | TRNS | TRNS | TRNS | NO | F7 | F8 | F9 | F10 | F11 | F12 |
53 * |---------------------------------------------------------------------------------------|
54 */
55 [3] ={
56 {RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6},
57 {RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_NO, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS},
58 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12}
59 }
60};
61
62const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
63{
64 // MACRODOWN only works in this function
65 switch(id) {
66 case 0:
67 if (record->event.pressed) {
68 register_code(KC_RSFT);
69 } else {
70 unregister_code(KC_RSFT);
71 }
72 break;
73 }
74 return MACRO_NONE;
75};
76
77void matrix_init_user(void) {
78}
79
80void matrix_scan_user(void) {
81}
82
83bool process_record_user(uint16_t keycode, keyrecord_t *record) {
84 return true;
85}
86
87void led_set_user(uint8_t usb_led) {
88
89 if (usb_led & (1 << USB_LED_NUM_LOCK)) {
90
91 } else {
92
93 }
94
95 if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
96
97 } else {
98
99 }
100
101 if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
102
103 } else {
104
105 }
106
107 if (usb_led & (1 << USB_LED_COMPOSE)) {
108
109 } else {
110
111 }
112
113 if (usb_led & (1 << USB_LED_KANA)) {
114
115 } else {
116
117 }
118
119}
diff --git a/keyboards/miuni32/keymaps/adam-lee/readme.md b/keyboards/miuni32/keymaps/adam-lee/readme.md
new file mode 100644
index 000000000..4cff8ef5a
--- /dev/null
+++ b/keyboards/miuni32/keymaps/adam-lee/readme.md
@@ -0,0 +1 @@
# The default keymap for miuni32 \ No newline at end of file
diff --git a/keyboards/miuni32/keymaps/default/keymap.c b/keyboards/miuni32/keymaps/default/keymap.c
index 15e2fa45c..f799b8929 100644
--- a/keyboards/miuni32/keymaps/default/keymap.c
+++ b/keyboards/miuni32/keymaps/default/keymap.c
@@ -1,19 +1,62 @@
1#include "miuni32.h" 1#include "miuni32.h"
2 2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4[0] ={ 4 /* Level 0: Default Layer
5 {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, 5 * ,---------------------------------------------------------------------------------------.
6 {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_RSFT, KC_ENT}, 6 * | Q | W | E | R | T | Y | U | I | O | P | BSP |
7 {KC_Z, KC_X, KC_C, KC_V, KC_V, KC_SPC, KC_B, KC_N, KC_M , MO(1), KC_RCTL} 7 * |---------------------------------------------------------------------------------------|
8 }, 8 * | A | S | D | F | G | H | J | K | L | ENT |LT(1|,)|
9[1] ={ 9 * |---------------------------------------------------------------------------------------|
10 {KC_PGUP, KC_UP, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL}, 10 * |LT(3|Z)| X | C | V | NO | SPC | B | N | M | RSFT |LT(2|.)|
11 {KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_END, KC_TRNS}, 11 * |---------------------------------------------------------------------------------------|
12 {RGB_TOG, RGB_HUI, RGB_HUD, RGB_SAI, KC_TRNS, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, RGB_MOD}, 12 */
13 } 13 [0] ={
14}; 14 {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC},
15const uint16_t PROGMEM fn_actions[] = { 15 {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, LT(1, KC_COMMA)},
16 16 {LT(3, KC_Z), KC_X, KC_C, KC_V, KC_NO, KC_SPC, KC_B, KC_N, KC_M, KC_RSFT, LT(2, KC_DOT)}
17 },
18 /* Level 1: Numbers Layer
19 * ,---------------------------------------------------------------------------------------.
20 * | ESC | 7 | 8 | 9 | / | * | . | , | ( | ) | DEL |
21 * |---------------------------------------------------------------------------------------|
22 * | TAB | 4 | 5 | 6 | - | + | HOME | UP | END | PGUP | TRNS |
23 * |---------------------------------------------------------------------------------------|
24 * | LATL | 1 | 2 | 3 | 0 | NO | LEFT | DOWN | RGHT | PGDN | RSHFT |
25 * |---------------------------------------------------------------------------------------|
26 */
27 [1] ={
28 {KC_ESC, KC_7, KC_8, KC_9, KC_SLSH, KC_ASTR, KC_DOT, KC_COMM, KC_LPRN, KC_RPRN, KC_DEL},
29 {KC_TAB, KC_4, KC_5, KC_6, KC_MINS, KC_PLUS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS},
30 {KC_LALT, KC_1, KC_2, KC_3, KC_0, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_RSFT}
31 },
32 /* Level 2: Symbols Layer
33 * ,---------------------------------------------------------------------------------------.
34 * | ! | @ | # | $ | % | ^ | & | * | - | + | = |
35 * |---------------------------------------------------------------------------------------|
36 * | { | } | [ | ] | TRNS | TRNS | \ | ; | : | ` | ? |
37 * |---------------------------------------------------------------------------------------|
38 * | LSFT | LCTL | L | T | TRNS | TAB | N | TRNS | TRNS | RCTL | TRNS |
39 * |---------------------------------------------------------------------------------------|
40 */
41 [2] ={
42 {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_MINS, KC_PLUS, KC_EQL},
43 {KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_BSLS, KC_SCLN, KC_COLN, KC_GRV, KC_QUES},
44 {KC_LSFT, KC_LCTL, KC_L, KC_T, KC_TRNS, KC_TAB, KC_N, KC_TRNS, KC_TRNS, KC_RCTL, KC_TRNS}
45 },
46 /* Level 3: RGB Layer
47 * ,---------------------------------------------------------------------------------------.
48 * | RESET | TRNS | TRNS | TRNS | TRNS | F1 | F2 | F3 | F4 | F5 | F6 |
49 * |---------------------------------------------------------------------------------------|
50 * |RGB_TOG|RGB_MOD|RGB_HUI|RGB_HUD| NO |RGB_SAI|RGB_SAD|RGB_VAI|RGB_VAD| TRNS | TRNS |
51 * |---------------------------------------------------------------------------------------|
52 * | TRNS | TRNS | TRNS | TRNS | NO | F7 | F8 | F9 | F10 | F11 | F12 |
53 * |---------------------------------------------------------------------------------------|
54 */
55 [3] ={
56 {RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6},
57 {RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_NO, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS},
58 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12}
59 }
17}; 60};
18 61
19const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 62const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
@@ -31,19 +74,46 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
31 return MACRO_NONE; 74 return MACRO_NONE;
32}; 75};
33 76
34
35void matrix_init_user(void) { 77void matrix_init_user(void) {
36
37} 78}
38 79
39void matrix_scan_user(void) { 80void matrix_scan_user(void) {
40
41} 81}
42 82
43bool process_record_user(uint16_t keycode, keyrecord_t *record) { 83bool process_record_user(uint16_t keycode, keyrecord_t *record) {
44 return true; 84 return true;
45} 85}
46 86
47void led_set_user(uint8_t usb_led) { 87void led_set_user(uint8_t usb_led) {
48 88
89 if (usb_led & (1 << USB_LED_NUM_LOCK)) {
90
91 } else {
92
93 }
94
95 if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
96
97 } else {
98
99 }
100
101 if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
102
103 } else {
104
105 }
106
107 if (usb_led & (1 << USB_LED_COMPOSE)) {
108
109 } else {
110
111 }
112
113 if (usb_led & (1 << USB_LED_KANA)) {
114
115 } else {
116
117 }
118
49} 119}
diff --git a/keyboards/miuni32/keymaps/ht_156/Makefile b/keyboards/miuni32/keymaps/ht_156/Makefile
new file mode 100644
index 000000000..88a3aea74
--- /dev/null
+++ b/keyboards/miuni32/keymaps/ht_156/Makefile
@@ -0,0 +1,21 @@
1# Build Options
2# change to "no" to disable the options, or define them in the Makefile in
3# the appropriate keymap folder that will get included automatically
4#
5BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
6MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
7EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
8CONSOLE_ENABLE = no # Console for debug(+400)
9COMMAND_ENABLE = yes # Commands for debug and configuration
10NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
11BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
12MIDI_ENABLE = no # MIDI controls
13AUDIO_ENABLE = no # Audio output on port C6
14UNICODE_ENABLE = no # Unicode
15BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
16RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
17SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
18
19ifndef QUANTUM_DIR
20 include ../../../../Makefile
21endif
diff --git a/keyboards/miuni32/keymaps/ht_156/config.h b/keyboards/miuni32/keymaps/ht_156/config.h
new file mode 100644
index 000000000..df06a2620
--- /dev/null
+++ b/keyboards/miuni32/keymaps/ht_156/config.h
@@ -0,0 +1,8 @@
1#ifndef CONFIG_USER_H
2#define CONFIG_USER_H
3
4#include "../../config.h"
5
6// place overrides here
7
8#endif \ No newline at end of file
diff --git a/keyboards/miuni32/keymaps/ht_156/keymap.c b/keyboards/miuni32/keymaps/ht_156/keymap.c
new file mode 100644
index 000000000..e40180d49
--- /dev/null
+++ b/keyboards/miuni32/keymaps/ht_156/keymap.c
@@ -0,0 +1,181 @@
1#include "miuni32.h"
2
3// Keyboard layer definitions
4#define BASE 0
5#define NUMBERS 1
6#define SYMBOLS 2
7#define MEDIA 3
8
9// Keyboard macro defintions
10#define GIT_ST M(0)
11#define GIT_PU M(1)
12#define GIT_CM M(2)
13#define HM_DIR M(3)
14
15const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
16 /* Level 0: Default Layer
17 * ,---------------------------------------------------------------------------------------.
18 * | Q | W | E | R | T | Y | U | I | O | P | BSP |
19 * |---------------------------------------------------------------------------------------|
20 * | A | S | D | F | G | H | J | K | L | ENT | RSFT |
21 * |---------------------------------------------------------------------------------------|
22 * |LT(2|Z)|LT(3|X)| C | V | B | SPC | N | M | , |LT(1|.)| RCTL |
23 * |---------------------------------------------------------------------------------------|
24 */
25 [BASE] ={
26 {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC},
27 {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, KC_RSFT},
28 {LT(2, KC_Z), LT(3, KC_X), KC_C, KC_V, KC_B, KC_SPC, KC_N, KC_M, KC_COMMA, LT(1, KC_DOT), KC_RCTL}
29 },
30 /* Level 1: Numbers Layer
31 * ,---------------------------------------------------------------------------------------.
32 * | ESC | 7 | 8 | 9 | / | * | . | , | ( | ) | DEL |
33 * |---------------------------------------------------------------------------------------|
34 * | TAB | 4 | 5 | 6 | - | + | HOME | UP | END | INS | PGUP |
35 * |---------------------------------------------------------------------------------------|
36 * | LATL | 1 | 2 | 3 | 0 | ENT | LEFT | DOWN | RGHT | !TRNS!| PGDN |
37 * |---------------------------------------------------------------------------------------|
38 */
39 [NUMBERS] ={
40 {KC_ESC, KC_7, KC_8, KC_9, KC_SLSH, KC_ASTR, KC_DOT, KC_COMM, KC_LPRN, KC_RPRN, KC_DEL},
41 {KC_TAB, KC_4, KC_5, KC_6, KC_MINS, KC_PLUS, KC_HOME, KC_UP, KC_END, KC_INSERT, KC_PGUP},
42 {KC_LALT, KC_1, KC_2, KC_3, KC_0, KC_ENT, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_PGDN}
43 },
44 /* Level 2: Symbols Layer
45 * ,---------------------------------------------------------------------------------------.
46 * | ! | @ | # | $ | % | ^ | & | * | _ | = | ? |
47 * |---------------------------------------------------------------------------------------|
48 * | RESET | LSFT | ~ | { | } | \ | | | ; | : | ` | " |
49 * |---------------------------------------------------------------------------------------|
50 * | !TRNS!| LCTL | TRNS | [ | ] | TAB | < | > | TRNS | RCTL | TRNS |
51 * |---------------------------------------------------------------------------------------|
52 */
53 [SYMBOLS] ={
54 {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_UNDS, KC_EQL, KC_QUES},
55 {RESET, KC_LSFT, KC_TILD, KC_LCBR, KC_RCBR, KC_BSLS, KC_PIPE, KC_SCLN, KC_COLN, KC_GRV, KC_DQUO},
56 {KC_TRNS, KC_LCTL, KC_TRNS, KC_LBRC, KC_RBRC, KC_TAB, KC_LABK, KC_RABK, KC_TRNS, KC_RCTL, KC_TRNS}
57 },
58 /* Level 3: Media Layer
59 * ,---------------------------------------------------------------------------------------.
60 * |RGB_TOG|RGB_HUI|RGB_SAI|RGB_VAI| GIT_CM| CALC | WREF | WFAV | MUTE | VOLD | VOLU |
61 * |---------------------------------------------------------------------------------------|
62 * |RGB_MOD|RGB_HUD|RGB_SAD|RGB_VAD| GIT_ST| WHOM | WBAK | WFWD | TRNS | STOP | PLAY |
63 * |---------------------------------------------------------------------------------------|
64 * | TRNS | !TRNS!| TRNS | HM_DIR| GIT_PU| MYCM | WSTP | WSCH | MSEL | MPRV | MNXT |
65 * |---------------------------------------------------------------------------------------|
66 */
67 [MEDIA] ={
68 {RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, GIT_CM, KC_CALC, KC_WREF, KC_WFAV, KC_MUTE, KC_VOLD, KC_VOLU},
69 {RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, GIT_ST, KC_WHOM, KC_WBAK, KC_WFWD, KC_TRNS, KC_MSTP, KC_MPLY},
70 {KC_TRNS, KC_TRNS, KC_TRNS, HM_DIR, GIT_PU, KC_MYCM, KC_WSTP, KC_WSCH, KC_MSEL, KC_MPRV, KC_MNXT}
71 }
72};
73
74void press_and_release_key(uint8_t code)
75{
76 register_code(code);
77 unregister_code(code);
78}
79
80void press_and_release_mod_key(uint8_t mod, uint8_t code)
81{
82 register_code(mod);
83 register_code(code);
84 unregister_code(code);
85 unregister_code(mod);
86}
87
88const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
89{
90 // MACRODOWN only works in this function
91 switch(id)
92 {
93 case 0:
94 if (record->event.pressed)
95 {
96 return MACRO(T(G), T(I), T(T), T(SPC),
97 T(S), T(T), T(A), T(T), T(U), T(S), END);
98 }
99 break;
100 case 1:
101 if (record->event.pressed)
102 {
103 return MACRO(T(G), T(I), T(T), T(SPC),
104 T(P), T(U), T(L), T(L), END);
105 }
106 break;
107 case 2:
108 if (record->event.pressed)
109 {
110 return MACRO(T(G), T(I), T(T), T(SPC),
111 T(C), T(O), T(M), T(M), T(I), T(T), END);
112 }
113 break;
114 case 3:
115 if (record->event.pressed)
116 {
117 /*press_and_release_key(KC_C);
118 press_and_release_key(KC_D);
119 press_and_release_key(KC_SPC);
120 press_and_release_mod_key(KC_LSFT, KC_GRV);
121 press_and_release_key(KC_SLSH);
122 press_and_release_key(KC_Q);
123 press_and_release_key(KC_M);
124 press_and_release_key(KC_K);
125 press_and_release_mod_key(KC_LSFT, KC_MINS);*/
126 return MACRO(I(0),
127 T(C), T(D), T(SPC),
128 D(LSFT), T(GRV), U(LSFT), T(SLSH),
129 T(Q), T(M), T(K), D(LSFT), T(MINS), U(LSFT),
130 T(F), T(I), T(R), T(M), T(W), T(A), T(R), T(E), T(SLSH),
131 T(K), T(E), T(Y), T(B), T(O), T(A), T(R), T(D), T(S), T(SLSH),
132 T(M), T(I), T(U), T(N), T(I), T(3), T(2), T(SLSH),
133 T(K), T(E), T(Y), T(M), T(A), T(P), T(S), END);
134 }
135 }
136 return MACRO_NONE;
137};
138
139void matrix_init_user(void) {
140}
141
142void matrix_scan_user(void) {
143}
144
145bool process_record_user(uint16_t keycode, keyrecord_t *record) {
146 return true;
147}
148
149void led_set_user(uint8_t usb_led) {
150
151 if (usb_led & (1 << USB_LED_NUM_LOCK)) {
152
153 } else {
154
155 }
156
157 if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
158
159 } else {
160
161 }
162
163 if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
164
165 } else {
166
167 }
168
169 if (usb_led & (1 << USB_LED_COMPOSE)) {
170
171 } else {
172
173 }
174
175 if (usb_led & (1 << USB_LED_KANA)) {
176
177 } else {
178
179 }
180
181}
diff --git a/keyboards/miuni32/keymaps/ht_156/readme.md b/keyboards/miuni32/keymaps/ht_156/readme.md
new file mode 100644
index 000000000..e46cc6d53
--- /dev/null
+++ b/keyboards/miuni32/keymaps/ht_156/readme.md
@@ -0,0 +1 @@
# ht_156's keymap for miuni32, using 33 keys
diff --git a/keyboards/miuni32/miuni32.h b/keyboards/miuni32/miuni32.h
index eecb17f81..8e1b4a38c 100644
--- a/keyboards/miuni32/miuni32.h
+++ b/keyboards/miuni32/miuni32.h
@@ -6,10 +6,10 @@
6#define KEYMAP( \ 6#define KEYMAP( \
7 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ 7 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
8 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ 8 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
9 K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A ) { \ 9 K20, K21, K22, K23, K25, K26, K27, K28, K29, K2A ) { \
10 { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0A }, \ 10 { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0A }, \
11 { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1A }, \ 11 { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1A }, \
12 { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2A } \ 12 { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_NO, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2A } \
13} 13}
14 14
15#endif 15#endif
diff --git a/keyboards/planck/keymaps/dshields/Makefile b/keyboards/planck/keymaps/dshields/Makefile
new file mode 100644
index 000000000..5eaceda53
--- /dev/null
+++ b/keyboards/planck/keymaps/dshields/Makefile
@@ -0,0 +1,11 @@
1ifndef QUANTUM_DIR
2 include ../../../../Makefile
3endif
4
5MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
6COMMAND_ENABLE = yes # Commands for debug and configuration
7BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
8# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
9SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
10TAP_DANCE_ENABLE = no
11AUDIO_ENABLE = no
diff --git a/keyboards/planck/keymaps/dshields/config.h b/keyboards/planck/keymaps/dshields/config.h
new file mode 100644
index 000000000..35358af0b
--- /dev/null
+++ b/keyboards/planck/keymaps/dshields/config.h
@@ -0,0 +1,23 @@
1#ifndef CONFIG_USER_H
2#define CONFIG_USER_H
3
4#ifndef NO_DEBUG
5#define NO_DEBUG
6#endif
7#ifndef NO_PRINT
8#define NO_PRINT
9#endif
10
11#include "../../config.h"
12
13#define TAPPING_TOGGLE 2
14#define TAPPING_TERM 300
15
16#define ONESHOT_TAP_TOGGLE 2
17#define ONESHOT_TIMEOUT 300
18
19#define _______ KC_TRNS
20#define XXXXXXX KC_NO
21
22#endif
23
diff --git a/keyboards/planck/keymaps/dshields/keymap.c b/keyboards/planck/keymaps/dshields/keymap.c
new file mode 100644
index 000000000..e96a67a53
--- /dev/null
+++ b/keyboards/planck/keymaps/dshields/keymap.c
@@ -0,0 +1,98 @@
1#include "planck.h"
2#include "backlight.h"
3#include "config.h"
4#include "action_layer.h"
5#include "eeconfig.h"
6
7extern keymap_config_t keymap_config;
8
9enum planck_layers { DEF, LWR, RSE, FUN };
10enum planck_keycodes { M1 = SAFE_RANGE, M2, M3, M4 };
11
12const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
13 /* Default
14 * ,-----------------------------------------------------------------------------------.
15 * | Q | W | E | R | T | Esc | Bksp | Y | U | I | O | P |
16 * |------+------+------+------+------+-------------+------+------+------+------+------|
17 * | A | S | D | F | G | Tab | Enter| H | J | K | L | ; |
18 * |------+------+------+------+------+------|------+------+------+------+------+------|
19 * | Z | X | C | V | B | Shift| Play | N | M | , | . | / |
20 * |------+------+------+------+------+------+------+------+------+------+------+------|
21 * | Ctrl | Super| Alt | Fun | Lower| Space | Raise| Left | Down | Up |Right |
22 * `-----------------------------------------------------------------------------------'
23 */
24 [DEF] = {
25 {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_ESC, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P},
26 {KC_A, KC_S, KC_D, KC_F, KC_G, KC_TAB, KC_ENT, KC_H, KC_J, KC_K, KC_L, KC_SCLN},
27 {KC_Z, KC_X, KC_C, KC_V, KC_B, OSM(MOD_LSFT), XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH},
28 {KC_LCTL, KC_LGUI, KC_LALT, TT(FUN), TT(LWR), KC_SPC, KC_SPC, TT(RSE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}
29 },
30 /* Lower
31 * ,-----------------------------------------------------------------------------------.
32 * | ! | @ | # | $ | % | | | ^ | & | * | ( | ) |
33 * |------+------+------+------+------+-------------+------+------+------+------+------|
34 * | ~ | | | | | | | _ | + | | { | } |
35 * |------+------+------+------+------+------|------+------+------+------+------+------|
36 * | | | | | | | | | | | " | | |
37 * |------+------+------+------+------+------+------+------+------+------+------+------|
38 * | | | | | | | | Home | PgDn | PgUp | End |
39 * `-----------------------------------------------------------------------------------'
40 */
41 [LWR] = {
42 {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN},
43 {S(KC_GRV), _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, _______, S(KC_LBRC), S(KC_RBRC)},
44 {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, S(KC_QUOT), S(KC_BSLS)},
45 {_______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END}
46 },
47 /* Raise
48 * ,-----------------------------------------------------------------------------------.
49 * | 1 | 2 | 3 | 4 | 5 | | | 6 | 7 | 8 | 9 | 0 |
50 * |------+------+------+------+------+-------------+------+------+------+------+------|
51 * | ` | | | | | | | - | = | | [ | ] |
52 * |------+------+------+------+------+------|------+------+------+------+------+------|
53 * | | | | | | | | | | | | |
54 * |------+------+------+------+------+------+------+------+------+------+------+------|
55 * | | | | | | | | Home | PgDn | PgUp | End |
56 * `-----------------------------------------------------------------------------------'
57 */
58 [RSE] = {
59 {KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0},
60 {KC_GRV, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, _______, KC_LBRC, KC_RBRC},
61 {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_QUOT, KC_BSLS},
62 {_______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END}
63 },
64 /* Function
65 * ,-----------------------------------------------------------------------------------.
66 * | F1 | F2 | F3 | F4 | F5 | Reset|Delete| F6 | F7 | F8 | F9 | F10 |
67 * |------+------+------+------+------+-------------+------+------+------+------+------|
68 * | F11 | F12 | F13 | F14 | F15 | | | F16 | F17 | F18 | F19 | F20 |
69 * |------+------+------+------+------+------|------+------+------+------+------+------|
70 * |BlTggl|BlStep| | M1 | M2 | | | M3 | M4 |MsBtn1|MsBtn2|MsBtn3|
71 * |------+------+------+------+------+------+------+------+------+------+------+------|
72 * | | | | | | | |MsLeft|MsDown| MsUp |MsRght|
73 * `-----------------------------------------------------------------------------------'
74 */
75 [FUN] = {
76 {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RESET, KC_DEL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10},
77 {KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, _______, _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20},
78 {BL_TOGG, BL_STEP, _______, M1, _______, _______, _______, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3},
79 {_______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R}
80 },
81
82};
83
84bool process_record_user(uint16_t keycode, keyrecord_t *record) {
85 switch (keycode) {
86 case M1:
87 if (record->event.pressed) {
88 SEND_STRING(" 2>&1 > ");
89 }
90 return false;
91 break;
92 }
93 return true;
94}
95
96void matrix_init_user(void) {
97}
98
diff --git a/keyboards/ps2avrGB/keymaps/default/keymap.c b/keyboards/ps2avrGB/keymaps/default/keymap.c
index 5c66cde59..3e4cebc81 100644
--- a/keyboards/ps2avrGB/keymaps/default/keymap.c
+++ b/keyboards/ps2avrGB/keymaps/default/keymap.c
@@ -18,14 +18,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
18#include "ps2avrGB.h" 18#include "ps2avrGB.h"
19 19
20const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 20const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
21 KEYMAP( \ 21 KC_KEYMAP(
22 ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,HOME,END, \ 22 ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,HOME,END,
23 GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, DEL, \ 23 GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, DEL,
24 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, INS, \ 24 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, INS,
25 CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, PGUP,\ 25 CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, PGUP,
26 LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ 26 LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,
27 LCTL,LALT,LGUI, SPC, RGUI,RALT,RCTL,LEFT,DOWN,RGHT \ 27 LCTL,LALT,LGUI, SPC, RGUI,RALT,RCTL,LEFT,DOWN,RGHT
28 ), 28 )
29}; 29};
30 30
31const uint16_t PROGMEM fn_actions[] = { 31const uint16_t PROGMEM fn_actions[] = {
diff --git a/keyboards/ps2avrGB/ps2avrGB.h b/keyboards/ps2avrGB/ps2avrGB.h
index 6432e3be9..813f31f80 100644
--- a/keyboards/ps2avrGB/ps2avrGB.h
+++ b/keyboards/ps2avrGB/ps2avrGB.h
@@ -22,6 +22,24 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
22#include "action.h" 22#include "action.h"
23 23
24#define KEYMAP( \ 24#define KEYMAP( \
25 K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \
26 K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4, KD0, \
27 K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3, K67, \
28 K02, K12, K22, K32, K42, K52, K36, KD6, KD7, K37, KA2, KB2, KD2, KE0, \
29 K01, K11, K21, K31, K41, K51, K46, KE6, KE7, K47, KA1, KB1, K86, K77, \
30 K00, K10, K20, K56, K57, KB0, KC0, K66, K76, K96 \
31){ \
32 { K00, K10, K20, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KB0, KC0, KD0, KE0 }, \
33 { K01, K11, K21, K31, K41, K51, KC_NO, KC_NO, KC_NO, KC_NO, KA1, KB1, KC_NO, KD1, KE1 }, \
34 { K02, K12, K22, K32, K42, K52, KC_NO, KC_NO, KC_NO, KC_NO, KA2, KB2, KC_NO, KD2, KE2 }, \
35 { K03, K13, K23, K33, K43, K53, KC_NO, KC_NO, KC_NO, KC_NO, KA3, KB3, KC3, KD3, KC_NO }, \
36 { K04, K14, K24, K34, K44, K54, KC_NO, KC_NO, KC_NO, KC_NO, KA4, KB4, KC4, KC_NO, KE4 }, \
37 { K05, KC_NO, K25, K35, K45, K55, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KB5, KC5, KD5, KE5 }, \
38 { K06, K16, K26, K36, K46, K56, K66, K76, K86, K96, KA6, KB6, KC6, KD6, KE6 }, \
39 { K07, K17, K27, K37, K47, K57, K67, K77, KC_NO, KC_NO, KA7, KB7, KC7, KD7, KE7 } \
40}
41
42#define KC_KEYMAP( \
25 K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \ 43 K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \
26 K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4, KD0, \ 44 K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4, KD0, \
27 K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3, K67, \ 45 K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3, K67, \
diff --git a/keyboards/s60-x/default/rules.mk b/keyboards/s60-x/default/rules.mk
deleted file mode 100644
index b8ff76260..000000000
--- a/keyboards/s60-x/default/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
1RGBLIGHT_ENABLE ?= no \ No newline at end of file
diff --git a/keyboards/s60-x/rgb/rules.mk b/keyboards/s60-x/rgb/rules.mk
deleted file mode 100644
index c303af4bc..000000000
--- a/keyboards/s60-x/rgb/rules.mk
+++ /dev/null
@@ -1,56 +0,0 @@
1# MCU name
2MCU = atmega32u4
3
4# Processor frequency.
5# This will define a symbol, F_CPU, in all source code files equal to the
6# processor frequency in Hz. You can then use this symbol in your source code to
7# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
8# automatically to create a 32-bit value in your source code.
9#
10# This will be an integer division of F_USB below, as it is sourced by
11# F_USB after it has run through any CPU prescalers. Note that this value
12# does not *change* the processor frequency - it should merely be updated to
13# reflect the processor speed set externally so that the code can use accurate
14# software delays.
15F_CPU = 16000000
16
17#
18# LUFA specific
19#
20# Target architecture (see library "Board Types" documentation).
21ARCH = AVR8
22
23# Input clock frequency.
24# This will define a symbol, F_USB, in all source code files equal to the
25# input clock frequency (before any prescaling is performed) in Hz. This value may
26# differ from F_CPU if prescaling is used on the latter, and is required as the
27# raw input clock is fed directly to the PLL sections of the AVR for high speed
28# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
29# at the end, this will be done automatically to create a 32-bit value in your
30# source code.
31#
32# If no clock division is performed on the input clock inside the AVR (via the
33# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
34F_USB = $(F_CPU)
35
36# Interrupt driven control endpoint task(+60)
37OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
38
39
40# Boot Section Size in *bytes*
41OPT_DEFS += -DBOOTLOADER_SIZE=4096
42
43
44# Build Options
45# comment out to disable the options.
46#
47BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000)
48MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700)
49EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450)
50CONSOLE_ENABLE ?= no # Console for debug(+400)
51COMMAND_ENABLE ?= no # Commands for debug and configuration
52SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend
53NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
54BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality
55AUDIO_ENABLE ?= no
56RGBLIGHT_ENABLE ?= yes \ No newline at end of file
diff --git a/keyboards/s60-x/s60-x.c b/keyboards/s60-x/s60-x.c
deleted file mode 100644
index f031dd770..000000000
--- a/keyboards/s60-x/s60-x.c
+++ /dev/null
@@ -1 +0,0 @@
1#include "s60-x.h" \ No newline at end of file
diff --git a/keyboards/s60-x/s60-x_precompiled.zip b/keyboards/s60-x/s60-x_precompiled.zip
deleted file mode 100644
index 00d99ca8a..000000000
--- a/keyboards/s60-x/s60-x_precompiled.zip
+++ /dev/null
Binary files differ
diff --git a/keyboards/s60-x/Makefile b/keyboards/s60_x/Makefile
index 879e493a2..879e493a2 100644
--- a/keyboards/s60-x/Makefile
+++ b/keyboards/s60_x/Makefile
diff --git a/keyboards/s60-x/config.h b/keyboards/s60_x/config.h
index 8e7bc78be..8b97b3c81 100644
--- a/keyboards/s60-x/config.h
+++ b/keyboards/s60_x/config.h
@@ -32,6 +32,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
32#define MATRIX_ROWS 5 32#define MATRIX_ROWS 5
33#define MATRIX_COLS 15 33#define MATRIX_COLS 15
34 34
35/* number of backlight levels */
36#define BACKLIGHT_PIN B7
37#ifdef BACKLIGHT_PIN
38#define BACKLIGHT_LEVELS 3
39#endif
40
35/* COL2ROW or ROW2COL */ 41/* COL2ROW or ROW2COL */
36#define DIODE_DIRECTION COL2ROW 42#define DIODE_DIRECTION COL2ROW
37 43
@@ -43,4 +49,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
43 keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ 49 keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
44) 50)
45 51
52#ifdef SUBPROJECT_default
53 #include "default/config.h"
54#endif
55#ifdef SUBPROJECT_rgb
56 #include "rgb/config.h"
57#endif
58
46#endif 59#endif
diff --git a/keyboards/s60-x/default/Makefile b/keyboards/s60_x/default/Makefile
index 191c6bb66..191c6bb66 100644
--- a/keyboards/s60-x/default/Makefile
+++ b/keyboards/s60_x/default/Makefile
diff --git a/keyboards/s60-x/default/config.h b/keyboards/s60_x/default/config.h
index 436c6fa8b..436c6fa8b 100644
--- a/keyboards/s60-x/default/config.h
+++ b/keyboards/s60_x/default/config.h
diff --git a/keyboards/s60-x/default/default.c b/keyboards/s60_x/default/default.c
index 253f5495c..253f5495c 100644
--- a/keyboards/s60-x/default/default.c
+++ b/keyboards/s60_x/default/default.c
diff --git a/keyboards/s60-x/default/default.h b/keyboards/s60_x/default/default.h
index 86233ef7e..86233ef7e 100644
--- a/keyboards/s60-x/default/default.h
+++ b/keyboards/s60_x/default/default.h
diff --git a/keyboards/s60_x/default/rules.mk b/keyboards/s60_x/default/rules.mk
new file mode 100644
index 000000000..aaa3764df
--- /dev/null
+++ b/keyboards/s60_x/default/rules.mk
@@ -0,0 +1,9 @@
1CONSOLE_ENABLE ?= no # Console for debug(+400)
2COMMAND_ENABLE ?= no # Commands for debug and configuration
3NKRO_ENABLE ?= no # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
4BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality
5RGBLIGHT_ENABLE ?= no
6
7ifndef QUANTUM_DIR
8 include ../../../Makefile
9endif \ No newline at end of file
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/Makefile b/keyboards/s60_x/keymaps/ansi_qwertz/Makefile
index 6a078bcc3..6a078bcc3 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/Makefile
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/Makefile
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/config.h b/keyboards/s60_x/keymaps/ansi_qwertz/config.h
index 6c01d579f..6c01d579f 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/config.h
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/config.h
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png
index 168780c82..168780c82 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png
Binary files differ
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg
index f03858993..f03858993 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg
index 2304b2a4c..2304b2a4c 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.png b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.png
index 875eb3652..875eb3652 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.png
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.png
Binary files differ
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.svg b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.svg
index 1ca6a9c87..1ca6a9c87 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.svg
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.svg
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/base_layer.PNG b/keyboards/s60_x/keymaps/ansi_qwertz/docs/base_layer.PNG
index c730c2d65..c730c2d65 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/base_layer.PNG
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/base_layer.PNG
Binary files differ
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/function_layer.PNG b/keyboards/s60_x/keymaps/ansi_qwertz/docs/function_layer.PNG
index fae2439ca..fae2439ca 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/function_layer.PNG
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/function_layer.PNG
Binary files differ
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/gaming_layer.PNG b/keyboards/s60_x/keymaps/ansi_qwertz/docs/gaming_layer.PNG
index 59b202be2..59b202be2 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/gaming_layer.PNG
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/gaming_layer.PNG
Binary files differ
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/keymap.c b/keyboards/s60_x/keymaps/ansi_qwertz/keymap.c
index 317a245be..ebb3aece3 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/keymap.c
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/keymap.c
@@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License
14along with this program. If not, see <http://www.gnu.org/licenses/>. 14along with this program. If not, see <http://www.gnu.org/licenses/>.
15*/ 15*/
16 16
17#include "s60-x.h" 17#include "s60_x.h"
18 18
19//make keymap a little easier to read 19//make keymap a little easier to read
20#define _______ KC_TRNS 20#define _______ KC_TRNS
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/readme.md b/keyboards/s60_x/keymaps/ansi_qwertz/readme.md
index b22010612..b22010612 100644
--- a/keyboards/s60-x/keymaps/ansi_qwertz/readme.md
+++ b/keyboards/s60_x/keymaps/ansi_qwertz/readme.md
diff --git a/keyboards/s60-x/keymaps/custom/keymap.c b/keyboards/s60_x/keymaps/custom/keymap.c
index fb2a40b85..66eac3335 100644
--- a/keyboards/s60-x/keymaps/custom/keymap.c
+++ b/keyboards/s60_x/keymaps/custom/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3/* Main layer: Test layout, using all keys. 3/* Main layer: Test layout, using all keys.
4 4
diff --git a/keyboards/s60-x/keymaps/custom/readme.md b/keyboards/s60_x/keymaps/custom/readme.md
index cf87bd915..cf87bd915 100644
--- a/keyboards/s60-x/keymaps/custom/readme.md
+++ b/keyboards/s60_x/keymaps/custom/readme.md
diff --git a/keyboards/s60-x/keymaps/dbroqua/keymap.c b/keyboards/s60_x/keymaps/dbroqua/keymap.c
index 940119e52..8d1887e75 100644
--- a/keyboards/s60-x/keymaps/dbroqua/keymap.c
+++ b/keyboards/s60_x/keymaps/dbroqua/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3#define _DEFAULT 0 3#define _DEFAULT 0
4#define _FN 1 4#define _FN 1
@@ -66,19 +66,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
66 */ 66 */
67 [_SFX] = KEYMAP( 67 [_SFX] = KEYMAP(
68 ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ 68 ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \
69 ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ 69 ______, BL_TOGG,BL_STEP,BL_DEC, BL_INC, ______, ______, ______, ______, ______, ______, ______, ______, ______, \
70 ______, F(0), F(1), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ 70 ______, F(0), F(1), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \
71 ______, ______, F(2), F(3), F(4), F(5), F(6), F(7), ______, ______, ______, ______, ______, ______, ______, \ 71 ______, ______, F(2), F(3), F(4), F(5), F(6), F(7), ______, ______, ______, ______, ______, ______, ______, \
72 ______, ______, ______, ______, ______, ______, ______, ______ \ 72 ______, ______, ______, ______, ______, ______, ______, ______ \
73 ) 73 )
74}; 74};
75 75
76const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { 76const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
77 keyevent_t event = record->event;
78
79 switch (id) {
80
81 }
82 return MACRO_NONE; 77 return MACRO_NONE;
83} 78}
84 79
@@ -108,42 +103,58 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
108 switch (id) { 103 switch (id) {
109 case RGBLED_TOGGLE: 104 case RGBLED_TOGGLE:
110 if (record->event.pressed) { 105 if (record->event.pressed) {
106 #ifdef RGB_ENABLE
111 rgblight_toggle(); 107 rgblight_toggle();
108 #endif
112 } 109 }
113 break; 110 break;
114 case RGBLED_INCREASE_HUE: 111 case RGBLED_INCREASE_HUE:
115 if (record->event.pressed) { 112 if (record->event.pressed) {
113 #ifdef RGB_ENABLE
116 rgblight_increase_hue(); 114 rgblight_increase_hue();
115 #endif
117 } 116 }
118 break; 117 break;
119 case RGBLED_DECREASE_HUE: 118 case RGBLED_DECREASE_HUE:
120 if (record->event.pressed) { 119 if (record->event.pressed) {
120 #ifdef RGB_ENABLE
121 rgblight_decrease_hue(); 121 rgblight_decrease_hue();
122 #endif
122 } 123 }
123 break; 124 break;
124 case RGBLED_INCREASE_SAT: 125 case RGBLED_INCREASE_SAT:
125 if (record->event.pressed) { 126 if (record->event.pressed) {
127 #ifdef RGB_ENABLE
126 rgblight_increase_sat(); 128 rgblight_increase_sat();
129 #endif
127 } 130 }
128 break; 131 break;
129 case RGBLED_DECREASE_SAT: 132 case RGBLED_DECREASE_SAT:
130 if (record->event.pressed) { 133 if (record->event.pressed) {
134 #ifdef RGB_ENABLE
131 rgblight_decrease_sat(); 135 rgblight_decrease_sat();
136 #endif
132 } 137 }
133 break; 138 break;
134 case RGBLED_INCREASE_VAL: 139 case RGBLED_INCREASE_VAL:
135 if (record->event.pressed) { 140 if (record->event.pressed) {
141 #ifdef RGB_ENABLE
136 rgblight_increase_val(); 142 rgblight_increase_val();
143 #endif
137 } 144 }
138 break; 145 break;
139 case RGBLED_DECREASE_VAL: 146 case RGBLED_DECREASE_VAL:
140 if (record->event.pressed) { 147 if (record->event.pressed) {
148 #ifdef RGB_ENABLE
141 rgblight_decrease_val(); 149 rgblight_decrease_val();
150 #endif
142 } 151 }
143 break; 152 break;
144 case RGBLED_STEP_MODE: 153 case RGBLED_STEP_MODE:
145 if (record->event.pressed) { 154 if (record->event.pressed) {
155 #ifdef RGB_ENABLE
146 rgblight_step(); 156 rgblight_step();
157 #endif
147 } 158 }
148 break; 159 break;
149 } 160 }
diff --git a/keyboards/s60-x/keymaps/default/keymap.c b/keyboards/s60_x/keymaps/default/keymap.c
index eb0c6b056..a616e79b3 100644
--- a/keyboards/s60-x/keymaps/default/keymap.c
+++ b/keyboards/s60_x/keymaps/default/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3/* 0: Main layer 3/* 0: Main layer
4┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ 4┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
diff --git a/keyboards/s60-x/keymaps/default/readme.md b/keyboards/s60_x/keymaps/default/readme.md
index 01cda9df9..01cda9df9 100644
--- a/keyboards/s60-x/keymaps/default/readme.md
+++ b/keyboards/s60_x/keymaps/default/readme.md
diff --git a/keyboards/s60-x/keymaps/hasu/keymap.c b/keyboards/s60_x/keymaps/hasu/keymap.c
index cbeaae028..ac90dc6b2 100644
--- a/keyboards/s60-x/keymaps/hasu/keymap.c
+++ b/keyboards/s60_x/keymaps/hasu/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3/* 3/*
4 * Hasu 4 * Hasu
diff --git a/keyboards/s60-x/keymaps/hasu/readme.md b/keyboards/s60_x/keymaps/hasu/readme.md
index 64969b616..64969b616 100644
--- a/keyboards/s60-x/keymaps/hasu/readme.md
+++ b/keyboards/s60_x/keymaps/hasu/readme.md
diff --git a/keyboards/s60-x/keymaps/hhkb/keymap.c b/keyboards/s60_x/keymaps/hhkb/keymap.c
index 9afd1247f..dc1bfffc4 100644
--- a/keyboards/s60-x/keymaps/hhkb/keymap.c
+++ b/keyboards/s60_x/keymaps/hhkb/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3/* 3/*
4 * HHKB Layout 4 * HHKB Layout
diff --git a/keyboards/s60-x/keymaps/hhkb/readme.md b/keyboards/s60_x/keymaps/hhkb/readme.md
index 2bceb26dd..2bceb26dd 100644
--- a/keyboards/s60-x/keymaps/hhkb/readme.md
+++ b/keyboards/s60_x/keymaps/hhkb/readme.md
diff --git a/keyboards/s60-x/keymaps/iso/keymap.c b/keyboards/s60_x/keymaps/iso/keymap.c
index 43a9c48b0..f6fc74172 100644
--- a/keyboards/s60-x/keymaps/iso/keymap.c
+++ b/keyboards/s60_x/keymaps/iso/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3/* 0: Main layer 3/* 0: Main layer
4┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ 4┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
diff --git a/keyboards/s60-x/keymaps/iso/readme.md b/keyboards/s60_x/keymaps/iso/readme.md
index 2c06bf86f..2c06bf86f 100644
--- a/keyboards/s60-x/keymaps/iso/readme.md
+++ b/keyboards/s60_x/keymaps/iso/readme.md
diff --git a/keyboards/s60-x/keymaps/jpec/keymap.c b/keyboards/s60_x/keymaps/jpec/keymap.c
index c8fc13328..21e77c10b 100644
--- a/keyboards/s60-x/keymaps/jpec/keymap.c
+++ b/keyboards/s60_x/keymaps/jpec/keymap.c
@@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License
14along with this program. If not, see <http://www.gnu.org/licenses/>. 14along with this program. If not, see <http://www.gnu.org/licenses/>.
15*/ 15*/
16 16
17#include "s60-x.h" 17#include "s60_x.h"
18 18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 /* Layout 0: Default Layer 20 /* Layout 0: Default Layer
diff --git a/keyboards/s60-x/keymaps/jpec/readme.md b/keyboards/s60_x/keymaps/jpec/readme.md
index 73318dad7..73318dad7 100644
--- a/keyboards/s60-x/keymaps/jpec/readme.md
+++ b/keyboards/s60_x/keymaps/jpec/readme.md
diff --git a/keyboards/s60-x/keymaps/plain/keymap.c b/keyboards/s60_x/keymaps/plain/keymap.c
index 790ac88e7..d5075a07b 100644
--- a/keyboards/s60-x/keymaps/plain/keymap.c
+++ b/keyboards/s60_x/keymaps/plain/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3/* Main layer: 3/* Main layer:
4┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ 4┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
diff --git a/keyboards/s60-x/keymaps/plain/readme.md b/keyboards/s60_x/keymaps/plain/readme.md
index ab13323e3..ab13323e3 100644
--- a/keyboards/s60-x/keymaps/plain/readme.md
+++ b/keyboards/s60_x/keymaps/plain/readme.md
diff --git a/keyboards/s60-x/keymaps/poker/keymap.c b/keyboards/s60_x/keymaps/poker/keymap.c
index 0a8691792..5b917704e 100644
--- a/keyboards/s60-x/keymaps/poker/keymap.c
+++ b/keyboards/s60_x/keymaps/poker/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4 /* 0: qwerty 4 /* 0: qwerty
diff --git a/keyboards/s60-x/keymaps/poker/readme.md b/keyboards/s60_x/keymaps/poker/readme.md
index 0d8be9d0f..0d8be9d0f 100644
--- a/keyboards/s60-x/keymaps/poker/readme.md
+++ b/keyboards/s60_x/keymaps/poker/readme.md
diff --git a/keyboards/s60-x/keymaps/poker_bit/keymap.c b/keyboards/s60_x/keymaps/poker_bit/keymap.c
index 7626038f4..1f7b1b633 100644
--- a/keyboards/s60-x/keymaps/poker_bit/keymap.c
+++ b/keyboards/s60_x/keymaps/poker_bit/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3// Poker fix with toggle and bit operation 3// Poker fix with toggle and bit operation
4// Fn + Esc = ` 4// Fn + Esc = `
diff --git a/keyboards/s60-x/keymaps/poker_bit/readme.md b/keyboards/s60_x/keymaps/poker_bit/readme.md
index 0d8be9d0f..0d8be9d0f 100644
--- a/keyboards/s60-x/keymaps/poker_bit/readme.md
+++ b/keyboards/s60_x/keymaps/poker_bit/readme.md
diff --git a/keyboards/s60-x/keymaps/poker_set/keymap.c b/keyboards/s60_x/keymaps/poker_set/keymap.c
index 09423e75b..52eee5321 100644
--- a/keyboards/s60-x/keymaps/poker_set/keymap.c
+++ b/keyboards/s60_x/keymaps/poker_set/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3// Poker fix with set(state transition) 3// Poker fix with set(state transition)
4// Fn + Esc = ` 4// Fn + Esc = `
diff --git a/keyboards/s60-x/keymaps/poker_set/readme.md b/keyboards/s60_x/keymaps/poker_set/readme.md
index 0d8be9d0f..0d8be9d0f 100644
--- a/keyboards/s60-x/keymaps/poker_set/readme.md
+++ b/keyboards/s60_x/keymaps/poker_set/readme.md
diff --git a/keyboards/s60-x/keymaps/spacefn/keymap.c b/keyboards/s60_x/keymaps/spacefn/keymap.c
index b6dc7ca7e..28369580e 100644
--- a/keyboards/s60-x/keymaps/spacefn/keymap.c
+++ b/keyboards/s60_x/keymaps/spacefn/keymap.c
@@ -1,4 +1,4 @@
1#include "s60-x.h" 1#include "s60_x.h"
2 2
3/* 3/*
4 * SpaceFN 4 * SpaceFN
diff --git a/keyboards/s60-x/keymaps/spacefn/readme.md b/keyboards/s60_x/keymaps/spacefn/readme.md
index d04bd9486..d04bd9486 100644
--- a/keyboards/s60-x/keymaps/spacefn/readme.md
+++ b/keyboards/s60_x/keymaps/spacefn/readme.md
diff --git a/keyboards/s60-x/readme.md b/keyboards/s60_x/readme.md
index 408ad13ac..e30b2f76c 100644
--- a/keyboards/s60-x/readme.md
+++ b/keyboards/s60_x/readme.md
@@ -5,11 +5,6 @@ DIY compact keyboard designed by VinnyCordeiro for Sentraq. Most of the keymaps
5## S60X Resources 5## S60X Resources
6- [Massdrop page](https://www.massdrop.com/buy/sentraq-60-diy-keyboard-kit?mode=guest_open) 6- [Massdrop page](https://www.massdrop.com/buy/sentraq-60-diy-keyboard-kit?mode=guest_open)
7 7
8## Quickstart
9
10If you just want to test a few layouts, the archive [s60-x_precompiled.zip](s60-x_precompiled.zip) contains pre-compiled .hex-files for all available keymaps. Not all of them are tested.
11You only need to flash them onto your keyboard, which is explained below, there's no need to setup a build environment. For a full list
12
13## Flashing your keyboard 8## Flashing your keyboard
14The recommended programs for flashing your keyboard are [Atmel FLIP](http://www.atmel.com/tools/FLIP.aspx) (Windows) and [dfu-programmer](http://dfu-programmer.sourceforge.net/) (Linux/Windows). 9The recommended programs for flashing your keyboard are [Atmel FLIP](http://www.atmel.com/tools/FLIP.aspx) (Windows) and [dfu-programmer](http://dfu-programmer.sourceforge.net/) (Linux/Windows).
15 10
diff --git a/keyboards/s60-x/rgb/Makefile b/keyboards/s60_x/rgb/Makefile
index bd09e5885..bd09e5885 100644
--- a/keyboards/s60-x/rgb/Makefile
+++ b/keyboards/s60_x/rgb/Makefile
diff --git a/keyboards/s60-x/rgb/config.h b/keyboards/s60_x/rgb/config.h
index 26b246e57..81efc87d5 100644
--- a/keyboards/s60-x/rgb/config.h
+++ b/keyboards/s60_x/rgb/config.h
@@ -9,12 +9,13 @@
9/* key matrix pins */ 9/* key matrix pins */
10#define MATRIX_ROW_PINS { B5, B4, D7, D6, D4 } 10#define MATRIX_ROW_PINS { B5, B4, D7, D6, D4 }
11#define MATRIX_COL_PINS { D0, D1, D2, D3, D5, B6, C6, C7, F1, F0, E6, B3, B2, B1, B0 } 11#define MATRIX_COL_PINS { D0, D1, D2, D3, D5, B6, C6, C7, F1, F0, E6, B3, B2, B1, B0 }
12#define UNUSED_PINS
12 13
13/* number of backlight levels */ 14/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
14#define BACKLIGHT_PIN B7 15#define LOCKING_SUPPORT_ENABLE
15#ifdef BACKLIGHT_PIN 16
16#define BACKLIGHT_LEVELS 3 17/* Locking resynchronize hack */
17#endif 18#define LOCKING_RESYNC_ENABLE
18 19
19/* prevent stuck modifiers */ 20/* prevent stuck modifiers */
20#define PREVENT_STUCK_MODIFIERS 21#define PREVENT_STUCK_MODIFIERS
diff --git a/keyboards/s60-x/rgb/rgb.c b/keyboards/s60_x/rgb/rgb.c
index 0117e14ae..0117e14ae 100644
--- a/keyboards/s60-x/rgb/rgb.c
+++ b/keyboards/s60_x/rgb/rgb.c
diff --git a/keyboards/s60-x/rgb/rgb.h b/keyboards/s60_x/rgb/rgb.h
index cb7a5f567..cb7a5f567 100644
--- a/keyboards/s60-x/rgb/rgb.h
+++ b/keyboards/s60_x/rgb/rgb.h
diff --git a/keyboards/s60_x/rgb/rules.mk b/keyboards/s60_x/rgb/rules.mk
new file mode 100644
index 000000000..6953cc6d6
--- /dev/null
+++ b/keyboards/s60_x/rgb/rules.mk
@@ -0,0 +1,9 @@
1CONSOLE_ENABLE ?= no # Console for debug(+400)
2COMMAND_ENABLE ?= no # Commands for debug and configuration
3NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
4BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality
5RGBLIGHT_ENABLE ?= yes # Enable RGB light
6
7ifndef QUANTUM_DIR
8 include ../../../Makefile
9endif \ No newline at end of file
diff --git a/keyboards/s60-x/rules.mk b/keyboards/s60_x/rules.mk
index 7ec93933a..0c568efe9 100644
--- a/keyboards/s60-x/rules.mk
+++ b/keyboards/s60_x/rules.mk
@@ -56,13 +56,9 @@ OPT_DEFS += -DBOOTLOADER_SIZE=4096
56BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) 56BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000)
57MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) 57MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700)
58EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) 58EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450)
59CONSOLE_ENABLE ?= yes # Console for debug(+400)
60COMMAND_ENABLE ?= yes # Commands for debug and configuration
61# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE 59# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
62SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend 60SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend
63# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work 61# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
64NKRO_ENABLE ?= no # USB Nkey Rollover
65BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality on B7 by default
66MIDI_ENABLE ?= no # MIDI controls 62MIDI_ENABLE ?= no # MIDI controls
67UNICODE_ENABLE ?= no # Unicode 63UNICODE_ENABLE ?= no # Unicode
68BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID 64BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID
diff --git a/keyboards/s60_x/s60_x.c b/keyboards/s60_x/s60_x.c
new file mode 100644
index 000000000..595418bfa
--- /dev/null
+++ b/keyboards/s60_x/s60_x.c
@@ -0,0 +1 @@
#include "s60_x.h" \ No newline at end of file
diff --git a/keyboards/s60-x/s60-x.h b/keyboards/s60_x/s60_x.h
index 5bf8cfcef..5bf8cfcef 100644
--- a/keyboards/s60-x/s60-x.h
+++ b/keyboards/s60_x/s60_x.h
diff --git a/keyboards/xd60/readme.md b/keyboards/xd60/readme.md
index 224498caa..dcc45ead2 100644
--- a/keyboards/xd60/readme.md
+++ b/keyboards/xd60/readme.md
@@ -1,6 +1,6 @@
1# QMK Firmware for XIUDI's 60% XD60 PCB 1# QMK Firmware for XIUDI's 60% XD60 PCB
2 2
3![Top View of a pair of XD60 Keyboard](./xd60.JPG) 3![Top View of a pair of XD60 Keyboard](./xd60.jpg)
4 4
5## Quantum MK Firmware 5## Quantum MK Firmware
6For the full Quantum feature list, see [the parent readme.md](/readme.md). 6For the full Quantum feature list, see [the parent readme.md](/readme.md).
diff --git a/tmk_core/avr.mk b/tmk_core/avr.mk
index 5df539def..ccecdb192 100644
--- a/tmk_core/avr.mk
+++ b/tmk_core/avr.mk
@@ -89,9 +89,9 @@ DEBUG_HOST = localhost
89#============================================================================ 89#============================================================================
90# Autodecct teensy loader 90# Autodecct teensy loader
91ifneq (, $(shell which teensy-loader-cli 2>/dev/null)) 91ifneq (, $(shell which teensy-loader-cli 2>/dev/null))
92 TEENSY_LOADER_CLI = teensy-loader-cli 92 TEENSY_LOADER_CLI ?= teensy-loader-cli
93else 93else
94 TEENSY_LOADER_CLI = teensy_loader_cli 94 TEENSY_LOADER_CLI ?= teensy_loader_cli
95endif 95endif
96 96
97# Program the device. 97# Program the device.
@@ -100,43 +100,47 @@ program: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep
100 100
101teensy: $(BUILD_DIR)/$(TARGET).hex 101teensy: $(BUILD_DIR)/$(TARGET).hex
102 $(TEENSY_LOADER_CLI) -mmcu=$(MCU) -w -v $(BUILD_DIR)/$(TARGET).hex 102 $(TEENSY_LOADER_CLI) -mmcu=$(MCU) -w -v $(BUILD_DIR)/$(TARGET).hex
103
104BATCHISP ?= batchisp
103 105
104flip: $(BUILD_DIR)/$(TARGET).hex 106flip: $(BUILD_DIR)/$(TARGET).hex
105 batchisp -hardware usb -device $(MCU) -operation erase f 107 $(BATCHISP) -hardware usb -device $(MCU) -operation erase f
106 batchisp -hardware usb -device $(MCU) -operation loadbuffer $(BUILD_DIR)/$(TARGET).hex program 108 $(BATCHISP) -hardware usb -device $(MCU) -operation loadbuffer $(BUILD_DIR)/$(TARGET).hex program
107 batchisp -hardware usb -device $(MCU) -operation start reset 0 109 $(BATCHISP) -hardware usb -device $(MCU) -operation start reset 0
110
111DFU_PROGRAMMER ?= dfu-programmer
108 112
109dfu: $(BUILD_DIR)/$(TARGET).hex sizeafter 113dfu: $(BUILD_DIR)/$(TARGET).hex sizeafter
110 until dfu-programmer $(MCU) get bootloader-version; do\ 114 until $(DFU_PROGRAMMER) $(MCU) get bootloader-version; do\
111 echo "Error: Bootloader not found. Trying again in 5s." ;\ 115 echo "Error: Bootloader not found. Trying again in 5s." ;\
112 sleep 5 ;\ 116 sleep 5 ;\
113 done 117 done
114ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1))) 118ifneq (, $(findstring 0.7, $(shell $(DFU_PROGRAMMER) --version 2>&1)))
115 dfu-programmer $(MCU) erase --force 119 $(DFU_PROGRAMMER) $(MCU) erase --force
116else 120else
117 dfu-programmer $(MCU) erase 121 $(DFU_PROGRAMMER) $(MCU) erase
118endif 122endif
119 dfu-programmer $(MCU) flash $(BUILD_DIR)/$(TARGET).hex 123 $(DFU_PROGRAMMER) $(MCU) flash $(BUILD_DIR)/$(TARGET).hex
120 dfu-programmer $(MCU) reset 124 $(DFU_PROGRAMMER) $(MCU) reset
121 125
122dfu-start: 126dfu-start:
123 dfu-programmer $(MCU) reset 127 $(DFU_PROGRAMMER) $(MCU) reset
124 dfu-programmer $(MCU) start 128 $(DFU_PROGRAMMER) $(MCU) start
125 129
126flip-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep 130flip-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep
127 $(COPY) $(BUILD_DIR)/$(TARGET).eep $(BUILD_DIR)/$(TARGET)eep.hex 131 $(COPY) $(BUILD_DIR)/$(TARGET).eep $(BUILD_DIR)/$(TARGET)eep.hex
128 batchisp -hardware usb -device $(MCU) -operation memory EEPROM erase 132 $(BATCHISP) -hardware usb -device $(MCU) -operation memory EEPROM erase
129 batchisp -hardware usb -device $(MCU) -operation memory EEPROM loadbuffer $(BUILD_DIR)/$(TARGET)eep.hex program 133 $(BATCHISP) -hardware usb -device $(MCU) -operation memory EEPROM loadbuffer $(BUILD_DIR)/$(TARGET)eep.hex program
130 batchisp -hardware usb -device $(MCU) -operation start reset 0 134 $(BATCHISP) -hardware usb -device $(MCU) -operation start reset 0
131 $(REMOVE) $(BUILD_DIR)/$(TARGET)eep.hex 135 $(REMOVE) $(BUILD_DIR)/$(TARGET)eep.hex
132 136
133dfu-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep 137dfu-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep
134ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1))) 138ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1)))
135 dfu-programmer $(MCU) flash --eeprom $(BUILD_DIR)/$(TARGET).eep 139 $(DFU_PROGRAMMER) $(MCU) flash --eeprom $(BUILD_DIR)/$(TARGET).eep
136else 140else
137 dfu-programmer $(MCU) flash-eeprom $(BUILD_DIR)/$(TARGET).eep 141 $(DFU_PROGRAMMER) $(MCU) flash-eeprom $(BUILD_DIR)/$(TARGET).eep
138endif 142endif
139 dfu-programmer $(MCU) reset 143 $(DFU_PROGRAMMER) $(MCU) reset
140 144
141# Convert hex to bin. 145# Convert hex to bin.
142flashbin: $(BUILD_DIR)/$(TARGET).hex 146flashbin: $(BUILD_DIR)/$(TARGET).hex
diff --git a/tmk_core/chibios.mk b/tmk_core/chibios.mk
index eb0c40138..2a8d32fb9 100644
--- a/tmk_core/chibios.mk
+++ b/tmk_core/chibios.mk
@@ -151,5 +151,7 @@ endif
151# List any extra directories to look for libraries here. 151# List any extra directories to look for libraries here.
152EXTRALIBDIRS = $(RULESPATH)/ld 152EXTRALIBDIRS = $(RULESPATH)/ld
153 153
154DFU_UTIL ?= dfu-util
155
154dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter 156dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter
155 dfu-util $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin 157 $(DFU_UTIL) $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin