aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/xd75
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/xd75')
-rw-r--r--keyboards/xd75/keymaps/bulbizarre/config.h19
-rw-r--r--keyboards/xd75/keymaps/bulbizarre/keymap.c152
-rw-r--r--keyboards/xd75/keymaps/bulbizarre/readme.md4
-rw-r--r--keyboards/xd75/keymaps/bulbizarre/rules.mk16
-rw-r--r--keyboards/xd75/keymaps/msiu/readme.md4
-rw-r--r--keyboards/xd75/keymaps/odyssey/config.h17
-rw-r--r--keyboards/xd75/keymaps/odyssey/keymap.c241
-rw-r--r--keyboards/xd75/keymaps/odyssey/readme.md2
-rw-r--r--keyboards/xd75/keymaps/odyssey/rules.mk3
-rw-r--r--keyboards/xd75/keymaps/pitty/config.h19
-rw-r--r--keyboards/xd75/keymaps/pitty/keymap.c148
-rw-r--r--keyboards/xd75/keymaps/pitty/readme.md3
-rw-r--r--keyboards/xd75/keymaps/pitty/rules.mk (renamed from keyboards/xd75/keymaps/default/rules.mk)0
-rw-r--r--keyboards/xd75/keymaps/xo/config.h19
-rw-r--r--keyboards/xd75/keymaps/xo/keymap.c72
-rw-r--r--keyboards/xd75/keymaps/xo/readme.md6
-rw-r--r--keyboards/xd75/keymaps/xo/rules.mk14
-rw-r--r--keyboards/xd75/rules.mk56
18 files changed, 748 insertions, 47 deletions
diff --git a/keyboards/xd75/keymaps/bulbizarre/config.h b/keyboards/xd75/keymaps/bulbizarre/config.h
new file mode 100644
index 000000000..e6975da8a
--- /dev/null
+++ b/keyboards/xd75/keymaps/bulbizarre/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2017 Benjamin Kesselring
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+// place overrides here
diff --git a/keyboards/xd75/keymaps/bulbizarre/keymap.c b/keyboards/xd75/keymaps/bulbizarre/keymap.c
new file mode 100644
index 000000000..f35eea73c
--- /dev/null
+++ b/keyboards/xd75/keymaps/bulbizarre/keymap.c
@@ -0,0 +1,152 @@
+/* Copyright 2017 Wunder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+
+// Layer shorthand
+#define _QW 0
+#define _FN 1
+#define _FS 2
+
+// Defines the keycodes used by our macros in process_record_user
+enum custom_keycodes {
+ SWITCH_FN = SAFE_RANGE,
+ SWITCH_FS
+};
+
+uint16_t lt12_timer;
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* QWERTY
+ * .--------------------------------------------------------------------------------------------------------------------------------------.
+ * | ESC | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BACKSP |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
+ * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | ENTER | DEL |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
+ * | CAP LK | A | S | D | F | G | H | J | K | L | : | @ | ~ | ENTER | HOME |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
+ * | LSHIFT | Z | X | C | V | B | B | N | M | , | . | / | RSHIFT | UP | END |
+ * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
+ * | LCTRL | DEL | LALT | PSCR | SPACE | SPACE | SPACE | SPACE | ALTGR | FN | FX | RCTRL | LEFT | DOWN | RIGHT |
+ * '--------------------------------------------------------------------------------------------------------------------------------------'
+ */
+
+ [_QW] = LAYOUT_ortho_5x15( /* QWERTY */
+ KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_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_ENT, KC_DEL,
+ 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_NUHS, KC_ENT, KC_HOME,
+ KC_LSFT, KC_BSLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
+ KC_LCTL, KC_DEL, KC_LALT, KC_PSCR, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_ALGR, SWITCH_FN, SWITCH_FS, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+/* FUNCTION
+ * .--------------------------------------------------------------------------------------------------------------------------------------.
+ * | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | = | BACKSP |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
+ * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | ENTER | DEL |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
+ * | CAP LK | A | S | D | F | G | H | J | K | L | : | @ | ~ | ENTER | HOME |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
+ * | LSHIFT | Z | X | C | V | B | B | N | M | , | . | / | RSHIFT | UP | END |
+ * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
+ * | LCTRL | DEL | LALT | PSCR | SPACE | SPACE | SPACE | SPACE | ALTGR | FN | FX | RCTRL | LEFT | DOWN | RIGHT |
+ * '--------------------------------------------------------------------------------------------------------------------------------------'
+ */
+
+ [_FN] = LAYOUT_ortho_5x15( /* FUNCTION */
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_EQL, KC_BSPC,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, TO(_QW), TO(_FS), _______, _______, _______, _______
+ ),
+
+/* FUNCTIONS
+ * .--------------------------------------------------------------------------------------------------------------------------------------.
+ * | ESC | RGB+ | BL_BRT | F3 | F4 | F5 | F6 | F7 | F8 | F9 | / | * | - | + | BACKSP |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
+ * | RGB_H+ | RGB- | BL- | E | R | T | Y | U | I | O | 7 | 8 | 9 | ENTER | DEL |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
+ * | RGB_H- | RGB_M+ | BL+ | VOL+ | F | G | H | J | K | L | 4 | 5 | 6 | ENTER | RESET |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
+ * | RGB_S+ | RGB_M- | BL_S | VOL- | V | B | B | N | M | , | 1 | 2 | 3 | UP | END |
+ * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
+ * | RGB_S- | RGB_T | BL_T | MUTE | SPACE | SPACE | SPACE | SPACE | ALTGR | FN | FX | 0 | . | . | RIGHT |
+ * '--------------------------------------------------------------------------------------------------------------------------------------'
+ */
+
+ [_FS] = LAYOUT_ortho_5x15( /* FUNCTION */
+ _______, RGB_VAI, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, _______,
+ RGB_HUI, RGB_VAD, BL_INC, _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______,
+ RGB_HUD, RGB_RMOD,BL_DEC, KC_VOLU, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, RESET,
+ RGB_SAI, RGB_MOD, BL_STEP, KC_VOLD, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______,
+ RGB_SAD, RGB_TOG, BL_TOGG, KC_MUTE, _______, _______, _______, _______, _______, TO(_FN), TO(_QW), KC_P0, KC_PDOT, KC_DOT, _______
+ )
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case SWITCH_FN:
+ if (record->event.pressed) {
+ lt12_timer = timer_read();
+ layer_on(_FN);
+ gp100_led_on();
+ } else {
+ if (timer_elapsed(lt12_timer) > 200) {
+ layer_off(_FN);
+ gp100_led_off();
+ }
+ }
+ return false;
+ break;
+ case SWITCH_FS:
+ if (record->event.pressed) {
+ lt12_timer = timer_read();
+ layer_on(_FS);
+ gp100_led_on();
+ } else {
+ if (timer_elapsed(lt12_timer) > 200) {
+ layer_off(_FS);
+ gp100_led_off();
+ }
+ }
+ return false;
+ break;
+ }
+ return true;
+}
+
+void matrix_init_user(void) {
+
+}
+
+void matrix_scan_user(void) {
+
+}
+
+void led_set_user(uint8_t usb_led) {
+ if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
+ capslock_led_on();
+ } else {
+ capslock_led_off();
+ }
+ if (IS_LAYER_ON(_FN) || IS_LAYER_ON(_FS)) {
+ gp100_led_on();
+ } else {
+ gp100_led_off();
+ }
+}
diff --git a/keyboards/xd75/keymaps/bulbizarre/readme.md b/keyboards/xd75/keymaps/bulbizarre/readme.md
new file mode 100644
index 000000000..87ee9d705
--- /dev/null
+++ b/keyboards/xd75/keymaps/bulbizarre/readme.md
@@ -0,0 +1,4 @@
+# Bulbizarre keymap
+
+Modified full layout, F-key layer, numpad and function layer.
+Uses backlight, RGB underglow, and tap or hold layer switching keys.
diff --git a/keyboards/xd75/keymaps/bulbizarre/rules.mk b/keyboards/xd75/keymaps/bulbizarre/rules.mk
new file mode 100644
index 000000000..e20fde4ed
--- /dev/null
+++ b/keyboards/xd75/keymaps/bulbizarre/rules.mk
@@ -0,0 +1,16 @@
+# Copyright 2013 Jun Wako <wakojun@gmail.com>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+BACKLIGHT_ENABLE = yes
diff --git a/keyboards/xd75/keymaps/msiu/readme.md b/keyboards/xd75/keymaps/msiu/readme.md
index d53c0f34a..f37eee41a 100644
--- a/keyboards/xd75/keymaps/msiu/readme.md
+++ b/keyboards/xd75/keymaps/msiu/readme.md
@@ -1 +1,3 @@
-# The default keymap for xd75
+# msiu's keymap for xd75
+
+QWERTY keymap for xd75 with centered numpad and standard 40% layers for easy switching between xd75 and contra/planck.
diff --git a/keyboards/xd75/keymaps/odyssey/config.h b/keyboards/xd75/keymaps/odyssey/config.h
new file mode 100644
index 000000000..63eee4ea1
--- /dev/null
+++ b/keyboards/xd75/keymaps/odyssey/config.h
@@ -0,0 +1,17 @@
+#pragma once
+#define MK_3_SPEED
+#define TAPPING_TERM 20
+#define MOUSEKEY_DELAY 100
+#define MOUSEKEY_INTERVAL 20
+#define MOUSEKEY_MAX_SPEED 4
+#define MOUSEKEY_TIME_TO_MAX 10
+#define MOUSEKEY_WHEEL_MAX_SPEED 4
+#define MOUSEKEY_WHEEL_TIME_TO_MAX 10
+#define MK_C_OFFSET_0 4
+#define MK_C_INTERVAL_0 30
+#define MK_C_OFFSET_1 8
+#define MK_C_INTERVAL_1 20
+#define MK_C_OFFSET_2 16
+#define MK_C_INTERVAL_2 20
+#define MK_C_OFFSET_UNMOD 3
+#define MK_C_INTERVAL_UNMOD 25
diff --git a/keyboards/xd75/keymaps/odyssey/keymap.c b/keyboards/xd75/keymaps/odyssey/keymap.c
new file mode 100644
index 000000000..35510379c
--- /dev/null
+++ b/keyboards/xd75/keymaps/odyssey/keymap.c
@@ -0,0 +1,241 @@
+#include QMK_KEYBOARD_H
+
+// Layer shorthand
+#define _QW 0
+#define _CM 1
+#define _FN 2
+
+typedef enum {
+ NONE_NONE,
+ SINGLE_TAP,
+ SINGLE_HOLD,
+ DOUBLE_SINGLE_TAP
+} td_state_t;
+
+static td_state_t td_state = NONE_NONE;
+int cur_dance (qk_tap_dance_state_t *state);
+void altlp_finished (qk_tap_dance_state_t *state, void *user_data);
+void altlp_reset (qk_tap_dance_state_t *state, void *user_data);
+
+// Four differend underglow states for 2 language layouts x 2 states of colemak layer
+enum layer_states {
+ S_ENGLISH,
+ S_COLEMAK,
+ S_CRUSSIAN,
+ S_QRUSSIAN
+} l_state = S_ENGLISH;
+
+// CLMK to toggle colemak (active only with english qwerty, saves intent in russian but does nothing untill switched back to english)
+// RNBW - rainbow underglow
+// PING - ping pong underglow
+// SP_UP/DW - underglow speed controls
+enum custom_keycodes {
+ STUB = SAFE_RANGE,
+ CLMK,
+ RNBW,
+ PING,
+ SP_UP,
+ SP_DW
+};
+
+// Escape if taped, FN layer mod if held
+enum tapdance_codes {
+ LESC
+};
+
+bool sstate = false;
+int rgb = 0;
+int speed = 300;
+
+void set_colors(int r, int g, int b) {
+ for(int i = 0; i<6; i++) {
+ sethsv(r, g, b, (LED_TYPE *)&led[i]);
+ }
+ rgblight_set();
+}
+
+void update_led_state_c(void) {
+ if (rgb>0) return;
+ if (td_state == SINGLE_HOLD) set_colors(HSV_BLUE);
+ else {
+ if (l_state == S_ENGLISH) set_colors(HSV_RED);
+ if (l_state == S_QRUSSIAN) set_colors(HSV_GREEN);
+ if (l_state == S_COLEMAK) set_colors(HSV_YELLOW);
+ if (l_state == S_CRUSSIAN) set_colors(85, 100, 100);
+ }
+}
+
+int cur_dance (qk_tap_dance_state_t *state) {
+ if (state->count == 1) {
+ if (state->interrupted && state->pressed) { return SINGLE_HOLD; }
+ else if (!state->pressed) { return SINGLE_TAP; }
+ else { return SINGLE_HOLD; }
+ }
+ if (state->count == 2) { return DOUBLE_SINGLE_TAP; }
+ else { return 3; }
+}
+
+// Tapdance code stolen long time ago from one of the forum answers i found related to my problem, sadly can't provide link for the credits
+void lesc_finished (qk_tap_dance_state_t *state, void *user_data) {
+ td_state = cur_dance(state);
+ switch (td_state) {
+ case SINGLE_TAP:
+ register_code16(KC_ESC);
+ break;
+ case SINGLE_HOLD:
+ layer_on(_FN);
+ update_led_state_c();
+ sstate = false;
+ break;
+ case DOUBLE_SINGLE_TAP:
+ break;
+ case NONE_NONE:
+ break;
+ }
+}
+
+void lesc_reset (qk_tap_dance_state_t *state, void *user_data) {
+ switch (td_state) {
+ case SINGLE_TAP:
+ unregister_code16(KC_ESC);
+ break;
+ case SINGLE_HOLD:
+ layer_off(_FN);
+ if (sstate == false) {
+ register_code16(KC_ESC);
+ unregister_code16(KC_ESC);
+ }
+ break;
+ case DOUBLE_SINGLE_TAP:
+ break;
+ case NONE_NONE:
+ break;
+ }
+ td_state = NONE_NONE;
+ update_led_state_c();
+}
+
+qk_tap_dance_action_t tap_dance_actions[] = {
+ [LESC] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, lesc_finished, lesc_reset)
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_QW] = LAYOUT_ortho_5x15( /* QWERTY */
+KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, RNBW, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_BSLS, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_QUOT,
+KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, CLMK, KC_DEL, SP_UP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
+KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, _______, KC_UP, SP_DW, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+KC_LCTL, LSFT(KC_9), KC_LALT, KC_LGUI, TD(LESC),KC_SPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_ENT, TD(LESC),KC_RGUI, KC_RALT, RSFT(KC_0),KC_RCTL
+ ),
+ [_CM] = LAYOUT_ortho_5x15( /* COLEMAK */
+_______, _______, _______, _______, _______, _______, _______, PING, _______, _______, _______, _______, _______, _______, _______,
+_______, KC_Q, KC_W, KC_F, KC_P, KC_Z, _______, _______, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_SLSH,
+_______, KC_A, KC_R, KC_S, KC_T, KC_G, _______, _______, _______, KC_M, KC_N, KC_E, KC_I, KC_O, _______,
+_______, KC_X, KC_V, KC_C, KC_D, KC_B, _______, _______, _______, KC_K, KC_H, KC_DOT, KC_COMM, KC_QUOT, _______,
+_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+ [_FN] = LAYOUT_ortho_5x15( /* FUNCTION */
+KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_P7, KC_P8, KC_P9, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+RESET, KC_BTN1, KC_MS_U, KC_BTN2, KC_BTN3, KC_WH_U, KC_P4, KC_P5, KC_P6, _______, _______, _______, RSFT(KC_MINS), LSFT(KC_MINS), _______,
+_______, KC_MS_L, KC_MS_D, KC_MS_R, KC_MINS, KC_WH_D, KC_P1, KC_P2, KC_P3, _______, KC_PPLS, KC_ACL0, KC_ACL1, KC_ACL2, _______,
+_______, KC_ACL0, KC_ACL1, KC_ACL2, KC_WH_L, KC_WH_R, KC_NLCK, KC_PGUP, KC_P0, _______, _______, _______, _______, _______, _______,
+RGB_TOG, _______, _______, _______, KC_BSPC, KC_BSPC, KC_HOME, KC_PGDN, KC_END, KC_BSPC, KC_BSPC, _______, _______, _______, _______
+ )
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ if(keycode != TD(LESC))
+ sstate = true;
+ switch (keycode) {
+ case SP_UP:
+ if (speed>25)
+ speed -= 25;
+ break;
+ case SP_DW:
+ if (speed < 1000)
+ speed += 25;
+ break;
+ case RNBW:
+ if(record->event.pressed) {
+ rgb = rgb == 0 ? 1 : 0;
+ update_led_state_c();
+ }
+ break;
+ case PING:
+ if(record->event.pressed) {
+ rgb = rgb == 0 ? 2 : 0;
+ update_led_state_c();
+ }
+ break;
+ case CLMK:
+ if(record->event.pressed) {
+ if (l_state == S_COLEMAK) {
+ layer_off(_CM);
+ l_state = S_ENGLISH;
+ }
+ else if (l_state == S_ENGLISH) {
+ layer_on(_CM);
+ l_state = S_COLEMAK;
+ }
+ else if (l_state == S_CRUSSIAN) { l_state = S_QRUSSIAN; }
+ else if (l_state == S_QRUSSIAN) { l_state = S_CRUSSIAN; }
+ }
+ update_led_state_c();
+ break;
+ case KC_CAPS:
+ if(record->event.pressed) {
+ if (l_state == S_ENGLISH) l_state = S_QRUSSIAN;
+ else if (l_state == S_QRUSSIAN) l_state = S_ENGLISH;
+ else if (l_state == S_COLEMAK) {
+ layer_off(_CM);
+ l_state = S_CRUSSIAN;
+ }
+ else if (l_state == S_CRUSSIAN) {
+ layer_on(_CM);
+ l_state = S_COLEMAK;
+ }
+ update_led_state_c();
+ }
+ break;
+ }
+ return true;
+}
+
+void matrix_init_user(void) { }
+
+// Rainbow globals
+int t = 0;
+int rc = 0;
+int col = 0;
+bool right = false;
+
+void matrix_scan_user(void) {
+ if (rgb==0) return; // Do nothing each tick right away if neither of animations enabled
+ if (rgb==1) {
+ if (rc == 0) {
+ rc = speed;
+ for(int i = 0; i<6; i++) {
+ sethsv(42*((t+i)%6), 255, 255, (LED_TYPE *)&led[i]);
+ }
+ rgblight_set();
+ t++; t = t % 6;
+ }
+ } else if (rgb==2) {
+ if (rc == 0) {
+ rc = speed;
+ col = (col + 1) % 36;
+ for (int i = 0; i<6; i++) {
+ if (i==t)
+ sethsv(42*(((col-1)/6)%6), 255, 255, (LED_TYPE *)&led[(right ? t : 5-t)]);
+ else
+ sethsv(0, 0, 0, (LED_TYPE *)&led[right ? i : 5-i]);
+ }
+ rgblight_set();
+ t++; t = t % 6;
+ if (t == 0) right = !right;
+ }
+ }
+ rc--;
+}
+
+void led_set_user(uint8_t usb_led) { }
diff --git a/keyboards/xd75/keymaps/odyssey/readme.md b/keyboards/xd75/keymaps/odyssey/readme.md
new file mode 100644
index 000000000..668c2bf23
--- /dev/null
+++ b/keyboards/xd75/keymaps/odyssey/readme.md
@@ -0,0 +1,2 @@
+Personal keymap of flutterlice
+Called Odyssey because it took me what feels like ten year to come up with perfect keymap that satisfied all my needs.
diff --git a/keyboards/xd75/keymaps/odyssey/rules.mk b/keyboards/xd75/keymaps/odyssey/rules.mk
new file mode 100644
index 000000000..5d80f2004
--- /dev/null
+++ b/keyboards/xd75/keymaps/odyssey/rules.mk
@@ -0,0 +1,3 @@
+TAP_DANCE_ENABLE=yes
+MOUSEKEY_ENABLE=yes
+COMMAND_ENABLE=no
diff --git a/keyboards/xd75/keymaps/pitty/config.h b/keyboards/xd75/keymaps/pitty/config.h
new file mode 100644
index 000000000..e6975da8a
--- /dev/null
+++ b/keyboards/xd75/keymaps/pitty/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2017 Benjamin Kesselring
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+// place overrides here
diff --git a/keyboards/xd75/keymaps/pitty/keymap.c b/keyboards/xd75/keymaps/pitty/keymap.c
new file mode 100644
index 000000000..955ae59ed
--- /dev/null
+++ b/keyboards/xd75/keymaps/pitty/keymap.c
@@ -0,0 +1,148 @@
+/* Copyright 2017 Wunder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+#include "keymap_hungarian.h"
+
+enum XD75_layers {
+ _QWERTY,
+ _GAME,
+ _LOWER,
+ _RAISE
+};
+
+
+// Defines the keycodes used by our macros in process_record_user
+enum custom_keycodes {
+ QWERTY = SAFE_RANGE,
+ GAME,
+ LOWER,
+ RAISE,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+
+/* Qwerty
+ * ,--------------------------------------------------------------------------------------------------------.
+ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Ö | Ü | Ó | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | TAB | Q | W | E | R | T | Z | U | I | O | P | Ő | Ú | | |
+ * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | É | Á | Ű | | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------+------+------+------|
+ * | Shift| Y | X | C | V | B | N | M | , | . | - | Shift| | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Ctrl | GUI | ALt |Lower | Space | Enter| Bksp |AltGr | Raise| | | | | |
+ * `--------------------------------------------------------------------------------------------------------'
+ */
+[_QWERTY] = LAYOUT_ortho_5x15( \
+ HU_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, HU_OE, HU_UE, HU_OO, KC_INS, KC_PGUP, \
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, HU_Z, KC_U, KC_I, KC_O, KC_P, HU_OEE, HU_UU, KC_DEL, KC_PGDN, \
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, HU_EE, HU_AA, HU_UEE, _______, KC_HOME, \
+ MT(MOD_LSFT, KC_NUBS), HU_Y, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, HU_COMM, HU_DOT, HU_MINS, KC_RSFT, HU_EQL, KC_UP, KC_END, \
+ KC_LCTL, KC_LGUI, KC_LALT, TT(_LOWER), KC_SPC, _______, KC_ENT, KC_BSPC, KC_RALT, TT(_RAISE), _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT \
+),
+
+
+/* Game
+ * ,--------------------------------------------------------------------------------------------------------.
+ * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Ö | Ü | Ó | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | TAB | Q | W | E | R | T | Z | U | I | O | P | Ő | Ú | | |
+ * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | É | Á | Ű | | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------+------+------+------|
+ * | Shift| Y | X | C | V | B | N | M | , | . | - | Shift| | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Ctrl | GUI | ALt |Raise | Space | Enter| Bksp |AltGr | Lower| | | | | |
+ * `--------------------------------------------------------------------------------------------------------'
+ */
+[_GAME] = LAYOUT_ortho_5x15( \
+ HU_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, HU_OE, HU_UE, HU_OO, KC_INS, KC_PGUP, \
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, HU_Z, KC_U, KC_I, KC_O, KC_P, HU_OEE, HU_UU, KC_DEL, KC_PGDN, \
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, HU_EE, HU_AA, HU_UEE, _______, KC_HOME, \
+ KC_LSFT, HU_Y, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, HU_COMM, HU_DOT, HU_MINS, KC_RSFT, HU_EQL, KC_UP, KC_END, \
+ KC_LCTL, KC_LGUI, KC_LALT, TT(_RAISE), KC_SPC, _______, KC_ENT, KC_BSPC, KC_RALT, TT(_LOWER), _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT \
+),
+
+
+/* Lower
+ * ,--------------------------------------------------------------------------------------------------------.
+ * | | | | | | | | 7 | 8 | 9 | + | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | Up | | | | | 4 | 5 | 6 | - | | | | |
+ * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
+ * | | Left | Down | Right| | | | 1 | 2 | 3 | * | | | | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------+------+------+------|
+ * | | | |Lnxcpy|Lnxpst| | | 0 | | | / | = | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Home |PageDn|PageUp| End | | | |
+ * `--------------------------------------------------------------------------------------------------------'
+ */
+[_LOWER] = LAYOUT_ortho_5x15( \
+ _______, _______, _______, _______, _______, _______, _______, HU_7, HU_8, HU_9, HU_PLUS, _______, _______, _______, _______, \
+ _______, _______, KC_UP, _______, _______, _______, _______, HU_4, HU_5, HU_6, HU_MINS, _______, _______, _______, _______, \
+ _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, HU_1, HU_2, HU_3, HU_ASTR, _______, _______, _______, _______, \
+ _______, _______, _______, _______, _______, _______, _______, HU_0, _______, _______, HU_SLSH, HU_EQL, _______, _______, _______, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TO(_GAME), TO(_QWERTY), _______, _______, _______ \
+),
+
+/* Raise
+ * ,--------------------------------------------------------------------------------------------------------.
+ * | F12 | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | Up | | | | | | | | | | | | |
+ * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
+ * | | Left | Down | Right| | | | | | | | | | | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Home |PageDn|PageUp| End | | | |
+ * `--------------------------------------------------------------------------------------------------------'
+ */
+[_RAISE] = LAYOUT_ortho_5x15( \
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, \
+ _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TO(_GAME), TO(_QWERTY), _______, _______, _______ \
+),
+
+
+
+};
+
+
+
+layer_state_t layer_state_set_user(layer_state_t state) {
+ switch (get_highest_layer(state)) {
+ case _RAISE:
+ rgblight_setrgb (0xC3, 0xFF, 0xFF);
+ rgblight_mode(5);
+ break;
+ case _LOWER:
+ rgblight_setrgb (0xFF, 0xFF, 0xFF);
+ rgblight_mode(5);
+ break;
+ case _GAME:
+ rgblight_mode(8);
+ break;
+ default: // for any other layers, or the default layer
+ rgblight_mode(14);
+ break;
+ }
+ return state;
+}
diff --git a/keyboards/xd75/keymaps/pitty/readme.md b/keyboards/xd75/keymaps/pitty/readme.md
new file mode 100644
index 000000000..b0cc42997
--- /dev/null
+++ b/keyboards/xd75/keymaps/pitty/readme.md
@@ -0,0 +1,3 @@
+My keymap for the XD75
+
+Including Hungarian characters and layer reactive underglow. \ No newline at end of file
diff --git a/keyboards/xd75/keymaps/default/rules.mk b/keyboards/xd75/keymaps/pitty/rules.mk
index 52a8f38d4..52a8f38d4 100644
--- a/keyboards/xd75/keymaps/default/rules.mk
+++ b/keyboards/xd75/keymaps/pitty/rules.mk
diff --git a/keyboards/xd75/keymaps/xo/config.h b/keyboards/xd75/keymaps/xo/config.h
new file mode 100644
index 000000000..31cdef257
--- /dev/null
+++ b/keyboards/xd75/keymaps/xo/config.h
@@ -0,0 +1,19 @@
+/* This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#define TAPPING_TOGGLE 2
+#define PERMISSIVE_HOLD
+#define TAPPING_TERM 150
diff --git a/keyboards/xd75/keymaps/xo/keymap.c b/keyboards/xd75/keymaps/xo/keymap.c
new file mode 100644
index 000000000..6fe547e87
--- /dev/null
+++ b/keyboards/xd75/keymaps/xo/keymap.c
@@ -0,0 +1,72 @@
+/* This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+// You might want to alter this to something that matches the keycap LED colors
+// you installed.
+#define BASE_COLOR RGB_ORANGE
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [0] = LAYOUT_ortho_5x15(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_GRV, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_BSLS, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
+ KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_DEL, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, LCTL_T(KC_Z), LALT_T(KC_X), KC_C, KC_V, KC_B, KC_END, KC_UP, KC_PGDN, KC_N, KC_M, KC_COMM, RALT_T(KC_DOT), RCTL_T(KC_SLSH), KC_RSFT,
+ TT(1), KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_SPC, KC_ENT, KC_RGUI, KC_RALT, KC_RCTL, TT(1)),
+ [1] = LAYOUT_ortho_5x15(
+ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_P7, KC_P8, KC_P9, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+ LCTL(KC_GRV), KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P4, KC_P5, KC_P6, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18,
+ KC_CAPSLOCK, KC_TRNS, KC_TRNS, KC_MSTP, RGB_SAD, RGB_SAI, KC_P1, KC_P2, KC_P3, KC_PLUS, KC_TRNS, RESET, KC_MUTE, KC_VOLD, KC_VOLU,
+ MO(2), KC_PSCR, KC_PAUS, KC_APP, RGB_VAD, RGB_VAI, KC_P0, KC_SLSH, KC_PDOT, KC_PENT, KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT,
+ TG(1), KC_TRNS, RGB_TOG, KC_SLCK, RGB_RMOD, RGB_MOD, KC_NLCK, KC_TRNS, KC_ASTR, KC_PENT, KC_PENT, MO(1), KC_TRNS, KC_TRNS, TG(1)),
+ [2] = LAYOUT_ortho_5x15(
+ RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, BL_DEC, BL_INC, BL_TOGG,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_HUD, RGB_HUI, RGB_VAD, RGB_VAI, RGB_TOG)
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ if (record->event.pressed) {
+ backlight_level(4);
+ } else {
+ backlight_level(6);
+ }
+
+ if (IS_MOD(keycode)) {
+ if (record->event.pressed) {
+ rgblight_setrgb(RGB_RED);
+ } else {
+ rgblight_setrgb(BASE_COLOR);
+ }
+ }
+
+ return true;
+}
+
+layer_state_t layer_state_set_user(layer_state_t state) {
+ switch (get_highest_layer(state)) {
+ case 0:
+ rgblight_setrgb(BASE_COLOR);
+ break;
+ case 1:
+ rgblight_setrgb(RGB_AZURE);
+ break;
+ case 2:
+ rgblight_setrgb(RGB_PURPLE);
+ break;
+ }
+ return state;
+}
diff --git a/keyboards/xd75/keymaps/xo/readme.md b/keyboards/xd75/keymaps/xo/readme.md
new file mode 100644
index 000000000..d8ecb1c2a
--- /dev/null
+++ b/keyboards/xd75/keymaps/xo/readme.md
@@ -0,0 +1,6 @@
+# xster's keymap
+
+My layout preferences. Done on a xd75 that had keycap LEDs.
+
+It has reactive keypress keycap light dimming. Layers and modifiers have
+RGB underlit colors.
diff --git a/keyboards/xd75/keymaps/xo/rules.mk b/keyboards/xd75/keymaps/xo/rules.mk
new file mode 100644
index 000000000..baa653f78
--- /dev/null
+++ b/keyboards/xd75/keymaps/xo/rules.mk
@@ -0,0 +1,14 @@
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+BACKLIGHT_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/xd75/rules.mk b/keyboards/xd75/rules.mk
index e99272943..9052c8c12 100644
--- a/keyboards/xd75/rules.mk
+++ b/keyboards/xd75/rules.mk
@@ -1,51 +1,15 @@
# MCU name
-#MCU = at90usb1286
MCU = atmega32u4
-# Processor frequency.
-# This will define a symbol, F_CPU, in all source code files equal to the
-# processor frequency in Hz. You can then use this symbol in your source code to
-# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
-# automatically to create a 32-bit value in your source code.
-#
-# This will be an integer division of F_USB below, as it is sourced by
-# F_USB after it has run through any CPU prescalers. Note that this value
-# does not *change* the processor frequency - it should merely be updated to
-# reflect the processor speed set externally so that the code can use accurate
-# software delays.
-F_CPU = 16000000
-
-
-#
-# LUFA specific
-#
-# Target architecture (see library "Board Types" documentation).
-ARCH = AVR8
-
-# Input clock frequency.
-# This will define a symbol, F_USB, in all source code files equal to the
-# input clock frequency (before any prescaling is performed) in Hz. This value may
-# differ from F_CPU if prescaling is used on the latter, and is required as the
-# raw input clock is fed directly to the PLL sections of the AVR for high speed
-# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
-# at the end, this will be done automatically to create a 32-bit value in your
-# source code.
-#
-# If no clock division is performed on the input clock inside the AVR (via the
-# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
-F_USB = $(F_CPU)
-
-# Interrupt driven control endpoint task(+60)
-OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
-
-
-# Boot Section Size in *bytes*
-# Teensy halfKay 512
-# Teensy++ halfKay 1024
-# Atmel DFU loader 4096
-# LUFA bootloader 4096
-# USBaspLoader 2048
-OPT_DEFS += -DBOOTLOADER_SIZE=4096
+# Bootloader selection
+# Teensy halfkay
+# Pro Micro caterina
+# Atmel DFU atmel-dfu
+# LUFA DFU lufa-dfu
+# QMK DFU qmk-dfu
+# ATmega32A bootloadHID
+# ATmega328P USBasp
+BOOTLOADER = atmel-dfu
# QMK Build Options
# change to "no" to disable the options, or define them in the Makefile in
@@ -65,4 +29,4 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-LAYOUTS = ortho_5x15 \ No newline at end of file
+LAYOUTS = ortho_5x15