diff --git a/keyboards/kyria/keymaps/drashna/config.h b/keyboards/kyria/keymaps/drashna/config.h
index f93069ac..88a81cea 100644
--- a/keyboards/kyria/keymaps/drashna/config.h
+++ b/keyboards/kyria/keymaps/drashna/config.h
@@ -17,6 +17,7 @@
#pragma once
#define EE_HANDS
+#define MASTER_LEFT
#ifdef OLED_DRIVER_ENABLE
# define OLED_DISPLAY_128X64
@@ -39,3 +40,8 @@
#define SPLIT_USB_TIMEOUT 1000
#define KEYLOGGER_LENGTH 10
+
+#define ENCODER_RESOLUTION 2
+
+#define LEADER_PER_KEY_TIMING
+#define LEADER_TIMEOUT 350
diff --git a/keyboards/kyria/keymaps/drashna/keymap.c b/keyboards/kyria/keymaps/drashna/keymap.c
index 5e97ca55..1f789d6a 100644
--- a/keyboards/kyria/keymaps/drashna/keymap.c
+++ b/keyboards/kyria/keymaps/drashna/keymap.c
@@ -1,5 +1,8 @@
#include "drashna.h"
+// make kyria/rev1:drashna:avrdude-split-let
+
+
uint8_t is_master;
#ifndef UNICODE_ENABLE
@@ -20,12 +23,13 @@ uint8_t is_master;
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
) \
- LAYOUT_wrapper( \
- KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_MINS, \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(KC_QUOT), \
- OS_LSFT, CTL_T(K21), K22, K23, K24, K25, KC_NO, MEH(KC_MINS), TG(_DIABLO), KC_NO, K26, K27, K28, K29, RCTL_T(K2A), OS_RSFT, \
- KC_MUTE, OS_LALT, KC_GRV, KC_SPC, BK_LWER, DL_RAIS, KC_ENT, OS_RGUI, UC(0x03A8), UC(0x2E2E) \
+ LAYOUT_wrapper( \
+ KC_ESC, K01, K02, K03, K04, K05, /*----*/ K06, K07, K08, K09, K0A, KC_BSPC, \
+ KC_LSFT, K11, K12, K13, K14, K15, /*----*/ K16, K17, K18, K19, K1A, KC_QUOT, \
+ KC_LCTL, K21, K22, K23, K24, K25, KC_CCCV, KC_NO, /*----*/ KC_LEAD, TG(_WARCRAFT), K26, K27, K28, K29, K2A, KC_MINS, \
+ LGUI(0), KC_LALT, LT(_NAV, KC_SPC), MO(_LOWER), KC_ENT, /*----*/ KC_DEL, MO(_RAISE), LT(_NAV, KC_SPC), KC_TAB, KC_RALT \
)
+
/* Re-pass though to allow templates to be used */
#define LAYOUT_kyria_base_wrapper(...) LAYOUT_kyria_base(__VA_ARGS__)
@@ -37,53 +41,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_________________QWERTY_L3_________________, _________________QWERTY_R3_________________
),
- [_COLEMAK] = LAYOUT_kyria_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DVORAK] = LAYOUT_kyria_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
[_WORKMAN] = LAYOUT_kyria_base_wrapper(
_________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
_________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________
),
- [_NORMAN] = LAYOUT_kyria_base_wrapper(
- _________________NORMAN_L1_________________, _________________NORMAN_L1_________________,
- _________________NORMAN_L2_________________, _________________NORMAN_R2_________________,
- _________________NORMAN_L3_________________, _________________NORMAN_R3_________________
- ),
-
- [_MALTRON] = LAYOUT_kyria_base_wrapper(
- _________________MALTRON_L1________________, _________________MALTRON_R1________________,
- _________________MALTRON_L2________________, _________________MALTRON_R2________________,
- _________________MALTRON_L3________________, _________________MALTRON_R3________________
- ),
-
- [_EUCALYN] = LAYOUT_kyria_base_wrapper(
- _________________EUCALYN_L1________________, _________________EUCALYN_R1________________,
- _________________EUCALYN_L2________________, _________________EUCALYN_R2________________,
- _________________EUCALYN_L3________________, _________________EUCALYN_R3________________
- ),
-
- [_CARPLAX] = LAYOUT_kyria_base_wrapper(
- _____________CARPLAX_QFMLWY_L1_____________, _____________CARPLAX_QFMLWY_R1_____________,
- _____________CARPLAX_QFMLWY_L2_____________, _____________CARPLAX_QFMLWY_R2_____________,
- _____________CARPLAX_QFMLWY_L3_____________, _____________CARPLAX_QFMLWY_R3_____________
- ),
-
[_MODS] = LAYOUT_wrapper(
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- KC_LSFT, ___________________BLANK___________________, _______, _______, _______, _______, ___________________BLANK___________________, KC_RSFT,
- _______, _______, KC_LALT, _______, _______, _______, _______, KC_RGUI, _______, _______
+ KC_LSFT, ___________________BLANK___________________, ___________________BLANK___________________, _______,
+ KC_LCTL, ___________________BLANK___________________, _______, _______, _______, _______, ___________________BLANK___________________, _______,
+ KC_LGUI, KC_LALT, _______, _______, _______, _______, _______, _______, _______, KC_RALT
),
[_DIABLO] = LAYOUT_wrapper(
KC_ESC, KC_S, KC_I, KC_F, KC_M, KC_T, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO,
@@ -91,23 +59,33 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, KC_J, KC_L, TG(_DIABLO), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_DIABLO_CLEAR, KC_J, KC_NO, SFT_T(KC_SPACE), ALT_T(KC_Q), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
),
- [_LOWER] = LAYOUT_wrapper(
- KC_F12, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F11,
- _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _______, _______, _______, _______, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+
+ [_WARCRAFT] = LAYOUT_wrapper(
+ KC_ESC , KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , _______, _______, _______, _______, _______, _______,
+ KC_LSFT, LSFT(KC_GRV), KC_Q , KC_W , KC_E , LSFT(KC_R) , _______, _______, _______, _______, _______, _______,
+ KC_LCTL, KC_F , KC_A , KC_S , KC_D , LSFT(KC_F) , _______, _______, KC_M , _______ , _______, _______, _______, _______, _______, _______,
+ _______, KC_TAB , KC_SPC , KC_C , KC_T , KC_B , KC_I , _______, KC_DOT , _______
),
- [_RAISE] = LAYOUT_wrapper(
- KC_F12, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_F11,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _______, _______, _______, _______, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+
+ [_LOWER] = LAYOUT_kyria_base_wrapper(
+ _________________LOWER_L1__________________, _________________LOWER_R1__________________,
+ _________________LOWER_L2__________________, _________________LOWER_R2__________________,
+ _________________LOWER_L3__________________, _________________LOWER_R3__________________
),
- [_ADJUST] = LAYOUT_wrapper(
- KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RESET,
- VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EEP_RST,
- _______, _________________ADJUST_L3_________________, HPT_TOG, HPT_FBK, MG_NKRO, UC_MOD, _________________ADJUST_R3_________________, TG_MODS,
- _______, _______, _______, KC_NUKE, _______, _______, _______, _______, _______, _______
+ [_RAISE] = LAYOUT_kyria_base_wrapper(
+ _________________RAISE_L1__________________, _________________RAISE_R1__________________,
+ _________________RAISE_L2__________________, _________________RAISE_R2__________________,
+ _________________RAISE_L3__________________, _________________RAISE_R3__________________
+ ),
+ [_ADJUST] = LAYOUT_kyria_base_wrapper(
+ _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
+ _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
+ _________________ADJUST_L3_________________, _________________ADJUST_R3_________________
+ ),
+ [_NAV] = LAYOUT_kyria_base_wrapper(
+ ___________________NAV_L1__________________, ___________________NAV_R1__________________,
+ ___________________NAV_L2__________________, ___________________NAV_R2__________________,
+ ___________________NAV_L3__________________, ___________________NAV_R3__________________
),
// [_LAYERINDEX] = LAYOUT_wrapper(
// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@@ -153,22 +131,3 @@ void oled_driver_render_logo(void) {
# endif
#endif
-#ifdef ENCODER_ENABLE
-void encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- // Volume control
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- } else if (index == 1) {
- // Page up/Page down
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- }
-}
-#endif
diff --git a/keyboards/kyria/keymaps/drashna/rules.mk b/keyboards/kyria/keymaps/drashna/rules.mk
index 2486ecd5..f694bde0 100644
--- a/keyboards/kyria/keymaps/drashna/rules.mk
+++ b/keyboards/kyria/keymaps/drashna/rules.mk
@@ -2,6 +2,7 @@ OLED_DRIVER_ENABLE = yes # Enables the use of OLED displays
ENCODER_ENABLE = yes # ENables the use of one or more encoders
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
RGBLIGHT_STARTUP_ANIMATION = no
+LEADER_ENABLE = yes
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
MOUSEKEY_ENABLE = no # Mouse keys
@@ -11,7 +12,7 @@ COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # USB Nkey Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default
MIDI_ENABLE = no # MIDI support
-UNICODE_ENABLE = yes # Unicode
+UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE = no # Audio output on port C6
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
@@ -20,5 +21,7 @@ HD44780_ENABLE = no # Enable support for HD44780 based LCDs
BOOTLOADER = atmel-dfu
SPLIT_TRANSPORT = mirror
+SPLIT_KEYBOARD = yes
TAP_DANCE_ENABLE = yes
+
diff --git a/keyboards/massdrop/alt/keymaps/drashna/config.h b/keyboards/massdrop/alt/keymaps/drashna/config.h
index 1711544f..252f5448 100644
--- a/keyboards/massdrop/alt/keymaps/drashna/config.h
+++ b/keyboards/massdrop/alt/keymaps/drashna/config.h
@@ -20,4 +20,6 @@
// place overrides here
#define LEADER_PER_KEY_TIMING
-#define LEADER_TIMEOUT 350
\ No newline at end of file
+#define LEADER_TIMEOUT 350
+
+#define DROP_ALT
\ No newline at end of file
diff --git a/keyboards/massdrop/alt/keymaps/drashna/keymap.c b/keyboards/massdrop/alt/keymaps/drashna/keymap.c
index 5115631c..0abbb089 100644
--- a/keyboards/massdrop/alt/keymaps/drashna/keymap.c
+++ b/keyboards/massdrop/alt/keymaps/drashna/keymap.c
@@ -1,44 +1,62 @@
+#include "drashna.h"
#include QMK_KEYBOARD_H
-enum alt_keycodes {
- U_T_AUTO = SAFE_RANGE, //USB Extra Port Toggle Auto Detect / Always Active
- U_T_AGCR, //USB Toggle Automatic GCR control
- DBG_TOG, //DEBUG Toggle On / Off
- DBG_MTRX, //DEBUG Toggle Matrix Prints
- DBG_KBD, //DEBUG Toggle Keyboard Prints
- DBG_MOU, //DEBUG Toggle Mouse Prints
- MD_BOOT, //Restart into bootloader after hold timeout
-};
+// clang-format off
+#define LAYOUT_dropALT_base( \
+ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
+ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
+ K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
+ ) \
+ LAYOUT_wrapper( \
+ KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_DEL , \
+ KC_TAB , K01 , K02 , K03 , K04 , K05 , K06 , K07 , K08 , K09 , K0A , KC_LBRC, KC_RBRC, KC_BSLS, RGB_TOG, \
+ KC_CAPS, K11 , K12 , K13 , K14 , K15 , K16 , K17 , K18 , K19 , K1A , KC_QUOT, KC_ENT , KC_HOME, \
+ KC_LSFT, K21 , K22 , K23 , K24 , K25 , K26 , K27 , K28 , K29 , K2A , KC_RSFT, KC_UP , KC_END , \
+ KC_LCTL, KC_LGUI, KC_LALT, LT(_NAV, KC_SPC), KC_RALT, KC_LEAD, KC_LEFT, KC_DOWN, KC_RIGHT \
+ )
-keymap_config_t keymap_config;
+
+/* Re-pass though to allow templates to be used */
+#define LAYOUT_dropALT_base_wrapper(...) LAYOUT_dropALT_base(__VA_ARGS__)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_65_ansi_blocker(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL, \
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME, \
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP, \
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, \
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT \
- ),
- [1] = LAYOUT_65_ansi_blocker(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_MUTE, \
- _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, U_T_AUTO,U_T_AGCR,_______, KC_PSCR, KC_SLCK, KC_PAUS, _______, KC_END, \
- _______, RGB_RMOD,RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, \
- _______, RGB_TOG, _______, _______, _______, MD_BOOT, NK_TOGG, DBG_TOG, _______, _______, _______, _______, KC_PGUP, KC_VOLD, \
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END \
- ),
- /*
- [X] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- ),
- */
-};
+ [_QWERTY] = LAYOUT_dropALT_base_wrapper(
+ _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
+ _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
+ _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
+ ),
-#define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
-#define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
-#define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
+ [_WORKMAN] = LAYOUT_dropALT_base_wrapper(
+ _________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
+ _________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
+ _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
+ ),
+
+ [_LOWER] = LAYOUT_dropALT_base_wrapper(
+ _________________LOWER_L1__________________, _________________LOWER_R1__________________,
+ _________________LOWER_L2__________________, _________________LOWER_R2__________________,
+ _________________LOWER_L3__________________, _________________LOWER_R3__________________
+ ),
+ [_RAISE] = LAYOUT_dropALT_base_wrapper(
+ _________________RAISE_L1__________________, _________________RAISE_R1__________________,
+ _________________RAISE_L2__________________, _________________RAISE_R2__________________,
+ _________________RAISE_L3__________________, _________________RAISE_R3__________________
+ ),
+ [_ADJUST] = LAYOUT_dropALT_base_wrapper(
+ _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
+ _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
+ _________________ADJUST_L3_________________, _________________ADJUST_R3_________________
+ ),
+ [_NAV] = LAYOUT_dropALT_base_wrapper(
+ ___________________NAV_L1__________________, ___________________NAV_R1__________________,
+ ___________________NAV_L2__________________, ___________________NAV_R2__________________,
+ ___________________NAV_L3__________________, ___________________NAV_R3__________________
+ ),
+// [_LAYERINDEX] = LAYOUT_wrapper(
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+// ),
+};
\ No newline at end of file
diff --git a/keyboards/massdrop/alt/keymaps/drashna/rules.mk b/keyboards/massdrop/alt/keymaps/drashna/rules.mk
index 7c9dd315..fa8c0cdd 100644
--- a/keyboards/massdrop/alt/keymaps/drashna/rules.mk
+++ b/keyboards/massdrop/alt/keymaps/drashna/rules.mk
@@ -1,12 +1,12 @@
+LEADER_ENABLE = yes
+DROP_ALT = yes
+
#For platform and packs
ARM_ATSAM = SAMD51J18A
MCU = cortex-m4
CUSTOM_MATRIX = yes
-RGBLIGHT_STARTUP_ANIMATION = no
-LEADER_ENABLE = yes
-KEYLOGGER_ENABLE = no
-OLED_DRIVER_ENABLE = no
+
# Build Options
# comment out to disable the options.
#
@@ -21,7 +21,6 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
NKRO_ENABLE = yes # USB Nkey Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-RGB_MATRIX_ENABLE = no
MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
@@ -30,7 +29,4 @@ FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
VIRTSER_ENABLE = no # USB Serial Driver
RAW_ENABLE = no # Raw device
-AUTO_SHIFT_ENABLE = no # Auto Shift
-
-# This keymap requires Massdrop Configurator support
-# OPT_DEFS += -DUSE_MASSDROP_CONFIGURATOR
\ No newline at end of file
+AUTO_SHIFT_ENABLE = no # Auto Shift
\ No newline at end of file
diff --git a/keyboards/massdrop/alt/keymaps/frederik/config.h b/keyboards/massdrop/alt/keymaps/frederik/config.h
new file mode 100644
index 00000000..99029356
--- /dev/null
+++ b/keyboards/massdrop/alt/keymaps/frederik/config.h
@@ -0,0 +1,25 @@
+/* Copyright 2018 Carlos Filoteo
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#include "config_common.h"
+
+// place overrides here
+#define LEADER_PER_KEY_TIMING
+#define LEADER_TIMEOUT 350
+
+#define DROP_ALT
diff --git a/keyboards/massdrop/alt/keymaps/frederik/rules.mk b/keyboards/massdrop/alt/keymaps/frederik/rules.mk
index d0d2ef6d..b6a85505 100644
--- a/keyboards/massdrop/alt/keymaps/frederik/rules.mk
+++ b/keyboards/massdrop/alt/keymaps/frederik/rules.mk
@@ -1 +1,30 @@
LEADER_ENABLE = yes
+#For platform and packs
+ARM_ATSAM = SAMD51J18A
+MCU = cortex-m4
+
+CUSTOM_MATRIX = yes
+
+# Build Options
+# comment out to disable the options.
+#
+BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = no # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+CONSOLE_ENABLE = no # Console for debug(+400)
+COMMAND_ENABLE = no # Commands for debug and configuration
+# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+NKRO_ENABLE = yes # USB Nkey Rollover
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default
+RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
+MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
+UNICODE_ENABLE = no # Unicode
+BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
+AUDIO_ENABLE = no # Audio output on port C6
+FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
+HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
+VIRTSER_ENABLE = no # USB Serial Driver
+RAW_ENABLE = no # Raw device
+AUTO_SHIFT_ENABLE = no # Auto Shift
\ No newline at end of file
diff --git a/keyboards/ut472/keymaps/drashna/config.h b/keyboards/ut472/keymaps/drashna/config.h
new file mode 100644
index 00000000..1711544f
--- /dev/null
+++ b/keyboards/ut472/keymaps/drashna/config.h
@@ -0,0 +1,23 @@
+/* Copyright 2018 Carlos Filoteo
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#include "config_common.h"
+
+// place overrides here
+#define LEADER_PER_KEY_TIMING
+#define LEADER_TIMEOUT 350
\ No newline at end of file
diff --git a/keyboards/ut472/keymaps/drashna/keymap.c b/keyboards/ut472/keymaps/drashna/keymap.c
new file mode 100644
index 00000000..f6f93c33
--- /dev/null
+++ b/keyboards/ut472/keymaps/drashna/keymap.c
@@ -0,0 +1,158 @@
+/* Copyright 2018 Carlos Filoteo
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+#include "drashna.h"
+#include QMK_KEYBOARD_H
+
+#define LT3_TAB LT(3, KC_TAB)
+
+// clang-format off
+#define LAYOUT_ut472_base( \
+ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
+ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
+ K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
+ ) \
+ LAYOUT_wrapper( \
+ KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, BSPCDEL, \
+ KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_ENT, \
+ KC_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_QUOT, \
+ KC_LCTL, LGUI(0), KC_LALT, KC_LEAD, MO(_LOWER), LT(_NAV, KC_SPC), MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
+ )
+
+/* Re-pass though to allow templates to be used */
+#define LAYOUT_ut472_base_wrapper(...) LAYOUT_ut472_base(__VA_ARGS__)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [_QWERTY] = LAYOUT_ut472_base_wrapper(
+ _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
+ _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
+ _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
+ ),
+
+ [_WORKMAN] = LAYOUT_ut472_base_wrapper(
+ _________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
+ _________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
+ _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
+ ),
+
+ [_LOWER] = LAYOUT_ut472_base_wrapper(
+ _________________LOWER_L1__________________, _________________LOWER_R1__________________,
+ _________________LOWER_L2__________________, _________________LOWER_R2__________________,
+ _________________LOWER_L3__________________, _________________LOWER_R3__________________
+ ),
+ [_RAISE] = LAYOUT_ut472_base_wrapper(
+ _________________RAISE_L1__________________, _________________RAISE_R1__________________,
+ _________________RAISE_L2__________________, _________________RAISE_R2__________________,
+ _________________RAISE_L3__________________, _________________RAISE_R3__________________
+ ),
+ [_ADJUST] = LAYOUT_ut472_base_wrapper(
+ _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
+ _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
+ _________________ADJUST_L3_________________, _________________ADJUST_R3_________________
+ ),
+ [_NAV] = LAYOUT_ut472_base_wrapper(
+ ___________________NAV_L1__________________, ___________________NAV_R1__________________,
+ ___________________NAV_L2__________________, ___________________NAV_R2__________________,
+ ___________________NAV_L3__________________, ___________________NAV_R3__________________
+ ),
+// [_LAYERINDEX] = LAYOUT_wrapper(
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+// ),
+};
+// clang-format on
+
+
+// const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+// /* Base Layer
+// * ,-------------------------------------------------------------------------.
+// * | Esc | Q | W | E | R | T | Y | U | I | O | P |Bspace |
+// * |-------------------------------------------------------------------------+
+// * |Tab/L3| A | S | D | F | G | H | J | K | L | ; | ' |
+// * |-------------------------------------------------------------------------+
+// * | Shift | Z | X | C | V | B | N | M | , | . | / |Sh/En|
+// * |-------------------------------------------------------------------------+
+// * | Ctrl| Alt | Gui | App | L2 | Space | L1 | Left| Down| Up |Right|
+// * `-------------------------------------------------------------------------'
+// */
+
+// LAYOUT(
+// KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+// LT3_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+// KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_SFTENT,
+// KC_LCTL, KC_LALT, KC_LGUI, KC_APP, MO(2), KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
+// ),
+
+// /* FN Layer 1
+// * ,-------------------------------------------------------------------------.
+// * | ` ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Delete|
+// * |-------------------------------------------------------------------------+
+// * | | | | | | | | - | = | [ | ] | \ |
+// * |-------------------------------------------------------------------------+
+// * | | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | F20 | |
+// * |-------------------------------------------------------------------------+
+// * | | | |Capsl| | | | Home| PgDn| PgUp| End |
+// * `-------------------------------------------------------------------------'
+// */
+
+// LAYOUT( /* Right */
+// KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELETE,
+// _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
+// _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______,
+// _______, _______, _______, KC_CAPS, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
+// ),
+
+// FN Layer 2
+// * ,-------------------------------------------------------------------------.
+// * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) |Delete|
+// * |-------------------------------------------------------------------------+
+// * | | | | | | | | _ | + | { | } | | |
+// * |-------------------------------------------------------------------------+
+// * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
+// * |-------------------------------------------------------------------------+
+// * | | | |Capsl| | | | Home| PgDn| PgUp| End |
+// * `-------------------------------------------------------------------------'
+
+
+// LAYOUT( /* Left */
+// KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_DELETE,
+// _______, _______, _______, _______, _______, _______, _______, KC_UNDERSCORE, KC_PLUS, KC_LEFT_CURLY_BRACE, KC_RIGHT_CURLY_BRACE, KC_PIPE,
+// _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
+// _______, _______, _______, KC_CAPS, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
+// ),
+
+// /* FN Layer 2
+// * ,-------------------------------------------------------------------------.
+// * | Esc | Calc|Webhm| Mail| Comp| | | | | |PrtSc| |
+// * |-------------------------------------------------------------------------+
+// * | | | | | | | | | | | | |
+// * |-------------------------------------------------------------------------+
+// * | | | | | | | | | | | | |
+// * |-------------------------------------------------------------------------+
+// * | | | | | | | |MousL|MousD|MousU|MousR|
+// * `-------------------------------------------------------------------------'
+// */
+
+// LAYOUT( /* Tab */
+// KC_ESC, KC_CALC, KC_WHOM, KC_MAIL, KC_MYCM, _______, _______, _______, _______, _______, KC_PSCR, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+// _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R
+// ),
+// };
diff --git a/keyboards/ut472/keymaps/drashna/readme.md b/keyboards/ut472/keymaps/drashna/readme.md
new file mode 100644
index 00000000..e3dcee46
--- /dev/null
+++ b/keyboards/ut472/keymaps/drashna/readme.md
@@ -0,0 +1,5 @@
+# UT47 default keymap
+
+![UT47 layout image](https://i.imgur.com/Tsz5qsF.png)
+
+[KLE](http://www.keyboard-layout-editor.com/##@@_y:0%3B&=Esc&=Q&=W&=E&=R&=T&=Y&=U&=I&=O&=P&_w:1.5%3B&=Back%20Space&_x:0.25&a:4&f:4&w:4&h:4&d:true%3B&=%3Cb%3EGNAP!%3C%2F%2Fb%3E%3Cp%3E%3Cp%3EMinimum%20stagger%3Cp%3E47%20key%20layout%3B&@_a:7&f:3&w:1.25%3B&=Tab&=A&=S&=D&=F&=G&=H&=J&=K&=L&=%2F%3B&_w:1.25%3B&=%27%3B&@_w:1.5%3B&=Shift&=Z&=X&=C&=V&=B&=N&=M&=,&=.&=%2F%2F&=Return%3B&@=Ctrl&=Alt&=Super&=Menu&_w:1.25%3B&=%2F&dArr%2F%3B&_w:2%3B&=&_w:1.25%3B&=%2F&uArr%2F%3B&=%2F&larr%2F%3B&=%2F&darr%2F%3B&=%2F&uarr%2F%3B&=%2F&rarr%2F%3B%3B&=undefined)
diff --git a/keyboards/ut472/keymaps/drashna/rules.mk b/keyboards/ut472/keymaps/drashna/rules.mk
new file mode 100644
index 00000000..a3883a7b
--- /dev/null
+++ b/keyboards/ut472/keymaps/drashna/rules.mk
@@ -0,0 +1,5 @@
+LEADER_ENABLE = yes
+
+TAP_DANCE_ENABLE = no
+RGBLIGHT_ENABLE = yes
+RGB_MATRIX_ENABLE = no
\ No newline at end of file